最近、仕事で突如Linuxでコーディングする事案が発生しました。
しかもネット接続なしだし、アプリを追加することは不可。
ということで、環境をよくすべく、viの設定をしてみました!
viとは?
viはLinuxのコンソール上で動くテキストエディタです。
ぼくの知る限り、Linuxでは標準装備されています。
設定ファイル
設定ファイルは、ホームディレクトリに設置します。
ホームディレクトリは
$ cd ~
で移動できます。
「~」は「チルダ」です。
「Shift+^」です。
ここに「.vimrc」というファイルを作成することで、viは設定ファイルと認識してくれます。
$ vi .vimrc
でファイル名を指定して、viを開きます!
テキスト入力するには
viは
- コマンドモード
- 編集モード
の2つのモードを切り替えて使っていきます。
最初は「コマンドモード」になっています。
なので編集するために「i」を押しましょう。
「i」を押すことで編集モードに切り替わります。
コンソール下部に「--挿入--」とかでてきまます。
これで文字入力ができます!
i = Insert(挿入) と覚えておきましょう!
設定を記述する
今回ぼくが必要だと思って記述した内容がこちら。
set number set autoindent set softtabstop=4 set expandtab
それぞれこのような内容です。
設定値 | 設定内容 |
---|---|
set number | 行番号表示 |
set autoindent | オートエンティティ |
set softtabstop = 4 | タブ→4スペースに変更 |
set expandtab | タブ入力をスペースに変更 |
タブのスペース化について
softtabstopだけで「タブからスペースになった!」と思いました。
しかし、
- 先頭でTabを入力したとき
- オートインデントで、先頭に余白が入ったとき
はスペースになっていました。
しかしそれ以外でTabを入力した際はTab文字が入ってしまいました。
そこで「expandtab」を入力したところ、Tab→スペースに変更することができました。
設定を保存
入力を終えたらこのような手順を踏みます。
- 「Esc」を入力
- 「:wq」と入力
- 「Enter」を入力
これで保存して閉じることができます。
ちなみに「一旦、途中保存したい!」というときは
「:wq」でなく「:w」と入力に変更すればOKです。
- w = Write(書込)
- q = Quit(終了)
と覚えておきましょう!
設定を確認する
さて、設定ファイルを書いたところで、確認をしましょう!
$ vi test.c
などと入力して、表示や入力を確認してください!
ぼくと同じ設定をしたなら
- 行番号が左に表示される
- 「Tab」を入力すると、スペースが4つ入る
- 「{」→「Enter」でインデントされる
- インデント箇所が、スペース4つになっている
- インデント後、「Tab」入力で、スペースが4つ入る
といった感じになります!
タブ文字のファイルを既に作ってしまったアナタへ
「インデントをタブ文字のままファイル作っちゃったけど、スペースにしたいよ……」
と嘆くあなた。
最初に調べなかったぼくと一緒ですね(笑)
そんなときは正規表現を使った置換でサクッと変更しちゃいましょう!
- viでファイルを開く
- コマンドモードの状態にする(開いたらデフォはこの状態)
- 「:%s/\v\t/ /g」と入力
- Enter!
これでタブ文字が、スペース4つに一括置換されます!
コメントとの間に、タブ文字を入力している場合は、別途調整が必要ですが……
す、少しは手間が省けますので……
参考
こちらを参考にしました。
ありがとうございました。