タグ

ブックマーク / thinca.hatenablog.com (9)

  • Vim で C# を書くなら OmniSharp で決まり! - 永遠に未完成

    Vim Advent Calendar 2012 の 173 日目の記事です。 今回は C# を書くのに便利な OmniSharp と言うツールを紹介します。これさえあれば、エディタとしての Visual Studio はもう必要ありません! 経緯 (興味ない人はここは飛ばしてインストールのところから読むと良いです) 先日、OmniSharp なるものの存在を教えてもらいました。 @thinca これってでどうなんでしょう URL 2013-05-09 23:47:26 via YoruFukurou to @thinca @mizchi お、面白そうですね!私は知らなかったです。明日あたり見てみますー。ありがとうございます。 2013-05-09 23:51:36 via tweetvim to @mizchi と言うわけで調査してみることにしました。 様々な罠にかかりつつ、ソースコード

    czblue
    czblue 2013/05/23
  • 意外と知られていない diff に関する機能 - 永遠に未完成

    Vim Advent Calendar 2012 の 147 日目の記事です。 137 日目の tyru さんの記事で、Vim の diff 機能について紹介がありました。この記事ではもう少し細かい diff の機能について紹介したいと思います。 :diffthis 比較したい対象がファイルではない場合、例えば、外部からデータを無名バッファにコピーしてきた場合に、それらのバッファの diff を表示したいことがあります。この場合は、:diffsplit は使えません。 こういう場合は :diffthis を使います。diff を適用したいバッファでそれぞれ :diffthis をすると、実行したバッファ同士の差分を見ることができます。 これを利用した設定に、help で紹介されている :DiffOrig があります。(:help :DiffOrig) これは現在編集中のファイルと、最後に保

    意外と知られていない diff に関する機能 - 永遠に未完成
    czblue
    czblue 2013/04/26
  • ref.vim に webdict と言うソースを追加した - 永遠に未完成

    ref.vim に webdict と言うソースを追加した。取り急ぎ版。 これは設定した Web サイト(主に辞書サイトを想定)を扱うソース。 例えば以下のように設定する。 let g:ref_source_webdict_sites = { \ 'wikipedia:ja': 'http://ja.wikipedia.org/wiki/%s', \ } これで以下のように使用できる。 :Ref webdict wikipedia:ja Vim やっていることは、指定サイトをテキストブラウザで表示した結果をそのまま出しているだけだ。 辞書を使うともう少し細かく設定できる。 let g:ref_source_webdict_sites = { \ 'wiktionary': { \ 'url': 'http://ja.wiktionary.org/wiki/%s', \ 'keyword_e

    ref.vim に webdict と言うソースを追加した - 永遠に未完成
    czblue
    czblue 2012/05/13
  • 簡単な unite の source の作り方 - 永遠に未完成

    と言うわけで、unite の source の作り方を紹介します。格的に作って配布したい場合は専用のファイルに書くのがいいのですが、今回は手軽に作ろう、ということで vimrc に書きます。そう。unite の source は vimrc でも書けます。 今回作るもの サンプルってことで、実用性とか無視して、lines という source を作ることにします。これは、現在のバッファの各行を候補とした source です。 source となるオブジェクトを用意する 当はオブジェクトなんて呼び方ではなくて辞書(Dictionary)なんだけど、この場合扱い的にもオブジェクトと呼んだ方がわかりやすいと思ったのであえてこう呼んでみます。 let s:unite_source = { \ 'name': 'lines', \ } 名前は必須です。他に指定できる属性については、:help u

    簡単な unite の source の作り方 - 永遠に未完成
    czblue
    czblue 2010/11/05
  • diff を折り畳む - 永遠に未完成

    あるとき突然 diff 形式のファイルを折り畳みたくなったんだけど、diff なんて昔からあるしすでにあるだろと思って探したのだけどどうにも見当らなかったので適当にでっち上げた。Unified形式のみ対応。Unifiedの中でも微妙に形式違ったりするのでうまくいかないことがあるかも。 ftplugin/diff_fold.vim に置いて使う。 せっかく作ったので余裕があったらもっと色んな形式のも折り畳めるようにしたいなぁ。diff の形式いろいろありすぎていまいち把握しきれてないんだけど。 あと、すでにあるよって情報があれば教えていただけると悲しい嬉しいです。

    diff を折り畳む - 永遠に未完成
    czblue
    czblue 2010/08/29
  • Vim プラグインの開発スタイルのお話 - 永遠に未完成

    Vim のプラグインって作ってる最中は Vim 自体の動作も不安定になりがちだし、普段の環境と同じ環境で作ってるとなにかと弊害が起きがち。ちょっとした変更ならまだしも、大規模な変更は 1 度の作業で終わらないこともあるし、作業中断して別のことをやることになったりするとさらに面倒。 または、VCS でプラグインを管理したくて、プラグインごとにリポジトリを独立したいけど環境分けるのが面倒だとか。 というわけで私が普段やってる Vim プラグインの開発スタイルを晒してみようと思う。 設定 私の vimrc には最後の方に以下の記述がある。 " Load settings for each location. augroup vimrc-local autocmd! autocmd BufNewFile,BufReadPost * call s:vimrc_local(expand('<afile

    Vim プラグインの開発スタイルのお話 - 永遠に未完成
    czblue
    czblue 2010/02/16
  • vimrc基礎文法最速マスター - 永遠に未完成

    調子に乗って vimrc を書くのに特化した内容のものを書いてみる。取り上げた内容は完全に独断と偏見です。 関連記事: Vimスクリプト基礎文法最速マスター - 永遠に未完成 この記事では vimrc を書くにあたって知っておくべき概念や機能を解説します。Vim 自体の操作方法に関しては触れません。 基礎 バッファ バッファは、ファイルを編集するための論理的な領域です。Vim で新しくファイルを開くと、新しいバッファが作成されてそこにファイルの内容が読み込まれます。 ウィンドウ ウィンドウはバッファを画面に表示するための物理的な領域です。分割することができ、1つの画面に複数のウィンドウを表示できます。 タブページ タブページを使うことでウィンドウの配置を保持したまま複数の画面を切り替えることができます。 タブ文字と区別するためか、タブページと呼ばれています。 モード Vim の中でも知って

    vimrc基礎文法最速マスター - 永遠に未完成
    czblue
    czblue 2010/02/05
  • Vimスクリプト基礎文法最速マスター - 永遠に未完成

    流行ってるみたいなので遅ればせながら便乗。需要?何それおいしいの? Perl基礎文法最速マスター - サンプルコードによるPerl入門 - Perlプログラミングの基礎から応用まで Route 477(2010-01-25) PHP基礎文法最速マスター - Shin x blog Python基礎文法最速マスター - LazyLife@Diary VBA基礎文法最速マスター - いろいろ解析日記 Java基礎文法最速マスター - いろいろ解析日記 Bash基礎文法最速マスター - いろいろ解析日記 Haskell基礎文法最速マスター - think and error Brainf*ck基礎文法最速マスター - このブログは証明できない。 VBScript 基礎文法最速マスター - CX's VBScript Diary - VBScript グループ JavaScript基礎文法最速マス

    Vimスクリプト基礎文法最速マスター - 永遠に未完成
  • Vim Hack #40: 不可視文字を表示する の補足 - 永遠に未完成

    以下の記事を読んで、やはり補足があった方がいいかな、と。 event happen or not ? - KBDAHOLIC - やぬすさんとこ 前置き http://vim-users.jp/2009/07/hack40/ では :match を使った方法のみ解説したが、記事でも述べている通り :syntax を使った方法もある。 ではなぜこの方法の紹介を省いたかというと、複雑な上に完全にハイライトを行うのが難しいからだ。 はっきり言って偉そうに解説できるほど私もよくわかっていない。なので突っ込み等あればよろしくお願いします。 :syntax は実行された回数だけ定義される まず、:syntax はバッファローカルで動作するコマンドだ*1。そして厄介なことに、実行した回数だけ定義が繰り返される。多重定義しても動作はするが、Vim の処理速度に影響が出そうだし、何より気持ちが悪い。 上の記

    Vim Hack #40: 不可視文字を表示する の補足 - 永遠に未完成
    czblue
    czblue 2009/11/21
  • 1