Создание emacs для подсветки синтаксиса postgresql по умолчанию - PullRequest
16 голосов
/ 25 января 2011

Я использую Emacs для редактирования моего кода SQL. Я работаю 99% времени над кодом postgresql plpgsql. Все мои файлы с расширением .sql содержат postgresql. Мне любопытно, есть ли способ установить sql-highlight-postgres-Keywords Подсветка SQL по умолчанию вместо ANSI SQL, потому что переключение режима довольно раздражает каждый раз, когда я открываю файл.

Ответы [ 2 ]

19 голосов
/ 08 августа 2013

Если вам нужно работать с разными базами данных, а не использовать ловушку, чтобы всегда переключаться на подсветку PostgreSQL при открытии файла .sql, вы можете использовать функцию переменных файла Emacs, чтобы установить продукт для файла за файломбазис.

Например, если первая строка вашего .sql-файла

-- -*- mode: sql; sql-product: postgres; -*-

sql-mode будет автоматически использовать подсветку PostgreSQL.

Полная информация о файле Emacsпеременные здесь (вы также можете установить их в блоке в любом месте файла), и список имен продуктов, вероятно, легче всего найти, выполнив M-x sql-set-product, отступив по умолчанию ansi и нажав TAB насм. список завершения.Примерами являются «mysql», «oracle», «sqlite» и т. Д. (Около десятка в моей установке).

16 голосов
/ 25 января 2011

Обычно в emacs, если вы хотите изменять настройки каждый раз, когда открывается какой-либо режим, вы используете ловушку.Нечто подобное должно работать:

(add-to-list 'auto-mode-alist
             '("\\.psql$" . (lambda ()
                              (sql-mode)
                              (sql-highlight-postgres-keywords))))
...