vim

vimshell で特定のコマンドを実行したあとに insert を抜ける

vim

以前はコマンドを実行したあとはすべて normal に戻るようにしていたんですが、今は insert のままになるようにして vimshell を使用しています。 これは連続してコマンドを実行したい場合に insert のままの方が便利だと感じたからです しかし、それでも実…

Vim Advent Calendar 2013 177日目: Web から素早く :help するサイトつくった

vim

この記事は Vim Advent Calendar 2013 177日目の記事になります。 さて、Web から :help できるサイトをつくりました。 いつでもどこでも :help する - Vim :help 元々は Lingr から :help する為の bot として運用していたんですが、それをブラウザから行え…

Vim Advent Calendar 2013 175日目: 横幅が統一ではない矩形をヤンクしたり削除したりするプラグインをつくった

vim

この記事は Vim Advent Calendar 2013 175日目の記事になります。 さて、以前、矩形なオブジェクトを対象とする textobj をつくりました。 Vim Advent Calendar 2013 107日目: Vim で矩形なオブジェクトを対象とする為の textobj を書いた - C++でゲームプロ…

vim-expand-region を使ってみた

vim

gcmt/wildfire.vim の類似プラグインである terryma/vim-expand-region を使ってみた。 [設定] NeoBundle "terryma/vim-expand-region" " キーマッピング map <CR> <Plug>(expand_region_expand) map <C-CR> <Plug>(expand_region_shrink) " テキストオブジェクト " 値に1が設定さ</plug></c-cr></plug></cr>…

wildfire.vim を入れてみた

vim

