1. ホーム
  2. vim

[解決済み] Vim:letとsetはどう違うの?

2022-05-03 23:33:37

質問

との違いは何ですか? letset をvimエディタで表示できますか?

いつも思うのですが、なぜ両方が存在するのでしょうか?

また、その歴史的背景も聞いてみたいですね。

どのように解決するのですか?

:set は設定用 オプション , :let に値を割り当てるためのものです。 変数 .

オプションの値は、オプションの名前の前に & (この &option-name の構成は、通常の変数と非常によく似た動作をします)。つまり、以下は等価である。

:set  tw=40
:let &tw=40

しかし、例えば、グローバル変数fooに50を代入すると( :let g:foo=50 ) では実現できません。 :set コマンドを使用します(g:fooは変数であり、オプションではないため)。

オプションの中には、ブール値のようなものがあります。これらを設定する場合、値は必要ありません(たとえば :set noic と、その反対の :set ic ).