*pi_getscript.txt* For Vim バージョン 8.1. Last change: 2017 Aug 01 GETSCRIPT REFERENCE MANUAL by Charles E. Campbell Authors: Charles E. Campbell <NdrOchip@@ScampbellPfamilyA.Mbiz> (remove NOSPAM from the email address)
Copyright: (c) 2004-2012 by Charles E. Campbell The VIM LICENSE (see |copyright|) applies to the files in this package, including getscriptPlugin.vim, getscript.vim, GetLatestVimScripts.dist, and pi_getscript.txt, except use "getscript" instead of "Vim". Like anything else that's free, getscript and its associated files are provided *as is* and comes with no warranty of any kind, either expressed or implied. No guarantees of merchantability. No guarantees of suitability for any purpose. By using this plugin, you agree that in no event will the copyright holder be liable for any damages resulting from the use of this software. Use at your own risk!
Getscript はあなたが使つてゐる Vim script の最新バージョンを簡單に檢索するためのプラグインです。|:GLVS| と入力すると getscript が實行されます。すると、<GetLatestVimScripts.dat> ファイル (|GetLatestVimScripts_dat| 參照) に列擧されたスクリプトの最新バージョンが http://vim.sf.net/ から取得されます。
1. 目次 | |glvs-contents| |
2. GetLatestVimScripts -- 準備 | |glvs-install| |
3. GetLatestVimScripts の使ひ方 | |glvs-usage| |
4. GetLatestVimScripts データファイル | |glvs-data| |
5. GetLatestVimScripts 對應プラグイン | |glvs-plugins| |
6. GetLatestVimScripts 自動インストール | |glvs-autoinstall| |
7. GetLatestViMScripts オプション | |glvs-options| |
8. GetLatestVimScripts アルゴリズム | |glvs-alg| |
9. GetLatestVimScripts 開發履歷 | |glvs-hist| |
Vim 7.0 には GetLatestVimScripts.dist (サンプルファイル) が附屬してゐないので、自分で作成する必要があります!|GetLatestVimScripts_dat| 參照。
Note:
GetLatestVimScripts.dist のコピーは、GetLatestVimScripts.tar.bz2 をダウンロードして初めて getscript をインストールするときだけ必要です。
GetLatestVimScripts.dist は自分の一覽を作成するためのサンプルまたはテンプレートとして使つてください。ファイルにはスクリプトがいくつか列擧されてゐますが、必要なければ消してください。重要なのはファイル先頭の 2 行だけです。
GetLatestVimScripts の動作には wget か curl が必要です。
vim getscript.vba :so % :q cd ~/.vim/GetLatest mv GetLatestVimScripts.dist GetLatestVimScripts.dat
(GetLatestVimScripts.dat を編輯して、インストールしたいプラグインの一覽を書いてください。|GetLatestVimScripts_dat| 參照)
vim getscript.vba :so % :q cd **path-to-vimfiles**/GetLatest mv GetLatestVimScripts.dist GetLatestVimScripts.dat
(GetLatestVimScripts.dat を編輯して、インストールしたいプラグインの一覽を書いてください。|GetLatestVimScripts_dat| 參照)
次のコマンドを實行すると GetLatestVimScripts() が呼び出されます
:GLVS
同じ名前のコマンドが他のプラグインによつて既に定義されてゐた場合は、次のコマンドを使つてください
:GetLatestVimScripts
このコマンドは http://vim.sourceforge.net/ をチェックしてスクリプトを更新し、許可がある場合はそれを自動的にインストールします。そのために次のファイルが使はれます:
.vim/GetLatest/GetLatestVimScripts.dat (unix)
または
..wherever..\vimfiles\GetLatest\GetLatestVimScripts.dat (windows)
(|glvs-data| 參照)。そして、[.vim|vimfiles]/plugin ディレクトリ內のプラグインが檢査されます (|glvs-plugins| 參照)。
ダウンロードされたスクリプトは
~/.vim/GetLatest (unix) または ...\vimfiles\GetLatest (windows)
に保存されます。vimrc ファイルに次の設定を書いておくと、ダウンロードしたスクリプトが自動的にインストールされます:
let g:GetLatestVimScripts_allowautoinstall=1
<GetLatestVimScripts.dat> ファイルは自動的に更新され、ダウンロードした最新スクリプトのバージョンが反映されます。(|glvs-options| も參照)
<GetLatestVimScripts.dat> ファイルの先頭 2 行は次のやうなテキストになつてゐます:
ScriptID SourceID Filename --------------------------
その下に 3列 (數値 數値 テキスト) の行が續きます。GetLatest/GetLatestVimScripts.dist ファイルはそのやうなデータファイルの例になつてゐます。コメントは #... で書くことができます。
1 列目の數値はスクリプトの ScriptID です。Web ブラウザーで http://vim.sf.net/ にあるスクリプトを探すとき、スクリプトへのリンクにマウスカーソルを合はせると、次のやうな url が確認できますが
http://vim.sourceforge.net/scripts/script.php?script_id=40
この "40" が ScriptID です。GetLatestVimScripts はこの番號を使つてスクリプトのページにアクセスします。この番號は最初に vim.sf.net にプラグインをアップロードしたときに付けられます。
2 列目の數値はスクリプトの SourceID です。SourceID は vim.sf.net にスクリプトがアップロードされるごとに新しい番號が付けられます。したがつて、その番號を見ればスクリプトがアップロードされた時期が分かります。SourceID に 1 を指定すると、そのスクリプトがまだ最新版に更新されてゐないといふことを明示できます。
GetLatestVimScripts は、vim.sf.net のスクリプトのページから SourceID を拔き出して、それが GetLatestVimScripts.dat に記錄された番號よりも大きければ、そのスクリプトをダウンロードします。(|GetLatestVimScripts_dat| 參照)
スクリプトの作者が、プラグインに特殊なコメント行を書いてゐた場合、そのコメント行を使つて <GetLatestVimScripts.dat> が生成されます。スクリプトの依存關係も處理されます。例:
" GetLatestVimScripts: 884 1 :AutoInstall: AutoAlign.vim
このコメントは、チェックすべきスクリプトの番號が 884 番であること、そのスクリプトが自動インストール可能であることを示してゐます。getscript はこの情報を GetLatestVimScripts.dat に保存します (まだなければ)。次のやうな行になります:
884 1 :AutoInstall: AutoAlign.vim
詳細は |glvs-plugins| を參照してください。このやうに、GetLatestVimScripts はプラグインを更新するための包括的な機能を提供してゐます。
let g:GetLatestVimScripts_allowautoinstall=1
" GetLatestVimScripts: 884 1 :AutoInstall: AutoAlign.vim
プラグインに含まれてゐれば、そのプラグインは AutoInstall 可能であることがプラグインの作者によつて示されてゐることになる。すべてのプラグインがAutoInstall できるとは限らない。そして、AutoInstall できるかどうかを判斷するのはプラグインの作者がもつとも適してゐる。
884 1 :AutoInstall: AutoAlign.vim
GetLatestVimScripts.dat ファイルに含まれてゐれば、あなたが getscript に對して AutoInstall の許可を與へてゐることになる。AutoInstall にはあなたとプラグインの作者の兩者の許可が必要です。|GetLatestVimScripts_dat| 參照。
ScriptID SourceID Filename -------------------------- 294 1 :AutoInstall: Align.vim 120 2 Decho.vim 40 3 DrawIt.tar.gz 451 4 EasyAccents.vim 195 5 engspchk.vim 642 6 GetLatestVimScripts.vim 489 7 Manpageview.vim
Note:
最初の 2 行は必須です。ただしコメントと同樣に無視されます。
(このセクションはプラグイン作者向けの說明です)
プラグインの作者がプラグインのどこかに以下のやうなコメントを書いてゐた場合、GetLatestVimScripts はそれを見附けて、GetLatestVimScripts.dat ファイルの構築に使ひます:
src_id v " GetLatestVimScripts: ### ### yourscriptname ^ scriptid
プラグインの作者は、上記のやうな行を書いて自分のプラグインを參照させてください。複數行書けるので、依存してゐる別のプラグインを參照することもできます。その場合でも書式は同じです。
プラグインが自動インストール可能 (|glvs-autoinstall| 參照) なら (ほとんどのスクリプトはさうだと思ひますが)、"yourscriptname" の前に :AutoInstall: を指定することができます。
src_id v " GetLatestVimScripts: ### ### :AutoInstall: yourscriptname ^ scriptid
Note:
:AutoInstall: 機能の實行にはプラグイン作者とユーザーの兩者の許可が必要です。
GetLatestVimScripts 命令が未登錄の場合は、ユーザーの GetLatest/GetLatestVimScripts.dat ファイルに追加されます。あなたのプラグインが依存してゐるスクリプトのインストールを比較的簡單に自動化できます。
プラグインの作者の方は、自分の環境で自分のプラグインをダウンロードしたくはないと思ひます。リリース前の作業中のスクリプトが上書きされると困りますよね。それを防ぐための仕組みが用意されてゐます。次の行を <GetLatestVimScripts.dat> に書いてください:
0 0 yourscriptname
スクリプト "yourscriptname" に對する GetLatestVimScript 命令は處理されなくなります。その命令行は <GetLatestVimScripts.dat> には登錄されず、スクリプトはダウンロードされません。これは :AutoInstall: オプションを指定してゐるときには特に重要です。
"0 0 yourscriptname" の指定ではスクリプトに書かれた "yourscriptname" と同じ名前を使つてください。
GetLatestVimScripts には自動インストール機能があります。スクリプトによつてはインストールに特別な作業が必要なものもありますが (各スクリプトのインストール方法を確認してください)、ほとんどのスクリプトは自動インストール可能です。
自動インストールするには、データファイルのコメントフィールドを次のテキストで開始してください (前後の空白は無視されます):
:AutoInstall:
兩端のコロンは必須です。必ずコメントフィールド (yourscriptname) の先頭に書いてください。
以下の行を <.vimrc> に書くと、自動インストール機能を無效にできます:
let g:GetLatestVimScripts_allowautoinstall= 0
:AutoInstall: が有效になつてゐる場合 (初期設定)、次のやうな擴張子のファイルが自動インストール可能です:
---.tar.bz2 : decompressed & untarred in .vim/ directory ---.vba.bz2 : decompressed in .vim/ directory, then vimball handles it ---.vim.bz2 : decompressed & moved into .vim/plugin directory ---.tar.gz : decompressed & untarred in .vim/ directory ---.vba.gz : decompressed in .vim/ directory, then vimball handles it ---.vim.gz : decompressed & moved into .vim/plugin directory ---.vba : unzipped in .vim/ directory ---.vim : moved to .vim/plugin directory ---.zip : unzipped in .vim/ directory
ただし、壓縮ファイルを展開するか、あるいはファイルをプラグインディレクトリにコピーするだけでインストール可能である必要があります。Vimball は常に自動インストール可能です。
自動インストールできないのはどんな場合でせうか? 例を示します:
.vim/after/syntax/blockhl.vim
<blockhl.vim> は C/C++ のブロックを强調表示するスクリプトです。次の場所から入手できます:
http://vim.sourceforge.net/scripts/script.php?script_id=104
現在、Vim の after/syntax はファイルタイプと同じ名前のスクリプトしかサポートしてません (blockhl.vim の場合は、after/syntax/c.vim)。そのため、自動的にインストールすると、ユーザーの after/syntax/c.vim を上書きする可能性があります。
私は個人的に、<aftersyntax.vim> を after/syntax/c.vim にコピーして、after/syntax/c/ ディレクトリを使へるやうにしてゐます:
http://vim.sourceforge.net/scripts/script.php?script_id=1023
このスクリプトを使ふと、after/syntax/c ディレクトリにある複數のファイルをシンタックスファイルとして使へます。ユーザーの after/syntax/c.vim を上書きしてしまふ可能性があるため、配布物には含めてゐません。
初期設定: "wget"
スクリプトをダウンロードするのに使はれるプログラム。
初期設定: "-q -O"
g:GetLatestVimScripts_wget に設定されたプログラムの起動引數。
初期設定: 1
スクリプトの自動インストールを許可するかどうかの設定。自動インストールはプラグインの作者によつてそのプラグインが自動インストール可能であることが明示されてゐる必要があります (それには :AutoInstall: キーワードを GetLatestVimScripts コメント行に指定します)。
初期設定= $HOME/.vim (linux)
初期設定= $HOME/vimfiles (windows)
自動インストールスクリプト (:AutoInstall:) のインストール先を變更できます。vimball のインストールには適用されません。
初期設定=’http://vim.sourceforge.net/script.php?script_id=’
あなたのシステムで設定が必要な場合に上書きしてください。
... =’http://vim.sourceforge.net/script/script.php?script_id=’
Vim の Web サイトでは、スクリプト ID を利用してページを動的に生成してゐます。
http://vim.sourceforge.net/scripts/script.php?script_id=40
ページ內には最新の ソースID が書かれてゐます。ソースID の番號は再利用されないので、その番號が、GetLatestVimScripts.dat に記錄された番號より大きい場合は、新しいスクリプトがダウンロードできるといふことです。
スクリプトをダウンロードしたら、內部データベースの ScriptID, SourceID, scriptname を更新します。
自動インストールの手順は次の通り:
ファイルを GetLatest/ から以下のディレクトリに移動する Unix : $HOME/.vim Windows: $HOME\vimfiles if ファイルの擴張子 == ".bz2" bunzip2 <file> else if ファイルの擴張子 == ".gz" gunzip <file> そして、 if ファイルの擴張子 == ".zip" unzip <file> else if ファイルの擴張子 == ".tar" tar -oxvf <file> else if ファイルの擴張子 == ".vim" plugin ディレクトリに移動
v36 Apr 22, 2013 : * (glts) suggested use of plugin/**/*.vim instead of plugin/*.vim in globpath() call. * (Andy Wokula) got warning message when setting g:loaded_getscriptPlugin v35 Apr 07, 2012 : * (MengHuan Yu) pointed out that the script URL has changed (somewhat). However, it doesn't work, and the original one does (under Linux). I'll make it yet-another-option. v34 Jun 23, 2011 : * handles additional decompression options for tarballs (tgz taz tbz txz) v33 May 31, 2011 : * using fnameescape() instead of escape() * *.xz support v32 Jun 19, 2010 : * (Jan Steffens) added support for xz compression v31 Jun 29, 2008 : * (Bill McCarthy) fixed having hls enabled with getscript * (David Schaefer) the acd option interferes with vimballs Solution: bypass the acd option v30 Jun 13, 2008 : * GLVS now checks for existence of fnameescape() and will issue an error message if it is not supported v29 Jan 07, 2008 : * Bram M pointed out that cpo is a global option and that getscriptPlugin.vim was setting it but not restoring it. v28 Jan 02, 2008 : * improved shell quoting character handling, cygwin interface, register-a bypass Oct 29, 2007 * Bill McCarthy suggested a change to getscript that avoids creating pop-up windows v24 Apr 16, 2007 : * removed save&restore of the fo option during script loading v23 Nov 03, 2006 : * ignores comments (#...) * handles vimballs v22 Oct 13, 2006 : * supports automatic use of curl if wget is not available v21 May 01, 2006 : * now takes advantage of autoloading. v20 Dec 23, 2005 : * Eric Haarbauer found&fixed a bug with unzip use; unzip needs the -o flag to overwrite. v19 Nov 28, 2005 : * v18's GetLatestVimScript line accessed the wrong script! Fixed. v18 Mar 21, 2005 : * bugfix to automatic database construction * bugfix - nowrapscan caused an error (tnx to David Green for the fix) Apr 01, 2005 * if shell is bash, "mv" instead of "ren" used in :AutoInstall:s, even though its o/s is windows Apr 01, 2005 * when downloading errors occurred, GLVS was terminating early. It now just goes on to trying the next script (after trying three times to download a script description page) Apr 20, 2005 * bugfix - when a failure to download occurred, GetLatestVimScripts would stop early and claim that everything was current. Fixed. v17 Aug 25, 2004 : * g:GetLatestVimScripts_allowautoinstall, which defaults to 1, can be used to prevent all :AutoInstall: v16 Aug 25, 2004 : * made execution of bunzip2/gunzip/tar/zip silent * fixed bug with :AutoInstall: use of helptags v15 Aug 24, 2004 : * bugfix: the "0 0 comment" download prevention wasn't always preventing downloads (just usually). Fixed. v14 Aug 24, 2004 : * bugfix -- helptags was using dotvim, rather than s:dotvim. Fixed. v13 Aug 23, 2004 : * will skip downloading a file if its scriptid or srcid is zero. Useful for script authors; that way their own GetLatestVimScripts activity won't overwrite their scripts. v12 Aug 23, 2004 : * bugfix - a "return" got left in the distribution that was intended only for testing. Removed, now works. * :AutoInstall: implemented v11 Aug 20, 2004 : * GetLatestVimScripts is now a plugin: * :GetLatestVimScripts command * (runtimepath)/GetLatest/GetLatestVimScripts.dat now holds scripts that need updating v10 Apr 19, 2004 : * moved history from script to doc v9 Jan 23, 2004 : windows (win32/win16/win95) will use double quotes ("") whereas other systems will use single quotes ('') around the urls in calls via wget v8 Dec 01, 2003 : makes three tries at downloading v7 Sep 02, 2003 : added error messages if "Click on..." or "src_id=" not found in downloaded webpage Uses t_ti, t_te, and rs to make progress visible v6 Aug 06, 2003 : final status messages now display summary of work ( "Downloaded someqty scripts" or "Everything was current") Now GetLatestVimScripts is careful about downloading GetLatestVimScripts.vim itself! (goes to <NEW_GetLatestVimScripts.vim>) v5 Aug 04, 2003 : missing an endif near bottom v4 Jun 17, 2003 : redraw! just before each "considering" message v3 May 27, 2003 : Protects downloaded files from errant shell expansions with single quotes: '...' v2 May 14, 2003 : extracts name of item to be obtained from the script file. Uses it instead of comment field for output filename; comment is used in the "considering..." line and is now just a comment! * Fixed a bug: a string-of-numbers is not the same as a number, so I added zero to them and they became numbers. Fixes comparison.