Awesome Vim plugins from across the universe
Learning VIM while playing a gamePress any key to start! What is VIM Adventures?VIM Adventures is an online game based on VIM's keyboard shortcuts (commands, motions and operators). It's the "Zelda meets text editing" game. It's a puzzle game for practicing and memorizing VIM commands (good old VI is also covered, of course). It's an easy way to learn VIM without a steep learning curve. You play a
この記事は Vim Advent Calendar 2014 の 16 日目の記事です。 15日は kefir_ さんの「vim と term.c」でした。vim と 端末の間のやりとりの解説という超ディープな話題で、つくづく vimmer は変態(いい意味)が多いな、と痛感させられます。素晴らしい記事ですので、ぜひ一読をお勧めします。 さて、今回の記事では、VAC 1 日目の記事 「vimrc アンチパターン」 を Vim script の lint ツール「vint」で判定できるようにした、という話を紹介します。 今年 11 月に開かれた VimConf 2014 にて「vint は機能追加が簡単さ〜」とか豪語しておりましたので、その実証がてら lint ルールの実装タイムアタックにチャレンジしてみました。 vimrc アンチパターンのルール vimrc アンチパターンをまとめると、9
はじめに: 「素のVim」から「プラグイン付きのVim」へ Vimを使い始めた当初、僕は.vimrcの設定だけで実現できる機能に限定した方が「ポータブルなVimスキル」になる気がしていたので、プラグインは全く使わずに「素のVim」を使っていました。 しかし、Vimを使って実務でRailsを開発し始めるとそんなことも言ってられなくなりました。 やはり素のVimだけでは限界があります。 Vimを使って効率よくRailsを開発するためにはプラグインに頼らざるを得ません。 ネットの情報などを参考にしてあれこれプラグインを入れてみましたが、これは手放せないというプラグインもあれば、思ったほど使わなかったというプラグインもあります。 今回の記事では前者のような「これは手放せない!」と僕が考えているプラグインに限定して紹介していきます。 また、後半ではプラグインを使わない.vimrcの一般的な設定につい
寝ている時間以外はVimとRailsを触っている僕が選ぶVim Tips10選を紹介します。 Vimを使い始めて3ヶ月ぐらいの人にオススメです。 ※ あんまりRailsは関係ありません。 diw (ノーマルモード) カーソル上の単語を消す こいつがなくてはVimを使う意味が無いというほどよく使うコマンド。 ノーマルモードで hoge という文字列上の、どこかにカーソルがある状態でdiwとタイプするとhogeという単語が消えます。 この何を単語とするのか、その判定が非常に秀逸で、直感にマッチしていて便利です。 たとえば、|をカーソル位置だとして、 ho|ge bar -> bar ho|ge.bar -> .bar "ho|ge" -> "" <di|v> -> <> このように、うまい感じに特殊記号等を避けて、単語を削除してくれます。 ciwとタイプすることで、hogeを削除後、挿入モード
普段 Vim で Ruby を書いているのですが,そういえば Ruby を書くのを補助する Vim プラグイン少ないなぁと思って先月は Ruby プラグイン作成月間にしてみました. 本エントリでは僕が作成した3つのプラグインを紹介します. unite-ruby-require.vim require 対象の補完をする unite.vim ソース. neco-ruby-keyword-args neocomplcache で Ruby 2.0 のキーワード引数を補完 vim-textobj-ruby Ruby のブロックをテキストオブジェクト化 unite-ruby-require.vim Ruby で外部のソースを読み込むのに使う require ですが,標準だけでも大量のライブラリがあり,なかなか全部覚えるのは大変です. そこで,unite.vim で require の候補をインクリメ
VimConf はココ数年、毎年秋頃に開催されている Vim の大規模なカンファレンスです。去年まではどちらかというとお客さんの立場でトップバッターで講演してきたのですが、今年は裏方である運営のさらにサポートという形で関わらせてもらいました。 今開催の各講演はどれも素晴らしく、特に Vim にとどまらず別のテキストエディタから見た Vim や、プログラミング言語から見たテキスト編集など、バラエティ豊かな講演となりました。Vim というテーマを中心に、より広い視野でソフトウェアと私達人間の関係の本質を探るというのを、今後の VimConf のテーマにできたらなと願わずにはいられません。 VimConf 2016 の開催には、中心的な役割を果たしてくれた ryunixさん, Kuniwakさん, babarotさん を始め、表には書かれていない方々まで多くのご助力をいただきました。この場を借り
変数の状態 :let "# => 変数の一覧を出力 vimエディタオプションの定義 :set "# => オプションの設定の状態一覧を出力 レジスタの状態 :registers "# => レジスタの状態の一覧を出力 バッファの状態 :buffers "# => バッファの一覧を出力 ファンクションの定義 :function "# => ファンクションの定義の一覧を出力 マッピングの定義 :map "# => マッピングの定義の一覧を出力 :nmap "# => ノーマルモードのマッピングの定義の一覧を出力 :vmap "# => ビジュアルモードのマッピングの定義の一覧を出力 autocmdの定義 :autocmd "# => autocmdの定義の一覧を出力 :augroup "# => autocmdのグループの定義の一覧を出力 コマンドの定義 :command "# => コマンド
4月から都会でOLとして働き始めたので, OL的windowsの事務処理環境を手探りで作ってみました. OLとWindows 事務処理といえばOffice, 当然Windowsで行うことになります. 今時のOLは家ではLinuxを使っているはずなので, 自然とシェル環境で困ることになります. Windowsが本当にわからない linuxコマンド使いたい(DOS音痴) Cygwinは嫌い MinGW+MSYS にしてみたい(けど未だによくわかってない) 事務PCなので, 大掛かりな環境は入れたくない(入れられない) WSL ? そもそも Windows7 なので(ry) などのモチベーションから 色々見ていてcmderが良さそうだなと思ったのですが cmder.net 所属機関でフィルタされて落とせなかった(つらい)ので, ConEmu + msys bash の組み合わせで端末環境を整える
はじめに一般的なキーボードでは押しにくい位置にあるEscキーの代わりとして用いられているCtrl+c。 Wikipediaにも 他のモード中に ESC か Ctrl-[ 、Ctrl-c を押すことでこのモードに移行できる。 http://ja.wikipedia.org/wiki/Vim#.E3.83.8E.E3.83.BC.E3.83.9E.E3.83.AB.E3.83.A2.E3.83.BC.E3.83.89 としか書かれていない。(お前が編集しろと言うのはおいといて) しかしEscとCtrl+cは挙動が違うので、代わりに使うのはやめましょう(言い過ぎ)という話。 ノーマルモードへの移行時の前置数値の扱いインサートモード時にEscまたはCtrl+cを押すとノーマルモードへ移行するが、明確な挙動の違いがある。 5 i - Esc 5 i - Ctrl+c この2つを試すと挙動の違いが確認
しばらくvimを使ってきて、いろいろ設定を変えたり、プラグインを入れたりして大分馴染んできました。 Vimは使いこなせば便利なのですが、いきなり使いこなそうとすると死ぬので、とりあえず使えるレベルから初めて徐々にコマンドを覚えていけばよいかと思います。 なんていうかスポーツと一緒でいきなりオリンピック選手にはなれないので、基礎練しっかりやって、次のステップに行きましょう。覚えるというよりかは体に染み込ませるみたいな感じ。jキーのカーソル移動が上か下かはパッとでてこないけど、手をホームポジションに置くと自然と動かせるあの感じです。 なんか結構長いので、とりあえずちょっとカスタマイズしてみたい人は下記の設定をおすすめ! カーソルスピードをあげる NeoBundleの導入 NERDTreeの導入 カラースキーマを変更 多分この4つやっただけで、だいぶ使いこなせている感でますw 特にカラースキーマ
vim-indent-guides vim-indent-guidesプラグインを使用すると図のようにインデントを可視化できる。 インストール NeoBundleの場合は下記行をvimrcに追加。 NeoBundle 'nathanaelkane/vim-indent-guides' 使い方 デフォルトでは<Leader>igキーに:IndentGuidesToggleコマンドがマッピングされているので、キーを押すことで有効無効が切り替えられる。何も表示されない場合は以下のようにtabstopやshiftwidthをセットする。 set tabstop=2 shiftwidth=2 expandtab ちなみに<Leader>キーはデフォルトでは¥にマッピングされているが、変更したい場合は下記行をvimrcに追加する。 let mapleader = "," カスタマイズ Vim起動時に可
A Vim plugin which shows a git diff in the sign column. It shows which lines have been added, modified, or removed. You can also preview, stage, and undo individual hunks; and stage partial hunks. The plugin also provides a hunk text object. The signs are always up to date and the plugin never saves your buffer. The name "gitgutter" comes from the Sublime Text 3 plugin which inspired this in 2013.
vim-gitgutter github.com vim-gitgutterというプラグインを使うと、Gitで管理しているファイル編集時に差分を表現する記号が左端に表示されるようになる。 ~が変更があった行、+が追加行、-が削除された行があることを示す。 インストール NeoBundleの場合は下記行をvimrcに追加。 NeoBundle 'airblade/vim-gitgutter' 使い方 インストールが完了すればデフォルトで有効になっているので設定を特に追加しなくてもよい。有効無効の切り替えは下記コマンドで可能。 :GitGutterToggle また、下記コマンドを実行すると行ハイライトの有効無効が切り替えられる。 :GitGutterLineHighlightsToggle 起動時に行ハイライトを有効にしたい場合は下記行をvimrcに追加。 let g:gitgutter_h
この文章は、http://yannesposito.com/Scratch/en/blog/Vim-as-IDE/ で掲載されている「Vim as IDE」の翻訳文です。 文内の全てはの筆者による物であり、訳文の内容については私による物となります。意訳が若干入っています。間違い等あればご連絡下さい。 Vim as IDE tl;dr: 如何に Vim を効率の良い IDE として使いこなすか Learn Vim Progressively (訳者注: 日本語訳)では Vim が如何にテキスト編集に優れ、かつファイルを操縦できる偉大なテキストエディタであるかについて示した。この短い記事では、私が如何にして Vim を IDE として使っているかについて見る事が出来るだろう。そう、主に幾つかの素晴らしいプラグインを使う事により。 1. Vim Plugin Manager Vim のプラグイン
Vim Advent Calendar 2014 19日目。 初めに、僕は普段主に HTML と CSS、それとブログ記事などの文章を Markdown で書いてる。 今回はこれらのコードを Vim で編集する中で、今まで不満に思いながらも放置していたことを解消したいと思う。 また、問題の解決にあたっては去年の Vim Advent Calender や Web 上に公開されているドキュメント、Vim に用意されているヘルプに大変お世話になった。感謝の念が絶えない。 指定範囲の折り畳み ファイルのアウトラインを表示 インデントの可視化 インデントの自動挿入 文字数のカウント HTML の開始タグと終了タグの移動 ウィンドウの分割領域を少しずつ変更したい 指定範囲の折り畳み コードの閲覧や編集中、特定の箇所以外のコードが視覚的に邪魔になることがある。そんなときには Vim の折り畳みを使おう
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く