保存の度に指定ディレクトリにバックアップを残すプラグイン autobackup.vim を作りました。

vim

autobackup.vim はありていに言うと効率化された savevers.vim です。 私の愛用していたプラグインに savevers.vim というのがありました。ファイルを更新する度に更新前のバージョンを通し番号を付けてバックアップしてくれる奴です。 ただ、このプラグイン…

QuickFix を使いやすくするプラグイン作りました

vim

unite.vim や ctrlp.vim なんてなくても Vim には標準で、ある処理の結果を一覧してくれる機能があります。 それが QuickFixコマンド と QucikFixウィンドウ (& ロケーションリストウィンドウ) です。 しかし QuickFix の操作方法はわかりにくく使いづらい。…

Vimのマークをハイライトするプラグイン作りました

vim

久しぶりの投稿です。 なんか AdventCalendar に取っておこうと思ったら、いざそのときになると記事を書くのが怠くなってやらないパターンが多いので、 やはりこういう記事は公開した直後に書くのが一番なんだろうなって分かりました。 Vimのヘルプに A mark…

今の電子マネーの姿は間違っている

携帯電子マネーが淘汰されつつあるのは間違っている おサイフケータイが登場したとき私は歓喜した。 これぞ正しい発展の仕方だと思った。 カードはどんどん電子マネーに置き換えられるべきだと思った。 iPhoneが上陸した後も私がiPhoneを眼中に入れなかった…

俺が破壊的変更をしない大人しい奴だと思ってたか?甘いぜ!

vim

拙作Vimプラグインの破壊的な変更を行いました。 LeafCage/foldCC.vim autoload/ を全て廃して plugin/ だけにしました。 そしてリポジトリ名を変更しました(foldCC → foldCC.vim) .vimが付きました。 LeafCage/yankround.vim ヒストリファイルを作るディ…

yankround.vim をビジュアルモードにも対応させました

vim

ヴィジュアルモードでもyankroundを使いたい · Issue #10 · LeafCage/yankround.vim xmap p <Plug>(yankround-p) xmap gp <Plug>(yankround-gp) 以上のようなマッピングを定義することで、ビジュアルモードでの p でビジュアル選択している部分と、レジスタの内容を置き</plug></plug>…

私が使っているAndroid 8つのウィジェット + 5つの環境系アプリ

※サムネイルは後ほど掲載する予定です。 私が使っているAndroid 8つのウィジェット + 5つの環境系アプリ Android 環境まとめ系記事第一弾。 私が利用しているのは実用的なものが多いです。 方針 情報表示が主 遊びは要らない。有益な情報を提供するか否か、…

ニート脱出できたっぽい

一度ニート脱出したと思ったら再び無職になった前例があるので油断は出来ないが、とりあえず脱出できたっぽい。 やったことといったらハロワで検索して書類送って面接に行ったことくらいだが。 パソコンに強そうというイメージで採用されたっぽいな。 ちなみ…

statusline系プラグイン第4の刺客 vim-ezbar

vim

この記事はVim Advent Calendar 2013 40日目の記事です。 statuslineをモダンに改造するプラグインの系譜 Lokaltog/vim-powerline / Lokaltog/powerline bling/vim-airline itchyny/lightline.vim そして第4の刺客として、t9md/vim-ezbar が登場しました。 …

yankround.vimがunite.vimでの履歴の閲覧に対応しました。

vim

LeafCage/yankround.vim :Unite yankround これでShougo/unite.vimでレジスタの履歴を閲覧できます。 出来ることはunite-source-history/yankとほぼ同じです。(参考にさせていただきました。Shougoさんありがとうございます。) kien/ctrlp.vimと比較すると…

yankround.vimにリージョンハイライト機能が付きました

vim

LeafCage/yankround.vim let g:yankround_use_region_hl = 1 で有効になります。*1 有効にするとyankroundが有効な間、貼り付けたテキストがハイライトされるようになります。 <C-p> <C-n> で回したテキストもです。 g:yankround_region_hl_groupname でハイライトに使</c-n></c-p>…

Vimコマンドラインのキーマッピングを改造するプラグイン作りました。

vim

LeafCage/cmdlineplus.vim 提供している機能は、単語単位の移動、Emacsライクなキル、特定キャラクタのエスケープ、レジスタやクリップボードに現在のコマンドラインの内容をセットする、以上になります。

lastmess.vimで表示されるメッセージのハイライトをいろいろ定義できるようにした。

vim

LeafCage/lastmess.vimについて メッセージの開始と、メッセージの中身の色を定義できるようにした g:lastmess_highlight_errstartとg:lastmess_highlight_errcontentsを指定することで、 エラーの開始点と内容が色分けされてこのようにエラーメッセージが見…

コマンドラインで :b を実行するときにバッファリストを表示する

vim

Vim - hjklマスターに薦める意外と便利な機能 - Qiita [キータ] の バッファを選択する際に、同時にリストを表示する nnoremap B :ls<CR>:b という設定を見て閃いた。 cnoreabb <expr>b getcmdtype()==':' && getcmdline()=='b' ? 'ls<CR>:b' : 'b' こうすればコマンドライ</cr></expr></cr>…

nebula.vimを使ってneobundle#tap()をより高速に書く

vim

Shougo/neobundle.vim に ももんが流NeoBundle管理術 | かなりすごいブログ から機能が取り込まれneobundle#tap() neobundle#untap()が使えるようになりました。 新・ももんが流NeoBundle管理術(あたらしい) | かなりすごいブログ これを利用するとだいた…

コマンドラインからシームレスにover.vimの全体置き換えを使う

vim

