タグ

vimscriptに関するtenjuuのブックマーク (7)

  • Big Sky :: 意外と知られていないvimのtips(vimでオブジェクト継承)

    vimscriptの発祥から考えると、vimで扱えるオブジェクトはあくまで数値、文字列レベルの物でしかないと思われがちですが、Dictionaryとfunction()を使えば、それとなく継承ぽい事が出来ます。 まぁ、javascriptに近い言語仕様というのもありますからね。 以下のコードでは、簡単なクラスとオブジェクトを定義しています。 function! Class_Prototype() dict return self endfunction function! Class_Override(...) dict if a:0 == 0|throw "Invalid Parameter"|endif let class = copy(self) let class.__NAME__ = a:1 if type(a:2) == type(class.New) let class.Ne

    Big Sky :: 意外と知られていないvimのtips(vimでオブジェクト継承)
  • Learn Vimscript the Hard Way

    Learn Vimscript the Hard Way is a book for users of the Vim editor who want to learn how to customize Vim. It is not a guide to using Vim. Before reading this book you should be comfortable editing text in Vim and know what terms like "buffer", "window" and "insert mode" mean. The book is divided roughly into three sections: The first covers basic Vim commands that you can use in your ~/.vimrc fil

  • Vim script でもラムダを使いたい! - C++でゲームプログラミング

    この記事は Vim Advent Calendar 2012 227日目の記事になります。 ラムダですよ!ラムダ! 例えば、Vim script でもオレオレ fold を作りたい時やコールバック関数を受け取りたい時にラムダを使いたい!!と思う事が多いです。 そんな時に reti.vim を使用すればラムダ(のようなもの)を使うことが出来ます。 また Vim script でラムダに関しては去年の Vim Advent Calendar で mattn さんが少し触れています。 モテる男のVim Script短期集中講座 - Big Sky reti.vim とはコンセプトが違いますが、こちらも読んでみると面白いです。 [インストール] reti.vim を使用します。 また、reti.vim を使用するにあたって chained.vim もインストールしておく必要があります。 osyo-

    Vim script でもラムダを使いたい! - C++でゲームプログラミング
  • Big Sky :: vimでスクリプト内関数を書き換える

    vimを使っていて人のスクリプトの一部が気に入らない場合、直接書き換える事もするのですが、最近はGLVS(GetLatestVimScripts)を使う事の方が多く、せっかく書き換えたスクリプトを新しいアップデートで上書きされたりして悲しい事になったりします。書き換えて違うファイル名で保存する...なんてのも方法かもしれませんが、いっそvimscriptの中のある関数だけ書き換えられればいいんじゃないか...と思って書き換える方法を考えてみました。 まず、vimにはグローバルスコープ、スクリプトスコープ、ローカルスコープとあり、スクリプトスコープとは1スクリプトファイル内で実行される関数と変数群に位置します。 通常、スクリプトスコープ内の関数には<SID>というスクリプトID識別が付与され、ファイル単位でユニークに格納されています。 ただ実際には識別子が付いているだけで、外部から参照も出来

    Big Sky :: vimでスクリプト内関数を書き換える
  • Big Sky :: モテる男のVim script短期集中講座

    ここで関数リファレンスのみ格納先の変数の先頭が大文字になっていますが、これはVim script特有の制限になります。 数値は一般的な言語と同じ様に四則演算できます。文字列については.を用いて連結します。 また文字列は添え字によるアクセスが可能で、pythonの様に echo "hello"[1:3] という記述が出来ます。その他文字列操作関数については:help evalに詳しく記述されています。 また型同士の比較についてはthincaさんの記事が役立ちます。 Vimスクリプト基礎文法最速マスター - 永遠に未完成 Vimスクリプト基礎文法最速マスター vim 流行ってるみたいなので遅ればせながら便乗。需要?何それおいしいの? Perl基礎文法最速マスター - サンプルコードによるPerl入門 Route 477... http://d.hatena.ne.jp/thinca/20100

    Big Sky :: モテる男のVim script短期集中講座
  • Google Vimscript Style Guide

    Revision 1.1 Nate Soares Joshua Hoak David Barnett This is a casual version of the vimscript style guide, because vimscript is a casual language. When submitting vim plugin code, you must adhere to these rules. For clarifications, justifications, and explanations about the finer points of vimscript, please refer to the heavy guide. It's hard to get vimscript right. Many commands depend upon the

  • 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スクリプト基礎文法最速マスター - 永遠に未完成
  • 1