leafpad .vimrc
" plugin .vim/plugin " NERD_commenter.vim http://d.hatena.ne.jp/tanakaBox/20070409/1176062438 " FuzzyFinder http://www.vim.org/scripts/script.php?script_id=1984 nnoremap sf :new<Cr>:FuzzyFinderFile<Cr> " http://hatena.g.hatena.ne.jp/hatenatech/20060515/1147682761 set nocompatible " Use Vim defaults instead of 100% vi compatibility set backspace=indent,eol,start " more powerful backspacing set nobackup " Don't keep a backup file "set number " 行番号を表示 :se nu 非表示 :se nonu :h number set incsearch " 検索文字を打ち込むと即検索する(インクリメンタルサーチ) set wildmenu " :e .v<TAB><TAB> した時に補完候補を上に表示 "set list " 改行に$を表示 :se list :se nolist set expandtab set tabstop=2 set softtabstop=2 set shiftwidth=2 set ignorecase " 検索文字列が小文字の場合は大文字小文字を区別なく検索する set autoindent set cindent set smarttab set laststatus=2 "set statusline=%n\:\ %f\ %m\ %r%{&foldenable!=0?'[fen]':''}%=%l/%L\ (%p%%)\ %{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'} " http://github.com/januswel/dotfiles/blob/68b7980885979acffd2be82a106032e6d2f9c5f4/.vimrc set statusline=%t\ %y%{'['.(&fenc!=''?&fenc:&enc).':'.&ff.']'}%r%m%=%c:%l/%L[%3p%%] "set cursorline " :se cul :se nocul :h cursorli set hidden " バッファが編集中でもその他のファイルを開けるように set fileencoding=utf-8 set encoding=utf-8 set showmatch " 対応するカッコを強調表示 syntax on " /etc/vimrc(fedora) colorscheme darkblue " darkblue はデフォルトでインストール済み "colorscheme desert " keymap " http://hatena.g.hatena.ne.jp/hatenatech/20060515/1147682761 " ノーマル、ビジュアル、挿入時、コマンド入力時(:wq)にShift + l(Ctrl + l)で抜ける " L が入力できないので l を入力して~で大文字に変換 " 本来Lは画面の一番下にカーソル移動 一番上はH imap <C-l> <esc> imap <C-g> <esc> map <C-l> <esc> map <C-g> <esc> "make Shift+l(Ctrl + l) an additional ESC "noremap L <ESC> "noremap <C-l> <ESC> "noremap <C-g> <ESC> "cnoremap L <C-C> "cnoremap <C-l> <C-C> "cnoremap <C-g> <C-C> " :w など入力時にShift + l でキャンセル cmap <C-l> <C-C> cmap <C-g> <C-C> "inoremap L <ESC> "inoremap <C-l> <ESC> "inoremap <C-g> <ESC> " http://github.com/guyon/configs/tree/master/.vimrc " .vimrcの再読み込み "nnoremap ,vr :source $HOME/.vimrc<CR> nnoremap ,vr :source %<CR> " Ctrl + z でジャンプする前の位置に移動(gg,Shift + g,10 Shift + g) map <C-z> <C-o> " Ctrl + k で行末までカット map <C-k> D " Space で半画面スクロール Ctrl + u で上へ半画面スクロール "map <Space> <C-d> " Ctrl + a で行頭 本来Ctrl + a は値の増加 map <C-a> 0 " すべて選択 ggVG " すべてコピー ggyG " 行末までコピー y Ctrl + e " Ctrl + e で行末 本来Ctrl + e は1行下にスクロール 上はCtrl + y map <C-e> $ " Shift + c 行末までカットして挿入モード " command mode 時 tcsh風のキーバインドに cmap <C-A> <Home> cmap <C-E> <End> cmap <C-F> <Right> cmap <C-B> <Left> cmap <C-D> <Delete> " Ctrl + c で ESC(コマンド入力時(:wqとか)) " ee で上書き保存 eで文字の末尾に移動が遅くなる "nnoremap ee :w<CR> " qq で上書き保存して終了 Shift + zz nnoremap qq :wq<CR> " :ls でbuffer一覧表示 " :e .emacs で新しくbufferに開く "buffer operation nnoremap sn :bn<CR> nnoremap <C-T> :bn<CR> nnoremap sp :bp<CR> "window operation " ssで分割 scで閉じる so noremap ss <C-W>s noremap sc <C-W>c noremap so <C-W>o "move "tt で別のウィンドウへ移動 sjで下 siで上 noremap tt <C-W><C-W> noremap sj <C-W>j noremap si <C-W>k "resize +広げる -狭める noremap + <C-W>+ noremap - <C-W>- " zEnter で最大化 noremap z<CR> <C-W>_ " z0 で最小化 noremap z0 1<C-W>_ " z. で均等に noremap z. <C-W>= " 表示行単位で行移動する 長い行で自動折り返した時用 nnoremap j gj nnoremap k gk " b でブレース 対応する括弧(){}にジャンプ nmap b % " http://d.hatena.ne.jp/guyon/20081230/1230648901 " http://github.com/guyon/configs/tree/master/.vimrc " 検索時に画面中央にくるようにする " nzzを割り当てるとfold時の検索でnを押して次に進んだ場合に自動展開されない nnoremap n nzzzv nnoremap N Nzzzv nnoremap * *zzzv nnoremap # #zzzv nnoremap g* g*zzzv nnoremap g# g#zzzv " 全角スペースを視覚化 highlight ZenkakuSpace cterm=underline ctermfg=lightblue guibg=white match ZenkakuSpace / / " http://d.hatena.ne.jp/magicalhat/20081223/1230013283 if has("autocmd") filetype plugin indent on autocmd FileType perl,cgi :compiler perl "コンパイラの指定 " テンプレ http://d.hatena.ne.jp/higeorange/20071003/1191356790 "autocmd BufNewFile *.html 0r ~/.vim/templates/skel.html " filetypeをセット http://d.hatena.ne.jp/rdera/20090110/1231565387 " autocmd BufNewFile,BufReadPost ~/.zfunc/* :set ft=zsh " カーソルの位置を復元 Ubuntu 8.10 " http://d.hatena.ne.jp/chonmagejiro/20080815/1218780398 " When editing a file, always jump to the last known cursor position. " Don't do it when the position is invalid or when inside an event handler " (happens when dropping a file on gvim). autocmd BufReadPost * \ if line("'\"") > 0 && line("'\"") <= line("$") | \ exe "normal g`\"" | \ endif endif " 文字コードの自動認識 " http://www.kawaz.jp/pukiwiki/?vim#cb691f26 if &encoding !=# 'utf-8' set encoding=japan set fileencoding=japan endif if has('iconv') let s:enc_euc = 'euc-jp' let s:enc_jis = 'iso-2022-jp' " iconvがeucJP-msに対応しているかをチェック if iconv("\x87\x64\x87\x6a", 'cp932', 'eucjp-ms') ==# "\xad\xc5\xad\xcb" let s:enc_euc = 'eucjp-ms' let s:enc_jis = 'iso-2022-jp-3' " iconvがJISX0213に対応しているかをチェック elseif iconv("\x87\x64\x87\x6a", 'cp932', 'euc-jisx0213') ==# "\xad\xc5\xad\xcb" let s:enc_euc = 'euc-jisx0213' let s:enc_jis = 'iso-2022-jp-3' endif " fileencodingsを構築 if &encoding ==# 'utf-8' let s:fileencodings_default = &fileencodings let &fileencodings = s:enc_jis .','. s:enc_euc .',cp932' let &fileencodings = &fileencodings .','. s:fileencodings_default unlet s:fileencodings_default else let &fileencodings = &fileencodings .','. s:enc_jis set fileencodings+=utf-8,ucs-2le,ucs-2 if &encoding =~# '^\(euc-jp\|euc-jisx0213\|eucjp-ms\)$' set fileencodings+=cp932 set fileencodings-=euc-jp set fileencodings-=euc-jisx0213 set fileencodings-=eucjp-ms let &encoding = s:enc_euc let &fileencoding = s:enc_euc else let &fileencodings = &fileencodings .','. s:enc_euc endif endif " 定数を処分 unlet s:enc_euc unlet s:enc_jis endif " 日本語を含まない場合は fileencoding に encoding を使うようにする if has('autocmd') function! AU_ReCheck_FENC() if &fileencoding =~# 'iso-2022-jp' && search("[^\x01-\x7e]", 'n') == 0 let &fileencoding=&encoding endif endfunction autocmd BufReadPost * call AU_ReCheck_FENC() endif " 改行コードの自動認識 set fileformats=unix,dos,mac " □とか○の文字があってもカーソル位置がずれないようにする if exists('&ambiwidth') set ambiwidth=double endif " メモ memo " :help a または :h a。分割ウィンドウで表示。scで閉じる。z.で同じサイズに " :h ctrl-z。:h insert-index。 " " アンドゥ u " 行の切り取り dd " 行のコピー yy " 4文字コピー y4 " 行末までカット Ctrl + k " 画面の一番上に移動 Shift + h 中央 Shift + m 一番下 Shift + l " ペースト p " 上書き保存 :w " ESC = Ctrl + l " 下スクロール Ctrl + f " 上スクロール Ctrl + b " ウィンドウ分割 ss " ウィンドウを閉じる sc " http://d.hatena.ne.jp/shakaku/20090124 " vlllとかで選択して "+y でコピーします(Firefoxとかに貼り付け可能) " .vimrc を編集保存して、:source % するかvimを再起動すると反映します。 " アドレスを右クリックしてFirefoxで開ける " Shift + k 関数の説明? " :x (または :wq) 保存して終了 " :w で上書き保存 " $ vimtutor " d0 行頭までをカット " カーソルの位置は自動保存 " 10 Shift + g で 10行めにジャンプ " 10 j 10行下にジャンプ。Ctrl + zで戻る " Ctrl + z ジャンプする前の位置に戻る " http://www.thinkit.co.jp/article/123/3/ " :new または Ctrl + w n 新しいウィンドウを開く " z<Enter> 分割中のアクティブなウィンドウを最大化 " z0 分割中のアクティブなウィンドウを最小化 " z. 分割ウィンドウを同じ大きさに変更 " z10<Enter> 分割中アクティブなウィンドウを10行表示 " z- カーソル行を一番下になるようスクロール " zt カーソル行を画面の最初に。zz 中央に。zb 最後に。 " v でビジュアルモード、再度vで抜ける(Shift + v、Ctrl + vも同様) " gd カーソルのある位置の文字で検索(* と同じ) " ga アスキーコードを表示 " Ctrl + m 次の行の行頭に移動 " gi 最後に追加した後の位置に追加 " e 文字の末尾に移動(wと同じ?)。ge 前の文字の末尾に移動 " 文字コード指定して開き直す ":e ++enc=euc-jp ":e ++enc=sjis ":e ++enc=iso-2022-jp " :lcd Desktop 分割したウィンドウだけcd " 単語の補完 Ctrl + p。Ctrl + n で後方。Ctrl + l で決定。 " /hello 後方検索。?hello 前方検索。n で次を検索。Shift + n で前。 " /hello して Ctrl + h でBackspace " o でカーソルの下に新しい行を追加。Shift + o でカーソルのある行に追加 " Shift + r 上書き変更 " ファイルの一番上へ gg。 一番下へ Shift + g。10行めへ 10 Shift + g。 " Shift + a 行末に追加 " :noh または :nohlsearch 検索のハイライトを消す " Ctrl + z で一時停止 コマンドが入力でき、$ fg で元に戻す " 関数の折りたたみ zf 展開 Space " mark(tag)一覧表示 :marks " markをつける ma(aは任意) markにジャンプ 'a(aは任意) 終了後も保存 " '' 直前の行(マーク)に戻る。ジャンプする前に戻ったり。 " 大文字小文字の変換 ~ " Shift + x 前の文字を削除(Backspaceと同じ)、x カーソルのある文字を削除 " 複数行まとめてコメント化 行頭でCtrl + v jjjj Shift + i # Esc " pathやファイル名などを表示 2 Ctrl + g " バッファのリストを表示 :ls " sn 次のバッファ sp 前のバッファ " ファイルをバッファに開く :e .vimrc " 次のendの前まで削除 d/end<return> " :set nonu で行番号を非表示、 :set nu で表示 " vllで範囲選択してyでコピー、pでカーソルの右にペースト Shift + p で左にペースト " vllで範囲選択してdでカット、pでカーソルの右にペースト Shift + p で左にペースト " vllで選択中oで選択範囲の四隅へ移動 " 行の特定の文字の手前まで削除 例 ) の手前まで削除するには、ct) " 半画面下にスクロール 上Ctrl + d 上Ctrl + u " 保存して終了 Shift + zz " アンドゥ u。行をまとめてアンドゥ Shift + u。 " アンドゥのやり直し Ctrl + r " 10行めへジャンプ 10 Shift + g " 選択スタート v(visual) " 行選択スタート Shift + v " 矩形選択スタート Ctrl + v " 1行上にスクロール Ctrl + y 下 Ctrl + e " 1画面上にスクロール Ctrl + b 下 Ctrl + f " sn 次のバッファを表示 sp 前のバッファを表示 " 文字を削除して挿入モード s 行を削除して挿入モード Shift + s " 行を切り取り挿入モード cc または Shift + s " 文字をカーソルの右に追加 a 行末に追加 Shift + a " 文字をカーソルの左に挿入 i 行頭に挿入 Shift + i " 同じ行の任意の文字にジャンプ fa(aは任意) ta で文字の手前にジャンプ " 同じ行の任意の文字にジャンプ fa;(;で繰り返し) fa;,(,で逆方向に繰り返し) " p viのyやddでコピー・カットしたものを貼り付け " 行を複製 yyp " xp 2文字の入れ替え(EmacsではCtrl + t) " 下に空白行を挿入して挿入モード o " クリップボードの内容貼り付け :a して Ctrl + Shift + v して Ctrl + c " 行連結 Shift + j (自動的に半角スペースで区切る) " * カーソルのある位置の単語で検索。逆方向に検索は#。 " cw 単語を切り取って挿入モード " dw 単語をカット " macro記録開始 qa(aは任意) 記録終了 q 実行 @a " 行末までをカットして挿入モードへ Shift + c " コントロールコードの入力 Ctrl + Shift + v (例えば :set をコピーした状態で) " indent追加 >>、 indent解除 <<。 複数行選択しても可能 " Shift + v で行を選択して、> でindent追加。 >.. で連続 " Shift + q Exモード " 保存 :w。保存して終了 :wq。保存せず終了 :q!。
ESCは遠いので、ESCの代わりにCtrl + l(Shift + l)
5月8日の技術勉強会 - はてな技術発表会日記 - 機能変更、お知らせなど
,, で
処理系コレクション:Linux:~/.vimrc
vim でカーソルの位置を復元する方法 - ちょんまげじろうの日記
ずれないようにペーストするには、(vim7では:a!)
:a! して、Ctrl + Shift + v して、Ctrl + c
ペースト時 の vim のオートインデントを無効にしたい - Web道楽
はてな vim 勉強会勝手にリファクタリング
colorize.vim 入力モード時は背景色を変更 — 名無しのvim使い
hello.cとかで入力中{の後Enterで自動インデント、}も対応)(filetype plugin indent on)
せっかくなので、昔流行っていたらしい vimrc 晒しをやってみる - ふしぎなぼうし
ずんWiki - vim 文字コードの自動判別
,cc でコメントアウト(複数行選択時も可)(hello.cとかファイルタイプで自動判別)(,c
NERD_commenter.vim を .vim/plugin に入れます。
VimのヤバすぎコメントプラグインNERD_comments.vim - ボクノス
jpease's vimrc at master — GitHub
Vimを使ったRuby On Rails開発環境の構築 - ナレッジエース
FuzzyFinder (プラグイン)
fuzzyfinder.vim を .vim/plugin に入れてvimを再起動します。
.vimrc に
nnoremap sf :FuzzyFinderFile<Cr>
を追加しておくと、sfで起動してファイル名の一部を入力してCtrl+nとかで選択できます。
(または:FuzzyFinderFile で起動します。(:Fuzz[tab] とかで補完できます))
rubyneko - fuzzyfinderの簡単な使い方
fuzzyfinder.vim - vimグループ
補完候補を自動的にポップアップ表示するプラグイン autocomplpop.vim
autocomplpop.vim を .vim/plugin に入れてvimを再起動します。
vim autocomplpop.vimで補完候補を自動的にポップアップする方法
候補が表示された時にEnterで補完されます
Ctrl + n や Ctrl + p で候補切り替え
文字の途中で改行したい時はCtrl + n で切り替えてEnter
Ctrl + v で矩形範囲選択モードにして、コメントの#だけを複数行矩形選択してd で削除とか、複数行に#を追加とか(複数行の1文字目を矩形選択してShift + i # ESC)。
5月2日の技術勉強会 - はてな技術発表会日記 - 機能変更、お知らせなど
入力中Ctrl+nやCtrl+pで同じファイル内の単語で補完
viの使い手がvimエディタについて知っておくべき事 トップ10 — 名無しのvim使い
:make
vim × Perl のコンパイルを簡単にするコマンドと設定 (Perl.vim) - iDeaList::Writing
Digital Junk::プログラマが知っておくべき100のVimコマンド
grep(未確認)
ack.vim - vim から ack の検索結果を使う - 川o・-・)<2nd life
Best Vim Tips - Vim Tips Wiki - a Wikia wiki
.vimrc をバックアップしておく - TrashSUITE
/dotfiles/vim – CodeRepos::Share – Trac
Web屋のためのVim設定・Tipsまとめ 1/2 - ナレッジエース
編集中のファイルをブラウザで開く - new Error(”exeception throw”)
基本 (vimエディタ) サイト更新停滞ちうっ 名無しのVIM使い
"+y でクリップボードにコピー。(Firefoxとかに貼り付け可能) (Fedora10は-xterm_clipboard)
2009-01-24 - shakakuの日記
ハタさんのブログ : vimのgrep(vimgrep)が素晴らしすぎて泣いた。
Vimで編集中のプログラムをキー一発で実行するTips - 医者を志す妻を応援する夫の日記