Подсветка синтаксиса Emacs для того, чтобы сделать термин с логическими операторами более читабельным?

2

У меня есть длинная строка с булевой логикой, как

(«Mercedes Benz» или «Audi» не «Volkswagen», а не «грузовик»), но гораздо длиннее и сложнее (с несколькими круглыми скобками и т. Д.)

Интересно, как я могу сделать эту строку более удобочитаемой для меня и других, я думаю, что отступы и цвета могли бы помочь.

Есть ли способ автоматически отформатировать эту строку с помощью emacs, чтобы упростить ее чтение?

Пример строки (что не обязательно логично!)

(«Мерседес Бенц» или (Бенц не Карл не Карл * не женщина) или «Даймлер»   Chrysler "или" корпорация Daimler "или Daimler или Chrysler или AMG или   автомобиль или автомобиль или автомобиль или "automo * Manufactur *")

Операторы:

  • а также
  • или же
  • не
  • ни
  • исключающее

Текстовые строки

  • как это: "Daimler Chrysler"
  • или просто слова, как daimler Benz и т.п.

Wildcards:

  • *
MostlyHarmless
источник
Я не уверен, что вы спрашиваете. Подсветка синтаксиса доступна, но зависит от языка. Какой язык вы используете? Elisp?
SlowLearner
на самом деле, нет. Это поисковый термин, используемый в поисковой системе (аналог Google) для фильтрации интересного контента. Это выглядит очень похоже на elisp, поэтому, возможно, поможет подсветка и форматирование синтаксиса (с переносами строк и отступами) для elisp К сожалению, я не могу вставить настоящий пример здесь.
MostlyHarmless

Ответы:

1

Определение блокировки шрифтов может быть сложно. Вам нужно будет опубликовать пример синтаксиса, который вы хотите выделить, даже если это псевдо-пример. Помните также, что если вы хотите выделить ключевые слова, такие как or а также and тогда, поскольку они часто могут быть частью более крупных терминов, вам потребуется регулярное выражение, которое может различать их, когда они используются в качестве ключевых слов. Например, достаточно ли пробелов, чтобы выделить их в вашем контексте?

В общем, приведите пример - мы не можем угадать синтаксис, с которым вы пытаетесь работать.

Drew
источник
Спасибо за вашу помощь! Я добавил более длинную строку примера, которая должна охватывать весь общий синтаксис
MostlyHarmless