MacでVimを使い始めるメモ : Vim

Pocket

Vimを使い始めたのでメモ。

環境構築

バージョンの確認

 $ vim -v

設定ファイル(.vimrc)[1]

ホームディレクトリ[2]に新規作成する。

vimディレクトリ

ホームディレクトリに.vimディレクトリを作成する。

cd ~
mkdir .vim

プラグインインストール

インストール方法ほプラグインによって異なる。zipで配布されているプラグインの多くは.vimディレクトリに展開すればよい。

unzip zipファイル -d Users/ユーザー/.vim

Vimヘルプ

:help タグ

日本語ヘルプ

» vim-jp/vimdoc-ja – GitHub
zipファイルを解凍して.vimディレクトリに配置する。

モード

viはおもに4つのモードを使い分けて作業をする。ノーマルモード、コマンドモード、ビジュアルモード、挿入モード。

入力補完

vimはデフォルトでいくつかの入力補完機能を持つ。

入力補完用プラグイン AutoComplPop

デフォルトでは入力補完は補完したい位置でctrl+nを入力する。AutoComplPopは自動でポップアップを表示する。

» AutoComplPop – Automatically opens popup menu for completions : vim online
» autocomplpop.vimでリアルタイムにキーワード補完 – ナレッジエース

AutoComplPopをインストールして<を入力するとoption omnifuncというエラーが出た。.vimrcに追加すると解消した。

setlocal omnifunc=syntaxcomplete#Complete

» nabetama.blog » Blog Archive » vimで Option ‘omnifunc’ is not set というエラーが出た場合の対処法

改行でポップアップをキャンセルする。.vim/autoload/acp.vimの192行目を書き換える

» Vimでのオートコンプリート設定覚書 | Mach3.laBlog

Zen-Coding

» ZenCoding.vim – vim plugins for HTML and CSS hi-speed coding. : vim online

Zen-Codingのインデントのタブを半角4文字へ変更する。
» Vimmerなプログラマは迷わずZen-Codingしろ! – idesaku blog

初期設定

都度コマンドモードで実行する方法を書いているが.vimrcに記載するとVim起動時に設定が反映される。

シンタックス表示

:syntax on

UTF-8のファイルを表示する

:set encoding=utf-8

行番号を表示する。

:set number

カラースキームを設定する。

colorscheme darkblue

インデントを半角スペース4つにする。

:set tabstop=4
:set autoindent
:set expandtab
:set shiftwidth=4

タブと行末半角スペースを強調する[3]

:highlight TabSpace ctermbg=DarkBlue
:match TabSpace /\t\|\s\+$/

バックアップファイルを作成しない。

set nobackup

ペーストのさいにオートインデントを停止する。

:set paste

行番号へジャンプする。

:行番号

現在行に背景色を設定する。

" カーソル
set cursorline
highlight CursorLine ctermbg=LightGrey
highlight CursorLine ctermfg=Blue

ウインドウ

複数ウインドウの操作

便利なチートシートが下記のURLで公開されている。そこからいくつかウィンドウ関連の処理を書く。
» www.namaraii.com/files/vim-cheatsheet.pdf

:split 画面を上下に分割
:vsplit 画面を左右に分割
:close 作業ウインドウを閉じる
:new filename 新規ウインドウを作成(垂直)
:vnew filename 新規ウィンドウを作成
:ctrl + w, w ウィンドウの移動

タブウィンドウ

vim7からタブに対応。.vimrcに下記の記述を追加。

set showtabline=2

下記のコマンドでタブを操作できる。

:tabnew filename
filenameファイルを新しいタブで開く

その他のコマンドは下記のサイトが詳しい。
» Windows版のgvimをタブエディタ化する | Linuxで自宅サーバ構築

file explore

vimでディレクトリを開くと file explorer になります。

  :e /path/to/some/directory/

複数のファイルを同時並行で編集したり参照したりする必要がある場合(よくありますよね)には、vimを一旦suspendして他の文書を開きなおすよりも、vnew等で横に file explorer を開いて目的にファイルを探すほうが速いです。一度開けば次からはバッファ番号でそのファイルを呼び出すことが可能です。

» vimで効率的にコードを書くための小技 – bonar note

jslint.vim

Max OS 10.6.8, vim 7.2.108にjslint.vimをインストールする。

» hallettj/jslint.vim – GitHub

zipをダウンロードして解凍する。readmeファイルにインストール方法が記載されている。Macは以下のように記載してある。

  1. 解凍したftpluginの中身を.vim/ftpluginへコピーする。
  2. .vimrcにfiletype plugin onを記載する。

MacはJavaScriptの実行環境がデフォルトでインストールされているので以上の設定で動くとあるがエラーが発生した。

エラー

Error detected while processing function <SNR>22_JSLint:
line   40:
could not invoke JSLint!

下記の方法で解決した。

  1. node.jsをインストール
  2. .vimrcにlet $JS_CMD=’node’を追加する。

.vimrcの設定

" 共通                                                                                                                                                                                                                                      
set nocompatible

" カラー設定
"colorscheme DarkBlue
" colorscheme evening
" set background=dark

" 文字コード
set encoding=utf-8

" 画面
set number
set ruler

" タブウィンドウ
set showtabline=2

" カーソル
set cursorline
"highlight CursorLine ctermbg=LightGrey
"highlight CursorLine ctermfg=Blue

" タブと行末半角スペースと半角スペース
highlight TabSpace ctermbg=DarkBlue
match TabSpace /\t\|\s\+$/

"タブ1文字を半角4文字分に設定
set tabstop=4
" vimの挿入するインデントを半角4文字分に設定
set shiftwidth=4
" キーボードのtabで挿入される半角文字数
set softtabstop=0
" タブを半角スペースに置き換える
set expandtab
" オートインデントの設定
set autoindent

" シンタックス
syntax on

" autocomplpop.vim
setlocal omnifunc=syntaxcomplete#Complete

" jsLint
let $JS_CMD='node'
filetype plugin on

" swapファイル
set noswapfile

" ファイル読み込み
" PHP辞書
autocmd FileType php :set dictionary=~/.vim/dict/PHP.dict,~/.vim/dict/wordpress.dict

" zencodingの設定 インデント>を半角スペース4文字
let g:user_zen_settings = { 
            \'indentation' : '    '
            \}

ペースト

shift + insert

» vimにクリップボード(clipbrd)から貼り付ける方法: こぴーのーと

[1] 改行コード Unix /Mac OS X&rArr LF, Windows ⇒ CRLF, Mac OS 9以前 CR。
[2] ホームディレクトリ echo $HOME(またはecho ~)で表示されるパス。
[3] 強調されてないスペースは半角スペース。

コメント

No comments yet.

コメントの投稿

改行と段落タグは自動で挿入されます。
メールアドレスは表示されません。