2009-06-03 13 views
4

私はこれらについてVIMで混乱しています。いくつかのものはセットを必要とし、他は許します。 また、特定のオプションを確認する方法はありますか。私はそれを変更するためにセットを使用するので、それがオプションだと私は知っています。VIM:2つの間のオプション、変数、および変換

たとえば、現在のファイルタイプのオプションがjavaかどうかを確認するにはどうすればよいですか?

答えて

6

として行うことができます。は次のようにオプションの値を設定するために使用されてみましょう:は一方では、オプションの値を示す明示的にオプション値を設定し、それらを切り替えるために使用されている設定前回の式の結果(変数の値でオプションの値を定義するとき)。もちろん、vimスクリプトではを使用しています:をもっと利用してください。例えば


あなた

:set ft=batch 

と正常に設定ファイルタイプがありますが、また

:let varijabla='batch' 
:let &filetype=varijabla 
+0

Vimの**変数**と**オプション**の違いは何ですか? – nn0p

9

さらに詳しい情報を調べると、これが得られます。 オプションの値を取得するには、オプションの前に&という接頭辞を付けます。

ので、上記

if &filetype == 'java' 
11

オプション

すべてのこれらのオプションは、何らかの形でVimの動作を変更することができます。 これらの多くは、Vimをカスタマイズするために使用されます:バックアップファイルの扱い方、テキストの管理方法、メニューとツールバーの表示の有無、および他のものを設定できます。 いくつかのオプションは、バッファまたはウィンドウに対してローカルです。それらは、例えば、ハイライトとインデントをどのバッファで使用すべきかを指定します。 :setコマンドを使用して、オプションの値を設定および印刷できます。:help :setを参照してください。 :h option-listと入力すると、すべてのオプションのリストが1行の説明で表示されます。 :h option-summaryと入力すると、すべてのオプションのリストが表示されます。

内部変数

内部変数は異なるものです:彼らは、プログラム中の変数のようなものです。 変数はいつでも作成または破棄できます。 Vimの動作には影響しません.Vimスクリプト(Vimプラグインや.vimrcファイルなど)を使用して、その値を読み込み(変更)、さまざまなことを行うことができます。 内部変数には、グローバル変数、ローカル変数、その他のいくつかの種類があります。 これらは:h internal-variablesに記載されています。 これらは式(:h expression)で評価され、 は、let:h :let)とunlet:h :unlet)のコマンドを使用して設定および削除できます。拡張された意味での

変数

変数のように動作しますが、内部変数ではありません、他のオブジェクトがあります。 これらは式でも評価され、その値はletコマンドを使用して設定できます。削除することはできません。 内部変数には、環境変数(:h :let-environment)、レジスタ変数(:h let-register)、オプション変数(:h let-option)の3種類があります。 これらはすべて、内部変数と互いに区別できる接頭辞を持っています。 環境変数の先頭には$、レジスタ変数は@、オプション変数は&です。 これらの変数は、(実際の環境変数、レジスタまたはオプションに)どこかを指し、その値がスクリプトまたはユーザーによって読み取られたり設定されたりすると、実際には「実物」の値が読み取られます。

+0

'options'は*定義済みですか?' variables'ですか? – nn0p

+0

単語「変数」は曖昧です。オプションと*内部変数*は多くの点で異なります(記事を参照)。 Vim docsがterm * variable *(:h変数)を使うときは、実際には、内部変数、オプションや他の同様のものが参照できる数値(数値、リストなど)を意味します。 – hcs42

関連する問題