nikkie-ftnextの日記

イベントレポートや読書メモを発信

Sphinx

Sphinx では html_context の値を Jinja テンプレートにした CSS に埋め込める

はじめに 七尾百合子さん、お誕生日 354日目 おめでとうございます! nikkieです。 Sphinx について Today(※最近) I Learned です。 目次 はじめに 目次 カスタム CSS で強調の色を指定してきた 何かしらの設定値からカスタム CSS を作りたい _tまたは.jin…

PyCon mini 東海 2025で「PythonでOpenTelemetryの一歩目を体験ワークショップ」をしました #pycontokai

はじめに 七尾百合子さん、お誕生日 237日目 おめでとうございます! nikkieです。 直近の登壇ふりかえりです。 目次 はじめに 目次 「PythonでOpenTelemetryの一歩目を体験ワークショップ」をしました! 当日の様子 Notion サイトまわり 終わりに 「Python…

reStructuredText から Google スライドを作りたい! k1LoW/deck 向けの Markdown を作る sphinx-deck を始めました

はじめに 七尾百合子さん、お誕生日 232日目 おめでとうございます! nikkieです。 先日触った k1LoW/deck の体験がとてもよかったので、Sphinx と k1LoW/deck を奇跡的相性しちゃいます! 目次 はじめに 目次 k1LoW/deck がよかった 爆誕!sphinx-deck Mark…

まあ、CSSセレクタというものは、半角スペース1つで意味が変わるのですね

はじめに 七尾百合子さん、お誕生日 216日目 おめでとうございます! nikkie です。 Today I Learned です。 目次 はじめに 目次 upperalphaクラスの<ol>要素にlist-style-typeを指定したい 結論:upperalphaクラスの<ol>要素を指定するCSSセレクタ 半角スペース1つ</ol></ol>…

sphinx-revealjs 製スライドに表示した Mermaid の図のスタイル調整

はじめに 七尾百合子さん、お誕生日 195日目 おめでとうございます! nikkieです。 半年前に書いた記事の宿題を1つ終わらせます 目次 はじめに 目次 sphinx-revealjs製スライドにMermaidによる図を表示する :config:で線の色を変えられる! Mermaid の図のズ…

sphinx-notion で reStructuredText だけでなく Markdown も Notion ページに変換! 〜直書きURLのハイパーリンク化、解決編〜

はじめに 七尾百合子さん、お誕生日 165日目 おめでとうございます! nikkieです。 MyST-Parser の linkify 拡張に気づけたことが私には嬉しすぎるので、もう一本書きます。 目次 はじめに 目次 reST を Notion ページに、sphinx-notion Markdown と sphinx-…

MyST-Parser は linkify 拡張を有効にすれば <> で囲まないURLもハイパーリンクにできる!

はじめに 七尾百合子さん、お誕生日 164日目 おめでとうございます! nikkieです。 Sphinx で Markdown を扱うときの TIL (Today I Learned) です。 目次 はじめに 目次 Sphinx と MyST-Parser MyST-Parser でのハイパーリンク記法 Linkify 拡張を使えば URL…

Sphinx の code-block ディレクティブは language をきめ細やかに設定できる! pycon や pytb を知っていますか?

はじめに 七尾百合子さん、お誕生日 155日目 おめでとうございます! nikkieです。 SphinxでPythonコード表示の見た目に関する小ネタです 目次 はじめに 目次 code-blockのlanguage language をきめ細やかに設定した例 pyconまたはpython-console pytbまたは…

sphinx-revealjsのスライドで、順序付きリストの番号を 1,2,3 から A,B,C に変更する

はじめに 七尾百合子さん、お誕生日 74日目 おめでとうございます! nikkieです。 以下のスライドを作る方法の備忘録です 目次 はじめに 目次 今回はこうしました 裏側のメモ 終わりに 今回はこうしました rawディレクティブでHTMLのbodyにスタイル追加 http…

Sphinxで作ったスライドをNotionでも公開するのを狙って、sphinx-notionという拡張を始めました

