энергия: использование for-loop-iterator-variable в шаблоне поиска

Ответом является мой ЦП, перегревание.

2
19.03.2015, 15:00
2 ответа

Vimscript оценивается точно так же, как команды Ex, набранные в командной строке :. В команде ex переменных не было, поэтому их невозможно указать. При интерактивном вводе команды вы, вероятно, использовали бы = для вставки содержимого переменной:

:sleep <C-R>=timetowait<CR>m<CR>

... но в скрипте необходимо использовать :execute. Все литературные части команды Ex должны быть заключены в кавычки (одинарные или двойные кавычки), а затем соединены с переменными:

execute 'sleep' timetowait . 'm'

В вашем примере вы хотите поместить переменную i в команду :%s:

for i in range(1,40) | execute '%s/S' . i . 'Tg//gn' | endfor
7
27.01.2020, 21:52

Клиентский аргумент имеет некоторые правила анализа Что вы можете найти на страницах человека для Startx и Xinit .

В основном вам нужно, чтобы клиент начать с косой или точек. Это работает:

$ startx /usr/bin/python apk.py

или общий чит, чтобы использовать путь от ENV:

$ startx /usr/bin/env python apk.py

, если программа может начать сам по себе (правильно #! Линия начать в случае Python), вы можете просто

$ startx ./apk.py
-121--244325-

Если вы не используете петлю для для других целей, вы всегда можете расширить свое регулярное выражение для покрытия всего диапазона номеров:

:%s/S\([1-4]0\|[1-3]*[1-9]\)Tg//gn
0
27.01.2020, 21:52

Теги

Похожие вопросы