Ubuntu (18.04 LTS) (含 WSL)
sudo apt install source-highligh nkf
以下のような /usr/local/bin/lesspipej.sh
を作成。
#!/bin/bash # Ubuntu では、/bin/sh ではダメ。 ORIGINAL_LESSOPEN=/usr/share/source-highlight/src-hilite-lesspipe.sh CONV_UTF8_COMMAND="/usr/bin/nkf -w" conv_utf8() { $CONV_UTF8_COMMAND "$1" } if [ $# -eq 0 -o "$1" == "-" ] ; then # pipe conv_utf8 - 2> /dev/null else # file if [ -x $ORIGINAL_LESSOPEN -a `$ORIGINAL_LESSOPEN "$1" | head | wc -c` -gt 0 ] ; then $ORIGINAL_LESSOPEN "$1" | conv_utf8 - 2> /dev/null else conv_utf8 "$1" 2> /dev/null fi fi
.bashrc
とかに
export LESSOPEN="|/usr/local/bin/lesspipej.sh %s" export LESS="-j10 -R --no-init --quit-if-one-screen"
色味の変更は
/usr/share/source-highlight/esc.style
macOS
brew install less nkf brew install source-highlight
以下のような /usr/local/bin/lesspipej.sh
を作成。
#!/bin/sh ORIGINAL_LESSOPEN=/usr/local/bin/src-hilite-lesspipe.sh CONV_UTF8_COMMAND="/usr/local/bin/nkf -w" conv_utf8() { $CONV_UTF8_COMMAND "$1" } if [ $# -eq 0 -o "$1" == "-" ] ; then # pipe conv_utf8 - 2> /dev/null else # file if [ -x $ORIGINAL_LESSOPEN -a `$ORIGINAL_LESSOPEN "$1" | head | wc -c` -gt 0 ] ; then $ORIGINAL_LESSOPEN "$1" | conv_utf8 - 2> /dev/null else conv_utf8 "$1" 2> /dev/null fi fi
.bashrc
とかに
export LESSOPEN="|/usr/local/bin/lesspipej.sh %s" export LESS="-j10 -R --no-init --quit-if-one-screen"
ちなみに,私は20世紀の昔から tcsh
なので,~/.tcshrc
に
setenv LESSOPEN '|/usr/local/bin/lesspipej.sh %s' setenv LESS '-j10 -R --no-init --quit-if-one-screen'
色味の変更は
/usr/local/share/source-highlight/esc.style
Monokai 的 esc.stye の例
WSL Ubuntu だと,以下のように b
をつけないと暗かった。
// monokai like keyword red b ; type, classname cyan b ; string yellow b ; regexp orange b ; specialchar purple b ; comment black b ; number purple b ; preproc red b ; symbol white b ; function green b ; cbracket gray b ; variable blue b ;
macOS の場合は b
をつけるとボールドばかりになるので,適宜調整。たとえば,「ターミナル」の「環境設定…」メニューで,
□ ボールドフォントを使用
のチェックをはずし,
□ ボールドテキストに明るい色を使用
にチェックを入れるとかして,対応してみる。
ちなみに,esc.style
で使える色は以下のみ。また,Windows の Cmder ではそもそも256色非対応なので,Monokai カラーテーマ的色合いはできない,残念。
colormap "green" "#33CC00" "red" "#FF0000" "darkred" "#990000" "blue" "#0000FF" "brown" "#9A1900" "pink" "#CC33CC" "yellow" "#FFCC00" "cyan" "#66FFFF" "purple" "#993399" "orange" "#FF6600" "brightorange" "#FF9900" "brightgreen" "#33FF33" "darkgreen" "#009900" "black" "#000000" "teal" "#008080" "gray" "#808080" "darkblue" "#000080" default "#000000" end