自己顕示欲の開放治療所

erg, programming and something.

別名:Laughing and Grief 雑記

Latin and Greekは習ったこともない

真面目な記事の他、特定の方には不快と思われる事柄に関して言及を行うことがあります。ちょっと頑張りますが、Blog内で解決できなかった場合要望があれば別ページに技術記事は書き直します

sphinx.styを読もう

備忘録というか作業中の外部処理装置。 必須環境をTeXLive2017くらいにしてしまうと色々楽なんだよな。 使ってもらって議論するうちにUbuntu16.04のサポートなんてきれそうだし。

\sphinxdeprecationwarning{4}

非推奨機能を使っている場合の警告。TeXのバージョンとの不整合を防ぐのに必要。

パッケージ読み込み

呼んでるパッケージ

  • graphicx (画像その他)
  • titlesec(notbottomltitles*オプション、まあこのままでもいいか? バージョンにより壊れるので分岐)
  • fancyhdr(memoirクラス限定。柱など編集用。うーん)
  • amstext (bxamstextへ移行? 2016年からはLaTeXの必須コンポーネント化してるから読明示的に読ませなくてもよい? 数式記述補助)
  • textcomp(記号拡張)
  • tabulary (表機能拡張。table用スタイル分けるべきか?)
  • varwidth (表機能用。)
  • sphinx-multicells(表機能用)
  • makeidx (索引)
  • framed (枠組み用)
  • xcolor or color (色)
  • fancyvrb (verbatim改造)
  • float (図表フローティング拡張)
  • wrapfig(周りこみ画像)
  • parskip(バージョンにより壊れるので分岐)
  • alltt (リテラル表示用等幅表示拡張)
  • upquote (リテラル中のシングルクオートを本物へ)
  • capt-of フロート要素以外へキャプションをつけられるように
  • vspace中でのページブレークの抑制コマンド提供。
  • remreset (バージョンによってはLaTeXにとりこまれているのでコマンド有無チェック。カウンタのコントロールリストからの除外を提供?)
  • hyperref (kanjiskipのあるなしでオプション分岐してるので直したい)
  • atbegshi (日本語endashの挙動などに使っているのでpxjahyperに変更?)
  • sphinxhighlight (pygmentsでのハイライト用。中身によってはmintでもいいのでは)
  • kvoptions (パッケージ補助)

CTAN: Package needspace

CTAN: Package capt-of

zrbabbler.hatenablog.com

CTAN: Package amstext

CTAN: Package makeidx

table系定義

  • カラムタイプ\X\Y
  • カラムタイプT 値はJ

マルチカラムでのtabularyのバグに由来するとのことなのでバージョンによっては省ける? 要調査

CTAN: Package tabulary

  • \sphinxtablepre とりあえず0でおいてある
  • \sphinxtablepost 値は\medskipamount

dim値。ユーザによる調整用?

  • \sphinxbelowcaptionspace{.5\sphinxbaselineskip} キャプション位置がtopの場合のテーブルとのアキ テーブルまたはリテラルブロック用

  • \sphinxbaselineskip longtable内でbaselineskipが0になるので作成とある。基本はbaselineskipと同値。theme作成時にややこしくなりそう

  • \sphinxatlongtablestart vskipと上のtablepreでのテーブル位置補正。llongtableのskipは0にしてsphinx側の値のみを使わせる形。longtableはlongtableのskipのためにbaselineskipきかないようにしたんだろうし単純化できないものか。
  • \sphinxthelongtablecaptionisattop captionパッケージとの互換とのこと。
  • \sphinxlongtablecapskipadjust longtable時のcaption位置をsphinx的に正確にする
  • \sphinxatlongtableend A longtable does not issue `\@nobreakfalse` resulting in inconsistent spacing · Issue #173 · latex3/latex2e · GitHub 対策がついとる。アトアキ。sphinxtablepostの値を利用
  • \sphinxattablestart longtableでない場合
  • \sphinxattableend 用意したもののsphinxatlongtableendの値ぶちこんでる
  • \sphinxcapstartof 図表へのref時の位置を良い感じにするため
  • \sphinxthecaptionisattop \sphinxthecaptionisatbottom captionパッケージ互換。captionパッケージがあれば調整、なければ無
  • \sphinxtablecapwidth longtableの幅。
  • \sphinxcaption 上の値を使ってlongtableとtabularのキャプション幅をそろえる