Warning: Declaration of FEE_Field_Terms::wrap($content, $taxonomy, $before, $sep, $after) should be compatible with FEE_Field_Post::wrap($content, $post_id = 0) in /home/twfs/serverkurabe.com/public_html/blog/wp-content/plugins/front-end-editor/php/fields/post.php on line 0

Warning: Declaration of FEE_Field_Tags::wrap($content, $before, $sep, $after) should be compatible with FEE_Field_Terms::wrap($content, $taxonomy, $before, $sep, $after) in /home/twfs/serverkurabe.com/public_html/blog/wp-content/plugins/front-end-editor/php/fields/post.php on line 0

Warning: Declaration of FEE_Field_Category::wrap($content, $sep, $parents) should be compatible with FEE_Field_Terms::wrap($content, $taxonomy, $before, $sep, $after) in /home/twfs/serverkurabe.com/public_html/blog/wp-content/plugins/front-end-editor/php/fields/post.php on line 0

Warning: Declaration of FEE_Field_Post_Thumbnail::wrap($html, $post_id, $post_thumbnail_id, $size) should be compatible with FEE_Field_Post::wrap($content, $post_id = 0) in /home/twfs/serverkurabe.com/public_html/blog/wp-content/plugins/front-end-editor/php/fields/post.php on line 0

Warning: Declaration of FEE_Field_Post_Meta::wrap($data, $post_id, $key, $ui, $single) should be compatible with FEE_Field_Post::wrap($content, $post_id = 0) in /home/twfs/serverkurabe.com/public_html/blog/wp-content/plugins/front-end-editor/php/fields/post.php on line 0

Warning: Declaration of FEE_Field_Widget::wrap($params) should be compatible with FEE_Field_Base::wrap($content, $data) in /home/twfs/serverkurabe.com/public_html/blog/wp-content/plugins/front-end-editor/php/fields/widget.php on line 0

Warning: Declaration of FEE_Field_Comment::wrap($content) should be compatible with FEE_Field_Base::wrap($content, $data) in /home/twfs/serverkurabe.com/public_html/blog/wp-content/plugins/front-end-editor/php/fields/other.php on line 0

Warning: Declaration of FEE_Field_Term_Field::wrap($content, $term_id, $taxonomy) should be compatible with FEE_Field_Base::wrap($content, $data) in /home/twfs/serverkurabe.com/public_html/blog/wp-content/plugins/front-end-editor/php/fields/other.php on line 0

Warning: Declaration of FEE_Field_Single_Title::wrap($title) should be compatible with FEE_Field_Term_Field::wrap($content, $term_id, $taxonomy) in /home/twfs/serverkurabe.com/public_html/blog/wp-content/plugins/front-end-editor/php/fields/other.php on line 0

Warning: Declaration of FEE_Field_Option::wrap($content, $key, $ui) should be compatible with FEE_Field_Base::wrap($content, $data) in /home/twfs/serverkurabe.com/public_html/blog/wp-content/plugins/front-end-editor/php/fields/other.php on line 0
Notepad++のスタイル設定をカスタマイズする | Sabakura Blog

Notepad++のスタイル設定をカスタマイズする

海外で人気の多機能エディタNotepad++において、色設定(シンタックスハイライト)をカスタマイズする方法について説明します。

なお「Notepad++ v5.8.7-6(EUC-JP対応版)」をもとに解説します。

Notepad++の色設定について

プログラミング言語ごとに色設定を変えるシンタックスハイライトが、Notepad++ではかなり柔軟に設定できるようになっています。プロポーショナルフォントや日本語フォントも問題なく利用できますし、色だけでなく、太字・斜体・下線などの書式もこまかく設定できます

ただそのぶん設定方法がいくぶん分かりにくく、Notepad++を使い出した頃は自分もどう設定するかよく迷ったので、ここで解説してみます。

スタイル設定のカスタマイズ

Notepad++では色設定は「スタイル設定」と呼ばれています。
メニューバーの「設定」→「スタイル設定」をクリックし、「テーマを選択」のリストボタンから既存のいくつかのスタイルを設定できます。
今回はこの一覧にオリジナルのスタイルを追加し、自由にカスタマイズしてみます。

スタイルの追加

いちから自分のスタイル設定ファイルを作るのは大変ですので、既存のスタイルファイルをコピーしてカスタマイズすることにします。

  1. Notepad++をインストールしたフォルダの「theme」フォルダを開き、既存の適当なスタイルをコピーして名前を変更します。(今回の例では「zenburn」をコピーして「MyStyle」にしました)
    スタイルコピー → スタイルコピー
  2. Notepad++を再起動します。
  3. メニューバーの「設定」→「スタイル設定」をクリックし、「テーマを選択」の一覧に新たに追加されている「MyStyle」を選択します。

Global Stylesのカスタマイズ

