サンプルコードの表示


コードブロック : code-block ディレクティブ

  • code-block を使用してコードを表示します。

  • コードの言語を指定すると、その言語に適したハイライト表示をします。

  • 単なるテキスト表示するときは言語に none を指定します。

  • 言語を省略すると Sphinx が適切な言語を選択してコードをハイライト表示します。

表示例

  • 言語指定あり:java

.. code-block:: java

   public class HelloWorld{
      public static void main(String[] args){
        System.out.println("hello, world");
      }
   }
public class HelloWorld{
   public static void main(String[] args){
     System.out.println("hello, world");
   }
}
  • 言語指定あり:none (ハイライト表示なし)

.. code-block:: none

   public class HelloWorld{
      public static void main(String[] args){
        System.out.println("hello, world");
      }
   }
public class HelloWorld{
   public static void main(String[] args){
     System.out.println("hello, world");
   }
}
  • 言語指定なし:Sphinx が言語を自動判断

.. code-block::

   public class HelloWorld{
      public static void main(String[] args){
        System.out.println("hello, world");
      }
   }
public class HelloWorld{
   public static void main(String[] args){
     System.out.println("hello, world");
   }
}

ファイルから表示するコードの読み込み : literalinclude ディレクティブ

  • literalinclude を使用してコードをファイルから読み込み、表示します。

  • language オプションでコードの言語を指定すると、その言語に適したハイライト表示をします。

  • 単なるテキスト表示するときは言語に none を指定します。

  • 言語を省略すると Sphinx が適切な言語を選択してコードをハイライト表示します。

表示例

  • 言語指定あり:java

.. literalinclude:: ./helloworld.java
   :language: java
public class HelloWorld{
   public static void main(String[] args){
     System.out.println("hello, world");
   }
}
  • 言語指定あり:none (ハイライト表示なし)

.. literalinclude:: ./helloworld.java
   :language: none
public class HelloWorld{
   public static void main(String[] args){
     System.out.println("hello, world");
   }
}
  • 言語指定なし:Sphinx が言語を自動判断

.. literalinclude:: ./helloworld.java
public class HelloWorld{
   public static void main(String[] args){
     System.out.println("hello, world");
   }
}

コード表示のオプション

行番号表示

  • linenos オプションで行番号を表示します。

.. code-block:: java
   :linenos:

   public class HelloWorld{
      public static void main(String[] args){
        System.out.println("hello, world");
      }
   }
1
2
3
4
5
public class HelloWorld{
   public static void main(String[] args){
     System.out.println("hello, world");
   }
}
.. literalinclude:: ./helloworld.java
   :language: java
   :linenos:
1
2
3
4
5
public class HelloWorld{
   public static void main(String[] args){
     System.out.println("hello, world");
   }
}

特定の行を網掛け表示

  • emphasize-lines オプションで指定した行をハイライト表示します。

  • "," で区切って複数の行を指定します。 例:1 行目と 10 行目を網掛け表示 → 1, 10

  • "-" で連続する行を指定します。 例:1 行目から 10 行目を網掛け表示 → 1-10

.. code-block:: java
   :emphasize-lines: 2, 4

   public class HelloWorld{
      public static void main(String[] args){
        System.out.println("hello, world");
      }
   }
public class HelloWorld{
   public static void main(String[] args){
     System.out.println("hello, world");
   }
}
.. literalinclude:: ./helloworld.java
   :language: java
   :emphasize-lines: 2, 4
public class HelloWorld{
   public static void main(String[] args){
     System.out.println("hello, world");
   }
}