コードブロック

コードブロックに対して、シンタックスハイライトをしてくれます。

使い方

.. code-block:: python

上記のpythonのところにハイライトしたいシンタックスを書きます。

Pygmentsの Available lexers にハイライトできるシンタックスがたくさん書いてあります。一部を紹介します。

記号 説明
rst reStructuredText
md Markdown
js JavaScript
python Python
csharp C#
html HTML
css CSS
dtd DTD
xml XML
doscon DOSプロンプト
bash シェルスクリプト

使用例

入力

.. code-block:: csharp

   using System.Text;
   using System.Windows;
   using Microsoft.Win32;
   using System.IO;

   namespace trial_saveas
   {
       public partial class MainWindow : Window
       {
           public MainWindow()
           {
               InitializeComponent();
           }
           private void button_Click(object sender, RoutedEventArgs e)
           {
               SaveFileDialog dlg = new SaveFileDialog();
               Nullable<bool> result = dlg.ShowDialog();
               if (result == true)
               {
                   string filename = dlg.FileName;
                   Encoding enc = Encoding.GetEncoding("shift_jis");
                   try
                   {
                       File.WriteAllText(filename, textbox.Text, enc);
                   }
                   catch(Exception ex)
                   {
                       MessageBox.Show(ex.Message);
                       return;
                   }
               }
           }
       }
   }

出力

using System.Text;
using System.Windows;
using Microsoft.Win32;
using System.IO;

namespace trial_saveas
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }
        private void button_Click(object sender, RoutedEventArgs e)
        {
            SaveFileDialog dlg = new SaveFileDialog();
            Nullable<bool> result = dlg.ShowDialog();
            if (result == true)
            {
                string filename = dlg.FileName;
                Encoding enc = Encoding.GetEncoding("shift_jis");
                try
                {
                    File.WriteAllText(filename, textbox.Text, enc);
                }
                catch(Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    return;
                }
            }
        }
    }
}