2

Существуют ли какие-либо бесплатные текстовые редакторы, которые выделяют текст в соответствии с порядком токенизации порядка оценки ? Целевым языком в настоящее время являются C, Javascript и HTML. Но вопрос, обобщенный для других языков, таких как C #, C++, вероятно, был бы наиболее полезным.

Например, если вы дважды щелкните console в следующем примере

   if(x){
     console.log("test");
   }

console.log("test") вроде так должен быть выделен.

Затем, если вы продолжите двойной щелчок, следующий уровень должен быть выделен следующим образом.

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

РЕДАКТИРОВАТЬ:: В идеале редактор по-прежнему поддерживает автоматический отступ.

1 ответ1

3

Пример, который вы показали здесь, - это выборка, которая перемещает абстрактное синтаксическое дерево вверх. Это отличается от порядка вычисления выражения. Если редактор хочет иметь такую функциональность, он должен анализировать язык (а не только маркировать его).

IntelliJIDEA обычно имеет эту функцию для многих поддерживаемых пользовательских языковых плагинов и, конечно, для Java, Python и т.д., Которые они поддерживают изначально. Плагин Mathematica для IDEA анализирует код и, следовательно, предоставляет то, что вы хотите

выбор

Для JavaScript, HTML и C также существует поддержка, поэтому у вас, скорее всего, будет эта возможность. Просто установите версию сообщества IDEA и попробуйте ее. Для C вам понадобится C-плагин.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .