Сделайте Shebang скрипта другим цветом, чем строки комментариев для vim

Вы пытаетесь обнаружить отсутствующие файлы.ctl и .out, поэтому вам нужно проверить оба способа. Простой способ сделать это (, если ваши имена файлов не содержат специальных символов, включая пробелы, и содержат только одну точку ), это

  1. найти все файлы с find. -type f,
  2. удалить расширение с каждого из них с помощью cut --delimiter=. --fields=1,
  3. sort --uniqueдля удаления дубликатов,
  4. перебираем их с помощью while read nameи, наконец,
  5. проверьте, существует ли каждый из файлов с [[ -e "${name}.ctl" ]] || echo "${name}.ctl" >&2и то же самое для.out.
5
24.02.2020, 21:06
1 ответ

Команды для выполнения в vim:

:hi xShebang ctermfg=red ctermbg=blue
:syntax match xShebang /#!.*/

Это делает строку сценария Shebang красным текстом на синем фоне.

В зависимости от вашей конфигурации vim и порядка загрузки файлов может работать добавление строк (без символов точки с запятой )в.vimrc или перезапись следующих загружаемых файлов.

Чтобы проверить порядок загрузки скриптов, выполните:

:scriptnames

В моем случае ~/.vimrcгде-то в середине загруженных скриптов и синтаксиса команда перезаписывается другими файлами синтаксиса скрипта.


ОБНОВЛЕНО.

Слишком много времени занимает вхождение в структуру загружаемых vim скриптов. Итак, у меня есть быстрое решение для этого конкретного запроса :вы можете запускать дополнительные команды vim из командной строки в качестве параметров, когда вы запускаете vim (он меняет цвет линии Shebang на красный на черном):

vim -c ':syntax match xShebang /#!.*/' -c ':hi xShebang ctermfg=red ctermbg=black' filename

Но нехорошо набирать его каждый раз. Чтобы этого не делать, мы можем создать псевдоним.

Вы можете добавить это в свой профиль.bash _в домашнем каталоге пользователя, чтобы он автоматически загружался каждый раз при входе в систему:

alias vim="vim -c ':syntax match xShebang "'/#!.*/'"' -c ':hi xShebang ctermfg=red ctermbg=black'"

Теперь, когда вы выполняете vim filename, vim будет запускаться со всеми этими параметрами из псевдонима.

3
28.04.2021, 23:22

Теги

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