cpo&vimは特別な構文ですか?


13

スクリプトでは、次のようなことをするのが習慣です。

let s:save_cpo = &cpo
set cpo&vim

... script ...

let &cpo = s:save_cpo

スクリプトの互換性のないモードを確保するため。

は:

set cpo&vim

のようなある種の特別な構文foo & bar?それとも、コマンド、トリガーライン、または他の何かのようなものですか?

回答:


13

はい、オプションをVimのデフォルトにリセットする特別な構文です。から:help :set-&vim

:se[t] {option}&        Reset option to its default value.  May depend on the
                        current value of 'compatible'. {not in Vi}
:se[t] {option}&vi      Reset option to its Vi default value. {not in Vi}
:se[t] {option}&vim     Reset option to its Vim default value. {not in Vi}

:se[t] all&             Set all options, except terminal options, to their
                        default value.  The values of 'term', 'lines' and
                        'columns' are not changed. {not in Vi}

入力するだけで見つかりました:help &vim(これもに移動します:help :set-&vim):-)


4
ありがとう、私の悪い。私はcpo、vimdoc.sourceforge.net / htmldoc / usr_41.html#use
save

1

cpoはオプション変数compatible option&意味し、そのため&cpo、互換性のあるオプションの値を表します。

set cpo&vimは、cpoデフォルトのをリセットするようにvimに指示する特別な構文aABceFsです。

のドキュメントを参照してください :h cpo

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.