Jest to prawdopodobnie niezwykle proste pytanie, ale jak dotąd nie znalazłem żadnej odpowiedzi (muszę brakować odpowiednich źródeł i nie wiem, gdzie szukać pomocy Vima).
Mam warunek i chciałbym, aby zawierał „I”, na przykład
if (condition1 .AND. condition2)
"do what I want you to do
endif
ale nie mogłem znaleźć składni. To samo dotyczy „OR”.
.AND.
i.OR.
to jest składnia Fortrana, nie widziałem, że był używany poza kodem Fortrana od bardzo dawna. :) Vim zamiast tego używa składni podobnej do C,&&
dla AND i||
OR. Zobacz:h expression-syntax
więcej.Odpowiedzi:
Jak powiedział @ lcd047 w swoim komentarzu, vimscript używa operatorów podobnych do C
&&
i||
.Opis ich wykorzystania można znaleźć na
:h expr2
. Niektóre ważne punkty wymienione przez doktora są następującePrzekonasz się, że operatory mogą być łączone i
&&
mają pierwszeństwo||
, więcJest równa
Również po poznaniu wyniku wyrażenie „zwarcia”, to znaczy dalsze argumenty nie są oceniane. To tak, jak dzieje się w C.
Jeśli użyjesz:
Wyrażenie będzie ważne, nawet jeśli
b
nie zostało zdefiniowane.źródło