Notepad++では、各言語別の設定とは別にGlobal Stylesと呼ばれる設定があります。言語それぞれの設定をしていない場合でも、このGlobal Stylesがまず反映されます。

  1. スタイル設定画面の「言語:」から「Global Styles」を選択します。
  2. 「コメント:」の「Global override」を選択します。

    • 「Global override」は他言語すべての設定を上書きするものです。
      フォントや色をここで設定し、なおかつ「~を他のスタイルにも適用」にチェックを入れていると、各言語のフォントや色を個別に設定しても反映されなくなります。(=各言語の設定よりも「Global override」が優先的に選択されます)
    • 色などは言語別に個別に設定したいことが多いと思いますので、「Global override」を使うのは「背景色」「フォント名」「フォントサイズ」あたりにしておくことをおすすめします。
  3. そのほかの「Global Styles」を設定します。各設定は以下に示します。

Default Style
基本的な文字色や背景色、フォント名…etcを設定します。(Global overrideで「他のスタイルにも適用」にチェックを入れていない場合は、この項目がデフォルトになります)
Indent_guideline_Style
開始タグと終了タグの対応関係を示す点線部分に適用されるスタイルです。
Brace highlight style
タグや括弧の前後にカーソルがある場合に、対応するタグor括弧が強調表示されます。その強調表示のスタイルです。
Bad brace colour
きちんと閉じられていないタグや括弧を強調表示する際のスタイルです。
Current line background
現在行を強調表示する際のスタイルです。
Selected text colour
テキストを選択した際のスタイルです。
Caret colour
キャレット(カーソル)のスタイルです。
Line number margin
行番号のスタイルです。
Fold
行の折り畳み操作部分のスタイルです。
Fold margin
行の折り畳み操作部分の背景のスタイルです。
White space symbol
タブ・空白スペースのスタイルです。
Smart HighLighting
特定の単語をダブルクリックで選択した際、ファイル内の同じ単語を強調表示する「スマートハイライト」のスタイルです。
Incremental highlight all
インクリメンタルサーチを行う際の強調表示スタイルです。
Tags match highlighting
開始タグに対応する終了タグを強調表示する際のスタイルです。(Brace highlight styleと似ていますが、Brace~は括弧全般にも反映されるのに対し、Tags match~はタグのみに設定されます)
Tags attribute
タグ内の属性部分のスタイルです。
Active tab focused
タブ一覧部分における、現在のタブのスタイルです。
Active tab unfocused
ビューを二画面にしている場合に、アクティブになっているのにフォーカスされていないタブのスタイルです。
Active tab text
現在のタブの文字色のスタイルです。
Inactive tabs
現在選択されていないタブのスタイルです。
Find Mark Style
検索時に「Mark」タブから「すべて検索」を実行した際に検索結果を強調表示する際のスタイルです。

※「Edge colour」は公式だと「Color of the vertical edge.」となってるんですが、ちょっと使いどころが分からなかったです。

言語別のカスタマイズ

次に各言語別の設定を行います。
言語ごとに設定項目が違いますが、ここでは「HTML」を例にとって説明してみます。

DEFAULT
メニューバーの「言語」からHTMLを選択した場合のデフォルトの設定です。(ただし「Global override」を設定している場合は「Global override」が優先されますので注意してください)
COMMENT
コメント部分のスタイルです。
DOUBLESTRING
ダブルクォーテーションで囲まれた文字列のスタイルです。
SINGLESTRING
シングルクォーテーションで囲まれた文字列のスタイルです。
TAG
タグ部分のスタイルです。
TAGEND
<br />のような「/>」部分に適用されるスタイルです。
TAGUNKNOWN
Notepad++がHTMLタグとして認識していないタグに適用されるスタイルです。
ATTRIBUTE
タグ内の属性部分のスタイルです。
ATTRIBUTE
Notepad++が認識していない属性部分に適用されるスタイルです。
SGMLDEFAULT
SGML(標準一般化マーク付け言語)のデフォルトスタイルです。
CDATA
CDATAのスタイルです。
ENTITY
文字実体参照部分のスタイルです。

すべての設定が終わったら「保存して閉じる」をクリックします。

まとめ

一番注意しないといけないのは「Global Styles」内の「Global override」だと思います。重ねて書きますが、ここで「~を他のスタイルにも適用」にチェックを入れると、他のすべての設定を上書きしてしまうので注意してください。

Global overrideを使うと設定はすぐに済みますが、こまかな設定はしにくくなります。徹底的にカスタマイズしたい場合は、Global overrideは使わずにおくことをおすすめします。

Notepad++の場合、しようと思えば「タグ」「文字列」「コメント」それぞれにすべて違うフォントを設定したり、コメント部分だけ文字サイズを小さくしたりなど、とても柔軟な表示設定ができます。ぜひ自分好みの環境をつくりあげてください。

コメントを投稿