:setsadece seçeneklerle çalışır ve sehe'nin cevabı bazı iyi kullanım örneklerini gösterir.
:letÖte yandan, neredeyse her şeyi :setve daha fazlasını yapabilir. İçin bir değer atayabilir
- bir değişken, ör.
let vi = 'vim'
- bir seçenek, ör.
let &tw = 40
- bir kayıt, ör.
let @a = $HOME . '/vimfiles'
- bir ortam değişkeni, ör.
let $NOTHING = 'NOTHING'
Bir diğer önemli fark, sağ tarafının :letbir ifade olmasıdır , yani dize birleştirme (yukarıdaki kayıt örneğimde görüldüğü gibi) ve aritmetik işlemler (örn. let &tw = 40 + 60) Yapabilirsiniz . Bu aynı zamanda bir dize ise değeri alıntılamanız gerektiği anlamına gelir. :setdiğer yandan kelimesi kelimesine değeri okur.
Bu :setseçeneklerin :letçoğunu da yapabilmesine rağmen daha kolay , Sehe'nin örneklerini kullanan bazı karşılaştırmalar ("n / a" bunu yapmanın bir yolu olmadığı anlamına gelir :let)
:verbose set vs yok (tüm seçenekleri listelemenin başka bir yolu olduğunu düşünmeyin)
:set tw=40vs :let &tw = 40(evet, aynı stenoyu da kullanabilirsiniz let)
:set wrap& vs yok
:set nowrapvs :let &wrap = 0(boole seçenekleri için, 0 yanlış ve 1 doğrudur)
:set wrap! vs :let &wrap = !&wrap
Birkaç örnek daha
- bir seçeneğin değerini yazdır:
:set formatoptions?vs :echo &formatoptions( letdeğerleri yazdırmaz, aksine set)
aynı anda birden fazla seçeneğe atama:
:set et sw=4 sts=4
vs
:let [&et, &sw, &sts] = [0, 4, 4]
global seçeneği ayarla: setglobal etvslet &g:et = 1
- yerel seçeneği ayarla:
setlocal etvslet &l:et = 1
Daha fazla ayrıntı için :h :setve bölümüne bakın:h :let
tl; Dr.
:setyalnızca seçeneklerle çalışır, ancak sözdizimi çok daha basittir. :letyalnızca seçeneklerle değil, değişkenlerle, yazmaçlarla ve ortam değişkenleriyle de çalışır. Aksine :set, sağ tarafı :letbir ifadedir.
:help setve:help letokudunuz mu?