nanoでgeditやvimのようなシンタックスハイライトができますか?どうすれば有効になりますか?最低でもbashとpythonのシンタックスハイライトが必要です。
nanoエディタは、それ自体でいくつかの言語やスクリプトのシンタックスハイライトを提供します。/usr/share/nano/`をチェックしてみてください。
nits@nits-excalibur:~$ ls /usr/share/nano/
asm.nanorc fortran.nanorc man.nanorc ocaml.nanorc ruby.nanorc
awk.nanorc gentoo.nanorc mgp.nanorc patch.nanorc sh.nanorc
c.nanorc groff.nanorc mutt.nanorc perl.nanorc tcl.nanorc
cmake.nanorc html.nanorc nano-menu.xpm php.nanorc tex.nanorc
css.nanorc java.nanorc nanorc.nanorc pov.nanorc xml.nanorc
debian.nanorc makefile.nanorc objc.nanorc python.nanorc
それらを~/.nanorc
にあるユーザー'のnano設定ファイルに、以下のようにリンクしてください。
nits@nits-excalibur:~$ cat ~/.nanorc
include /usr/share/nano/sh.nanorc
これで、リンクしたファイルのシンタックスハイライトがnanoで有効になります(複数のファイルをリンクすることもできます)。
.
注意:~/.nanorc
ファイルを編集した後に、segmentation fault
が発生することがあります。このようなエラーが発生した場合は、環境変数 LANG の設定を解除すると解決します。ターミナルの unset LANG
で解除できます。(解決策はこちらから得ました)
また、bashのハイライト表示に満足できない場合、他の解決策もあります。その一例が ここにあります。
また、~/.nanorcファイルにinclude /usr/share/nano/*
と書いておけば、お使いのnanoのバージョンが対応していれば、すべての言語がハイライトされるようになります。
しかし、デフォルトの構文定義は非常に貧弱で不完全なものとなっています。私は、より正確な定義をここで管理していますので、お役立てください。
インストールするには、次のように実行します。
git clone github.com/scopatz/nanorc.git
cd nanorc
make install
以下の行を ~/.nanorc に追加します。
include ~/.nano/syntax/html.nanorc
include ~/.nano/syntax/css.nanorc
include ~/.nano/syntax/php.nanorc
include ~/.nano/syntax/ALL.nanorc
色付けをさせたいものを指定し、これらの色を好みに合わせて調整する必要があります。 ALL.nanorc`は、まだ分類されていないすべてのファイルに対する機能を記述しています。 これらはスタートするために必要なツールであり、最終的に洗練された製品ではありません。