sphinx-dev MLから¶
sphinx-dev MLに投稿されてる役に立つメールを訳して紹介してみます。
ただ、紹介するだけで、自分でちゃんと実行できるかは試していません。あし からず。(動かないよ!というのがあれば教えてください)
code-blockがちゃんとハイライトされないんだけど¶
guessを使ってみたら?
例:
.. code-block:: guess
pygmentsが勝手に推測してくれます。
でも、pygmentsが理解できるものだけです。
自分でテーマ作ってその中でstyleを段落に適用したいんだけど¶
containerを使うといいよ。
http://docutils.sourceforge.net/docs/ref/rst/directives.html#container
例:
.. container:: my-class
ネストされた段落1
ネストされた段落2
あるいは、noteやwarningを使うと、自分でクラスを指定できるよ。
PDFにすると余分なページが出来るんだけど¶
stack over flow にあるよ。
source/conf.py の "Options for LaTeX output" をこう書くといいよ。
latex_elements = {
'classoptions': ',oneside',
'babel': '\\usepackage[english]{babel}'
}
BibTeXから文献リストを取って来たいんだけど¶
zot4rst を使ってみたら?
-
ただ、sphinx 1.1より前では使えない
ubuntu 12.04でmake latexpdfが無効なページを作るんだけど¶
LaTeXの新しいバージョンを入れたら直ったよ。
ここ にやり方を書いたよ。
faviconがChromeで表示されないんだけど¶
今年の最初の方にChrome(と多分FireFoxも)はアドレスバーにfaviconを表示す るのをやめたよ。代わりにタブに表示するね。
アドレスバーに表示するにはこんな設定をしているよ。
faviconファイル
.static/favicon.ico
conf.py
html_static_path = ['.static', 'img']
html_favicon = 'favicon.ico'
HTMLの<head>に以下を追加
<link rel='shortcut icon' href='_static/favicon.ico'/>
pngmathで透過pngを使いたいんだけど¶
sphinxのドキュメントにはこう書いてあるけど動かないんだ。
pngmath_dvipng_args = ['-gamma 1.5', '-D 110', '-bg Transparent']
こうしたら動くよ。
pngmath_dvipng_args = ['gamma', '1.5', '-D', '110', '-bg', 'Transparent']
(注意: 2012-10-13現在まだdocumentは直ってないようです)
MiKTeXでPDFが作れないんだけど¶
MiKTeX Windows用のLaTeXツールのようです
まず、make.exeが必要。
MSYS/Mingw tools at:http://www.mingw.org/wiki/MSYS
その後、以下のようにします。
Sphinxでmakeを実行します。 make.bat latex
Texworksを開きます (http://www.tug.org/texworks/)
File > Open > myproject.tex
ドロップダウンメニューから pdflatex+makeindex+bibtex を選びます
"play" ボタンを押します
ストップしたりエラーしても Continue を押します
PDFのプレビューが表示されます
中身をチェックします。自分が見ると TOC, index, 参考文献が更新されな いときがあります。そういう場合は緑のplayボタンを押してPDFを再生成します
プレビューウィンドウで File > Save ... myproject.pdf
図にキャプションを付けてリンクを貼りたい¶
こう書けばいいよ
こちら :ref:`link title <figure>`.
.. figure:: _static/UnixFileSystem.jpg
:width: 50%
:alt: Unix file system
:align: center
:name: figure
図のキャプション
図のキャプションに番号を振りたい¶
(上から派生しましたので別にしてみました)
この拡張を使うといいよ。
config.pyにはこんな感じ。
extensions = ['sphinx.ext.numfig']
# numfig:
number_figures = True
figure_caption_prefix = "図:"
実際に使うにはこんな感じ。
こちら :num:`link text #exfigure`.
.. _exfigure:
.. figure:: _static/UnixFileSystem.jpg
:width: 50%
:alt: Unix file system
:align: center
図のキャプション
ただ、以下の二つは気をつける必要がある。
- name:
とは一緒に使えない
buildする前にdoctreeを消す必要がある(make cleanが必要)
ついでにemacs用のnumfigを使う関数を書いたよ。
(defun rst-bk-numfigs (Fig Caption)
"Inserts numbered firgure in sphinx, using numfig extension:
https://bitbucket.org/arjones6/sphinx-numfig"
(interactive
(list
(file-name-nondirectory (read-file-name "Image file: " (if (file-exists-p "_static")
"_static"
default-directory) ))
(read-string "Caption: ") ))
(let (FigStripped FigStrippedLowerCase)
(setq FigStripped
(replace-regexp-in-string "[^a-zA-Z]" ""
(file-name-sans-extension Fig)))
(with-temp-buffer
(insert FigStripped)
(downcase-region (point-min) (point-max))
(setq FigStrippedLowerCase (buffer-substring-no-properties (point-min) (point-max))))
(insert (format "\
:num:`Fig. #%s`
.. _%s:
.. figure:: _static/%s
:width: 50%s
:alt: %s
:align: center
%s
" FigStrippedLowerCase FigStrippedLowerCase Fig "%" Fig Caption)))
(search-backward-regexp "`")
(forward-char 1))
縦書きにしたい¶
cssをこう。
span.vertical {
writing-mode:tb-rl;
-webkit-transform:rotate(270deg);
-moz-transform:rotate(270deg);
-o-transform: rotate(270deg);
display:block;
width:20px;
height:20px;
}
rstはこう。
.. role:: vertical
:vertical:`test`
テーブルをカラフルにしたい¶
/* Table: */
th {
background-color: #ede;
}
/* alternating colors in table rows */
table.docutils tr:nth-child(even) {
background-color: #F3F3FF;
}
table.docutils tr:nth-child(odd) {
background-color: #FFFFEE;
}
table.docutils tr {
border-style: solid none solid none;
border-width: 1px 0 1px 0;
border-color: #AAAAAA;
}
Comments
comments powered by Disqus