Mezzanine PageDown を
参考サイト
前提
1. Mezzanine PageDown が インストール済 であること
Docs / Mezzanine / A Mezzanine Tutorial, Take 2 | Rod’s Tech の
2. 環境情報
OS
- CentOS release 6.7 (Final)
Python 周辺
- Django (1.8.8)
- Mezzanine (4.0.1)
- mezzanine-pagedown (0.9)
- Pygments (2.0.2)
- Python 2.7.8
設定の 手順
1. Pygments を インストールする
sudo pip install Pygments
2. settings.py に 以下の 設定を 追加する
Mezzanine PageDown の
##################### # PAGEDOWN SETTINGS # ##################### RICHTEXT_WIDGET_CLASS = 'mezzanine_pagedown.widgets.PageDownWidget' RICHTEXT_FILTER = 'mezzanine_pagedown.filters.custom' RICHTEXT_FILTERS = (RICHTEXT_FILTER,) PAGEDOWN_MARKDOWN_EXTENSIONS = ('extra','codehilite','toc') RICHTEXT_FILTER_LEVEL = 3 PAGEDOWN_SERVER_SIDE_PREVIEW = True
- 設定値の
説明
NO | キー値 | 値 | 説明 |
---|---|---|---|
1 | RICHTEXT_WIDGET_CLASS | ‘mezzanine_pagedown.widgets.PageDownWidget’ | PageDown 用の Live 編集可能な Editor |
2 | RICHTEXT_FILTER | ‘mezzanine_pagedown.filters.custom’ | PageDown 用のカスタム filter を設定 |
3 | RICHTEXT_FILTERS | (‘RICHTEXT_FILTERS’,) | 2と同じ(複数指定可能) |
4 | PAGEDOWN_MARKDOWN_EXTENSIONS | (‘extra’,’codehilite’,’toc’) | PageDown で使用する markdown 拡張プラグインの設定 |
5 | RICHTEXT_FILTER_LEVEL | 3 | filterのレベル(フィルターなし) |
6 | PAGEDOWN_SERVER_SIDE_PREVIEW | True | サーバー側 Preview を使用する。 |
- 補足
4
には、以下の 記事記載の 拡張が 使えます。
Markdown のExtention に 対する 詳細な 説明が 記載されています。
PythonでMarkdownを GFM的に 使う 方法
3. url.py に pagedown preview の URL 定義を 追加する。
管理画面で
編集時に、
urlpatterns += patterns('', ("^pagedown/", include(mezzanine_pagedown.urls)),
- 補足の
urlpatterns += patterns('',
直下に 追記しないと 効かないので 注意です。 理由は 忘れてしまいましたが、 include(mezzanine_pagedown.urls)
の前に 記載は しておいた ほうが いいのかと 思います。
4. codehilite.css を 生成する。
4.1. mezzanine の<install_apps >
ディレクトリに 移動
cd <INSTALL_APPS>
4.2. pygments_styles コマンドを 実行
python manage.py pygments_styles
以下の
Usage: ./manage.py pygments_styles <scheme_name> Available color schemes: manni igor xcode vim autumn vs rrt native perldoc borland tango emacs friendly monokai paraiso-dark colorful murphy bw pastie paraiso-light trac default fruity
全部試していないですが、
4.3. css を 出力
python manage.py pygments_styles monokai > static/css/codehilite.css
- 補足
collectstatic、collecttemplates コマンドを 実行、 未実行かで 配置先は 異なるかと 思います。
5. スタイルシートへの リンクを base.html に 追記
<link rel="stylesheet" href="{% static "css/codehilite.css" %}">
これで、
以上です。
コメント