Ruby と Python の両方のコーディング サンプルを含む .rst を持っていますが、サンプルを動的に変更する必要があるため、コード サンプルを外部ファイルに設定しています (これは、プログラムで制御)、それを .rst のディレクティブを介して含めます。
変更を加えなければ、すべてが機能します。つまり、Ruby と Python のコード例がコード ブロック内に正しく表示されます。しかし、コードを切り取って外部ファイルに貼り付けると、Python コード ファイルのみが取り込まれます。Ruby の例は常に空白です。
私は 2 つの異なる方法を試しました (最初の方法は、外部 Python に使用しているものです)。
.. literalinclude:: myRubyFile.rb
:language: ruby
ここで、.rb ファイルは Ruby コードのみであり、
.. include:: MyRubyFile.rb.rst
最初の 3 行は次のようになります。
.. code-block:: ruby
#Line 1 of code
Sphinx が Ruby ファイルを適切に処理しないのに、Python ファイルは正しく処理される理由は何か考えられますか?
回答: ファイルをデフォルトの Sphinx ファイル形式 = BOM 付きの UTF-8 として保存します。
また、質問を投稿する前にログを読んでください。