Skip to content

Instantly share code, notes, and snippets.

@shimizukawa
Created November 11, 2016 11:57
Show Gist options
  • Save shimizukawa/261ccbe48fc244de60d378908c3ed32c to your computer and use it in GitHub Desktop.
Save shimizukawa/261ccbe48fc244de60d378908c3ed32c to your computer and use it in GitHub Desktop.
Sphinx拡張 コラム用マークアップ column ディレクティブ column.py

column.py を 以下のように配置:

sphinx-project/
+- index.rst
+- conf.py
+- ext/column.py
+- _static/custom.css

conf.py に設定を追加

from docutils.parsers.rst.directives.admonitions import Admonition
from docutils import nodes
class ColumnDirective(Admonition):
node_class = nodes.admonition
required_arguments = 1
def run(self):
self.arguments[0] = u'コラム ' + self.arguments[0]
self.options.setdefault('class', []).append(self.name)
r = Admonition.run(self)
r[0]['name'] = self.name
return r
def setup(app):
app.add_directive('column', ColumnDirective)
import os
import sys
sys.path.insert(0, os.path.abspath('ext'))
extensions = ['column']
def setup(app):
app.add_stylesheet('custom.css')
div.admonition.column {
background-color: #CFC;
border-color: #AFA;
}
div.column p.admonition-title {
display: block;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment