LoginSignup
5
2

More than 5 years have passed since last update.

vimを使い始めて入れたplugin/設定

Last updated at Posted at 2016-11-18

今までEmacs使ってました。しかし、突然go-modeがinvalid rcs patch or internal error in go--apply-rcs-patchエラーを吐きだしはじめ、同時にvim-go導入がめっちゃ楽なのを知り、浮気した次第です。今まで導入したプラグインを紹介します。(今もorg-modeでTODO管理にEmacs使ってます。)

プラグイン一覧

Plugin 用途
pathogen.vim プラグインパッケージ管理。
$HOME/.vim/bundle以下に置いたプラグインを読み込む。
vim-go :GoInstallBinaries Go開発ツール群のインストール。
:GoDoc struct、funcのドキュメント表示。
<c-]>で定義ジャンプ。
<c-t>でジャンプ元に戻る。
vim-ruby <c-x> <c-o>でオムニ補完。
vim-rails :Aと:Rで関連ファイルへ移動。
vim-tags :TagsGenerate!でタグ生成。
<c-]>でタグジャンプ。
<c-t>でジャンプ元に戻る。
ctrlp.vim <c-p>でファイル検索。
<c-v>でWindow垂直分割しつつファイルオープン。
syntastic golintとgovetを保存時に実行、エラー部分を表示する。
Unite.vim :Unite vimgrep ファイル内文字列検索。
unite-outline :Unite outline 構造体・関数定義のアウトライン表示
unite-qf :Unite qf quickfixリストへのジャンプ。

.vimrc

.vimrc
execute pathogen#infect()

" Set leader command for custom keybind
let mapleader = "\<Space>"

" Unite keybind
nnoremap <leader>g :<C-u>Unite -start-insert vimgrep<CR>
nnoremap <leader>o :<C-u>Unite outline<CR>
nnoremap <leader>q :<C-u>Unite qf locationlist<CR>

" share clipboard. requireies clipboard 
set clipboard+=unnamed
" delete key doesn't work?
set backspace=indent,eol,start

" vim basic configurations
syntax on
filetype plugin indent on
colorscheme desert

set number
set ruler
set cursorline

" toggle paste mode and nopaste mode 
" to enter insert(paste) mode, use :a!
autocmd InsertLeave * set nopaste

" syntastic configurations
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0

" vim-go configurations
let g:go_fmt_command = "goimports"
let g:vim_tags_ctags_binary = "/usr/local/Cellar/ctags/5.8_1/bin/ctags"
let g:syntastic_go_checkers = ['golint', 'govet', 'go']
let g:go_list_type = "quickfix"

" CtrlP configurations
let g:ctrlp_map = '<c-p>'
let g:ctrlp_cmd = 'CtrlPMixed'

set wildignore+=*/tmp/*,*.so,*.swp,*.zip
let g:ctrlp_custom_ignore = '\v[\/]\.(git|hg|svn)$'

NOTE: vim-goのsyntastic設定はREADMEの記載に従わないほうが良いかも

2016/12/19時点
vim-goの記述では、syntasticの設定は

let g:syntastic_go_checkers = ['golint', 'govet', >'errcheck']
let g:syntastic_mode_map = { 'mode': 'active', >'passive_filetypes': ['go'] }

と記載されているが、下記のように、g:syntastic_mode_mapの設定は不要で、g:syntastic_go_checkersに'go'を追加する必要があるようです。(参考)

let g:syntastic_go_checkers = ['govet', 'errcheck', 'go']

SSH(teraterm)利用時、ローカルマシンのクリップボードにヤンクした文字列をコピーする

Tera Termで [設定]->[その他の設定]->[制御シーケンス]->[リモートからのクリップボードアクセス]->[書き込みのみ] を設定する。
選択範囲をクリップボードにコピー
vもしくはVを使用し、コピーする範囲を選択します。
選択した状態で、:w !pbcopyと入力しEnterを押して下さい。
  これでクリップボードにコピーされました。
ファイル全体をクリップボードにコピー
:%w !pbcopyと入力し、Enterを押して下さい。

[引用元] http://blue-red.ddo.jp/~ao/wiki/wiki.cgi?page=%A5%B3%A5%DE%A5%F3%A5%C9%A4%AB%A4%E9TeraTerm%A4%CE%A5%AF%A5%EA%A5%C3%A5%D7%A5%DC%A1%BC%A5%C9%A4%D8%A5%B3%A5%D4%A1%BC

気になってるプラグイン

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2