タグ

Vimに関するhecomiのブックマーク (126)

  • C++ 関連の vim 逆引きリファレンス

    hecomi
    hecomi 2015/05/04
  • Big Sky :: Vim script で streem を実装した。

    « C++ の WAF crow が mustache テンプレートエンジンをサポートしていた。 | Main | Re: VimでURLをドメインだけに置換するコマンドを正規表現でうったら、当に正規表現って意味不明なフォルムと思った。 » この記事はVim Advent Calendar 2014 - Qiita 24日目の記事です。 Matz さんが streem という、ストリーム指向言語の開発を始めるらしいです。 https://github.com/matz/streem まだ文法の設計段階ではあるけど、それなのにかなりの量の pull-req がバンバンと来てて凄いなーと思いつつも「この pull-req 量だと僕には出番無いなー」と思ったのと「Matz さんがもしかしたら Go で streem を実装するかもしれない」という記事を読み「streem の他言語実装が一つ消え

    Big Sky :: Vim script で streem を実装した。
    hecomi
    hecomi 2014/12/24
  • 犬製 Vim プラグイン紹介3本立て - はやくプログラムになりたい

    この記事は Vim Advent Calendar 2014 の8日目の記事です.昨日に引き続き犬アイコンがお送りします.昨日は daisuzu さんの vital-smtpを作った でした. 今回は今年つくったプラグインとか,過去につくったけれど紹介していなかったプラグインを3つ紹介します. vim-operator-surround : 指定したテキストオブジェクトを特定の囲み(surrounding)で囲むという処理を行うオペレータプラグイン committia.vim : git commit したときに開くコミットバッファをリッチにするプラグイン vim-grammarous : 自然言語の文法チェックプラグイン それぞれのプラグイン紹介は独立しているので,気になるものだけでもチェックしてもらえればと思います. また,インストール方法については,他のプラグインと同じなので割愛して

    犬製 Vim プラグイン紹介3本立て - はやくプログラムになりたい
    hecomi
    hecomi 2014/12/08
    最高便利
  • 資本主義の崩壊とEmacs Evilの勃興について - かなりすごいブログ

    Evil Advent Calendar 1日目Evil Advent Calendar 20141日目の記事になります。 明日の執筆者は未定です。というか私含めて2人しかエントリーしていません。Evil使いもっと増えて欲しい(もっと)。 1日目ということで、今日はポエムです。あとタイトルは考えるのが面倒だったのでホッテントリメーカーで作りました。 資主義の崩壊とEmacs Evilの勃興について1.Emacsは単なるテキストエディタではなく、アプリケーション実行環境です。その表現力の高さから、ウェブブラウザやメーラー、IRCクライアントに始まりTwitterクライアントまで、様々なアプリケーションが動作し、それらは基的に全てキーボードで操作を完結させることができます。それを指しEmacsはテキストエディタではなくOSだと言われることがありますが、まさにその通りだと私は思います。という

    hecomi
    hecomi 2014/12/04
  • vimrcアンチパターン - rbtnn雑記

    この記事はVim Advent Calendar 2014 - Qiita1日目の記事です。 今回は、もう130回も続いているvimrc読書会でよく見られるvimrcのアンチパターン、 まぁ「これは気を付けたほうがいいんじゃない」的なことを私なりにまとめてみようと思う。 vimrcの文字コード Vim scriptにはscriptencodingという現在のVim scriptファイルの文字コードを指定するコマンドが存在します。 一般的にscriptencodingはマルチバイト文字を使う前に宣言します。マルチバイト文字を一切使っていない場合、特に宣言する必要はないでしょう。 なので、マルチバイト文字をvimrc内で使用する場合(コメント内でマルチバイト文字を使用する場合も含みます)、vimrcの先頭で宣言するのがいいでしょう。 悪いパターン " ミュートにする。 set t_vb= se

    vimrcアンチパターン - rbtnn雑記
    hecomi
    hecomi 2014/12/03
  • VimConf 2014 に参加(&発表)してきた - はやくプログラムになりたい

    VimConf 2014 に参加してきた.忘れないうちに各発表の感想書いとこうと思う. 発表スライドはこちらに随時まとめられていくらしい. Identity of the Vim (@kaoriyaさん) 香り屋さんの基調講演的なポジションのエモい発表だった. Vim を発展させていく動きには Vim らしいところ(行指向の編集とか)を伸ばしていく方向と Vim らしくないところ(グラフィカルなプラグインとか)を開拓していく動きがあって,その通りだなぁと思いながら聴いていた.(どことなく遺伝的アルゴリズム的だなぁと思った).Vim は Bram の独裁制で,Bram が編集に必要な機能以外を取り込もうとしないので,前者は Vim 体を発展させているけれど,後者はプラグインで頑張っているという感じかなぁと思った.僕的には Vim らしさというとモーダルな操作体系とかテキストオブジェクトとオ

    VimConf 2014 に参加(&発表)してきた - はやくプログラムになりたい
    hecomi
    hecomi 2014/11/09
    便利
  • Vimのrenderoptionsオプション

    最近のKaoriYa版のWindows向けgVimではどうやらrenderoptionsオプションを適切に設定すると、DirectWriteを使った描画に切り替えられるようだ。一年ほど前からパッチとして含められるようになっていたらしい。 有効にしただけではあまり劇的な効果を上げることは出来ないようだけど、追加で細かく設定を行える。例えば上のスクリーンショットのようにブワッとアンチエイリアスをかけたい場合は~/vimfiles/gvimrcなどで以下のようにすれば良い。 set encoding=utf-8 if has('win32') set guifont=MigMix_1M:h12 set renderoptions=type:directx,renmode:5 endif わかりやすそうなのでMigMix 1Mを例にした。デフォルトのGDI下では、上のスクリーンショットの様に特に縦

    Vimのrenderoptionsオプション
    hecomi
    hecomi 2014/07/05
  • Reddit - Dive into anything

    I am Shougo, Dark Vim Master / 暗黒美夢王 (Uncock Vim Awe), Ask Me Anything? Hi, I'm Shougo. I have created/maintained Vim plugins(unite.vim, neocomplete, neocomplcache, vimfiler, vimshell, etc). I have sent some patches for vim_dev. I have read Tim Pope's AMA. And it seems good. I created this AMA for Vimmers. Note: My English level is very poor. My main/favorite language is VimL. I cannot long reply,

    hecomi
    hecomi 2014/05/28
    ヤバイ
  • neomru.vim の unite-file_mru で更新時間を表示する - C++でゲームプログラミング

    最近(でもないけど)unite.vim から neomru.vim へと移行した unite-file_mru ですが、unite.vim の時に表示されていた更新時間が neomru.vim では表示されなくなりました。 これは以下のように設定することで unite.vim と同じように表示されるようになります。 let g:neomru#time_format = "(%Y/%m/%d %H:%M:%S) " ただ、mru の量が多い場合はパフォーマンス(unite-file_mru の起動時間等)に影響してくるので注意してください。

    neomru.vim の unite-file_mru で更新時間を表示する - C++でゲームプログラミング
    hecomi
    hecomi 2014/05/01
  • Vim Advent Calendar 2013 107日目: Vim で矩形なオブジェクトを対象とする為の textobj を書いた - C++でゲームプログラミング

    この記事は Vim Advent Calendar 2013 107日目の記事になります。 通常、テキストオブジェクト iw の範囲は : カーソル位置 : 範囲 NeoBundle "Shougo/vimproc.vim" NeoBundle "Shougo/unite.vim" NeoBundle "Shougo/unite-outline" NeoBundle "Shougo/vimfiler.vim" のような形になります。 これを下方向に向けて矩形の範囲を対象とするテキストオブジェクトをつくりました。 NeoBundle "Shougo/vimproc.vim" NeoBundle "Shougo/unite.vim" NeoBundle "Shougo/unite-outline" NeoBundle "Shougo/vimfiler.vim" [プラグイン] osyo-man

    Vim Advent Calendar 2013 107日目: Vim で矩形なオブジェクトを対象とする為の textobj を書いた - C++でゲームプログラミング
    hecomi
    hecomi 2014/03/18
    あとで入れる
  • threes.vim 作った - 永遠に未完成

    Threes! と言うゲームがあります。 http://threesgame.com/ スマホで遊べるパズルゲームで、単純なのになかなかハマります。先日行った TokyoVim#17 で @kana1 さんもハマっていたので、これは Vim 業界で流行りそうな予感です。 なので、Vim で遊べるように threes.vim 作りました。最低限な感じですが、とりあえず遊べるようになったので公開します。 https://github.com/thinca/vim-threes ルールは公式サイトを見てみてください。 :ThreesStart コマンドを実行すると、こんな感じで始まります。 hjkl で数字を移動していって、大きい数字を作っていきます。ゲームオーバーになるとスコアが出ます。 3327 点でした。 こんな感じで遊べます。今後色付けたりしてもうちょっと遊びやすくしていきたいです。よか

    threes.vim 作った - 永遠に未完成
    hecomi
    hecomi 2014/03/17
    スゴイいい
  • anzu.vim でマッチしたワードの横に件数を表示させるようにした - C++でゲームプログラミング

    この記事は Vim Advent Calendar 2012 344日目の記事になります。 Vim Advent Calendar 2013 の募集も開始しました。 興味のある方はぜひご参加下さい。 [anzu.vim の問題点] anzu.vim はバッファを検索した件数や位置を出力するためのプラグインです。 その情報はコマンドラインや airline へと出力が行われます。 しかし、実際に n で検索位置を移動する場合、目線はバッファのマッチした位置になります。 その為、anzu.vim が出力した情報を確認する場合に目線をいちいちコマンドラインや airline へと移さなければなりません。 実は個人的にはこれがすごく致命的で、あまり anzu.vim を利用しきれていませんでした。 今回はそんな致命的な欠陥を改善してみました。 [解決策] だったらマッチした位置に情報を出力すればい

    anzu.vim でマッチしたワードの横に件数を表示させるようにした - C++でゲームプログラミング
    hecomi
    hecomi 2013/11/11
  • VimのノーマルモードでIMEを常時無効化する - ナレッジエース

    おそらく、誰もがやる深夜のWebサーフィンは、究極のところ時間の無駄ではないのかもしれない。 それは、Webで夢をみているのにほかならないのだ。(T.B=リー「Webの創成」より) Kaoriya版Vimではインサートモードから抜けるタイミングでIMEが自動的にOFFになってくれるので、ノーマルモードではスムーズにカーソル移動などの操作ができます。 しかし、うっかりノーマルモードで「半角/全角」キーを押してしまうと、この限りではありません。 カーソル移動するつもりが全角で入力文字が表示され、イラッとさせられることがたまにけっこうあります。 今回、AutoHotkeyと僅かな設定でこのイライラを解消することができたので紹介します。 gVim IME常時無効化設定 要はノーマルモードで「半角/全角」キーを押せないようにしてしまえばよいのですが、vimrcで直接「半角/全角」キーをリマップする方

    hecomi
    hecomi 2013/10/23
  • Vimから電話がかけられるなんて・・・素敵! - rattcvの日記。

    このエントリーはVim Advent Calendar2012の301日目の記事です。 Vimで電話? スマホにVimを入れてるVimmerなら、Vimから電話掛けれたらな〜って1度は思ったことありますよね?(オレだけ?)。この度そんな願望を叶えるためのunite-sourceをちょこっと書いてみたので紹介してみたいと思います。 電話帳の取得は? もちろんAndroid端末は内部に連絡先のデータベースを持っており、そこから情報を取得できれば一番いいんですが、ターミナルエミュレータで動いてるAndroidネイティブなCUIアプリからそれをやるのは恐らく無理だと思われます。さてどうしたものかと考えて思いついたのは、スマホの「連絡先データのエクスポート」でSDカード上に出力されたファイルを使ったらどうか?というものでした。vcard形式のこのファイルのUTF-8エンコードされた部分をデコードして

    Vimから電話がかけられるなんて・・・素敵! - rattcvの日記。
  • lightline.vim を使って vim のステータスラインをカスタマイズ - Qiita

    おすすめの設定ですが、README を上から順に試していくのも良いですが、作者さんの設定を真似るのが一番手っ取り早いです。 作者さんの設定は、README の一番最後に記載されています。 もしくは、直接 作者さんの .vimrc を参考にしましょう。 さらに今回は、カーソル下の文字コード表示と、vim-gitgutterと連携してGitの追加/変更/削除のハンク数も表示させるようにしました。 以下が最終的な設定です。 特に解説はしませんが lightline.vim の設定方法は非常に直感的で分かりやすいので、すぐに理解できると思います。 また、README がチュートリアル方式になっているので、もし分からなければ読んでみると良いでしょう。 " vim-gitgutter let g:gitgutter_sign_added = '✚' let g:gitgutter_sign_modif

    lightline.vim を使って vim のステータスラインをカスタマイズ - Qiita
    hecomi
    hecomi 2013/09/15
  • Run command when vim enters visual mode

    hecomi
    hecomi 2013/09/14
  • wasavi (VI editor for any web page)

    wasavi is an extension for Chrome, Opera and Firefox. wasavi transforms TEXTAREA element of any page into a VI editor, so you can edit the text in VI. wasavi supports almost all VI commands and some ex commands. wasavi is under development. Any bug report or feature request is welcome. And we also welcome a donation to continue development: 日語版のREADME A Quick Walkthrough Here is a native TEXTAREA

    hecomi
    hecomi 2013/09/13
    良い
  • qt-syntax/qt.vim in vide/scripts:master - Gitorious

    hecomi
    hecomi 2013/09/08
  • C や C++ のコードを自動で整形する clang-format を Vim で - はやくプログラムになりたい

    この記事は Vim Advent Calendar 269 日目の記事になります. きつねさんとおぼえる!Clang というを読んでいて,clang 周りで色々役立ちそうなツールがあることを知ったので,その中でも C や C++ のソースコードを整形する clang-format というツールの Vim への応用について書きます. clang-format とは clang-format とは,入力した C や C++(Objective-C は未確認)のソースコードを一定のルールに従って自動整形して出力してくれるツールです.clang の静的解析機能を使っています.インストールは LLVM project の clang のサイトを参照してください. 例えば,次のようなソースコードがあったとします. #include <iostream> #define TEST_CPP_FOR_OP

    hecomi
    hecomi 2013/09/01
  • Chromeからvimっぽい操作ができるプラグイン第2弾!! - k4zy no blog

    chromeウェブストアから導入出来ます wasavi 使い方 textarea上でC-Enter(コントロールキー+ エンター)で起動します こんな感じ 機能面はそれなりにvimの挙動が実装されています(visual-modeはないかも) しかし個人的にはデザインが致命的に古いのがどうしても気になりました. (作者の方申しわけありません..) webサイトのちょっとしたデザインの変更は,stylebotを使ってユーザーcssで変更するんですが,wasaviの場合iframeで呼び出しているので,cssの変更が非常に面倒くさいです(たぶんstylebotじゃ出来ない) 結論 vichromeとバッティングする デザインが古い みたいなところを考えると, ありなしなしなしなし くらいですね. wasaviよりは edit with emacsのほうがUX的にいいと思います. Chromeから

    Chromeからvimっぽい操作ができるプラグイン第2弾!! - k4zy no blog
    hecomi
    hecomi 2013/09/01