はじめに 七尾百合子さん、お誕生日 35日目 おめでとうございます! nikkieです。 前回のリリース報告エントリで予告した、自作ライブラリsphinx-notionについての記事です。 どういったSphinx拡張かというのは思い出す必要があり(ドキュメントも整えたい!…

Sphinxのconf.pyのextensionsで、拡張をケバブケースで指定してはいけません。スネークケースで指定しましょう

はじめに 七尾百合子さん、お誕生日 22日目 おめでとうございます! nikkieです。 雛様もきっと顔負け、誰にも話してない恥ずかしい話1、披露します。 Sphinx拡張開発の中で... 目次 はじめに 目次 conf.pyのextensionsの指定をケバブケースで 直面するExten…

依存ライブラリのバージョン違いのテストをHatchで実現しました

はじめに 七尾百合子さん、お誕生日 20日目 おめでとうございます! nikkieです。 自作のsphinx-revealjs-copycodeの開発の中での学びです。 目次 はじめに 目次 sphinx-revealjs v2とv3の両方でテストしたい Hatchを使って依存ライブラリのバージョンが異な…

Sphinx拡張が持つ静的ファイルをビルド結果のディレクトリに含める

はじめに 七尾百合子さん、お誕生日 19日目 おめでとうございます! nikkieです。 今回は、Sphinx拡張を開発する中で静的ファイルについて知ったことです。 目次 はじめに 目次 静的ファイルを持ったSphinx拡張 結論:ビルド結果のディレクトリにコピーする …

Sphinxのビルド時に、受け入れるwarning以外が出力されたら、ビルドを異常終了する

はじめに 七尾百合子さん、お誕生日 6日目 おめでとうございます! nikkieです。 発表資料はSphinx(sphinx-revealjs)で作っている私ですが、リリースビルドで想定外のwarningがあったら1そこで止められると気づきました。 目次 はじめに 目次 できたもの:…

Sphinx(8.2.3)でビルドしたところ、warningメッセージに[toc.not_included]という出力が! どんな過程を経てwarningのtypeを出力するようになったかを調べました

はじめに 七尾百合子さん、お誕生日 5日目 おめでとうございます!1 nikkieです。 Sphinxのビルドはuvxで実行している2私ですが、ふとwarningメッセージがちょっと違うのに気づきました。 WARNING: document isn't included in any toctree [toc.not_include…

Devinお試し&観察記:sphinx-new-tab-linkへの小さなプルリクエストを出してもらいました

はじめに こいつは"本物"だぜ... nikkieです 俺がDevinにお願いして作ったプルリクを見てくれ! 今日はこのログです。 うおおおお!!Issueを詳細に書いて結構お膳立てしたんですが、Devinさんすごいいいいい!!!私の小さなOSSに小さなプルリク出してくれ…

sphinx-revealjs製スライドにMermaidによる図を表示する

はじめに PyCon mini Shizuoka 2024 continue、1日ありがとうございました! nikkieです。 登壇準備からSphinxまわりの小ネタです。 スライド作成にはattakeiさんのsphinx-revealjsを使っています。 目次 はじめに 目次 sphinx-revealjs製スライドにMermaid…

SphinxでビルドしたPDFに ⋯(22ef、MIDLINE HORIZONTAL ELLIPSIS)が表示されない

はじめに キミと一緒に歩いてきた♪ アイ NEED YOUよすぎる nikkieです アイマスエキスポ準備1より技術ネタです。 目次 はじめに 目次 SphinxでビルドしたPDFに「⋯」が表示されない latex_engineの指定で回避 原因切り分け過程 終わりに SphinxでビルドしたPD…

uvx(やpipx)により、Python製CLIツールも開発者による仮想環境管理が不要になってるじゃん! Sphinxを例に

はじめに えびふりゃー・みそかつ・小倉トースト・みゃ〜 nikkieです inline script metadata(PEP 723)により、Pythonスクリプトについては開発者が仮想環境を管理しなくてもよくなっています1 さらにこのたびuvxによってPython製CLIツールも開発者が仮想…

最近どうよ、sphinx-new-tab-link? ― v0.6.0で icon-link ロールを追加しました!

はじめに センチュリーマリーナ、すっげ〜〜!! nikkieです SphinxでビルドしたHTMLにある外部リンクをブラウザの新しいタブで開くようにする拡張 sphinx-new-tab-link を自作しています。 直近の機能追加について取り上げます 目次 はじめに 目次 sphinx-n…

Sphinx拡張のsetup()関数の返り値の型、sphinx.util.typing.ExtensionMetadata

はじめに ぴょんさん、おめでとうございます〜 いや〜よかった、無事産まれてよかった〜 あ! nikkieです 今回はSphinxネタ、Sphinxが用意している型ヒント用の型についてです。 目次 はじめに 目次 Sphinx拡張とは setup()関数を持つPythonモジュール setup…

Sphinxのビルドログの一部が太字で出力される仕組み。ここにもANSIエスケープシーケンス!

Today I learned。Sphinx拡張開発の中で知ったことです。 目次 目次 Sphinx拡張からロギング 太字のログ出力の実装 ビルダー bold()の実装 終わりに P.S. sphinx-revealjsのロギング Sphinx拡張からロギング 自作拡張の中でロギングしてみようとなり1、sphin…

sphinx-revealjs製のスライドのコードブロックを、ボタン一発でコピーできるようにするのを助けるSphinx拡張 sphinx-revealjs-copycode 0.1.0 をリリースしました

目次 目次 sphinx-revealjs製のスライドのコードブロックを、ボタン一発でコピーできるようにしたい! sphinx-revealjs-copycode 0.1.0をリリースして P.S. エミリーちゃんかわいい sphinx-revealjs製のスライドのコードブロックを、ボタン一発でコピーでき…

sphinx-revealjs製のスライドのコードブロックを、ボタン一発でコピーできるようにしたい!

はじめに 恋アスが現実に!胸熱... nikkieです。 登壇資料作成にはsphinx-revealjsを愛用して静的サイトとしてホストしています1。 このたびブレイクスルーが起きました! コードブロックをワンクリックでコピーできるボタンを設置できたのです 目次 はじめ…

SphinxでビルドしたHTMLの中のコードブロックにコピーボタンを追加するsphinx-copybutton拡張

はじめに 香織先輩 & ドラえもんさん、お誕生日おめでとうございます! nikkieです。 気になっていたSphinx拡張を試しました。 目次 はじめに 目次 sphinx-copybutton 設定例 実は出会っていたsphinx-copybutton 実装を少しだけ 終わりに sphinx-copybutton …

Sphinx拡張のE2Eを書くときは、conftest.pyにrootdirフィクスチャも定義する

はじめに うう・・・百合子・・・ nikkieです。 先日の@pytest.mark.sphinxの補完エントリです 目次 はじめに 目次 まとめ:Sphinx拡張のE2Eを書くには rootdirフィクスチャの上書き rootdirフィクスチャは何をしているのか 終わりに 参考文献 まとめ:Sphin…

Sphinx拡張のE2Eを書くのにとても役立ちそうなマーカー @pytest.mark.sphinx を知りました

はじめに あのはな再放送! nikkieです Sphinx拡張のテストコードを劇的に簡単に書けるpytestのマーカーを知ってしまいました... 目次 はじめに 目次 自作Sphinx拡張とE2E @pytest.mark.sphinxマーカーを知った経緯 ドキュメント「Testing API」 Sphinxのテ…

外部リンクにアイコンを添えて表示できる設定値を画像のtargetオプションにも対応させるバグ修正をした sphinx-new-tab-link 0.5.2 をリリースしました🦋

はじめに 伊吹翼さん、お誕生日おめでとうございます! nikkieです。アイルううううう リリース報告エントリです。 タイトルの「sphinx-new-tab-linkとはなんだろう」という方は、以下の記事をまずどうぞ! 目次 はじめに 目次 reSTで画像のリンクとsphinx-n…

reStructuredTextの画像(figureやimageディレクティブ)は、URLを設定してリンクにできたのか!(targetオプションを知りました)

Sphinx関係の小ネタです。 初めて知って、ちょっと感動しました。 目次 目次 reStructuredTextで画像を表示 targetというオプションでリンクにできる! imageディレクティブ figureディレクティブ 終わりに reStructuredTextで画像を表示 『Sphinxをはじめよ…

外部リンクにアイコンを添えて表示できる設定値をサポートした sphinx-new-tab-link 0.5.0 をリリースしました🦋

リリース報告エントリです。 「sphinx-new-tab-linkとはなんだろう」という方は、以下の記事をまずどうぞ! 目次 目次 sphinx-new-tab-link 0.5.0 ブラウザの新しいタブで開くリンクにアイコンを添える 実装過程 終わりに sphinx-new-tab-link 0.5.0 設定値n…