私は今まで:sについて以下の設定をしていた。 cnoreabb <expr>s getcmdtype()==':' && getcmdline()=~'^s' ? '%s/<C-r>=Eat_whitespace(''\s\\|;\\|:'')<CR>' : 's' function! Eat_whitespace(pat) "{{{ let c = nr2char(getchar(0)) if c=~a:pat return '' elseif c=~'\r' </cr></c-r></expr>…

'nobuflisted' なバッファの作り方

vim

Vim Advent Calendar 2012 356日目の記事です。 バッファをバッファリストに登録したくないときがあります。 バッファリストに登録されていないバッファは:lsでは表示されず、:bnext :bpreviousでのバッファ切換の対象になりません。 また、Vim終了時に次回…

README.mdをVimのヘルプファイルから生成する

vim

この記事はVim Advent Calendar 2012の341日目の記事です。 前回(84日前)Vimプラグインのスクリプトファイルからヘルプファイルを生成するというのをやりました。 Vimプラグインのヘルプドキュメントを自動生成する - cafegale しかしGitHubではREADME.md…

副作用の少ないYankRing.vimみたいなのができました

vim

Vimmerにハロウィンがアドベントしましたね。 Vim Advent Calendar 2012 335日目の記事です。 Vimのレジスタの履歴を取って再利用するプラグインにYankRing.vimというものがあります。間違えてp(テキストを貼り付け)してしまっても<C-p>で即座に履歴を遡(さか</c-p>…

ユーザに入力をさせるinput()のインターフェイスが不満すぎて仕方がないならctrlp.vim風の入力インターフェイスalti.vimを使おう

vim

Vim Advent Calendar 2012 333日目の記事です。alti.vimはctrlp.vim風の操作感を持つ入力インターフェイスです。 LeafCage/alti.vim もしもユーザに多少複雑めの入力を要求したい場合は、Vimの組み込み関数input()でそれを実現するのが苦しいことがあります…

俺が見たいのはメッセージの最後なんだ!:messagesを便利にするVimプラグイン

vim

Vim Advent Calendar 2012 330日目の記事です。Vimでエラーが発生した時にメッセージが表示されます。 そのメッセージを後から確認したい場合は:messagesでメッセージ履歴を表示します。 しかし:messagesにはVimが起動してからのメッセージが蓄積されている…

lightline.vimをカスタマイズする

vim

Vim Advent Calendar 2012 の325日目の記事です。 少し長めになりますので、お時間があるときにお読みください。Vimのステータスラインを改造するプラグインが、powerline、airlineに続いてlightlineが登場しました。 私は今までステータスラインやタブライ…

ctrlp.vimのExtensionを書くときに:NeoBundleLazy autoloadを考慮してg:ctrlp_builtinsをそのまま使わない

vim

ctrlp拡張を作ったら、最後にctrlpからid番号を取得してctrlpに登録することになるが、 このとき、ctrlpがNeoBundleLazy状態であるのなら、 command! CtrlPExtension call ctrlp#init(ctrlp#{extension-name}#id()) let s:id = g:ctrlp_builtins + len(g:ctr…

ctrlp.vim起動時にステータスラインをlightline.vimのものに上書きされるのを防ぐ方法

vim

以下のautocmdをvimrcに定義しておくと、lightline.vimがctrlp.vimのステータスラインを上書きするのを防ぐことが出来ます。 autocmd CursorMoved ControlP let w:lightline = 0 [注意] このautocmdはplugin/lightline.vimが読まれるより先に定義されていな…

GVimのハイライトで使える色名を色見本付きで一覧するunite-source-gvimrgb

vim

この記事は Vim Advent Calendar 2012 299日目の記事です。GVimで:highlightコマンドのguifg=guibg=引数に渡すことが出来る色名を一覧するunite-sourceを作りました。 $VIMRUNTIMEディレクトリの、rgb.txtの中にある色名リストを元にしています。:h rgb.txt …

半自動でNeoBundleLazy autoloadの設定をするプラグイン作りました

vim

この記事は Vim Advent Calendar 2012 286日目の記事です。:NeoBundleLazy に autoload機能が搭載されたのは、このAdventCalendarが始まって間もなくのことでした。 「立て!立つんだビムー!」 - sorry, unimplemented neobundle.vim の遅延処理で Vim の起…

Vimプラグインを作るときにはautoload以下のファイルをあまり分割すべきでない

vim

理由はVimの実行速度が遅いから。 おそらく2000行の1つのスクリプトファイルを読み込むよりも、100行の2つのスクリプトを読み込むほうが速度が遅い。なぜなら、該当ファイルを探すのに結構な時間がかかるからである。(追記:その後、検証して、やはりautoloa…

Vimプラグインのヘルプドキュメントを自動生成する

vim

この記事はVim Advent Calendar 2012 : ATND 257日目の記事です。 さらに追加された機能の記事を書きました。 README.mdをVimのヘルプファイルから生成する - cafegale 皆さんVimプラグインを作ったことはありますか? VACではプラグインを書いて公開するま…

Vim scriptの実行時間を計測する7つの方法

vim

この記事はVim Advent Calendar 2012 : ATND 245日目の記事です。Vim scriptは実行速度が遅いことで有名ですが、どこでどれくらい時間がかかっているのかを調べたい時があります。今回はVim scriptの実行時間を計測する方法をまとめました。 起動時間を調べ…

uptodate.vimの原本ファイルを更新したら自動でruntimepathの通っているパスにある同名ファイルも更新されるようにした

LeafCage/uptodate.vim 原本を編集してから→それを他の場所にコピー、という手間が馬鹿馬鹿しく感じられたので、 書き込み時に自動で原本を複写するようにした。ただし、もしかしたら誤判定で間違った場所にコピーされるかも知れない。 そういった不具合を見…