トップ «前の日記(2009年11月08日) 最新 次の日記(2010年01月03日)» 編集

Masa's blog

検索キーワード:

2009年12月15日 vim-7.2 & less-418 [長年日記]

_ vim-7.2 & less-418

今でもLinux(Unix)環境の文字コードはEUC-JPに統一しているのだけれど、どうしてもUTF-8な環境で作業する必要が出て来た。

エディタは今まではJvim-3.0を利用させていただいてるのだけれど、これを機会にvim-7.2を使ってみた。

$ tar xvjf vim-7.2.tar.bz2
$ tar xvzf vim-7.2-extra.tar.gz
$ tar xvzf vim-7.2-lang.tar.gz
$ cd vim7.2
$ ./configure --enable-multibyte --with-features=big --prefix=/usr/local/vim7 --without-x --disable-gui --disable-gpm
$ make
$ make test
# make install
$ vi ~/.vimrc
let &termencoding = &encoding
set encoding=utf-8
set fileencodings=utf-8,euc-jp,cp932,default,latin

ページャは今まではless-358に日本語対応パッチを当てたものを使っていたが、パッチの公開サイトは既に消失してる様子。本家の最新であるless-418だと、パッチ無しでutf-8に対応しているとの情報を得たので試してみた。結果、utf-8な日本語データを含んだテキストファイルを表示できたが、EUC-JPは相手にしてくれなかった。よって使い分けが必要となる。

ちなみにLESSCHARSETに設定できるコードは以下のとおり

ascii  BS, TAB, NL, CR, and formfeed are control characters, all  chars
       with  values  between  32 and 126 are normal, and all others are
       binary.

iso8859
       Selects an ISO 8859 character set.  This is the same  as  ASCII,
       except  characters  between  160  and  255 are treated as normal
       characters.

latin1 Same as iso8859.

latin9 Same as iso8859.

dos    Selects a character set appropriate for MS-DOS.

ebcdic Selects an EBCDIC character set.

IBM-1047
       Selects an EBCDIC character set used by  OS/390  Unix  Services.
       This  is the EBCDIC analogue of latin1.  You get similar results
       by setting either LESSCHARSET=IBM-1047 or LC_CTYPE=en_US in your
       environment.

koi8-r Selects a Russian character set.

next   Selects a character set appropriate for NeXT computers.

utf-8  Selects  the  UTF-8  encoding  of  the  ISO 10646 character set.
       UTF-8 is special in that it supports  multi-byte  characters  in
       the  input  file.   It  is  the only character set that supports
       multi-byte characters.

windows
       Selects a character set appropriate for  Microsoft  Windows  (cp
       1251).