Как я могу указать вариант оболочки для файла в локальных переменных Emacs этого файла, если файл не является отдельной программой?
Emacs позволяет мне указать, что включаемый файл оболочки следует открывать в режиме sh
, установив локальную переменную в подсказках редактора:
# Local variables:
# coding: utf-8
# mode: sh
# End:
# vim: fileencoding=utf-8 filetype=bash :
Я могу указать Vim, что в качестве варианта оболочки файла используется Bash, и он подчиняется подсказке редактора для представления особой подсветки синтаксиса Bash. Но в Emacs есть режим sh
который охватывает все варианты оболочки.
Emacs правильно интерпретирует такой файл, если у него есть строка shebang (например, #! /bin/bash
). Но некоторые файлы не являются автономными программами, поэтому я не хочу, чтобы у них была строка Шебанга.
В режиме Emacs sh
эти файлы рассматриваются как синтаксис оболочки Posix, а это не так. режим sh
имеет понятие «вариант» синтаксиса оболочки; но я не могу узнать, как указать в подсказках редактора файла, какой вариант использовать для файла.
Как я могу установить подсказки редактора в файле, чтобы сообщить Emacs, что его синтаксис - Bash?
Обновление 2014-04-24: я сообщил об ошибке Emacs # 17333 из- за этого недостающего поведения.