Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

最近乗り換えたvimプラグインやら

$
0
0

ディレクトリツリーからファイル選択

NERDTreeからvimfilerに乗り換えた。

両者はいずれもディレクトリツリーからファイルを開くという意味では一見良くてい似ています。
しかしそのコンセプトは別物で、自分にはvimfilerのコンセプトが合致したので乗り換えました。

簡単にいえばNERDTreeは常にディレクトリツリーを表示して使用するのに対し、
vimfilerはディレクトリツリーを必要に応じすべてのウィンドウで表示可能な点が異なります。

説明が下手すぎるので、詳細はvimfilerのヘルプにもリンクしてある以下を参照して下さい。
わかりやすい。
http://vimcasts.org/blog/2013/01/oil-and-vinegar-split-windows-and-project-drawer/

なおNERDTree的な使い方も必要な場合は:VimFilerExploreコマンドにて実現可能です。
状況によってはこちらも利用しています。

.vimrc
NeoBundle 'Shougo/vimfiler.vim'nnoremap<leader>e :VimFilerExplore -split -winwidth=30-find -no-quit<Cr>

コマンド

移動

keyaction
j上へ
k下へ
l子ツリーへ(exploreオプションで動作変わる)
h親ツリーへ(exploreオプションで動作変わる)
ggトップへ
L別ドライブへ(Unite形式)
~ホームへ
\ルートへ
&プロジェクトルートへ
C-j履歴へ(Unite形式)
BS親ツリーへ
Iパス直接指定移動

表示

keyaction
.非表示ファイルの表示切り替え
Mフィルタリング(Unite形式)
tツリー展開
T再帰的ツリー展開
S並びかえ
C−l再描画
C-gフルパスを出力
g<C-g>全画面トグル

検索

keyaction
grgrep(Unite形式)
gffind(Unite形式)

実行

keyaction
e編集(g:vimfiler_edit_actionで定義)
Eeの分割バージョン
<enter>実行(g:vimfiler_execute_file_listで定義)
Hshell(vimshell)起動
x関連付けで開く
Bバイナリ編集(vinariseが必要)
aアクション選択
ge外部ファイラーで開く
!シェルコマンド実行
vプレビュー(g:vimfiler_preview_actionで定義)

閉じる

keyaction
-現在のvimfiler画面を閉じる
qvimfilerを隠す
Qvimfiler終了

ファイル操作

keyaction
gssafe mode 解除
cコピー
m移動
d削除
rリネーム(renamer.vimライク)
Kディレクトリ作成
Nファイル作成
Ccクリップボードへコピー
Cmクリップボードへ移動
Cpクリップボードから貼付け
ovimfilerの同期
O他方のvimfilerで開く

マーク

keyaction
<space>マーク
*すべてマークのトグル
Uすべてクリア

インデントをわかりやすく表示

indent-guidesからindentLineに乗り換えました。

特に不満はなかったが、ある日突然重くなりそのまま乗り換えたら便利だったのでそのまま使用しています。
g:indentLine_fasterを有効にするとさらに軽くなって良いです。

.vimrc
NeoBundle 'Yggdroot/indentLine'letg:indentLine_faster =1
nmap <silent><Leader>i :<C-u>IndentLinesToggle<CR>

こんな感じで表示されます。

スクリーンショット 2014-09-11 21.04.32.png

テキストを整列

aligntaからeasy-alignに乗り換えました。

.vimrc
NeoBundle 'junegunn/vim-easy-align'

以下は公式のデモですが、これを見て便利そうだったので使っています。

公式のdemo

カーソルの移動

もともとeasymotionを使っていて、今でも使っています。

.vimrc
NeoBundle 'Lokaltog/vim-easymotion'

ただ他にもいろいろ試しましたが、正直カーソルスピードを上げるのが一番効果がありました。
Macなら変更はKarabiner(旧KeyRemap4MacBook)にて例えば以下のように設定可能です。
(Windowsではkbdaccとか使用)

スクリーンショット 2014-09-11 21.22.24.png

あと地味にsmartwordも便利だったので入れました。

.vimrc
NeoBundle 'kana/vim-smartword'
nmap w<Plug>(smartword-w)
nmap b<Plug>(smartword-b)
nmap e<Plug>(smartword-e)

ウィンドウサイズの変更

vim-submodeで以下のようにしていました。
これなら<C-w>+<C-w>+<C-w>+<C-w><<C-w><などが<C-w>+++<<でできて便利です。

.vimrc
NeoBundle 'kana/vim-submode'forkin split('<>+-=n','.\zs')call submode#enter_with('winsize','n','','<C-w>'.k,'<C-w>'.k)call submode#map('winsize','n','',k,'<C-w>'.k)endfor

でも今更altキーにもマップできると知り試してみました。
モードを抜ける動作も不要なので、この場合に限りこちらの方法が楽でした。

.vimrc
" マックの場合に必要set macmeta
" サイズ変更nnoremap<M-+><C-w>-nnoremap<M--><C-w>+nnoremap<M->><C-w>>nnoremap<M-<><C-w><" option + q でリセットnnoremap<M-q><C-w>=" option + a で最大化nnoremap<M-a><C-w>_<C-w><Bar>" 移動nnoremap<M-h><C-w>hnnoremap<M-j><C-w>jnnoremap<M-k><C-w>knnoremap<M-l><C-w>l

これにより先程の入力はalt+;;;<<で入力可能です。

他にウィンドウ移動なども割り当てて使っています。


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>