やってみたいことがあったので、少し前に話題になっていた wildfire.vim を入れてみた。 [設定] NeoBundle "gcmt/wildfire.vim" let g:wildfire_fuel_map = "<CR>" let g:wildfire_water_map = "<C-CR>" let g:wildfire_objects = ["i'", 'i"', "i)", "i]", "i}", "ip"</c-cr></cr>…

Vim Advent Calendar 2013 170日目: vim-operator-alignta つくった

vim

この記事は Vim Advent Calendar 2013 170日目の記事になります。 Vim Advent Calendar 書きたい人募集中です。 興味のある方は気軽にご参加ください。 operator から vim-alignta を呼び出したかったので簡単につくってみた [プラグイン] kana/vim-operator…

Vim でタブ文字の色を変更する

vim

というような話題が Lingr で出ていたので。 [ソース] augroup set-tab-highlight autocmd! autocmd ColorScheme,GUIEnter * highlight SpecialKey guibg=NONE guifg=Red augroup END タブ文字のハイライトは SpecialKey に設定すればよいみたい。 ただ、Spe…

Vim Advent Calendar 2013 167日目: 任意の正規表現パターンにマッチする textobj を書いた

vim

[追記] 指摘されて初めて気づいたんですが textobj が operator になっていたので修正しました…。 素で間違えて恥ずかしい。 この記事は Vim Advent Calendar 2013 167日目の記事になります。 Vim Advent Calendar 書きたい人募集中です。 興味のある方は気…

5月24日 21時から 第6回 Vim プラグイン読書会を行います

vim

実は先週土曜日の予定だったんですが管理者が全員寝過ごすというおおぽかをやらかしたのでしれっと延期しました 5月24日 21時から 第6回 Vim プラグイン読書会を行います。 読むプラグインは以下の通り。 日時: 2014/05/24 Sat 21:00 - 場所: LingrのVim部屋…

Vim Advent Calendar 2013 163日目: :NeoBundle 'Shougo/neobundle.vim' してはいけない

vim

この記事は Vim Advent Calendar 2013 163日目の記事になります。 今日から Vim Advent Calendar 2013 を再開します。 興味のある方は気軽にご参加ください。さて、 window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = …

indentLine と precious.vim を組みわせる

vim

コンテキストによって動的に filetype を変更を行う precious.vim なんですが、indentLine と相性が悪く、filetype が切り替わるたびに indentLine のハイライトが消されてしまいます。 これを回避する場合は以下のようにして precious.vim が filetype を切…

indentLine が便利

vim

Yggdroot/indentLine indentLine で見やすいインデントを — yukimemi's blog インデントはタブ文字派なのであんまり興味はなかったんですが、最近 haml をインデントスペース2で書いているので入れてみました。 なかなかに見やすくなって便利。 [設定] let g…

Vim Advent Calendar 2013 の今後について

vim

散々煽っておいてすっかりと間が空いてしまってすみません。 意見くださった方ありがとうございました。 『続けてほしい』という意見や『不定期って Advent Calendar としてどうなの』みたいな意見もあっていろいろと悩んでいたらいつの間にか時間が…。 わた…

indentLine を使っている時に 1行が長くて重い場合の対処方法

vim

最近 indentLine を入れてみたんですがなかなかよい感じで結構気にいっています。 Yggdroot/indentLine そんな中、Lingr の Vim 部屋で『1行が長いと indentLine が重い』みたいな話が出ていて確かに jQueryのmin とか開くとめちゃくちゃ重くなりました。 […

Vim の古い正規表現エンジンではまった

vim

Lingr で他の人に試してもらって気づいたんですが、 echo "\<BS>" =~ "\<BS>" のように一部の特殊キー同士を比較した場合に古い正規表現エンジンが 0 を返すのに対して NFA エンジンだと 1 を返すみたい。 以外にも や なんかも同様。 (逆に や は問題なかった。 古</bs></bs>…

KaoriYa 版 Vim 7.4.272 がリリース

vim

Vim 7.4.274 (2014/05/04版) 配信 — KaoriYa 以前も書きましたが 7.4.260〜265 から大文字、もしくは g: + 大文字から始まらない関数(g:foo() や b:Foo() など)はエラーになるようになったのでご注意ください。 ちなみにわたしの使っていたプラグインで『b…

TweetVim で URL のタイトルを展開してツイートする

vim

最近書いてみてみたけどなかなかに便利だった。 これと同じように neosnippet で URL を展開してツイートする事ができます。 [スクリプト] " vimrc 等にグローバル関数として用意しておく function! WebPageTitle(url) if a:url !~ '^https\?:\/\/.*$' retur…

neomru.vim の unite-file_mru で更新時間を表示する

vim

最近(でもないけど)unite.vim から neomru.vim へと移行した unite-file_mru ですが、unite.vim の時に表示されていた更新時間が neomru.vim では表示されなくなりました。 これは以下のように設定することで unite.vim と同じように表示されるようになり…

Vim Advent Calendar 2013 150日目:Vim で任意の列をハイライトする

vim

この記事は Vim Advent Calendar 2013 150日目の記事になります。 参加者募集中です。 Vim には \%v で任意の表示列目にマッチする正規表現があるのですがそれを利用して任意の列をハイライトするようなスクリプトを簡単に書いてみました。 " 使い方 " " ハ…

unite-function-list

vim

:Unite function……ではなくて、:help function-list を unite.vim で出力したい。みたいな話があったので簡単に書いてみた。 let s:source = { \ "name" : "function-list", \} function! s:get_functionlist(help) if !filereadable(a:help) return [] endi…

Vim Advent Calendar 2013 148日目: Vim 7.4.260 から g: から始まる関数名がエラーになるようになりました

vim

の記事は Vim Advent Calendar 2013 148日目の記事になります。 参加者募集中です。 さて、このブログでも何回か記事にしたんですが、Vim 7.4.260 にて g: から始まる関数名がエラーになるようになりました。 これは Vim 側のバグで g:foo() のような関数名…

Vim Advent Calendar 2013 の今後について

vim

Twitter でもちらっとツイートしていたんですが、Vim Advent Calendar 2013 の今後について。 さて、去年の12月から続けてきた Vim Advent Calendar 2013 ですが最近はスケジュールに穴が開いてしまうことが多くなってきました。 さすがにこのままの状態で続…

vimshell で実行中のプロセスを中断させる

vim

vimshell で foreman 実行させた時にどうやって中断させるのかわからなかったので覚書。 インサートモードで を入力すると割り込みが発生してプロセスが終了します。 個人的にはノーマルモードでもインサートモードと同様に中断したかったので以下のようにマ…

Vim Advent Calendar 2013 142日目: Vim 初心者を脱出するために行う6つのこと

vim

少し遅れましたがこの記事は Vim Advent Calendar 2013 142日目の記事になります。 今回は Vim を使っているけどあんまり使えこなせていないなーという人向けの記事になります。 1.Twitter で Vimmer をフォローする 熟練の Vimmer で Twitter をやっている…

Ubuntu で Vim をビルドした

元々は vim-gnome を使っていたんですが、最新版を使いたかったので自前でビルドしてみました。 Vim のビルドは初めてだったんですが、vim-jp に載っている手順を参考にしたので特に問題なくビルドする事が出来ました。 vim-jp 便利。

Vim Advent Calendar 2013 140日目:gtk 環境だと remote_foreground() がうまく動作しない

vim

この記事は Vim Advent Calendar 2013 140日目の記事になります。 書きたい人募集中ですよ!! さて、今回はすごくマイナーなネタでも。 [gtk 環境だと remote_foreground() がうまく動作しない] Vim のマイナーな関数に remote_foreground() というのがありま…

Vim Advent Calendar 2013 138日目:neobundle.vim でリポジトリ内の任意のディレクトリをプラグインとして読み込む

vim

この記事は Vim Advent Calendar 2013 138日目の記事になります。 もう殆ど死にそうになっているんですが、ネタがあったので書こうかな、と。 (まぁ簡単なネタですが。 他にも書きたい人がいれば書いてもいいんですよ? [neobundle.vim でリポジトリ内の任意…

Vim Advent Calendar 2013 136日目:Vim script で関数のデフォルト引数を設定したい

vim

この記事は Vim Advent Calendar 2013 136日目の記事になります。 本来は昨日の記事として書こうと思っていたんですが、諸事情により今日の記事に…。 そんなわけで「昨日のVAC書いてもいいよー」という人募集中です。 Advent Calendar とは一体… [関数の引数…

neobundle.vim で gist のファイルを読み込む

vim

IME 周りがアレなので kaoriya さんのこれを入れようと思ったのですが、スクリプトが gist で配布されていました。 こういう場合、neobundle.vim でどうやって取得するのかなーと思ったら次のように設定すればよいみたいです。 NeoBundle 'gist:koron/599286…

Vim script で条件にマッチする要素を取得する

vim

いわゆる find 的な機能。 一応、組み込み関数で index() というのがあるんですが、これだとリストにしか対応していない & 式が渡せないという欠点があります。 echo index(["mami", "homu", "mado"],"homu") " => 1 " 式は渡せない echo index(["mami", "ho…