Я использую vim для редактирования скриптов lua (хотя это связано с vim и не имеет ничего общего с lua).В настоящее время я сопоставил
:map <F1> :w^M:!lua %^M
, чтобы я мог нажать F1 в текущем файле, чтобы выполнить его и увидеть любые результаты, прежде чем снова нажать ENTER, чтобы вернуться к редактированию.
Иногда,Я работаю с проектом с несколькими различными файлами, где один является основным файлом, поэтому я хотел бы реализовать следующее:
- При нажатии
<Control-F1>
сохраняется имя текущего файла (%)в переменную, назовем ее mainfile
. - Если установлено
mainfile
, то <F1>
выполняет :w^M:!lua ${mainfile}^M
, в противном случае выполняется текущий файл (как указано выше).
Я уже довольно давно использовал vim, но не его функцию сценариев - например, :let mainfile = %
, кажется, не работает (недопустимое выражение).
Есть ли простой способ сделать это?У меня есть чувство, если это возможно, это будет что-то вроде 3 строки.