#はじめに
金沢スマートフォンアプリプロジェクトの第1回Vim勉強会で使用した資料です。
授業ではterapadを使用していますが、その10倍...いや100倍の操作性・拡張性をもつVimの始め方・使い方を教えます。
さあ、快適なプログラミングライフに向けて、その環境を整えていきましょう^ω^!
#想定する読者
terapadってなんか味気ない・面白くないと思っている人
Vimのインストールを終えた人
[まだの人]
Macはターミナル→vimと入力
Windowの方はこちらから
#ゴール
Vimを好きになる
少しづつお互いのことを知って、距離を縮めていきましょう。
ベタですが、あらかじめディズニーランドに行く約束をしてあげると発展しやすいです。
第1回では、Vimの大まかな理解~カスタマイズ(小)をゴールとします。
できれば授業の課題や個人開発でも使用して、すこしづつ慣れて頂けたらなと思います。
#Vimとは何か
主にUnix系OSに標準でインストールされているオープンソースのエディタ
キーボードのみで操作することを前提としています。
ちなみにVimは1987年生まれの28歳...むしろストライクゾーンだよね?
##どういうところが好きなのか
・カスタマイズ性が高い。
・CUIである。
→他のCUIとの親和性が高い (tmux, Ruby on Rails)
→起動が軽快(メモリ不足でXcodeが動かない...←よく分からない)
#Vim操作に慣れよう
操作とか言ってはいけませんね。扱い方です。
授業の課題ファイルなどをVimで開いて、動作の確認してみましょう。
以下を参考にやっていきます。
Vimキーマップ
+で普段よく使うコマンドを紹介します。
コマンド | 内容 |
---|---|
yy | 1行コピー |
p | ペースト |
u | 1つ前に戻る |
ctr+r | uの反対 |
Vimをカスタマイズしよう
現時点での私のVim...terapadがどうだとか言えませんね。
Vimの設定は~/.vimrc
に記述していきます。(Windowsの方は*1へ)
vim .vimrc
で開き、何か書かれている場合はdを長押しして全部削除してしまいましょう。(0からカスタマイズ!)
無ければ各自、ファイルを作成してください。vim .vimrc
でok!(訳: vimで.vimrcを開く(無ければ作成))
(*1)ダウンロードしてきたフォルダの中にvim.exeの生存を確認してください。
確認できたら、そのフォルダと同じ欄にvimrc
というファイルがあるので、それを開きます。
コード | 内容 |
---|---|
set number | 行番号表示 |
set expandtab | Tabキーを空白に変換 |
set laststatus=2 | 常にステータスラインを表示 |
上記のコードを記述して保存して終了:wq
します。
再度、vim .vimrc
で開いてみると、Vimの左側に行番号が追加されていることが確認できます。
上記の他にも文字色を変えたり..のカスタマイズ方法は様々です。
各自Webで調べるなどして、自分色に手を加えてみてください。
なんかぐちゃぐちゃして分かんねえ!という方
Vimにはノーマルモードと挿入モードがあります。
通常、vimでファイルを開いた時はノーマルモードになっており、主にカーソル移動を主とします。
何か文字を入力したいとなれば、挿入モードに移ることで入力できます。
カーソル移動はノーマルモード、入力は挿入モードと覚えておくと良いでしょう。
ノーマルモード→挿入モード | 挿入モード→ノーマルモード |
---|---|
i (insertの頭文字) | ctr+[ |
保存して終了ってどうやるの?と思われた方は、ノーマルモードの状態で:
を打つと
vimの下あたりに入力が移ることを確認してください。
そこでwq
と打つと保存して終了することができます。
ノーマルモードへの切り替えは、capslockをctrに設定すると捗りますよ..ボソッ by vim
以上までが第1回Vim勉強会の内容になります。
#+α(次回) プラグインを導入してみよう
NeoBundleを使用します。
NeoBunldeとは、vimプラグインのパッケージマネージャーです。
[NeoBundleを利用してVimプラグインを一元管理する]
(http://qiita.com/kazu0620/items/819679ef006d973c6c22)
Neobundleそのもののインストール等、詳しくは上記のリンクにまとめられているので、参考にしてください。
Neobundleを使用するためには~/.vimrc
を開いて、以下のように記述します。
はじめは練習も兼ねて、neobundle自体をneobundleで管理します。
""---------------------------
" プラグイン管理 Neobundle
"---------------------------
" bundleで管理するディレクトリを指定
set runtimepath+=~/.vim/bundle/neobundle.vim/
" ここからNeobundleを書いていく場所だよ:
call neobundle#begin(expand('~/.vim/bundle/'))
" neobundle自体をneobundleで管理
NeoBundleFetch 'Shougo/neobundle.vim'
" ここでNeobundleで管理するのは終わりね:
call neobundle#end()
filetype plugin indent on
NeoBundleCheck
Vimを保存して終了し、再度Vimを開こうとするとこのプラグインをインストールするか?とVimに尋ねられます。y(yes)を押して、インストールしましょう。
いやいや聞かれないぞ!というWindowsの方
set runtimepath+=
後とcall neobundle#begin(expand
後を絶対パスにする必要があります。
参考 - neobundleのインストール
快適ファイル移動!Uniteのインストール
ファイルを開くとき、コマンドラインでcd ../
,vim .vimrc
とかやるの疲れませんか?
それらのファイル移動をvim内で快適に行うプラグインです!
call neobundle#begin(expand('~/.vim/bundle/'))
からcall neobundle#end()
の間に
以下を記述しましょう。
NeoBundle 'Shougo/unite.vim'
再度vimを開いて、:Unite fileと書くと実行できます。
[参考 - うまくいくとこのようになります]
(https://github.com/Shougo/unite.vim)
できましたか?困ったことがあればコメント欄にて質問をどうぞ!
これでVimのもつ拡張性が伝わればなと思います!
#おわりに
第2回をお楽しみに!