tag:crieit.net,2005:https://crieit.net/users/tamago324_pad/feed たまたまごの投稿 - Crieit Crieitでユーザーたまたまごによる最近の投稿 2019-12-08T07:00:07+09:00 https://crieit.net/users/tamago324_pad/feed tag:crieit.net,2005:PublicArticle/15589 2019-12-08T07:00:07+09:00 2019-12-08T07:00:07+09:00 https://crieit.net/posts/Vim-5 Vimで個人的に便利だと思うマッピング 5つ <p>こんにちは<br /> たまたまごです。<br /> Vim歴は2年ほどになります。<br /> Vim がないと生きていけない体になってしまいました!!<br /> そんな Vimmer が個人的に便利だと思うマッピングを5つ紹介します。</p> <ul> <li>1.保存、閉じる</li> <li>2.上下の空白に移動</li> <li>3.現在のウィンドウを新規タブで開く</li> <li>4.ファイルの末尾に移動したら、そのまま中央に持ってくる</li> <li>5.ビジュアルモードで末尾まで選択 (改行を含めない)</li> </ul> <p>一つ一つ見ていきましょう。</p> <h2 id="1. 保存、閉じる"><a href="#1.+%E4%BF%9D%E5%AD%98%E3%80%81%E9%96%89%E3%81%98%E3%82%8B">1. 保存、閉じる</a></h2> <p><a target="_blank" rel="nofollow noopener" href="https://github.com/thinca/config/blob/90ac8387dc6ce60c34aa459a5c2287d15950b429/dotfiles/dot.vim/vimrc#L1122-L1126">thincaさんのvimrc</a> から持ってきました。</p> <pre><code>nnoremap <silent> <Space>w :<C-u>update<CR> nnoremap <silent> <Space>W :<C-u>update!<CR> nnoremap <silent> <Space>q :<C-u>quit<CR> nnoremap <silent> <Space>Q :<C-u>quit!<CR> </code></pre> <h2 id="2. 上下の空白に移動"><a href="#2.+%E4%B8%8A%E4%B8%8B%E3%81%AE%E7%A9%BA%E7%99%BD%E3%81%AB%E7%A7%BB%E5%8B%95">2. 上下の空白に移動</a></h2> <p><a target="_blank" rel="nofollow noopener" href="https://twitter.com/Linda_pp/status/1108692192837533696">ドッグさんのツイート</a> から持ってきました。<br /> ざっくりとした上下移動は、これで移動しています。</p> <pre><code>nnoremap <C-j> } nnoremap <C-k> { vnoremap <C-j> } vnoremap <C-k> { </code></pre> <h2 id="3. 現在のウィンドウを新規タブで開く"><a href="#3.+%E7%8F%BE%E5%9C%A8%E3%81%AE%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6%E3%82%92%E6%96%B0%E8%A6%8F%E3%82%BF%E3%83%96%E3%81%A7%E9%96%8B%E3%81%8F">3. 現在のウィンドウを新規タブで開く</a></h2> <p>よく使っています。</p> <pre><code>nnoremap st <C-w>T </code></pre> <h2 id="4. ファイルの末尾に移動したら、そのまま中央に持ってくる"><a href="#4.+%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E6%9C%AB%E5%B0%BE%E3%81%AB%E7%A7%BB%E5%8B%95%E3%81%97%E3%81%9F%E3%82%89%E3%80%81%E3%81%9D%E3%81%AE%E3%81%BE%E3%81%BE%E4%B8%AD%E5%A4%AE%E3%81%AB%E6%8C%81%E3%81%A3%E3%81%A6%E3%81%8F%E3%82%8B">4. ファイルの末尾に移動したら、そのまま中央に持ってくる</a></h2> <p>意外と便利です。</p> <pre><code>nnoremap G Gzz </code></pre> <h2 id="5. ビジュアルモードで末尾まで選択 (改行を含めない)"><a href="#5.+%E3%83%93%E3%82%B8%E3%83%A5%E3%82%A2%E3%83%AB%E3%83%A2%E3%83%BC%E3%83%89%E3%81%A7%E6%9C%AB%E5%B0%BE%E3%81%BE%E3%81%A7%E9%81%B8%E6%8A%9E+%28%E6%94%B9%E8%A1%8C%E3%82%92%E5%90%AB%E3%82%81%E3%81%AA%E3%81%84%29">5. ビジュアルモードで末尾まで選択 (改行を含めない)</a></h2> <p>改行を含めたくないときが多いので、このようにマッピングしています。 (<code>set selection=include</code> としているためです。)</p> <pre><code>vnoremap <Space>l $h </code></pre> <h2 id="おまけ"><a href="#%E3%81%8A%E3%81%BE%E3%81%91">おまけ</a></h2> <p>おまけとして、個人的によく使うコマンドを2つ紹介します</p> <h3 id="1. カレントバッファをシステムのアプリで開く"><a href="#1.+%E3%82%AB%E3%83%AC%E3%83%B3%E3%83%88%E3%83%90%E3%83%83%E3%83%95%E3%82%A1%E3%82%92%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E3%81%AE%E3%82%A2%E3%83%97%E3%83%AA%E3%81%A7%E9%96%8B%E3%81%8F">1. カレントバッファをシステムのアプリで開く</a></h3> <p>HTMLをブラウザで確認したいときに便利です。</p> <pre><code>command! ThisOpen call system('start ' . expand('%:p')) </code></pre> <h2 id="2. ファイルタイプの変更"><a href="#2.+%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%BF%E3%82%A4%E3%83%97%E3%81%AE%E5%A4%89%E6%9B%B4">2. ファイルタイプの変更</a></h2> <p><code>-complete=filetype</code> でファイルタイプを補完できるようにしているのがキモです。</p> <pre><code>command! -nargs=1 -complete=filetype FileType exec 'set ft=<args>' nnoremap <Space>ft :<C-u>FileType </code></pre> <h2 id="まとめ"><a href="#%E3%81%BE%E3%81%A8%E3%82%81">まとめ</a></h2> <p>以上になります。</p> <p>このように自分でマッピングをしていくことで、どんどん Vim が快適に使えるようになっていくと思います。<br /> また、help を見てみたり、他の人の vimrc を見たりするのは大事だと改めて思いました。</p> <p>みなさんも、どんどんマッピングをして、楽しく、快適に Vim に使えるようにしていきましょう!</p> <p>Happy Vim Life !</p> たまたまご