From 54088f0455651e104939a3a32851667d896a4d00 Mon Sep 17 00:00:00 2001 From: gryf Date: Sun, 11 Apr 2010 21:02:40 +0200 Subject: [PATCH] =?UTF-8?q?Usuni=C4=99cie=20pozosta=C5=82o=C5=9Bci=20po=20?= =?UTF-8?q?taglist,=20wyrzucenie=20niepotrzebnych=20funkcji=20z=20pluginu?= =?UTF-8?q?=20taglisttoo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/fuf.jax | 1149 ------------------------------- doc/taglist.txt | 1501 ----------------------------------------- doc/tags-ja | 143 ---- plugin/taglisttoo.vim | 297 -------- 4 files changed, 3090 deletions(-) delete mode 100644 doc/fuf.jax delete mode 100644 doc/taglist.txt delete mode 100644 doc/tags-ja diff --git a/doc/fuf.jax b/doc/fuf.jax deleted file mode 100644 index 072afcc..0000000 --- a/doc/fuf.jax +++ /dev/null @@ -1,1149 +0,0 @@ -*fuf.jax* バッファ/ファイル/その他を、あいまい検索 - - Copyright (c) 2007-2009 Takeshi NISHIDA - -FuzzyFinder *fuzzyfinder* *fuf* - -概要 |fuf-introduction| -インストール |fuf-installation| -使い方 |fuf-usage| -モード |fuf-modes| -詳細なトピック |fuf-detailed-topics| -コマンド |fuf-commands| -オプション |fuf-options| -VIMRC の例 |fuf-vimrc-example| -SPECIAL THANKS |fuf-thanks| -CHANGELOG |fuf-changelog| -あばうと |fuf-about| - -============================================================================== -概要 *fuf-introduction* - -FuzzyFinder はバッファ/ファイル/コマンド/ブックマーク/タグに素早くアクセスする -ための手段を提供します。入力されたパターンから変換されたあいまいパターンまたは -部分一致パターンで検索を行います。 - - 入力パターン あいまいパターン 部分一致パターン ~ -> - abc *a*b*c* *abc* - dir/file dir/*f*i*l*e* dir/*file* - d*r/file d*r/*f*i*l*e* d*r/*file* - ../**/s ../**/*s* ../**/*s* - (** : 再帰検索) -< -次のような場面で有用です: - - "./AhLongLongLongLongLongFile.txt" - "./AhLongLongLongLongLongName.txt" - "./OhLongLongLongLongLongFile.txt" - "./OhLongLongLongLongLongName.txt" <- 欲しいファイル :-O - -"ON" と入力すれば "OhLongLongLongLongLongName.txt" が選択できます. :-D - -FuzzyFinder が検索できる対象は次の通りです: - - バッファ - - ファイル - - ディレクトリ - - 最近使ったファイル - - 最近使ったコマンドライン - - ブックマーク - - タグ - - タグファイルに含まれるファイル - - ジャンプリスト - - チェンジリスト - - バッファの行 - - quickfix - - ヘルプ - -FuzzyFinder は ファイルを検索したりアイテムを選択するシステムを利用するための -API も提供します。 - -FuzzyFinder はマルチバイト文字をサポートしています。 - - -============================================================================== -インストール *fuf-installation* - -ZIPファイルをランタイムディレクトリに展開します。 - -以下のようにファイルが配置されるはずです。 -> - <ランタイムディレクトリ>/plugin/fuf.vim - <ランタイムディレクトリ>/autoload/fuf.vim - <ランタイムディレクトリ>/autoload/fuf/buffer.vim - ... -< -もしランタイムディレクトリが他のプラグインとごた混ぜになるのが嫌なら、ファイル -を新規ディレクトリに配置し、そのディレクトリのパスを 'runtimepath' に追加して -ください。アンインストールも楽になります。 - -その後 FuzzyFinder のヘルプを有効にするためにタグファイルを更新してください。 -詳しくは|add-local-help|を参照してください。 - -============================================================================== -使い方 *fuf-usage* - -次のコマンドで FuzzyFinder を起動します: - - コマンド モード ~ - |:FufBuffer| - Buffer モード (|fuf-buffer-mode|) - |:FufFile| - File モード (|fuf-file-mode|) - |:FufDir| - Directory モード (|fuf-dir-mode|) - |:FufMruFile| - MRU-File モード (|fuf-mrufile-mode|) - |:FufMruCmd| - MRU-Command モード (|fuf-mrucmd-mode|) - |:FufBookmark| - Bookmark モード (|fuf-bookmark-mode|) - |:FufTag| - Tag モード (|fuf-tag-mode|) - |:FufTaggedFile| - Tagged-File モード (|fuf-taggedfile-mode|) - |:FufJumpList| - Jump-List モード (|fuf-jumplist-mode|) - |:FufChangeList| - Change-List モード (|fuf-changelist-mode|) - |:FufQuickfix| - Quickfix モード (|fuf-quickfix-mode|) - |:FufLine| - Line モード (|fuf-line-mode|) - |:FufHelp| - Help モード (|fuf-help-mode|) - -これらのコマンドを押しやすいキーにマッピングすることを推奨します。 - -これらのコマンドを実行するとパターンを入力するための1行のバッファを開き、イン -サートモードを開始します。 - -FuzzyFinder は入力されたパターンにマッチするアイテムを検索し、それを補完メニュ -ーに表示します。パターンマッチングの詳細は|fuf-search-patterns|を参照してくだ -さい。 - -多くのアイテムがマッチングする場合、FuzzyFinder はレスポンスを向上させるために -列挙するアイテムの数(|g:fuf_enumeratingLimit|)を制限し、その際、入力されたパタ -ーンを"Error" グループでハイライトします。 - -補完メニューの最初のアイテムは自動的に選択状態になります。 - - (|g:fuf_keyPrevPattern|) と (|g:fuf_keyNextPattern|) で、履歴から -過去に入力したパターンを呼び出すことができます。 - -いろいろな方法で、選択されたアイテムを開くことができます: - - (|g:fuf_keyOpen|) - 直前のウィンドウで開きます。 - (|g:fuf_keyOpenSplit|) - ウィンドウを分割して開きます。 - (|g:fuf_keyOpenVsplit|) - ウィンドウを垂直分割して開きます。 - (|g:fuf_keyOpenTabpage|) - 別のタブページで開きます。 - -キャンセルして直前のウィンドウに戻るには、インサートモードを抜けてください。 - - (|g:fuf_keySwitchMatching|) で、検索方法をあいまいマッチングまたは -部分一致マッチングに交互に切り替えることができます。 - - (|g:fuf_keyNextMode|) と (|g:fuf_keyPrevMode|) で、インサートモー -ドを抜けることなくカレントモードを切り替えることが出来ます。 - -いくつかのモードでは、選択されたアイテムを (|g:fuf_keyPreview|) でプレビ -ューすることができます。同じアイテムでキーを繰り返すことで別の情報を表示させる -ことができます。プレビューをサポートするモードを起動すると、コマンドラインの高 -さが|g:fuf_previewHeight|になります。 - - -============================================================================== -モード *fuf-modes* - - *fuf-buffer-mode* -Buffer モード ~ - -このモードはバッファを選択して開くインターフェースを提供します。 - - *fuf-file-mode* -File モード ~ - -このモードはファイルを検索して開くインターフェースを提供します。 - - *fuf-dir-mode* -Directory モード ~ - -このモードはディレクトリを検索してカレントディレクトリを変更するインターフェー -スを提供します。 - - *fuf-mrufile-mode* -MRU-File モード ~ - -このモードは最近使ったファイルを選択して開くインターフェースを提供します。 - -|BufEnter| と |BufWritePost| で行う処理がパフォーマンス上の問題を起こしうるの -で、デフォルトでは|g:fuf_modesDisable|で無効化するモードに指定されています。 - - *fuf-mrucmd-mode* -MRU-Command モード ~ - -このモードは最近使ったコマンドラインを選択して開くインターフェースを提供します -。 -このモードに必要な、コマンドラインモードの のマッピングに副作用があるので、 -、デフォルトでは|g:fuf_modesDisable|で無効化するモードに指定されています。 - - *fuf-bookmark-mode* -Bookmark モード ~ - -このモードは事前に追加したブックマークを選択してその行へジャンプするインターフ -ェースを提供します。 - -|:FufAddBookmark|コマンドでカーソルのある行をブックマークに追加できます。この -コマンドを実行すると、ブックマーク名の入力を求められます。 - -FuzzyFinder はジャンプする行番号を調整します。ブックマークされた行がブックマー -クされたときのパターンとマッチしない場合、FuzzyFinder はブックマークされた位置 -の周辺でマッチする行を探します。なのでブックマークした行が多少移動していたとし -ても、そこでジャンプすることができます。ブックマークした行番号へ調整せずにジャ -ンプしたい場合、|g:fuf_bookmark_searchRange|を 0 に設定してください。 - -Bookmark モード中に (|g:fuf_bookmark_keyDelete|) を押すと選択したブックマ -ークを削除することができます。 - - *fuf-tag-mode* -Tag モード ~ - -このモードはタグを選択してその定義へジャンプするインターフェースを提供します。 - -以下は を置き換えるマッピングです。 -> - noremap :FufTagWithCursorWord! -< - - *fuf-taggedfile-mode* -Tagged-File モード ~ - -このモードはタグファイルに含まれるファイルを選択して開くインターフェースを提供 -します。 - - *fuf-jumplist-mode* -Jump-List モード ~ - -このモードはカレントウィンドウの|jumplist|から選択した位置へジャンプするインタ -ーフェースを提供します。 - - *fuf-changelist-mode* -Change-List モード ~ - -このモードはカレントバッファの|changelist|から選択した位置へジャンプするインタ -ーフェースを提供します。 - - *fuf-quickfix-mode* -Quickfix モード ~ - -このモードは|quickfix|リストから選択した位置へジャンプするインターフェースを提 -供します。 - - *fuf-line-mode* -Line モード ~ - -このモードはカレントバッファの行を選択してジャンプするインターフェースを提供し -ます。 - - *fuf-help-mode* -Help モード ~ - -このモードはヘルプタグを選択してそのヘルプページへジャンプするインターフェース -を提供します。 - - *fuf-givenfile-mode* -Given-File モード ~ - -このモードは与えられたリストから選択されたファイルを開く API を提供します。 - -API 関数: -> - function fuf#givenfile#launch( - \ initialPattern, partialMatching, prompt, items) -< - initialPattern - FuzzyFinder 起動直後に挿入される文字列 - partialMatching - あいまい検索ではなく部分一致検索を行うか - prompt - プロンプト文字列 - items - アイテムのリスト - -利用例: -> - " ドットファイルを開く - call fuf#givenfile#launch('', 0, '>', split(glob('~/.*'), "\n")) -< - - *fuf-givendir-mode* -Given-Directory モード ~ - -このモードは与えられたリストから選択されたディレクトリにカレントディレクトリを -変更する API を提供します。 - -API 関数: -> - function fuf#givendir#launch( - \ initialPattern, partialMatching, prompt, items) -< - initialPattern - FuzzyFinder 起動直後に挿入される文字列 - partialMatching - あいまい検索ではなく部分一致検索を行うか - prompt - プロンプト文字列 - items - アイテムのリスト - - -利用例: -> - " ランタイムディレクトリのどれかをカレントディレクトリにする - call fuf#givendir#launch('', 0, '>', split(&runtimepath, ',')) -< - - *fuf-givencmd-mode* -Given-Command モード ~ - -このモードは与えられたリストから選択されたコマンドを実行する API を提供します。 - -選択されたコマンドは feedkeys() によって実行されるので、ノーマルモードでの一連 -のキー入力をエミュレートさせることも可能です。 - -API 関数: -> - function fuf#givencmd#launch( - \ initialPattern, partialMatching, prompt, items) -< - initialPattern - FuzzyFinder 起動直後に挿入される文字列 - partialMatching - あいまい検索ではなく部分一致検索を行うか - prompt - プロンプト文字列 - items - アイテムのリスト - - -利用例: -> - function GetAllCommands() - redir => commands - silent command - redir END - return map((split(commands, "\n")[3:]), - \ '":" . matchstr(v:val, ''^....\zs\S*'')') - endfunction - - " ユーザー定義コマンドを選択して実行 - call fuf#givencmd#launch('', 0, '>', GetAllCommands()) - -< - - *fuf-callbackfile-mode* -Callback-File モード ~ - -このモードはファイルを検索して選択されたファイルパスを得る API を提供します。 - -API 関数: -> - function fuf#callbackfile#launch( - \ initialPattern, partialMatching, prompt, exclude, listener) -< - initialPattern - FuzzyFinder 起動直後に挿入される文字列 - partialMatching - あいまい検索ではなく部分一致検索を行うか - prompt - プロンプト文字列 - exclude - 補完リストから除外したいアイテムの正規表現パターン - listener - 'onComplete' と 'onAbort' を持つ|Dictionary|。これ - らは FuzzyFinder 終了時に呼ばれます。 - listener.onComplete(item, method) は選択が完了したと - き、選択されたアイテム名とオープン方式番号の2引数と - 共に呼ばれます。listener.onAbort() は選択を中止した - ときに呼ばれます。 - -利用例: -> - let listener = {} - - function listener.onComplete(item, method) - echo "Item: " . a:item . "\nMethod: " . a:method - endfunction - - function listener.onAbort() - echo "Abort" - endfunction - - " カレントディレクトリからファイルを選択 - call fuf#callbackfile#launch('', 0, '>', '', listener) - - " ホームディレクトリからファイルを選択 - call fuf#callbackfile#launch('~/', 0, '>', '', listener) -< - - *fuf-callbackitem-mode* -Callback-Item モード ~ - -このモードは与えられたリストから選択されたアイテムを得るための API を提供しま -す。 - -API 関数: -> - function fuf#callbackitem#launch( - \ initialPattern, partialMatching, prompt, listener, items, forPath) -< - initialPattern - FuzzyFinder 起動直後に挿入される文字列 - partialMatching - あいまい検索ではなく部分一致検索を行うか - prompt - プロンプト文字列 - listener - 'onComplete' と 'onAbort' を持つ|Dictionary|。これ - らは FuzzyFinder 終了時に呼ばれます。 - listener.onComplete(item, method) は選択が完了したと - き、選択されたアイテム名とオープン方式番号の2引数と - 共に呼ばれます。listener.onAbort() は選択を中止した - ときに呼ばれます。 - items - アイテムのリスト - forPath - ファイル選択に特化したマッチングを利用するか - -利用例: -> - let listener = {} - - function listener.onComplete(item, method) - echo "Item: " . a:item . "\nMethod: " . a:method - endfunction - - function listener.onAbort() - echo "Abort" - endfunction - - " 与えられたリストからアイテムを選択 - call fuf#callbackitem#launch('', 0, '>', listener, ['ed', 'vi', 'vim'], 0) - - " 与えられたリストからファイルを選択 - call fuf#callbackitem#launch('', 0, '>', listener, ['../foo/bar', 'baz'], 1) -< - -============================================================================== -詳細なトピック *fuf-detailed-topics* - - *fuf-search-patterns* -検索パターン ~ - -検索パターンとして、一つのプライマリパターンと0個以上の絞り込みパターンを入力 -することができます。入力パターンは ";" (|g:fuf_patternSeparator|) で区切られ、 -最初のパターンがプライマリパターンになり、残りのパターンが絞り込みパターンにな -ります。 -> - プライマリ 絞り込み 絞り込み - |----------| |-------| |----| - >MruFile>bookmark.vim;autoload/;/home/ -< -プライマリパターンにマッチしたアイテムのリストを別のパターンで絞り込むために、 -絞り込みパターンを利用します。 - -プライマリパターンでは、あいまいマッチングと部分一致マッチングのうち、選択され -た方を行います。絞り込みパターンでは、常に部分一致マッチングを行います。 - -絞り込みパターンとして数値を入力した場合、アイテムのインデックスに対しても -マッチングします。 - -ファイルパスの静的な集合を対象とするモード (Buffer, MRU-File モードなど。File, -Directory モードなどではない) で|g:fuf_splitPathMatching|が真の場合、プライマ -リパターンのマッチングは head 部とtail 部に分けて行われます。 -> - head tail - |------||-----| - foo/bar/baz.vim - - あいまいマッチング例: - +----------------+---------+---------+---------+ - | item \ pattern | foo/bar | foo/ | bar | - +----------------+---------+---------+---------+ - | foo/bar | match | match | match | - | foo/abc | unmatch | match | unmatch | - | abc/bar | unmatch | unmatch | match | - | foobar | unmatch | unmatch | match | - | foooo/barrrr | match | match | match | - | foooo/fooooo | unmatch | match | unmatch | - +----------------+---------+---------+---------+ -< -上記のケースで、絞り込みパターンはパス全体に対してマッチングできます。 - - *fuf-sorting-of-completion-items* -補完アイテムのソート ~ - -FuzzyFinder は幾つかのルールに従って補完アイテムをソートします。 - -パターン全体が一部分にぴったりマッチするアイテムは優先されます。例えば、パター -ン "bc" ではアイテム "abc" は "bac" より優先されます。 - -このケースで、マッチする部分が先頭であるアイテムはそうでないアイテムより優先さ -れます。例えばパターン "foo" ではアイテム "foobar" は"barfoo" より優先されます -。 - -マッチング位置より後の文字数が少ないほど優先されます。例えばパターン "bar" で -はアイテム"foobar" は"foobarbaz"より優先されます。 - -単語の境界文字にだけマッチングするアイテムは優先されます。 例えば、パターン -"fb" ではアイテム"fooBarBaz" や "foo_bar_baz" などが優先されます。 - -加えて、FuzzyFinder には学習システムがあります。現在のパターンで、過去に補完さ -れたことのあるアイテムを優先します。 - - *fuf-reusing-window* -目的のバッファ/ファイルが開かれているウィンドウの再利用 ~ - -ウィンドウを分割してバッファ/ファイルを開くときに、現在のタブページでそれが開 -かれているウィンドウが見つかった場合、そこへ移動します。別のタブページでバッフ -ァ/ファイルを開くときに、他のタブページでそれが開かれているウィンドウが見つか -った場合、そこへ移動します。 - -常にバッファ/ファイルを新ウィンドウで開きたい場合、'reuse_window'オプションで -この機能を無効にすることができます。 - - *fuf-hiding-menu* -補完メニューの一時非表示 ~ - - で補完メニューを閉じることができます。また、で再度開くことがで -きます。 - - *fuf-abbreviation* *fuf-multiple-search* -短縮入力及び複合検索 ~ - -|g:fuf_abbrevMap|を設定することで、全モードで短縮入力と複合検索が利用できます。 - -例えば次のように設定したとします: -> - let g:fuf_abbrevMap = { - \ "^doc:" : [ - \ "~/project/**/doc/", - \ ".vim/doc/", - \ ], - \ } -< -そして File モードで "doc:txt" と入力すると、次の2つのパターンの検索結果を複合 -します: - - "~/project/**/doc/*t*x*t*" - ".vim/doc/*t*x*t*" - - *fuf-information-file* -情報ファイル ~ - -FuzzyFinder は補完統計、MRUデータ、ブックマークなどを -|g:fuf_infoFile|に書き込みます。 - -:FufEditInfo コマンドは情報ファイルの編集を補助します。このコマンドを -実行すると、情報ファイルを無名バッファに読み込みます。:write などで書き込みを -行うと、情報ファイルを更新します。 - - *fuf-cache* -キャッシュ ~ - -一旦キャッシュが生成されると、レスポンスを向上させるため自動的には更新されませ -ん。これを更新するには|:FufRenewCache|コマンドを実行してください。 - - *fuf-dot-sequence* -ドット列で親ディレクトリへ移動 ~ - -ドット列を入力することで親ディレクトリを上がっていくことができます。パス区切り -文字直後のドット列は "../" の列に展開されます。 - - ドット列 展開パターン ~ - /.. /../ - /... /../../ - /.... /../../../ - - *fuf-migemo* -Migemo とは ~ - -以下のページを参照してください。 - - http://0xcc.net/migemo/ - - http://www.kaoriya.net/#CMIGEMO - - -============================================================================== -コマンド *fuf-commands* - -See also: |fuf-vimrc-example| - - *:FufBuffer* -:FufBuffer [{pattern}] - Buffer モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufFile* -:FufFile [{pattern}] - File モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufFileWithFullCwd* -:FufFileWithFullCwd [{pattern}] - カレントディレクトリのフルパスを初期パターンとする以外は|:FufFile|と同 - じです。 - - *:FufFileWithCurrentBufferDir* -:FufFileWithCurrentBufferDir [{pattern}] - カレントバッファのディレクトリを初期パターンとする以外は|:FufFile|と同 - じです。 - - *:FufDir* -:FufDir [{pattern}] - Directory モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufDirWithFullCwd* -:FufDirWithFullCwd [{pattern}] - カレントディレクトリのフルパスを初期パターンとする以外は|:FufDir|と同 - じです。 - - *:FufDirWithCurrentBufferDir* -:FufDirWithCurrentBufferDir [{pattern}] - カレントバッファのディレクトリを初期パターンとする以外は|:FufDir|と同 - じです。 - - *:FufMruFile* -:FufMruFile [{pattern}] - MRU-File モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufMruCmd* -:FufMruCmd [{pattern}] - MRU-Command モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufBookmark* -:FufBookmark [{pattern}] - Bookmark モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufTag* -:FufTag [{pattern}] - Tag モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufTagWithCursorWord* -:FufTagWithCursorWord [{pattern}] - カーソル下の単語を初期パターンとする以外は|:FufTag|と同じです。 - - *:FufTaggedFile* -:FufTaggedFile [{pattern}] - Tagged-File モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufJumpList* -:FufJumpList [{pattern}] - Jump-List モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufChangeList* -:FufChangeList [{pattern}] - Change-List モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufQuickfix* -:FufQuickfix [{pattern}] - Quickfix モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufLine* -:FufLine [{pattern}] - Line モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufHelp* -:FufHelp[!] [{pattern}] - Help モードを起動します。 - - ! 修飾子を付けて実行した場合、あいまい検索ではなく部分一致検索を行うよ - うになります。 - - FuzzyFinder 起動後に {pattern} が挿入されます。 - - *:FufEditInfo* -:FufEditInfo - 情報ファイルを編集するためのバッファを開きます。詳しくは - |fuf-information-file|を参照してください。 - - *:FufAddBookmark* -:FufAddBookmark [{name}] - カーソル行をブックマークに追加します。詳しくは|fuf-adding-bookmark|を - 参照してください。 - - *:FufAddBookmarkAsSelectedText* -:FufAddBookmarkAsSelectedText - 最後に選択されたテキストをブックマーク名とする以外は|:FufAddBookmark| - と同じです。 - - *:FufRenewCache* -:FufRenewCache - 補完アイテムを作り直すためにキャッシュを削除します。詳しくは - |fuf-cache|を参照してください。 - - -============================================================================== -オプション *fuf-options* - - *fuf-options-for-all-modes* -全モード用 ~ - - *g:fuf_modesDisable* > - let g:fuf_modesDisable = [ 'mrufile', 'mrucmd', ] -< - 無効にするモード名のリスト。これに含まれるモードは初期化されず、イベン - トの処理も行われません。 - - *g:fuf_keyOpen* > - let g:fuf_keyOpen = '' -< - 補完を確定し、バッファ/ファイルを直前のウィンドウで開くキー。 - - *g:fuf_keyOpenSplit* > - let g:fuf_keyOpenSplit = '' -< - 補完を確定し、バッファ/ファイルを直前のウィンドウを分割して開くキー。 - - *g:fuf_keyOpenVsplit* > - let g:fuf_keyOpenVsplit = '' -< - 補完を確定し、バッファ/ファイルを直前のウィンドウを垂直分割して開くキ - ー。 - - *g:fuf_keyOpenTabpage* > - let g:fuf_keyOpenTabpage = '' -< - 補完を確定し、バッファ/ファイルを別タブページ開くキー。 - - *g:fuf_keyPreview* > - let g:fuf_keyPreview = '' -< - 選択されている補完アイテムの情報をコマンドライン領域に表示するキー。プ - レビューをサポートするモードでのみ作用します。 - - *g:fuf_keyNextMode* > - let g:fuf_keyNextMode = '' -< - 次のモードに切り替えるキー。 - - *g:fuf_keyPrevMode* > - let g:fuf_keyPrevMode = '' -< - 前のモードに切り替えるキー。 - - *g:fuf_keyPrevPattern* > - let g:fuf_keyPrevPattern = '' -< - 履歴から前の入力パターンを呼び出すキー。 - - *g:fuf_keyNextPattern* > - let g:fuf_keyNextPattern = '' -< - 履歴から次の入力パターンを呼び出すキー。 - - *g:fuf_keySwitchMatching* > - let g:fuf_keySwitchMatching = '' -< - あいまいマッチングと部分一致マッチングを切り替えるキー。 - - *g:fuf_infoFile* > - let g:fuf_infoFile = '~/.vim-fuf' -< - 補完統計、MRUデータ、ブックマークなどを書き込むファイル。空文字列を設 - 定するとファイルへの書き込みは行われなくなります。 - - *g:fuf_abbrevMap* > - let g:fuf_abbrevMap = {} -< - |Dictionary|型でそれぞれの値は|List|型です。入力されたテキストの、キー - にマッチする部分が対応する値に展開されます。 - - *g:fuf_patternSeparator* > - let g:fuf_patternSeparator = ';' -< - 入力パターンをプライマリパターンと絞り込みパターン列に区切る文字列。 - - *g:fuf_promptHighlight* > - let g:fuf_promptHighlight = 'Question' -< - プロンプトをハイライトするグループ名。 - - *g:fuf_ignoreCase* > - let g:fuf_ignoreCase = 1 -< - 真なら、大文字小文字を無視します。 - - *g:fuf_splitPathMatching* > - let g:fuf_splitPathMatching = 1 -< - 真なら、プライマリパターンのマッチングは head 部とtail 部に分けて行わ - れます。 - - See also: |fuf-search-patterns| - - *g:fuf_smartBs* > - let g:fuf_smartBs = 1 -< - 真なら、パス区切り文字の直後で を入力するとディレクトリ名1つ分を - 削除し、|g:fuf_patternSeparator|の直後で を入力するとパターン1つ分 - を削除します。 - - *g:fuf_reuseWindow* > - let g:fuf_reuseWindow = 1 -< - 真なら、すでに開かれているバッファを開くとき、目的のバッファを含むウィ - ンドウを再利用します。 - - *g:fuf_timeFormat* > - let g:fuf_timeFormat = '(%Y-%m-%d %H:%M:%S)' -< - アイテムが登録された日時の書式を設定します。書式の詳細は|strftime()|を - 参照してください。 - - *g:fuf_learningLimit* > - let g:fuf_learningLimit = 100 -< - 保持する補完統計データのモード毎の上限値です。 - - *g:fuf_enumeratingLimit* > - let g:fuf_enumeratingLimit = 50 -< - レスポンスを向上させるため、補完アイテムの列挙をこの数に達した時点で打 - ち切ります。 - - *g:fuf_maxMenuWidth* > - let g:fuf_maxMenuWidth = 78 -< - 長い補完アイテムは、この長さに収まるよう省略して表示します。 - - *g:fuf_previewHeight* > - let g:fuf_previewHeight = 5 -< - プレビューをサポートするモードを起動したとき、'cmdheight'がこの値に設 - 定されます。選択されている補完アイテムの情報がコマンドライン領域に表示 - されます。0 ならプレビュー機能は無効になります。 - - *g:fuf_useMigemo* > - let g:fuf_useMigemo = 0 -< - 真なら migemo を利用します。 - - *fuf-options-for-buffer-mode* -Buffer モード用 ~ - - *g:fuf_buffer_prompt* > - let g:fuf_buffer_prompt = '>Buffer[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_buffer_switchOrder* > - let g:fuf_buffer_switchOrder = 10 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *g:fuf_buffer_mruOrder* > - let g:fuf_buffer_mruOrder = 1 -< - 真なら、最後に使った時間順に補完アイテムをソートします。 - - *fuf-options-for-file-mode* -File モード用 ~ - - *g:fuf_file_prompt* > - let g:fuf_file_prompt = '>File[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_file_switchOrder* > - let g:fuf_file_switchOrder = 20 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *g:fuf_file_exclude* > - let g:fuf_file_exclude = '\v\~$|\.(o|exe|bak|swp)$|(^|[/\\])\.(hg|git|bzr)($|[/\\])' -< - 補完リストから除外したいアイテムの正規表現パターン。 - - *fuf-options-for-dir-mode* -Directory モード用 ~ - - *g:fuf_dir_prompt* > - let g:fuf_dir_prompt = '>Dir[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_dir_switchOrder* > - let g:fuf_dir_switchOrder = 30 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *g:fuf_dir_exclude* > - let g:fuf_dir_exclude = '\v(^|[/\\])\.(hg|git|bzr)($|[/\\])' -< - 補完リストから除外したいアイテムの正規表現パターン。 - - *fuf-options-for-mrufile-mode* -Mru-File モード用 ~ - - *g:fuf_mrufile_prompt* > - let g:fuf_mrufile_prompt = '>Mru-File[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_mrufile_switchOrder* > - let g:fuf_mrufile_switchOrder = 40 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *g:fuf_mrufile_exclude* > - let g:fuf_mrufile_exclude = '\v\~$|\.(bak|sw[po])$|^(\/\/|\\\\|\/mnt\/|\/media\/)' -< - 補完リストから除外したいアイテムの正規表現パターン。 - - *g:fuf_mrufile_maxItem* > - let g:fuf_mrufile_maxItem = 200 -< - 保持するMRUアイテムの上限値。 - - *fuf-options-for-mrucmd-mode* -Mru-Cmd モード用 ~ - - *g:fuf_mrucmd_prompt* > - let g:fuf_mrucmd_prompt = '>Mru-Cmd[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_mrucmd_switchOrder* > - let g:fuf_mrucmd_switchOrder = 50 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *g:fuf_mrucmd_exclude* > - let g:fuf_mrucmd_exclude = '^$' -< - 補完リストから除外したいアイテムの正規表現パターン。 - - *g:fuf_mrucmd_maxItem* > - let g:fuf_mrucmd_maxItem = 200 -< - 保持するMRUアイテムの上限値。 - - *fuf-options-for-Bookmark-mode* -Bookmark モード用 ~ - - *g:fuf_bookmark_prompt* > - let g:fuf_bookmark_prompt = '>Bookmark[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_bookmark_switchOrder* > - let g:fuf_bookmark_switchOrder = 60 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *g:fuf_bookmark_searchRange* > - let g:fuf_bookmark_searchRange = 400 -< - ジャンプするとき、ブックマークした位置からこの行数の範囲内でブックマー - クしたときのパターンとマッチする行を探します。 - - *g:fuf_bookmark_keyDelete* > - let g:fuf_bookmark_keyDelete = '' -< - 選択したブックマークを削除するキー。 - - *fuf-options-for-tag-mode* -Tag モード用 ~ - - *g:fuf_tag_prompt* > - let g:fuf_tag_prompt = '>Tag[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_tag_switchOrder* > - let g:fuf_tag_switchOrder = 70 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *g:fuf_tag_cache_dir* > - let g:fuf_tag_cache_dir = '~/.vim-fuf-cache/tag' -< - このディレクトリ内にキャッシュファイルが作成されます。空文字列なら作成 - されません。 - - *fuf-options-for-taggedfile-mode* -Tagged-File モード用 ~ - - *g:fuf_taggedfile_prompt* > - let g:fuf_taggedfile_prompt = '>Tagged-File[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_taggedfile_switchOrder* > - let g:fuf_taggedfile_switchOrder = 80 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *g:fuf_taggedfile_cache_dir* > - let g:fuf_taggedfile_cache_dir = '~/.vim-fuf-cache/taggedfile' -< - このディレクトリ内にキャッシュファイルが作成されます。空文字列なら作成 - されません。 - - *fuf-options-for-jumplist-mode* -Jump-List モード用 ~ - - *g:fuf_jumplist_prompt* > - let g:fuf_jumplist_prompt = '>Jump-List[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_jumplist_switchOrder* > - let g:fuf_jumplist_switchOrder = 90 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *fuf-options-for-changelist-mode* -Change-List モード用 ~ - - *g:fuf_changelist_prompt* > - let g:fuf_changelist_prompt = '>Change-List[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_changelist_switchOrder* > - let g:fuf_changelist_switchOrder = 100 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *fuf-options-for-quickfix-mode* -Quickfix モード用 ~ - - *g:fuf_quickfix_prompt* > - let g:fuf_quickfix_prompt = '>Quickfix[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_quickfix_switchOrder* > - let g:fuf_quickfix_switchOrder = 110 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *fuf-options-for-line-mode* -Line モード用 ~ - - *g:fuf_line_prompt* > - let g:fuf_line_prompt = '>Line[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_line_switchOrder* > - let g:fuf_line_switchOrder = 120 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *fuf-options-for-help-mode* -Help モード用 ~ - - *g:fuf_help_prompt* > - let g:fuf_help_prompt = '>Help[]>' -< - プロンプト文字列。"[]" はインジケータに置換されます。 - - *g:fuf_help_switchOrder* > - let g:fuf_help_switchOrder = 130 -< - 次/前のモードに切り替えるときの、モードの順位です。負数ならこのモード - には切り替えません。 - - *g:fuf_help_cache_dir* > - let g:fuf_help_cache_dir = '~/.vim-fuf-cache/help' -< - このディレクトリ内にキャッシュファイルが作成されます。空文字列なら作成 - されません。 - - -============================================================================== -vimrc の例 *fuf-vimrc-example* - -> - let g:fuf_modesDisable = [] - let g:fuf_abbrevMap = { - \ '^vr:' : map(filter(split(&runtimepath, ','), 'v:val !~ "after$"'), 'v:val . ''/**/'''), - \ '^m0:' : [ '/mnt/d/0/', '/mnt/j/0/' ], - \ } - let g:fuf_mrufile_maxItem = 300 - let g:fuf_mrucmd_maxItem = 400 - nnoremap :FufBuffer - nnoremap :FufFileWithCurrentBufferDir - nnoremap :FufFileWithFullCwd - nnoremap p :FufFile - nnoremap :FufDirWithCurrentBufferDir - nnoremap d :FufDirWithFullCwd - nnoremap D :FufDir - nnoremap :FufMruFile - nnoremap :FufMruCmd - nnoremap :FufBookmark - nnoremap :FufTag - nnoremap t :FufTag! - noremap g] :FufTagWithCursorWord! - nnoremap :FufTaggedFile - nnoremap :FufJumpList - nnoremap :FufChangeList - nnoremap :FufQuickfix - nnoremap :FufLine - nnoremap :FufHelp - nnoremap :FufAddBookmark - vnoremap :FufAddBookmarkAsSelectedText - nnoremap :FufEditInfo - nnoremap :FufRenewCache -< - -============================================================================== -あばうと *fuf-about* *fuf-contact* *fuf-author* - -作者: Takeshi NISHIDA -ライセンス: MIT Licence -URL: http://www.vim.org/scripts/script.php?script_id=1984 - http://bitbucket.org/ns9tks/vim-fuzzyfinder/ - -バグや要望など ~ - -こちらへどうぞ: http://bitbucket.org/ns9tks/vim-fuzzyfinder/issues/ - -============================================================================== - vim:tw=78:ts=8:ft=help:norl: diff --git a/doc/taglist.txt b/doc/taglist.txt deleted file mode 100644 index 6a62b39..0000000 --- a/doc/taglist.txt +++ /dev/null @@ -1,1501 +0,0 @@ -*taglist.txt* Plugin for browsing source code - -Author: Yegappan Lakshmanan (yegappan AT yahoo DOT com) -For Vim version 6.0 and above -Last change: 2007 May 24 - -1. Overview |taglist-intro| -2. Taglist on the internet |taglist-internet| -3. Requirements |taglist-requirements| -4. Installation |taglist-install| -5. Usage |taglist-using| -6. Options |taglist-options| -7. Commands |taglist-commands| -8. Global functions |taglist-functions| -9. Extending |taglist-extend| -10. FAQ |taglist-faq| -11. License |taglist-license| -12. Todo |taglist-todo| - -============================================================================== - *taglist-intro* -1. Overview~ - -The "Tag List" plugin is a source code browser plugin for Vim. This plugin -allows you to efficiently browse through source code files for different -programming languages. The "Tag List" plugin provides the following features: - - * Displays the tags (functions, classes, structures, variables, etc.) - defined in a file in a vertically or horizontally split Vim window. - * In GUI Vim, optionally displays the tags in the Tags drop-down menu and - in the popup menu. - * Automatically updates the taglist window as you switch between - files/buffers. As you open new files, the tags defined in the new files - are added to the existing file list and the tags defined in all the - files are displayed grouped by the filename. - * When a tag name is selected from the taglist window, positions the - cursor at the definition of the tag in the source file. - * Automatically highlights the current tag name. - * Groups the tags by their type and displays them in a foldable tree. - * Can display the prototype and scope of a tag. - * Can optionally display the tag prototype instead of the tag name in the - taglist window. - * The tag list can be sorted either by name or by chronological order. - * Supports the following language files: Assembly, ASP, Awk, Beta, C, - C++, C#, Cobol, Eiffel, Erlang, Fortran, HTML, Java, Javascript, Lisp, - Lua, Make, Pascal, Perl, PHP, Python, Rexx, Ruby, Scheme, Shell, Slang, - SML, Sql, TCL, Verilog, Vim and Yacc. - * Can be easily extended to support new languages. Support for - existing languages can be modified easily. - * Provides functions to display the current tag name in the Vim status - line or the window title bar. - * The list of tags and files in the taglist can be saved and - restored across Vim sessions. - * Provides commands to get the name and prototype of the current tag. - * Runs in both console/terminal and GUI versions of Vim. - * Works with the winmanager plugin. Using the winmanager plugin, you - can use Vim plugins like the file explorer, buffer explorer and the - taglist plugin at the same time like an IDE. - * Can be used in both Unix and MS-Windows systems. - -============================================================================== - *taglist-internet* -2. Taglist on the internet~ - -The home page of the taglist plugin is at: -> - http://vim-taglist.sourceforge.net/ -< -You can subscribe to the taglist mailing list to post your questions or -suggestions for improvement or to send bug reports. Visit the following page -for subscribing to the mailing list: -> - http://groups.yahoo.com/group/taglist -< -============================================================================== - *taglist-requirements* -3. Requirements~ - -The taglist plugin requires the following: - - * Vim version 6.0 and above - * Exuberant ctags 5.0 and above - -The taglist plugin will work on all the platforms where the exuberant ctags -utility and Vim are supported (this includes MS-Windows and Unix based -systems). - -The taglist plugin relies on the exuberant ctags utility to dynamically -generate the tag listing. The exuberant ctags utility must be installed in -your system to use this plugin. The exuberant ctags utility is shipped with -most of the Linux distributions. You can download the exuberant ctags utility -from -> - http://ctags.sourceforge.net -< -The taglist plugin doesn't use or create a tags file and there is no need to -create a tags file to use this plugin. The taglist plugin will not work with -the GNU ctags or the Unix ctags utility. - -This plugin relies on the Vim "filetype" detection mechanism to determine the -type of the current file. You have to turn on the Vim filetype detection by -adding the following line to your .vimrc file: -> - filetype on -< -The taglist plugin will not work if you run Vim in the restricted mode (using -the -Z command-line argument). - -The taglist plugin uses the Vim system() function to invoke the exuberant -ctags utility. If Vim is compiled without the system() function then you -cannot use the taglist plugin. Some of the Linux distributions (Suse) compile -Vim without the system() function for security reasons. - -============================================================================== - *taglist-install* -4. Installation~ - -1. Download the taglist.zip file and unzip the files to the $HOME/.vim or the - $HOME/vimfiles or the $VIM/vimfiles directory. After this step, you should - have the following two files (the directory structure should be preserved): - - plugin/taglist.vim - main taglist plugin file - doc/taglist.txt - documentation (help) file - - Refer to the |add-plugin|and |'runtimepath'| Vim help pages for more - details about installing Vim plugins. -2. Change to the $HOME/.vim/doc or $HOME/vimfiles/doc or $VIM/vimfiles/doc - directory, start Vim and run the ":helptags ." command to process the - taglist help file. Without this step, you cannot jump to the taglist help - topics. -3. If the exuberant ctags utility is not present in one of the directories in - the PATH environment variable, then set the 'Tlist_Ctags_Cmd' variable to - point to the location of the exuberant ctags utility (not to the directory) - in the .vimrc file. -4. If you are running a terminal/console version of Vim and the terminal - doesn't support changing the window width then set the - 'Tlist_Inc_Winwidth' variable to 0 in the .vimrc file. -5. Restart Vim. -6. You can now use the ":TlistToggle" command to open/close the taglist - window. You can use the ":help taglist" command to get more information - about using the taglist plugin. - -To uninstall the taglist plugin, remove the plugin/taglist.vim and -doc/taglist.txt files from the $HOME/.vim or $HOME/vimfiles directory. - -============================================================================== - *taglist-using* -5. Usage~ - -The taglist plugin can be used in several different ways. - -1. You can keep the taglist window open during the entire editing session. On - opening the taglist window, the tags defined in all the files in the Vim - buffer list will be displayed in the taglist window. As you edit files, the - tags defined in them will be added to the taglist window. You can select a - tag from the taglist window and jump to it. The current tag will be - highlighted in the taglist window. You can close the taglist window when - you no longer need the window. -2. You can configure the taglist plugin to process the tags defined in all the - edited files always. In this configuration, even if the taglist window is - closed and the taglist menu is not displayed, the taglist plugin will - processes the tags defined in newly edited files. You can then open the - taglist window only when you need to select a tag and then automatically - close the taglist window after selecting the tag. -3. You can configure the taglist plugin to display only the tags defined in - the current file in the taglist window. By default, the taglist plugin - displays the tags defined in all the files in the Vim buffer list. As you - switch between files, the taglist window will be refreshed to display only - the tags defined in the current file. -4. In GUI Vim, you can use the Tags pull-down and popup menu created by the - taglist plugin to display the tags defined in the current file and select a - tag to jump to it. You can use the menu without opening the taglist window. - By default, the Tags menu is disabled. -5. You can configure the taglist plugin to display the name of the current tag - in the Vim window status line or in the Vim window title bar. For this to - work without the taglist window or menu, you need to configure the taglist - plugin to process the tags defined in a file always. -6. You can save the tags defined in multiple files to a taglist session file - and load it when needed. You can also configure the taglist plugin to not - update the taglist window when editing new files. You can then manually add - files to the taglist window. - -Opening the taglist window~ -You can open the taglist window using the ":TlistOpen" or the ":TlistToggle" -commands. The ":TlistOpen" command opens the taglist window and jumps to it. -The ":TlistToggle" command opens or closes (toggle) the taglist window and the -cursor remains in the current window. If the 'Tlist_GainFocus_On_ToggleOpen' -variable is set to 1, then the ":TlistToggle" command opens the taglist window -and moves the cursor to the taglist window. - -You can map a key to invoke these commands. For example, the following command -creates a normal mode mapping for the key to toggle the taglist window. -> - nnoremap :TlistToggle -< -Add the above mapping to your ~/.vimrc or $HOME/_vimrc file. - -To automatically open the taglist window on Vim startup, set the -'Tlist_Auto_Open' variable to 1. - -You can also open the taglist window on startup using the following command -line: -> - $ vim +TlistOpen -< -Closing the taglist window~ -You can close the taglist window from the taglist window by pressing 'q' or -using the Vim ":q" command. You can also use any of the Vim window commands to -close the taglist window. Invoking the ":TlistToggle" command when the taglist -window is opened, closes the taglist window. You can also use the -":TlistClose" command to close the taglist window. - -To automatically close the taglist window when a tag or file is selected, you -can set the 'Tlist_Close_On_Select' variable to 1. To exit Vim when only the -taglist window is present, set the 'Tlist_Exit_OnlyWindow' variable to 1. - -Jumping to a tag or a file~ -You can select a tag in the taglist window either by pressing the key -or by double clicking the tag name using the mouse. To jump to a tag on a -single mouse click set the 'Tlist_Use_SingleClick' variable to 1. - -If the selected file is already opened in a window, then the cursor is moved -to that window. If the file is not currently opened in a window then the file -is opened in the window used by the taglist plugin to show the previously -selected file. If there are no usable windows, then the file is opened in a -new window. The file is not opened in special windows like the quickfix -window, preview window and windows containing buffer with the 'buftype' option -set. - -To jump to the tag in a new window, press the 'o' key. To open the file in the -previous window (Ctrl-W_p) use the 'P' key. You can press the 'p' key to jump -to the tag but still keep the cursor in the taglist window (preview). - -To open the selected file in a tab, use the 't' key. If the file is already -present in a tab then the cursor is moved to that tab otherwise the file is -opened in a new tab. To jump to a tag in a new tab press Ctrl-t. The taglist -window is automatically opened in the newly created tab. - -Instead of jumping to a tag, you can open a file by pressing the key -or by double clicking the file name using the mouse. - -In the taglist window, you can use the [[ or key to jump to the -beginning of the previous file. You can use the ]] or key to jump to the -beginning of the next file. When you reach the first or last file, the search -wraps around and the jumps to the next/previous file. - -Highlighting the current tag~ -The taglist plugin automatically highlights the name of the current tag in the -taglist window. The Vim |CursorHold| autocmd event is used for this. If the -current tag name is not visible in the taglist window, then the taglist window -contents are scrolled to make that tag name visible. You can also use the -":TlistHighlightTag" command to force the highlighting of the current tag. - -The tag name is highlighted if no activity is performed for |'updatetime'| -milliseconds. The default value for this Vim option is 4 seconds. To avoid -unexpected problems, you should not set the |'updatetime'| option to a very -low value. - -To disable the automatic highlighting of the current tag name in the taglist -window, set the 'Tlist_Auto_Highlight_Tag' variable to zero. - -When entering a Vim buffer/window, the taglist plugin automatically highlights -the current tag in that buffer/window. If you like to disable the automatic -highlighting of the current tag when entering a buffer, set the -'Tlist_Highlight_Tag_On_BufEnter' variable to zero. - -Adding files to the taglist~ -When the taglist window is opened, all the files in the Vim buffer list are -processed and the supported files are added to the taglist. When you edit a -file in Vim, the taglist plugin automatically processes this file and adds it -to the taglist. If you close the taglist window, the tag information in the -taglist is retained. - -To process files even when the taglist window is not open, set the -'Tlist_Process_File_Always' variable to 1. - -You can manually add multiple files to the taglist without opening them using -the ":TlistAddFiles" and the ":TlistAddFilesRecursive" commands. - -For example, to add all the C files in the /my/project/dir directory to the -taglist, you can use the following command: -> - :TlistAddFiles /my/project/dir/*.c -< -Note that when adding several files with a large number of tags or a large -number of files, it will take several seconds to several minutes for the -taglist plugin to process all the files. You should not interrupt the taglist -plugin by pressing . - -You can recursively add multiple files from a directory tree using the -":TlistAddFilesRecursive" command: -> - :TlistAddFilesRecursive /my/project/dir *.c -< -This command takes two arguments. The first argument specifies the directory -from which to recursively add the files. The second optional argument -specifies the wildcard matching pattern for selecting the files to add. The -default pattern is * and all the files are added. - -Displaying tags for only one file~ -The taglist window displays the tags for all the files in the Vim buffer list -and all the manually added files. To display the tags for only the current -active buffer, set the 'Tlist_Show_One_File' variable to 1. - -Removing files from the taglist~ -You can remove a file from the taglist window, by pressing the 'd' key when the -cursor is on one of the tags listed for the file in the taglist window. The -removed file will no longer be displayed in the taglist window in the current -Vim session. To again display the tags for the file, open the file in a Vim -window and then use the ":TlistUpdate" command or use ":TlistAddFiles" command -to add the file to the taglist. - -When a buffer is removed from the Vim buffer list using the ":bdelete" or the -":bwipeout" command, the taglist is updated to remove the stored information -for this buffer. - -Updating the tags displayed for a file~ -The taglist plugin keeps track of the modification time of a file. When the -modification time changes (the file is modified), the taglist plugin -automatically updates the tags listed for that file. The modification time of -a file is checked when you enter a window containing that file or when you -load that file. - -You can also update or refresh the tags displayed for a file by pressing the -"u" key in the taglist window. If an existing file is modified, after the file -is saved, the taglist plugin automatically updates the tags displayed for the -file. - -You can also use the ":TlistUpdate" command to update the tags for the current -buffer after you made some changes to it. You should save the modified buffer -before you update the taglist window. Otherwise the listed tags will not -include the new tags created in the buffer. - -If you have deleted the tags displayed for a file in the taglist window using -the 'd' key, you can again display the tags for that file using the -":TlistUpdate" command. - -Controlling the taglist updates~ -To disable the automatic processing of new files or modified files, you can -set the 'Tlist_Auto_Update' variable to zero. When this variable is set to -zero, the taglist is updated only when you use the ":TlistUpdate" command or -the ":TlistAddFiles" or the ":TlistAddFilesRecursive" commands. You can use -this option to control which files are added to the taglist. - -You can use the ":TlistLock" command to lock the taglist contents. After this -command is executed, new files are not automatically added to the taglist. -When the taglist is locked, you can use the ":TlistUpdate" command to add the -current file or the ":TlistAddFiles" or ":TlistAddFilesRecursive" commands to -add new files to the taglist. To unlock the taglist, use the ":TlistUnlock" -command. - -Displaying the tag prototype~ -To display the prototype of the tag under the cursor in the taglist window, -press the space bar. If you place the cursor on a tag name in the taglist -window, then the tag prototype is displayed at the Vim status line after -|'updatetime'| milliseconds. The default value for the |'updatetime'| Vim -option is 4 seconds. - -You can get the name and prototype of a tag without opening the taglist window -and the taglist menu using the ":TlistShowTag" and the ":TlistShowPrototype" -commands. These commands will work only if the current file is already present -in the taglist. To use these commands without opening the taglist window, set -the 'Tlist_Process_File_Always' variable to 1. - -You can use the ":TlistShowTag" command to display the name of the tag at or -before the specified line number in the specified file. If the file name and -line number are not supplied, then this command will display the name of the -current tag. For example, -> - :TlistShowTag - :TlistShowTag myfile.java 100 -< -You can use the ":TlistShowPrototype" command to display the prototype of the -tag at or before the specified line number in the specified file. If the file -name and the line number are not supplied, then this command will display the -prototype of the current tag. For example, -> - :TlistShowPrototype - :TlistShowPrototype myfile.c 50 -< -In the taglist window, when the mouse is moved over a tag name, the tag -prototype is displayed in a balloon. This works only in GUI versions where -balloon evaluation is supported. - -Taglist window contents~ -The taglist window contains the tags defined in various files in the taglist -grouped by the filename and by the tag type (variable, function, class, etc.). -For tags with scope information (like class members, structures inside -structures, etc.), the scope information is displayed in square brackets "[]" -after the tag name. - -The contents of the taglist buffer/window are managed by the taglist plugin. -The |'filetype'| for the taglist buffer is set to 'taglist'. The Vim -|'modifiable'| option is turned off for the taglist buffer. You should not -manually edit the taglist buffer, by setting the |'modifiable'| flag. If you -manually edit the taglist buffer contents, then the taglist plugin will be out -of sync with the taglist buffer contents and the plugin will no longer work -correctly. To redisplay the taglist buffer contents again, close the taglist -window and reopen it. - -Opening and closing the tag and file tree~ -In the taglist window, the tag names are displayed as a foldable tree using -the Vim folding support. You can collapse the tree using the '-' key or using -the Vim |zc| fold command. You can open the tree using the '+' key or using -the Vim |zo| fold command. You can open all the folds using the '*' key or -using the Vim |zR| fold command. You can also use the mouse to open/close the -folds. You can close all the folds using the '=' key. You should not manually -create or delete the folds in the taglist window. - -To automatically close the fold for the inactive files/buffers and open only -the fold for the current buffer in the taglist window, set the -'Tlist_File_Fold_Auto_Close' variable to 1. - -Sorting the tags for a file~ -The tags displayed in the taglist window can be sorted either by their name or -by their chronological order. The default sorting method is by the order in -which the tags appear in a file. You can change the default sort method by -setting the 'Tlist_Sort_Type' variable to either "name" or "order". You can -sort the tags by their name by pressing the "s" key in the taglist window. You -can again sort the tags by their chronological order using the "s" key. Each -file in the taglist window can be sorted using different order. - -Zooming in and out of the taglist window~ -You can press the 'x' key in the taglist window to maximize the taglist -window width/height. The window will be maximized to the maximum possible -width/height without closing the other existing windows. You can again press -'x' to restore the taglist window to the default width/height. - - *taglist-session* -Taglist Session~ -A taglist session refers to the group of files and their tags stored in the -taglist in a Vim session. - -You can save and restore a taglist session (and all the displayed tags) using -the ":TlistSessionSave" and ":TlistSessionLoad" commands. - -To save the information about the tags and files in the taglist to a file, use -the ":TlistSessionSave" command and specify the filename: -> - :TlistSessionSave -< -To load a saved taglist session, use the ":TlistSessionLoad" command: > - - :TlistSessionLoad -< -When you load a taglist session file, the tags stored in the file will be -added to the tags already stored in the taglist. - -The taglist session feature can be used to save the tags for large files or a -group of frequently used files (like a project). By using the taglist session -file, you can minimize the amount to time it takes to load/refresh the taglist -for multiple files. - -You can create more than one taglist session file for multiple groups of -files. - -Displaying the tag name in the Vim status line or the window title bar~ -You can use the Tlist_Get_Tagname_By_Line() function provided by the taglist -plugin to display the current tag name in the Vim status line or the window -title bar. Similarly, you can use the Tlist_Get_Tag_Prototype_By_Line() -function to display the current tag prototype in the Vim status line or the -window title bar. - -For example, the following command can be used to display the current tag name -in the status line: -> - :set statusline=%<%f%=%([%{Tlist_Get_Tagname_By_Line()}]%) -< -The following command can be used to display the current tag name in the -window title bar: -> - :set title titlestring=%<%f\ %([%{Tlist_Get_Tagname_By_Line()}]%) -< -Note that the current tag name can be displayed only after the file is -processed by the taglist plugin. For this, you have to either set the -'Tlist_Process_File_Always' variable to 1 or open the taglist window or use -the taglist menu. For more information about configuring the Vim status line, -refer to the documentation for the Vim |'statusline'| option. - -Changing the taglist window highlighting~ -The following Vim highlight groups are defined and used to highlight the -various entities in the taglist window: - - TagListTagName - Used for tag names - TagListTagScope - Used for tag scope - TagListTitle - Used for tag titles - TagListComment - Used for comments - TagListFileName - Used for filenames - -By default, these highlight groups are linked to the standard Vim highlight -groups. If you want to change the colors used for these highlight groups, -prefix the highlight group name with 'My' and define it in your .vimrc or -.gvimrc file: MyTagListTagName, MyTagListTagScope, MyTagListTitle, -MyTagListComment and MyTagListFileName. For example, to change the colors -used for tag names, you can use the following command: -> - :highlight MyTagListTagName guifg=blue ctermfg=blue -< -Controlling the taglist window~ -To use a horizontally split taglist window, instead of a vertically split -window, set the 'Tlist_Use_Horiz_Window' variable to 1. - -To use a vertically split taglist window on the rightmost side of the Vim -window, set the 'Tlist_Use_Right_Window' variable to 1. - -You can specify the width of the vertically split taglist window, by setting -the 'Tlist_WinWidth' variable. You can specify the height of the horizontally -split taglist window, by setting the 'Tlist_WinHeight' variable. - -When opening a vertically split taglist window, the Vim window width is -increased to accommodate the new taglist window. When the taglist window is -closed, the Vim window is reduced. To disable this, set the -'Tlist_Inc_Winwidth' variable to zero. - -To reduce the number of empty lines in the taglist window, set the -'Tlist_Compact_Format' variable to 1. - -To not display the Vim fold column in the taglist window, set the -'Tlist_Enable_Fold_Column' variable to zero. - -To display the tag prototypes instead of the tag names in the taglist window, -set the 'Tlist_Display_Prototype' variable to 1. - -To not display the scope of the tags next to the tag names, set the -'Tlist_Display_Tag_Scope' variable to zero. - - *taglist-keys* -Taglist window key list~ -The following table lists the description of the keys that can be used -in the taglist window. - - Key Description~ - - Jump to the location where the tag under cursor is - defined. - o Jump to the location where the tag under cursor is - defined in a new window. - P Jump to the tag in the previous (Ctrl-W_p) window. - p Display the tag definition in the file window and - keep the cursor in the taglist window itself. - t Jump to the tag in a new tab. If the file is already - opened in a tab, move to that tab. - Ctrl-t Jump to the tag in a new tab. - Display the prototype of the tag under the cursor. - For file names, display the full path to the file, - file type and the number of tags. For tag types, display the - tag type and the number of tags. - u Update the tags listed in the taglist window - s Change the sort order of the tags (by name or by order) - d Remove the tags for the file under the cursor - x Zoom-in or Zoom-out the taglist window - + Open a fold - - Close a fold - * Open all folds - = Close all folds - [[ Jump to the beginning of the previous file - Jump to the beginning of the previous file - ]] Jump to the beginning of the next file - Jump to the beginning of the next file - q Close the taglist window - Display help - -The above keys will work in both the normal mode and the insert mode. - - *taglist-menu* -Taglist menu~ -When using GUI Vim, the taglist plugin can display the tags defined in the -current file in the drop-down menu and the popup menu. By default, this -feature is turned off. To turn on this feature, set the 'Tlist_Show_Menu' -variable to 1. - -You can jump to a tag by selecting the tag name from the menu. You can use the -taglist menu independent of the taglist window i.e. you don't need to open the -taglist window to get the taglist menu. - -When you switch between files/buffers, the taglist menu is automatically -updated to display the tags defined in the current file/buffer. - -The tags are grouped by their type (variables, functions, classes, methods, -etc.) and displayed as a separate sub-menu for each type. If all the tags -defined in a file are of the same type (e.g. functions), then the sub-menu is -not used. - -If the number of items in a tag type submenu exceeds the value specified by -the 'Tlist_Max_Submenu_Items' variable, then the submenu will be split into -multiple submenus. The default setting for 'Tlist_Max_Submenu_Items' is 25. -The first and last tag names in the submenu are used to form the submenu name. -The menu items are prefixed by alpha-numeric characters for easy selection by -keyboard. - -If the popup menu support is enabled (the |'mousemodel'| option contains -"popup"), then the tags menu is added to the popup menu. You can access -the popup menu by right clicking on the GUI window. - -You can regenerate the tags menu by selecting the 'Tags->Refresh menu' entry. -You can sort the tags listed in the menu either by name or by order by -selecting the 'Tags->Sort menu by->Name/Order' menu entry. - -You can tear-off the Tags menu and keep it on the side of the Vim window -for quickly locating the tags. - -Using the taglist plugin with the winmanager plugin~ -You can use the taglist plugin with the winmanager plugin. This will allow you -to use the file explorer, buffer explorer and the taglist plugin at the same -time in different windows. To use the taglist plugin with the winmanager -plugin, set 'TagList' in the 'winManagerWindowLayout' variable. For example, -to use the file explorer plugin and the taglist plugin at the same time, use -the following setting: > - - let winManagerWindowLayout = 'FileExplorer|TagList' -< -Getting help~ -If you have installed the taglist help file (this file), then you can use the -Vim ":help taglist-" command to get help on the various taglist -topics. - -You can press the key in the taglist window to display the help -information about using the taglist window. If you again press the key, -the help information is removed from the taglist window. - - *taglist-debug* -Debugging the taglist plugin~ -You can use the ":TlistDebug" command to enable logging of the debug messages -from the taglist plugin. To display the logged debug messages, you can use the -":TlistMessages" command. To disable the logging of the debug messages, use -the ":TlistUndebug" command. - -You can specify a file name to the ":TlistDebug" command to log the debug -messages to a file. Otherwise, the debug messages are stored in a script-local -variable. In the later case, to minimize memory usage, only the last 3000 -characters from the debug messages are stored. - -============================================================================== - *taglist-options* -6. Options~ - -A number of Vim variables control the behavior of the taglist plugin. These -variables are initialized to a default value. By changing these variables you -can change the behavior of the taglist plugin. You need to change these -settings only if you want to change the behavior of the taglist plugin. You -should use the |:let| command in your .vimrc file to change the setting of any -of these variables. - -The configurable taglist variables are listed below. For a detailed -description of these variables refer to the text below this table. - -|'Tlist_Auto_Highlight_Tag'| Automatically highlight the current tag in the - taglist. -|'Tlist_Auto_Open'| Open the taglist window when Vim starts. -|'Tlist_Auto_Update'| Automatically update the taglist to include - newly edited files. -|'Tlist_Close_On_Select'| Close the taglist window when a file or tag is - selected. -|'Tlist_Compact_Format'| Remove extra information and blank lines from - the taglist window. -|'Tlist_Ctags_Cmd'| Specifies the path to the ctags utility. -|'Tlist_Display_Prototype'| Show prototypes and not tags in the taglist - window. -|'Tlist_Display_Tag_Scope'| Show tag scope next to the tag name. -|'Tlist_Enable_Fold_Column'| Show the fold indicator column in the taglist - window. -|'Tlist_Exit_OnlyWindow'| Close Vim if the taglist is the only window. -|'Tlist_File_Fold_Auto_Close'| Close tag folds for inactive buffers. -|'Tlist_GainFocus_On_ToggleOpen'| - Jump to taglist window on open. -|'Tlist_Highlight_Tag_On_BufEnter'| - On entering a buffer, automatically highlight - the current tag. -|'Tlist_Inc_Winwidth'| Increase the Vim window width to accommodate - the taglist window. -|'Tlist_Max_Submenu_Items'| Maximum number of items in a tags sub-menu. -|'Tlist_Max_Tag_Length'| Maximum tag length used in a tag menu entry. -|'Tlist_Process_File_Always'| Process files even when the taglist window is - closed. -|'Tlist_Show_Menu'| Display the tags menu. -|'Tlist_Show_One_File'| Show tags for the current buffer only. -|'Tlist_Sort_Type'| Sort method used for arranging the tags. -|'Tlist_Use_Horiz_Window'| Use a horizontally split window for the - taglist window. -|'Tlist_Use_Right_Window'| Place the taglist window on the right side. -|'Tlist_Use_SingleClick'| Single click on a tag jumps to it. -|'Tlist_WinHeight'| Horizontally split taglist window height. -|'Tlist_WinWidth'| Vertically split taglist window width. - - *'Tlist_Auto_Highlight_Tag'* -Tlist_Auto_Highlight_Tag~ -The taglist plugin will automatically highlight the current tag in the taglist -window. If you want to disable this, then you can set the -'Tlist_Auto_Highlight_Tag' variable to zero. Note that even though the current -tag highlighting is disabled, the tags for a new file will still be added to -the taglist window. -> - let Tlist_Auto_Highlight_Tag = 0 -< -With the above variable set to 1, you can use the ":TlistHighlightTag" command -to highlight the current tag. - - *'Tlist_Auto_Open'* -Tlist_Auto_Open~ -To automatically open the taglist window, when you start Vim, you can set the -'Tlist_Auto_Open' variable to 1. By default, this variable is set to zero and -the taglist window will not be opened automatically on Vim startup. -> - let Tlist_Auto_Open = 1 -< -The taglist window is opened only when a supported type of file is opened on -Vim startup. For example, if you open text files, then the taglist window will -not be opened. - - *'Tlist_Auto_Update'* -Tlist_Auto_Update~ -When a new file is edited, the tags defined in the file are automatically -processed and added to the taglist. To stop adding new files to the taglist, -set the 'Tlist_Auto_Update' variable to zero. By default, this variable is set -to 1. -> - let Tlist_Auto_Update = 0 -< -With the above variable set to 1, you can use the ":TlistUpdate" command to -add the tags defined in the current file to the taglist. - - *'Tlist_Close_On_Select'* -Tlist_Close_On_Select~ -If you want to close the taglist window when a file or tag is selected, then -set the 'Tlist_Close_On_Select' variable to 1. By default, this variable is -set zero and when you select a tag or file from the taglist window, the window -is not closed. -> - let Tlist_Close_On_Select = 1 -< - *'Tlist_Compact_Format'* -Tlist_Compact_Format~ -By default, empty lines are used to separate different tag types displayed for -a file and the tags displayed for different files in the taglist window. If -you want to display as many tags as possible in the taglist window, you can -set the 'Tlist_Compact_Format' variable to 1 to get a compact display. -> - let Tlist_Compact_Format = 1 -< - *'Tlist_Ctags_Cmd'* -Tlist_Ctags_Cmd~ -The 'Tlist_Ctags_Cmd' variable specifies the location (path) of the exuberant -ctags utility. If exuberant ctags is present in any one of the directories in -the PATH environment variable, then there is no need to set this variable. - -The exuberant ctags tool can be installed under different names. When the -taglist plugin starts up, if the 'Tlist_Ctags_Cmd' variable is not set, it -checks for the names exuberant-ctags, exctags, ctags, ctags.exe and tags in -the PATH environment variable. If any one of the named executable is found, -then the Tlist_Ctags_Cmd variable is set to that name. - -If exuberant ctags is not present in one of the directories specified in the -PATH environment variable, then set this variable to point to the location of -the ctags utility in your system. Note that this variable should point to the -fully qualified exuberant ctags location and NOT to the directory in which -exuberant ctags is installed. If the exuberant ctags tool is not found in -either PATH or in the specified location, then the taglist plugin will not be -loaded. Examples: -> - let Tlist_Ctags_Cmd = 'd:\tools\ctags.exe' - let Tlist_Ctags_Cmd = '/usr/local/bin/ctags' -< - *'Tlist_Display_Prototype'* -Tlist_Display_Prototype~ -By default, only the tag name will be displayed in the taglist window. If you -like to see tag prototypes instead of names, set the 'Tlist_Display_Prototype' -variable to 1. By default, this variable is set to zero and only tag names -will be displayed. -> - let Tlist_Display_Prototype = 1 -< - *'Tlist_Display_Tag_Scope'* -Tlist_Display_Tag_Scope~ -By default, the scope of a tag (like a C++ class) will be displayed in -square brackets next to the tag name. If you don't want the tag scopes -to be displayed, then set the 'Tlist_Display_Tag_Scope' to zero. By default, -this variable is set to 1 and the tag scopes will be displayed. -> - let Tlist_Display_Tag_Scope = 0 -< - *'Tlist_Enable_Fold_Column'* -Tlist_Enable_Fold_Column~ -By default, the Vim fold column is enabled and displayed in the taglist -window. If you wish to disable this (for example, when you are working with a -narrow Vim window or terminal), you can set the 'Tlist_Enable_Fold_Column' -variable to zero. -> - let Tlist_Enable_Fold_Column = 1 -< - *'Tlist_Exit_OnlyWindow'* -Tlist_Exit_OnlyWindow~ -If you want to exit Vim if only the taglist window is currently opened, then -set the 'Tlist_Exit_OnlyWindow' variable to 1. By default, this variable is -set to zero and the Vim instance will not be closed if only the taglist window -is present. -> - let Tlist_Exit_OnlyWindow = 1 -< - *'Tlist_File_Fold_Auto_Close'* -Tlist_File_Fold_Auto_Close~ -By default, the tags tree displayed in the taglist window for all the files is -opened. You can close/fold the tags tree for the files manually. To -automatically close the tags tree for inactive files, you can set the -'Tlist_File_Fold_Auto_Close' variable to 1. When this variable is set to 1, -the tags tree for the current buffer is automatically opened and for all the -other buffers is closed. -> - let Tlist_File_Fold_Auto_Close = 1 -< - *'Tlist_GainFocus_On_ToggleOpen'* -Tlist_GainFocus_On_ToggleOpen~ -When the taglist window is opened using the ':TlistToggle' command, this -option controls whether the cursor is moved to the taglist window or remains -in the current window. By default, this option is set to 0 and the cursor -remains in the current window. When this variable is set to 1, the cursor -moves to the taglist window after opening the taglist window. -> - let Tlist_GainFocus_On_ToggleOpen = 1 -< - *'Tlist_Highlight_Tag_On_BufEnter'* -Tlist_Highlight_Tag_On_BufEnter~ -When you enter a Vim buffer/window, the current tag in that buffer/window is -automatically highlighted in the taglist window. If the current tag name is -not visible in the taglist window, then the taglist window contents are -scrolled to make that tag name visible. If you like to disable the automatic -highlighting of the current tag when entering a buffer, you can set the -'Tlist_Highlight_Tag_On_BufEnter' variable to zero. The default setting for -this variable is 1. -> - let Tlist_Highlight_Tag_On_BufEnter = 0 -< - *'Tlist_Inc_Winwidth'* -Tlist_Inc_Winwidth~ -By default, when the width of the window is less than 100 and a new taglist -window is opened vertically, then the window width is increased by the value -set in the 'Tlist_WinWidth' variable to accommodate the new window. The value -of this variable is used only if you are using a vertically split taglist -window. - -If your terminal doesn't support changing the window width from Vim (older -version of xterm running in a Unix system) or if you see any weird problems in -the screen due to the change in the window width or if you prefer not to -adjust the window width then set the 'Tlist_Inc_Winwidth' variable to zero. -CAUTION: If you are using the MS-Windows version of Vim in a MS-DOS command -window then you must set this variable to zero, otherwise the system may hang -due to a Vim limitation (explained in :help win32-problems) -> - let Tlist_Inc_Winwidth = 0 -< - *'Tlist_Max_Submenu_Items'* -Tlist_Max_Submenu_Items~ -If a file contains too many tags of a particular type (function, variable, -class, etc.), greater than that specified by the 'Tlist_Max_Submenu_Items' -variable, then the menu for that tag type will be split into multiple -sub-menus. The default setting for the 'Tlist_Max_Submenu_Items' variable is -25. This can be changed by setting the 'Tlist_Max_Submenu_Items' variable: -> - let Tlist_Max_Submenu_Items = 20 -< -The name of the submenu is formed using the names of the first and the last -tag entries in that submenu. - - *'Tlist_Max_Tag_Length'* -Tlist_Max_Tag_Length~ -Only the first 'Tlist_Max_Tag_Length' characters from the tag names will be -used to form the tag type submenu name. The default value for this variable is -10. Change the 'Tlist_Max_Tag_Length' setting if you want to include more or -less characters: -> - let Tlist_Max_Tag_Length = 10 -< - *'Tlist_Process_File_Always'* -Tlist_Process_File_Always~ -By default, the taglist plugin will generate and process the tags defined in -the newly opened files only when the taglist window is opened or when the -taglist menu is enabled. When the taglist window is closed, the taglist plugin -will stop processing the tags for newly opened files. - -You can set the 'Tlist_Process_File_Always' variable to 1 to generate the list -of tags for new files even when the taglist window is closed and the taglist -menu is disabled. -> - let Tlist_Process_File_Always = 1 -< -To use the ":TlistShowTag" and the ":TlistShowPrototype" commands without the -taglist window and the taglist menu, you should set this variable to 1. - - *'Tlist_Show_Menu'* -Tlist_Show_Menu~ -When using GUI Vim, you can display the tags defined in the current file in a -menu named "Tags". By default, this feature is turned off. To turn on this -feature, set the 'Tlist_Show_Menu' variable to 1: -> - let Tlist_Show_Menu = 1 -< - *'Tlist_Show_One_File'* -Tlist_Show_One_File~ -By default, the taglist plugin will display the tags defined in all the loaded -buffers in the taglist window. If you prefer to display the tags defined only -in the current buffer, then you can set the 'Tlist_Show_One_File' to 1. When -this variable is set to 1, as you switch between buffers, the taglist window -will be refreshed to display the tags for the current buffer and the tags for -the previous buffer will be removed. -> - let Tlist_Show_One_File = 1 -< - *'Tlist_Sort_Type'* -Tlist_Sort_Type~ -The 'Tlist_Sort_Type' variable specifies the sort order for the tags in the -taglist window. The tags can be sorted either alphabetically by their name or -by the order of their appearance in the file (chronological order). By -default, the tag names will be listed by the order in which they are defined -in the file. You can change the sort type (from name to order or from order to -name) by pressing the "s" key in the taglist window. You can also change the -default sort order by setting 'Tlist_Sort_Type' to "name" or "order": -> - let Tlist_Sort_Type = "name" -< - *'Tlist_Use_Horiz_Window'* -Tlist_Use_Horiz_Window~ -Be default, the tag names are displayed in a vertically split window. If you -prefer a horizontally split window, then set the 'Tlist_Use_Horiz_Window' -variable to 1. If you are running MS-Windows version of Vim in a MS-DOS -command window, then you should use a horizontally split window instead of a -vertically split window. Also, if you are using an older version of xterm in a -Unix system that doesn't support changing the xterm window width, you should -use a horizontally split window. -> - let Tlist_Use_Horiz_Window = 1 -< - *'Tlist_Use_Right_Window'* -Tlist_Use_Right_Window~ -By default, the vertically split taglist window will appear on the left hand -side. If you prefer to open the window on the right hand side, you can set the -'Tlist_Use_Right_Window' variable to 1: -> - let Tlist_Use_Right_Window = 1 -< - *'Tlist_Use_SingleClick'* -Tlist_Use_SingleClick~ -By default, when you double click on the tag name using the left mouse -button, the cursor will be positioned at the definition of the tag. You -can set the 'Tlist_Use_SingleClick' variable to 1 to jump to a tag when -you single click on the tag name using the mouse. By default this variable -is set to zero. -> - let Tlist_Use_SingleClick = 1 -< -Due to a bug in Vim, if you set 'Tlist_Use_SingleClick' to 1 and try to resize -the taglist window using the mouse, then Vim will crash. This problem is fixed -in Vim 6.3 and above. In the meantime, instead of resizing the taglist window -using the mouse, you can use normal Vim window resizing commands to resize the -taglist window. - - *'Tlist_WinHeight'* -Tlist_WinHeight~ -The default height of the horizontally split taglist window is 10. This can be -changed by modifying the 'Tlist_WinHeight' variable: -> - let Tlist_WinHeight = 20 -< -The |'winfixheight'| option is set for the taglist window, to maintain the -height of the taglist window, when new Vim windows are opened and existing -windows are closed. - - *'Tlist_WinWidth'* -Tlist_WinWidth~ -The default width of the vertically split taglist window is 30. This can be -changed by modifying the 'Tlist_WinWidth' variable: -> - let Tlist_WinWidth = 20 -< -Note that the value of the |'winwidth'| option setting determines the minimum -width of the current window. If you set the 'Tlist_WinWidth' variable to a -value less than that of the |'winwidth'| option setting, then Vim will use the -value of the |'winwidth'| option. - -When new Vim windows are opened and existing windows are closed, the taglist -plugin will try to maintain the width of the taglist window to the size -specified by the 'Tlist_WinWidth' variable. - -============================================================================== - *taglist-commands* -7. Commands~ - -The taglist plugin provides the following ex-mode commands: - -|:TlistAddFiles| Add multiple files to the taglist. -|:TlistAddFilesRecursive| - Add files recursively to the taglist. -|:TlistClose| Close the taglist window. -|:TlistDebug| Start logging of taglist debug messages. -|:TlistLock| Stop adding new files to the taglist. -|:TlistMessages| Display the logged taglist plugin debug messages. -|:TlistOpen| Open and jump to the taglist window. -|:TlistSessionSave| Save the information about files and tags in the - taglist to a session file. -|:TlistSessionLoad| Load the information about files and tags stored - in a session file to taglist. -|:TlistShowPrototype| Display the prototype of the tag at or before the - specified line number. -|:TlistShowTag| Display the name of the tag defined at or before the - specified line number. -|:TlistHighlightTag| Highlight the current tag in the taglist window. -|:TlistToggle| Open or close (toggle) the taglist window. -|:TlistUndebug| Stop logging of taglist debug messages. -|:TlistUnlock| Start adding new files to the taglist. -|:TlistUpdate| Update the tags for the current buffer. - - *:TlistAddFiles* -:TlistAddFiles {file(s)} [file(s) ...] - Add one or more specified files to the taglist. You can - specify multiple filenames using wildcards. To specify a - file name with space character, you should escape the space - character with a backslash. - Examples: -> - :TlistAddFiles *.c *.cpp - :TlistAddFiles file1.html file2.html -< - If you specify a large number of files, then it will take some - time for the taglist plugin to process all of them. The - specified files will not be edited in a Vim window and will - not be added to the Vim buffer list. - - *:TlistAddFilesRecursive* -:TlistAddFilesRecursive {directory} [ {pattern} ] - Add files matching {pattern} recursively from the specified - {directory} to the taglist. If {pattern} is not specified, - then '*' is assumed. To specify the current directory, use "." - for {directory}. To specify a directory name with space - character, you should escape the space character with a - backslash. - Examples: -> - :TlistAddFilesRecursive myproject *.java - :TlistAddFilesRecursive smallproject -< - If large number of files are present in the specified - directory tree, then it will take some time for the taglist - plugin to process all of them. - - *:TlistClose* -:TlistClose Close the taglist window. This command can be used from any - one of the Vim windows. - - *:TlistDebug* -:TlistDebug [filename] - Start logging of debug messages from the taglist plugin. - If {filename} is specified, then the debug messages are stored - in the specified file. Otherwise, the debug messages are - stored in a script local variable. If the file {filename} is - already present, then it is overwritten. - - *:TlistLock* -:TlistLock - Lock the taglist and don't process new files. After this - command is executed, newly edited files will not be added to - the taglist. - - *:TlistMessages* -:TlistMessages - Display the logged debug messages from the taglist plugin - in a window. This command works only when logging to a - script-local variable. - - *:TlistOpen* -:TlistOpen Open and jump to the taglist window. Creates the taglist - window, if the window is not opened currently. After executing - this command, the cursor is moved to the taglist window. When - the taglist window is opened for the first time, all the files - in the buffer list are processed and the tags defined in them - are displayed in the taglist window. - - *:TlistSessionSave* -:TlistSessionSave {filename} - Saves the information about files and tags in the taglist to - the specified file. This command can be used to save and - restore the taglist contents across Vim sessions. - - *:TlistSessionLoad* -:TlistSessionLoad {filename} - Load the information about files and tags stored in the - specified session file to the taglist. - - *:TlistShowPrototype* -:TlistShowPrototype [filename] [linenumber] - Display the prototype of the tag at or before the specified - line number. If the file name and the line number are not - specified, then the current file name and line number are - used. A tag spans multiple lines starting from the line where - it is defined to the line before the next tag. This command - displays the prototype for the tag for any line number in this - range. - - *:TlistShowTag* -:TlistShowTag [filename] [linenumber] - Display the name of the tag defined at or before the specified - line number. If the file name and the line number are not - specified, then the current file name and line number are - used. A tag spans multiple lines starting from the line where - it is defined to the line before the next tag. This command - displays the tag name for any line number in this range. - - *:TlistHighlightTag* -:TlistHighlightTag - Highlight the current tag in the taglist window. By default, - the taglist plugin periodically updates the taglist window to - highlight the current tag. This command can be used to force - the taglist plugin to highlight the current tag. - - *:TlistToggle* -:TlistToggle Open or close (toggle) the taglist window. Opens the taglist - window, if the window is not opened currently. Closes the - taglist window, if the taglist window is already opened. When - the taglist window is opened for the first time, all the files - in the buffer list are processed and the tags are displayed in - the taglist window. After executing this command, the cursor - is not moved from the current window to the taglist window. - - *:TlistUndebug* -:TlistUndebug - Stop logging of debug messages from the taglist plugin. - - *:TlistUnlock* -:TlistUnlock - Unlock the taglist and start processing newly edited files. - - *:TlistUpdate* -:TlistUpdate Update the tags information for the current buffer. This - command can be used to re-process the current file/buffer and - get the tags information. As the taglist plugin uses the file - saved in the disk (instead of the file displayed in a Vim - buffer), you should save a modified buffer before you update - the taglist. Otherwise the listed tags will not include the - new tags created in the buffer. You can use this command even - when the taglist window is not opened. - -============================================================================== - *taglist-functions* -8. Global functions~ - -The taglist plugin provides several global functions that can be used from -other Vim plugins to interact with the taglist plugin. These functions are -described below. - -|Tlist_Update_File_Tags()| Update the tags for the specified file -|Tlist_Get_Tag_Prototype_By_Line()| Return the prototype of the tag at or - before the specified line number in the - specified file. -|Tlist_Get_Tagname_By_Line()| Return the name of the tag at or - before the specified line number in - the specified file. -|Tlist_Set_App()| Set the name of the application - controlling the taglist window. - - *Tlist_Update_File_Tags()* -Tlist_Update_File_Tags({filename}, {filetype}) - Update the tags for the file {filename}. The second argument - specifies the Vim filetype for the file. If the taglist plugin - has not processed the file previously, then the exuberant - ctags tool is invoked to generate the tags for the file. - - *Tlist_Get_Tag_Prototype_By_Line()* -Tlist_Get_Tag_Prototype_By_Line([{filename}, {linenumber}]) - Return the prototype of the tag at or before the specified - line number in the specified file. If the filename and line - number are not specified, then the current buffer name and the - current line number are used. - - *Tlist_Get_Tagname_By_Line()* -Tlist_Get_Tagname_By_Line([{filename}, {linenumber}]) - Return the name of the tag at or before the specified line - number in the specified file. If the filename and line number - are not specified, then the current buffer name and the - current line number are used. - - *Tlist_Set_App()* -Tlist_Set_App({appname}) - Set the name of the plugin that controls the taglist plugin - window and buffer. This can be used to integrate the taglist - plugin with other Vim plugins. - - For example, the winmanager plugin and the Cream package use - this function and specify the appname as "winmanager" and - "cream" respectively. - - By default, the taglist plugin is a stand-alone plugin and - controls the taglist window and buffer. If the taglist window - is controlled by an external plugin, then the appname should - be set appropriately. - -============================================================================== - *taglist-extend* -9. Extending~ - -The taglist plugin supports all the languages supported by the exuberant ctags -tool, which includes the following languages: Assembly, ASP, Awk, Beta, C, -C++, C#, Cobol, Eiffel, Erlang, Fortran, HTML, Java, Javascript, Lisp, Lua, -Make, Pascal, Perl, PHP, Python, Rexx, Ruby, Scheme, Shell, Slang, SML, Sql, -TCL, Verilog, Vim and Yacc. - -You can extend the taglist plugin to add support for new languages and also -modify the support for the above listed languages. - -You should NOT make modifications to the taglist plugin script file to add -support for new languages. You will lose these changes when you upgrade to the -next version of the taglist plugin. Instead you should follow the below -described instructions to extend the taglist plugin. - -You can extend the taglist plugin by setting variables in the .vimrc or _vimrc -file. The name of these variables depends on the language name and is -described below. - -Modifying support for an existing language~ -To modify the support for an already supported language, you have to set the -tlist_xxx_settings variable in the ~/.vimrc or $HOME/_vimrc file. Replace xxx -with the Vim filetype name for the language file. For example, to modify the -support for the perl language files, you have to set the tlist_perl_settings -variable. To modify the support for java files, you have to set the -tlist_java_settings variable. - -To determine the filetype name used by Vim for a file, use the following -command in the buffer containing the file: - - :set filetype - -The above command will display the Vim filetype for the current buffer. - -The format of the value set in the tlist_xxx_settings variable is - - ;flag1:name1;flag2:name2;flag3:name3 - -The different fields in the value are separated by the ';' character. - -The first field 'language_name' is the name used by exuberant ctags to refer -to this language file. This name can be different from the file type name used -by Vim. For example, for C++, the language name used by ctags is 'c++' but the -filetype name used by Vim is 'cpp'. To get the list of language names -supported by exuberant ctags, use the following command: - - $ ctags --list-maps=all - -The remaining fields follow the format "flag:name". The sub-field 'flag' is -the language specific flag used by exuberant ctags to generate the -corresponding tags. For example, for the C language, to list only the -functions, the 'f' flag is used. To get the list of flags supported by -exuberant ctags for the various languages use the following command: - - $ ctags --list-kinds=all - -The sub-field 'name' specifies the title text to use for displaying the tags -of a particular type. For example, 'name' can be set to 'functions'. This -field can be set to any text string name. - -For example, to list only the classes and functions defined in a C++ language -file, add the following line to your .vimrc file: - - let tlist_cpp_settings = 'c++;c:class;f:function' - -In the above setting, 'cpp' is the Vim filetype name and 'c++' is the name -used by the exuberant ctags tool. 'c' and 'f' are the flags passed to -exuberant ctags to list C++ classes and functions and 'class' is the title -used for the class tags and 'function' is the title used for the function tags -in the taglist window. - -For example, to display only functions defined in a C file and to use "My -Functions" as the title for the function tags, use - - let tlist_c_settings = 'c;f:My Functions' - -When you set the tlist_xxx_settings variable, you will override the default -setting used by the taglist plugin for the 'xxx' language. You cannot add to -the default options used by the taglist plugin for a particular file type. To -add to the options used by the taglist plugin for a language, copy the option -values from the taglist plugin file to your .vimrc file and modify it. - -Adding support for a new language~ -If you want to add support for a new language to the taglist plugin, you need -to first extend the exuberant ctags tool. For more information about extending -exuberant ctags, visit the following page: - - http://ctags.sourceforge.net/EXTENDING.html - -To add support for a new language, set the tlist_xxx_settings variable in the -~/.vimrc file appropriately as described above. Replace 'xxx' in the variable -name with the Vim filetype name for the new language. - -For example, to extend the taglist plugin to support the latex language, you -can use the following line (assuming, you have already extended exuberant -ctags to support the latex language): - - let tlist_tex_settings='latex;b:bibitem;c:command;l:label' - -With the above line, when you edit files of filetype "tex" in Vim, the taglist -plugin will invoke the exuberant ctags tool passing the "latex" filetype and -the flags b, c and l to generate the tags. The text heading 'bibitem', -'command' and 'label' will be used in the taglist window for the tags which -are generated for the flags b, c and l respectively. - -============================================================================== - *taglist-faq* -10. Frequently Asked Questions~ - -Q. The taglist plugin doesn't work. The taglist window is empty and the tags - defined in a file are not displayed. -A. Are you using Vim version 6.0 and above? The taglist plugin relies on the - features supported by Vim version 6.0 and above. You can use the following - command to get the Vim version: -> - $ vim --version -< - Are you using exuberant ctags version 5.0 and above? The taglist plugin - relies on the features supported by exuberant ctags and will not work with - GNU ctags or the Unix ctags utility. You can use the following command to - determine whether the ctags installed in your system is exuberant ctags: -> - $ ctags --version -< - Is exuberant ctags present in one of the directories in your PATH? If not, - you need to set the Tlist_Ctags_Cmd variable to point to the location of - exuberant ctags. Use the following Vim command to verify that this is setup - correctly: -> - :echo system(Tlist_Ctags_Cmd . ' --version') -< - The above command should display the version information for exuberant - ctags. - - Did you turn on the Vim filetype detection? The taglist plugin relies on - the filetype detected by Vim and passes the filetype to the exuberant ctags - utility to parse the tags. Check the output of the following Vim command: -> - :filetype -< - The output of the above command should contain "filetype detection:ON". - To turn on the filetype detection, add the following line to the .vimrc or - _vimrc file: -> - filetype on -< - Is your version of Vim compiled with the support for the system() function? - The following Vim command should display 1: -> - :echo exists('*system') -< - In some Linux distributions (particularly Suse Linux), the default Vim - installation is built without the support for the system() function. The - taglist plugin uses the system() function to invoke the exuberant ctags - utility. You need to rebuild Vim after enabling the support for the - system() function. If you use the default build options, the system() - function will be supported. - - Do you have the |'shellslash'| option set? You can try disabling the - |'shellslash'| option. When the taglist plugin invokes the exuberant ctags - utility with the path to the file, if the incorrect slashes are used, then - you will see errors. - - Check the shell related Vim options values using the following command: -> - :set shell? shellcmdflag? shellpipe? - :set shellquote? shellredir? shellxquote? -< - If these options are set in your .vimrc or _vimrc file, try removing those - lines. - - Are you using a Unix shell in a MS-Windows environment? For example, - the Unix shell from the MKS-toolkit. Do you have the SHELL environment - set to point to this shell? You can try resetting the SHELL environment - variable. - - If you are using a Unix shell on MS-Windows, you should try to use - exuberant ctags that is compiled for Unix-like environments so that - exuberant ctags will understand path names with forward slash characters. - - Is your filetype supported by the exuberant ctags utility? The file types - supported by the exuberant ctags utility are listed in the ctags help. If a - file type is not supported, you have to extend exuberant ctags. You can use - the following command to list the filetypes supported by exuberant ctags: -> - ctags --list-languages -< - Run the following command from the shell prompt and check whether the tags - defined in your file are listed in the output from exuberant ctags: -> - ctags -f - --format=2 --excmd=pattern --fields=nks -< - If you see your tags in the output from the above command, then the - exuberant ctags utility is properly parsing your file. - - Do you have the .ctags or _ctags or the ctags.cnf file in your home - directory for specifying default options or for extending exuberant ctags? - If you do have this file, check the options in this file and make sure - these options are not interfering with the operation of the taglist plugin. - - If you are using MS-Windows, check the value of the TEMP and TMP - environment variables. If these environment variables are set to a path - with space characters in the name, then try using the DOS 8.3 short name - for the path or set them to a path without the space characters in the - name. For example, if the temporary directory name is "C:\Documents and - Settings\xyz\Local Settings\Temp", then try setting the TEMP variable to - the following: -> - set TEMP=C:\DOCUMEN~1\xyz\LOCALS~1\Temp -< - If exuberant ctags is installed in a directory with space characters in the - name, then try adding the directory to the PATH environment variable or try - setting the 'Tlist_Ctags_Cmd' variable to the shortest path name to ctags - or try copying the exuberant ctags to a path without space characters in - the name. For example, if exuberant ctags is installed in the directory - "C:\Program Files\Ctags", then try setting the 'Tlist_Ctags_Cmd' variable - as below: -> - let Tlist_Ctags_Cmd='C:\Progra~1\Ctags\ctags.exe' -< - If you are using a cygwin compiled version of exuberant ctags on MS-Windows, - make sure that either you have the cygwin compiled sort utility installed - and available in your PATH or compile exuberant ctags with internal sort - support. Otherwise, when exuberant ctags sorts the tags output by invoking - the sort utility, it may end up invoking the MS-Windows version of - sort.exe, thereby resulting in failure. - -Q. When I try to open the taglist window, I am seeing the following error - message. How do I fix this problem? - - Taglist: Failed to generate tags for /my/path/to/file - ctags: illegal option -- -^@usage: ctags [-BFadtuwvx] [-f tagsfile] file ... - -A. The taglist plugin will work only with the exuberant ctags tool. You - cannot use the GNU ctags or the Unix ctags program with the taglist plugin. - You will see an error message similar to the one shown above, if you try - use a non-exuberant ctags program with Vim. To fix this problem, either add - the exuberant ctags tool location to the PATH environment variable or set - the 'Tlist_Ctags_Cmd' variable. - -Q. A file has more than one tag with the same name. When I select a tag name - from the taglist window, the cursor is positioned at the incorrect tag - location. -A. The taglist plugin uses the search pattern generated by the exuberant ctags - utility to position the cursor at the location of a tag definition. If a - file has more than one tag with the same name and same prototype, then the - search pattern will be the same. In this case, when searching for the tag - pattern, the cursor may be positioned at the incorrect location. - -Q. I have made some modifications to my file and introduced new - functions/classes/variables. I have not yet saved my file. The taglist - plugin is not displaying the new tags when I update the taglist window. -A. The exuberant ctags utility will process only files that are present in the - disk. To list the tags defined in a file, you have to save the file and - then update the taglist window. - -Q. I have created a ctags file using the exuberant ctags utility for my source - tree. How do I configure the taglist plugin to use this tags file? -A. The taglist plugin doesn't use a tags file stored in disk. For every opened - file, the taglist plugin invokes the exuberant ctags utility to get the - list of tags dynamically. The Vim system() function is used to invoke - exuberant ctags and get the ctags output. This function internally uses a - temporary file to store the output. This file is deleted after the output - from the command is read. So you will never see the file that contains the - output of exuberant ctags. - -Q. When I set the |'updatetime'| option to a low value (less than 1000) and if - I keep pressing a key with the taglist window open, the current buffer - contents are changed. Why is this? -A. The taglist plugin uses the |CursorHold| autocmd to highlight the current - tag. The CursorHold autocmd triggers for every |'updatetime'| milliseconds. - If the |'updatetime'| option is set to a low value, then the CursorHold - autocmd will be triggered frequently. As the taglist plugin changes - the focus to the taglist window to highlight the current tag, this could - interfere with the key movement resulting in changing the contents of - the current buffer. The workaround for this problem is to not set the - |'updatetime'| option to a low value. - -============================================================================== - *taglist-license* -11. License~ -Permission is hereby granted to use and distribute the taglist plugin, with or -without modifications, provided that this copyright notice is copied with it. -Like anything else that's free, taglist.vim is provided *as is* and comes with -no warranty of any kind, either expressed or implied. In no event will the -copyright holder be liable for any damamges resulting from the use of this -software. - -============================================================================== - *taglist-todo* -12. Todo~ - -1. Group tags according to the scope and display them. For example, - group all the tags belonging to a C++/Java class -2. Support for displaying tags in a modified (not-yet-saved) file. -3. Automatically open the taglist window only for selected filetypes. - For other filetypes, close the taglist window. -4. When using the shell from the MKS toolkit, the taglist plugin - doesn't work. -5. The taglist plugin doesn't work with files edited remotely using the - netrw plugin. The exuberant ctags utility cannot process files over - scp/rcp/ftp, etc. - -============================================================================== - -vim:tw=78:ts=8:noet:ft=help: diff --git a/doc/tags-ja b/doc/tags-ja deleted file mode 100644 index 623493f..0000000 --- a/doc/tags-ja +++ /dev/null @@ -1,143 +0,0 @@ -!_TAG_FILE_ENCODING utf-8 // -:FufAddBookmark fuf.jax /*:FufAddBookmark* -:FufAddBookmarkAsSelectedText fuf.jax /*:FufAddBookmarkAsSelectedText* -:FufBookmark fuf.jax /*:FufBookmark* -:FufBuffer fuf.jax /*:FufBuffer* -:FufChangeList fuf.jax /*:FufChangeList* -:FufDir fuf.jax /*:FufDir* -:FufDirWithCurrentBufferDir fuf.jax /*:FufDirWithCurrentBufferDir* -:FufDirWithFullCwd fuf.jax /*:FufDirWithFullCwd* -:FufEditInfo fuf.jax /*:FufEditInfo* -:FufFile fuf.jax /*:FufFile* -:FufFileWithCurrentBufferDir fuf.jax /*:FufFileWithCurrentBufferDir* -:FufFileWithFullCwd fuf.jax /*:FufFileWithFullCwd* -:FufHelp fuf.jax /*:FufHelp* -:FufJumpList fuf.jax /*:FufJumpList* -:FufLine fuf.jax /*:FufLine* -:FufMruCmd fuf.jax /*:FufMruCmd* -:FufMruFile fuf.jax /*:FufMruFile* -:FufQuickfix fuf.jax /*:FufQuickfix* -:FufRenewCache fuf.jax /*:FufRenewCache* -:FufTag fuf.jax /*:FufTag* -:FufTagWithCursorWord fuf.jax /*:FufTagWithCursorWord* -:FufTaggedFile fuf.jax /*:FufTaggedFile* -abc fuf.jax /*abc* -fuf fuf.jax /*fuf* -fuf-abbreviation fuf.jax /*fuf-abbreviation* -fuf-about fuf.jax /*fuf-about* -fuf-author fuf.jax /*fuf-author* -fuf-bookmark-mode fuf.jax /*fuf-bookmark-mode* -fuf-buffer-mode fuf.jax /*fuf-buffer-mode* -fuf-cache fuf.jax /*fuf-cache* -fuf-callbackfile-mode fuf.jax /*fuf-callbackfile-mode* -fuf-callbackitem-mode fuf.jax /*fuf-callbackitem-mode* -fuf-changelist-mode fuf.jax /*fuf-changelist-mode* -fuf-commands fuf.jax /*fuf-commands* -fuf-contact fuf.jax /*fuf-contact* -fuf-detailed-topics fuf.jax /*fuf-detailed-topics* -fuf-dir-mode fuf.jax /*fuf-dir-mode* -fuf-dot-sequence fuf.jax /*fuf-dot-sequence* -fuf-file-mode fuf.jax /*fuf-file-mode* -fuf-givencmd-mode fuf.jax /*fuf-givencmd-mode* -fuf-givendir-mode fuf.jax /*fuf-givendir-mode* -fuf-givenfile-mode fuf.jax /*fuf-givenfile-mode* -fuf-help-mode fuf.jax /*fuf-help-mode* -fuf-hiding-menu fuf.jax /*fuf-hiding-menu* -fuf-information-file fuf.jax /*fuf-information-file* -fuf-installation fuf.jax /*fuf-installation* -fuf-introduction fuf.jax /*fuf-introduction* -fuf-jumplist-mode fuf.jax /*fuf-jumplist-mode* -fuf-line-mode fuf.jax /*fuf-line-mode* -fuf-migemo fuf.jax /*fuf-migemo* -fuf-modes fuf.jax /*fuf-modes* -fuf-mrucmd-mode fuf.jax /*fuf-mrucmd-mode* -fuf-mrufile-mode fuf.jax /*fuf-mrufile-mode* -fuf-multiple-search fuf.jax /*fuf-multiple-search* -fuf-options fuf.jax /*fuf-options* -fuf-options-for-Bookmark-mode fuf.jax /*fuf-options-for-Bookmark-mode* -fuf-options-for-all-modes fuf.jax /*fuf-options-for-all-modes* -fuf-options-for-buffer-mode fuf.jax /*fuf-options-for-buffer-mode* -fuf-options-for-changelist-mode fuf.jax /*fuf-options-for-changelist-mode* -fuf-options-for-dir-mode fuf.jax /*fuf-options-for-dir-mode* -fuf-options-for-file-mode fuf.jax /*fuf-options-for-file-mode* -fuf-options-for-help-mode fuf.jax /*fuf-options-for-help-mode* -fuf-options-for-jumplist-mode fuf.jax /*fuf-options-for-jumplist-mode* -fuf-options-for-line-mode fuf.jax /*fuf-options-for-line-mode* -fuf-options-for-mrucmd-mode fuf.jax /*fuf-options-for-mrucmd-mode* -fuf-options-for-mrufile-mode fuf.jax /*fuf-options-for-mrufile-mode* -fuf-options-for-quickfix-mode fuf.jax /*fuf-options-for-quickfix-mode* -fuf-options-for-tag-mode fuf.jax /*fuf-options-for-tag-mode* -fuf-options-for-taggedfile-mode fuf.jax /*fuf-options-for-taggedfile-mode* -fuf-quickfix-mode fuf.jax /*fuf-quickfix-mode* -fuf-reusing-window fuf.jax /*fuf-reusing-window* -fuf-search-patterns fuf.jax /*fuf-search-patterns* -fuf-sorting-of-completion-items fuf.jax /*fuf-sorting-of-completion-items* -fuf-tag-mode fuf.jax /*fuf-tag-mode* -fuf-taggedfile-mode fuf.jax /*fuf-taggedfile-mode* -fuf-usage fuf.jax /*fuf-usage* -fuf-vimrc-example fuf.jax /*fuf-vimrc-example* -fuf.jax fuf.jax /*fuf.jax* -fuzzyfinder fuf.jax /*fuzzyfinder* -g:fuf_abbrevMap fuf.jax /*g:fuf_abbrevMap* -g:fuf_bookmark_keyDelete fuf.jax /*g:fuf_bookmark_keyDelete* -g:fuf_bookmark_prompt fuf.jax /*g:fuf_bookmark_prompt* -g:fuf_bookmark_searchRange fuf.jax /*g:fuf_bookmark_searchRange* -g:fuf_bookmark_switchOrder fuf.jax /*g:fuf_bookmark_switchOrder* -g:fuf_buffer_mruOrder fuf.jax /*g:fuf_buffer_mruOrder* -g:fuf_buffer_prompt fuf.jax /*g:fuf_buffer_prompt* -g:fuf_buffer_switchOrder fuf.jax /*g:fuf_buffer_switchOrder* -g:fuf_changelist_prompt fuf.jax /*g:fuf_changelist_prompt* -g:fuf_changelist_switchOrder fuf.jax /*g:fuf_changelist_switchOrder* -g:fuf_dir_exclude fuf.jax /*g:fuf_dir_exclude* -g:fuf_dir_prompt fuf.jax /*g:fuf_dir_prompt* -g:fuf_dir_switchOrder fuf.jax /*g:fuf_dir_switchOrder* -g:fuf_enumeratingLimit fuf.jax /*g:fuf_enumeratingLimit* -g:fuf_file_exclude fuf.jax /*g:fuf_file_exclude* -g:fuf_file_prompt fuf.jax /*g:fuf_file_prompt* -g:fuf_file_switchOrder fuf.jax /*g:fuf_file_switchOrder* -g:fuf_help_cache_dir fuf.jax /*g:fuf_help_cache_dir* -g:fuf_help_prompt fuf.jax /*g:fuf_help_prompt* -g:fuf_help_switchOrder fuf.jax /*g:fuf_help_switchOrder* -g:fuf_ignoreCase fuf.jax /*g:fuf_ignoreCase* -g:fuf_infoFile fuf.jax /*g:fuf_infoFile* -g:fuf_jumplist_prompt fuf.jax /*g:fuf_jumplist_prompt* -g:fuf_jumplist_switchOrder fuf.jax /*g:fuf_jumplist_switchOrder* -g:fuf_keyNextMode fuf.jax /*g:fuf_keyNextMode* -g:fuf_keyNextPattern fuf.jax /*g:fuf_keyNextPattern* -g:fuf_keyOpen fuf.jax /*g:fuf_keyOpen* -g:fuf_keyOpenSplit fuf.jax /*g:fuf_keyOpenSplit* -g:fuf_keyOpenTabpage fuf.jax /*g:fuf_keyOpenTabpage* -g:fuf_keyOpenVsplit fuf.jax /*g:fuf_keyOpenVsplit* -g:fuf_keyPrevMode fuf.jax /*g:fuf_keyPrevMode* -g:fuf_keyPrevPattern fuf.jax /*g:fuf_keyPrevPattern* -g:fuf_keyPreview fuf.jax /*g:fuf_keyPreview* -g:fuf_keySwitchMatching fuf.jax /*g:fuf_keySwitchMatching* -g:fuf_learningLimit fuf.jax /*g:fuf_learningLimit* -g:fuf_line_prompt fuf.jax /*g:fuf_line_prompt* -g:fuf_line_switchOrder fuf.jax /*g:fuf_line_switchOrder* -g:fuf_maxMenuWidth fuf.jax /*g:fuf_maxMenuWidth* -g:fuf_modesDisable fuf.jax /*g:fuf_modesDisable* -g:fuf_mrucmd_exclude fuf.jax /*g:fuf_mrucmd_exclude* -g:fuf_mrucmd_maxItem fuf.jax /*g:fuf_mrucmd_maxItem* -g:fuf_mrucmd_prompt fuf.jax /*g:fuf_mrucmd_prompt* -g:fuf_mrucmd_switchOrder fuf.jax /*g:fuf_mrucmd_switchOrder* -g:fuf_mrufile_exclude fuf.jax /*g:fuf_mrufile_exclude* -g:fuf_mrufile_maxItem fuf.jax /*g:fuf_mrufile_maxItem* -g:fuf_mrufile_prompt fuf.jax /*g:fuf_mrufile_prompt* -g:fuf_mrufile_switchOrder fuf.jax /*g:fuf_mrufile_switchOrder* -g:fuf_patternSeparator fuf.jax /*g:fuf_patternSeparator* -g:fuf_previewHeight fuf.jax /*g:fuf_previewHeight* -g:fuf_promptHighlight fuf.jax /*g:fuf_promptHighlight* -g:fuf_quickfix_prompt fuf.jax /*g:fuf_quickfix_prompt* -g:fuf_quickfix_switchOrder fuf.jax /*g:fuf_quickfix_switchOrder* -g:fuf_reuseWindow fuf.jax /*g:fuf_reuseWindow* -g:fuf_smartBs fuf.jax /*g:fuf_smartBs* -g:fuf_splitPathMatching fuf.jax /*g:fuf_splitPathMatching* -g:fuf_tag_cache_dir fuf.jax /*g:fuf_tag_cache_dir* -g:fuf_tag_prompt fuf.jax /*g:fuf_tag_prompt* -g:fuf_tag_switchOrder fuf.jax /*g:fuf_tag_switchOrder* -g:fuf_taggedfile_cache_dir fuf.jax /*g:fuf_taggedfile_cache_dir* -g:fuf_taggedfile_prompt fuf.jax /*g:fuf_taggedfile_prompt* -g:fuf_taggedfile_switchOrder fuf.jax /*g:fuf_taggedfile_switchOrder* -g:fuf_timeFormat fuf.jax /*g:fuf_timeFormat* -g:fuf_useMigemo fuf.jax /*g:fuf_useMigemo* diff --git a/plugin/taglisttoo.vim b/plugin/taglisttoo.vim index 9535762..c820ed4 100644 --- a/plugin/taglisttoo.vim +++ b/plugin/taglisttoo.vim @@ -111,17 +111,6 @@ endif let s:show_current_error_displaying = 0 " }}} -" Balloon(message) eclim/autoload/eclim/util.vim {{{2 -" Function for use as a vim balloonexpr expression. -function! Balloon(message) - let message = a:message - if !has('balloon_multiline') - " remove any new lines - let message = substitute(message, '\n', ' ', 'g') - endif - return message -endfunction " }}} - " DelayedCommand(command, [delay]) eclim/autoload/eclim/util.vim {{{2 " Executes a delayed command. Useful in cases where one would expect an " autocommand event (WinEnter, etc) to fire, but doesn't, or you need a @@ -156,11 +145,6 @@ function! EchoTrace(message, ...) endif endfunction " }}} -" EchoWarning(message) eclim/autoload/eclim/util.vim {{{2 -function! EchoWarning(message) - call s:EchoLevel(a:message, 3, g:EclimWarningHighlight) -endfunction " }}} - " EchoError(message) eclim/autoload/eclim/util.vim {{{2 function! EchoError(message) call s:EchoLevel(a:message, 2, g:EclimErrorHighlight) @@ -181,19 +165,6 @@ function! s:EchoLevel(message, level, highlight) endif endfunction " }}} -" Echo(message) eclim/autoload/eclim/util.vim {{{2 -" Echos a message using the info highlight regardless of what log level is set. -function! Echo(message) - if a:message != "0" && g:EclimLogLevel > 0 - exec "echohl " . g:EclimInfoHighlight - redraw - for line in split(a:message, '\n') - echom line - endfor - echohl None - endif -endfunction " }}} - " EscapeBufferName(name) eclim/autoload/eclim/util.vim {{{2 " Escapes the supplied buffer name so that it can be safely used by buf* " functions. @@ -281,27 +252,6 @@ function! GoToBufferWindow(buf) return 0 endfunction " }}} -" GoToBufferWindowOrOpen(name, cmd) eclim/autoload/eclim/util.vim {{{2 -" Gives focus to the window containing the buffer for the supplied file, or if -" none, opens the file using the supplied command. -function! GoToBufferWindowOrOpen(name, cmd) - let name = EscapeBufferName(a:name) - let winnr = bufwinnr(bufnr('^' . name)) - if winnr != -1 - exec winnr . "winc w" - call DelayedCommand('doautocmd WinEnter') - else - let cmd = a:cmd - " if splitting and the buffer is a unamed empty buffer, then switch to an - " edit. - if cmd == 'split' && expand('%') == '' && - \ !&modified && line('$') == 1 && getline(1) == '' - let cmd = 'edit' - endif - silent exec cmd . ' ' . escape(Simplify(a:name), ' ') - endif -endfunction " }}} - " GoToBufferWindowRegister(buf) eclim/autoload/eclim/util.vim {{{2 " Registers the autocmd for returning the user to the supplied buffer when the " current buffer is closed. @@ -311,153 +261,6 @@ function! GoToBufferWindowRegister(buf) \ 'doautocmd BufEnter' endfunction " }}} -" SetLocationList(list, [action]) eclim/autoload/eclim/util.vim {{{2 -" Sets the contents of the location list for the current window. -function! SetLocationList(list, ...) - let loclist = a:list - - " filter the list if the current buffer defines a list of filters. - if exists('b:EclimLocationListFilter') - let newlist = [] - for item in loclist - let addit = 1 - - for filter in b:EclimLocationListFilter - if item.text =~ filter - let addit = 0 - break - endif - endfor - - if addit - call add(newlist, item) - endif - endfor - let loclist = newlist - endif - - if a:0 == 0 - call setloclist(0, loclist) - else - call setloclist(0, loclist, a:1) - endif - if g:EclimShowCurrentError && len(loclist) > 0 - call DelayedCommand('call ShowCurrentError()') - endif - call s:SignsUpdate() -endfunction " }}} - -" ClearLocationList([namespace, namespace, ...]) eclim/autoload/eclim/util.vim {{{2 -" Clears the current location list. Optionally 'namespace' arguments can be -" supplied which will only clear items with text prefixed with '[namespace]'. -" Also the special namespace 'global' may be supplied which will only remove -" items with no namepace prefix. -function! ClearLocationList(...) - if a:0 > 0 - let loclist = getloclist(0) - if len(loclist) > 0 - let pattern = '' - for ns in a:000 - if pattern != '' - let pattern .= '\|' - endif - if ns == 'global' - let pattern .= '\(\[\w\+\]\)\@!' - else - let pattern .= '\[' . ns . '\]' - endif - endfor - let pattern = '^\(' . pattern . '\)' - - call filter(loclist, 'v:val.text !~ pattern') - call setloclist(0, loclist, 'r') - endif - else - call setloclist(0, [], 'r') - endif - call s:SignsUpdate() -endfunction " }}} - -" SetQuickfixList(list, [action]) eclim/autoload/eclim/util.vim {{{2 -" Sets the contents of the quickfix list. -function! SetQuickfixList(list, ...) - let qflist = a:list - if exists('b:EclimQuickfixFilter') - let newlist = [] - for item in qflist - let addit = 1 - - for filter in b:EclimQuickfixFilter - if item.text =~ filter - let addit = 0 - break - endif - endfor - - if addit - call add(newlist, item) - endif - endfor - let qflist = newlist - endif - if a:0 == 0 - call setqflist(qflist) - else - call setqflist(qflist, a:1) - endif - if g:EclimShowCurrentError && len(qflist) > 0 - call DelayedCommand('call ShowCurrentError()') - endif - call s:SignsUpdate() -endfunction " }}} - -" ShowCurrentError() eclim/autoload/eclim/util.vim {{{2 -" Shows the error on the cursor line if one. -function! ShowCurrentError() - let message = GetLineError(line('.')) - if message != '' - " remove any new lines - let message = substitute(message, '\n', ' ', 'g') - - if len(message) > (&columns - 1) - let message = strpart(message, 0, &columns - 4) . '...' - endif - - call WideMessage('echo', message) - let s:show_current_error_displaying = 1 - else - " clear the message if one of our error messages was displaying - if s:show_current_error_displaying - call WideMessage('echo', message) - let s:show_current_error_displaying = 0 - endif - endif -endfunction " }}} - -" Simplify(file) eclim/autoload/eclim/util.vim {{{2 -" Simply the supplied file to the shortest valid name. -function! Simplify(file) - let file = a:file - - " Don't run simplify on url files, it will screw them up. - if file !~ '://' - let file = simplify(file) - endif - - " replace all '\' chars with '/' except those escaping spaces. - let file = substitute(file, '\\\([^[:space:]]\)', '/\1', 'g') - let cwd = substitute(getcwd(), '\', '/', 'g') - if cwd !~ '/$' - let cwd .= '/' - endif - - if file =~ '^' . cwd - let file = substitute(file, '^' . cwd, '', '') - endif - - return file -endfunction " }}} - " System(cmd, [exec]) eclim/autoload/eclim/util.vim {{{2 " Executes system() accounting for possibly disruptive vim options. function! System(cmd, ...) @@ -545,106 +348,6 @@ function! System(cmd, ...) return result endfunction " }}} -" TempWindow(name, lines, [readonly]) eclim/autoload/eclim/util.vim {{{2 -" Opens a temp window w/ the given name and contents which is readonly unless -" specified otherwise. -function! TempWindow(name, lines, ...) - let filename = expand('%:p') - let winnr = winnr() - - call TempWindowClear(a:name) - let name = EscapeBufferName(a:name) - - if bufwinnr(name) == -1 - silent! noautocmd exec "botright 10sview " . escape(a:name, ' ') - let b:eclim_temp_window = 1 - - " play nice with maximize.vim - "if eclim#display#maximize#GetMaximizedWindow() - " call eclim#display#maximize#AdjustFixedWindow(10, 1) - "endif - - setlocal nowrap - setlocal winfixheight - setlocal noswapfile - setlocal nobuflisted - setlocal buftype=nofile - setlocal bufhidden=delete - else - exec bufwinnr(name) . "winc w" - endif - - setlocal modifiable - setlocal noreadonly - call append(1, a:lines) - retab - silent 1,1delete _ - - if len(a:000) == 0 || a:000[0] - setlocal nomodified - setlocal nomodifiable - setlocal readonly - endif - - silent doautocmd BufEnter - - " Store filename and window number so that plugins can use it if necessary. - if filename != expand('%:p') - let b:filename = filename - let b:winnr = winnr - - augroup eclim_temp_window - autocmd! BufWinLeave - call GoToBufferWindowRegister(b:filename) - augroup END - endif -endfunction " }}} - -" TempWindowClear(name) eclim/autoload/eclim/util.vim {{{2 -" Clears the contents of the temp window with the given name. -function! TempWindowClear(name) - let name = EscapeBufferName(a:name) - if bufwinnr(name) != -1 - let curwinnr = winnr() - exec bufwinnr(name) . "winc w" - setlocal modifiable - setlocal noreadonly - silent 1,$delete _ - exec curwinnr . "winc w" - endif -endfunction " }}} - -" WideMessage(command, message) eclim/autoload/eclim/util.vim {{{2 -" Executes the supplied echo command and forces vim to display as much as -" possible without the "Press Enter" prompt. -" Thanks to vimtip #1289 -function! WideMessage(command, message) - let saved_ruler = &ruler - let saved_showcmd = &showcmd - - let message = substitute(a:message, '^\s\+', '', '') - - set noruler noshowcmd - redraw - exec a:command . ' "' . escape(message, '"\') . '"' - - let &ruler = saved_ruler - let &showcmd = saved_showcmd -endfunction " }}} - -" WillWrittenBufferClose() eclim/autoload/eclim/util.vim {{{2 -" Returns 1 if the current buffer is to be hidden/closed/deleted after it is -" written, or 0 otherwise. This function is useful during a post write auto -" command for determining whether or not to perform some operation based on -" whether the buffer will still be visible to the user once the current -" command has finished. -" Note: This function only detects command typed by the user at the -" command (:) prompt, not any normal mappings which may hide/close/delete the -" buffer. -function! WillWrittenBufferClose() - return histget("cmd") =~ s:buffer_write_closing_commands -endfunction " }}} - " End Util: }}} " TagListToo: {{{1