ラベル vim の投稿を表示しています。 すべての投稿を表示
ラベル vim の投稿を表示しています。 すべての投稿を表示

2013年10月10日木曜日

vimrcで set enc=sjis を自動化

数年前からlinuxサーバーは基本的にUTF-8環境で構築して運用している
でも、たまに顧客環境のソースがSJISとかEUCもある

わたしはテキストエディタにvimを使っていて
linuxサーバーにsshログインしてvimでソース編集するのが一番使いやすい。

eucや、sjisを編集する場合は
PCでGUIのエディタ等を使ったりもするが
何よりGUIでいろいろ操作するのが煩わしいし
頻繁にマウスに持ち替えるの煩わしい。
やっぱり使い慣れたvimがいい。

そんなときは端末エミュレータでSJISの設定。
( OSX の ターミナル.app を使っている )

linuxにログイン

$ env
~
LANG=ja_JP.SJIS
~

vim でファイルを開いたあと

:set enc=sjis


で、SJIS編集モードにするか

vimで開くときに

vim -c 'set enc=sjis' hoge.php

とする

これが頻繁にやると結構面倒

sjisオンリーなら.vimrcに設定しておけばいいのだが
utf-8, sjis, euc-jp のソースが混在してるシステムだったりすると
なかなか面倒だ。

ちなみに、euc-jp は set enc= を設定しなくても
文字化けせずvimで開ける

linuxが標準でsjisに対応していないせいか
sjisのコード体系に制御コード?asciiコードを含むために
自動判別しづらいせいなのか
とにかく、sjisは自動判別できてない。

そこで、環境変数LANG で、SJIS環境なら
vim で開くときに set enc=sjis するようにvimrcに設定

$ vim ~/.vimrc
これを追加
if $LANG == 'ja_JP.SJIS'
    set enc=sjis
endif

2013年9月19日木曜日

Mac の ターミナル.app の vim でカラー表示

~/.vimrc

:syntax on
と書くだけ

カラースキーマ定義ファイルとかをダウンロードして指定すると
違う色の組み合わせとか試せる

自分は、デフォルトでOKだった

Max OSX 10.8