Консоль Eclipse: обнаружьте предупреждение и ошибочные шаблоны и сделайте их активируемыми по щелчку

PEP 498, который приземлился в python 3.6, добавил интерполяцию буквенных строк, которая в основном является сокращенной формой format.

Теперь вы можете делать:

f"[{1}, {2}, {3}]"

Распространенными другими видами использования, которые я считаю полезными, являются:

pi = 3.141592653589793
today = datetime(year=2018, month=2, day=3)

num_2 = 2     # Drop assigned values in
num_3 = "3"   # Call repr(), or it's shortened form !r
padding = 5   # Control prefix padding
precision = 3 #   and precision for printing


f"""[{1},
     {num_2},
     {num_3!r},
     {pi:{padding}.{precision}},
     {today:%B %d, %Y}]"""

, которые будут производить:

"[1,\n     2,\n     '3',\n      3.14,\n     February 03, 2018]"
9
задан Simon Groenewolt 28 May 2009 в 14:30
поделиться

2 ответа

РЕДАКТИРОВАТЬ: Я нашел плагин, который делает это с немного более интересным видом: Sunshade Errorlink (прокрутите немного вниз). Я не уверен, насколько это гибко, но в нем упоминается поддержка муравьев.


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

Предполагая, что консоль основана на TextConsole, что кажется разумным, спецификация говорит:

Абстрактная текстовая консоль который поддерживает сопоставление регулярных выражений и гиперссылки.

Слушатели сопоставления с шаблоном могут быть зарегистрированы с помощью консоли программно или через org.eclipse.ui.console.consolePatternMatchListeners точка расширения.

Я посмотрел немного подробнее, и в спецификации для этой точки расширения есть следующий пример:

<extension point="org.eclipse.ui.console.consolePatternMatchListener">
  <consolePatternMatchListener
    class="com.example.ExampleConsolePatternMatcher"
    id="com.example.ExampleConsolePatternMatcher"
    regex=".*foo.*">
    <enablement>
      <test 
        property="org.eclipse.ui.console.consoleTypeTest"
        value="exampleConsole"/>
    </enablement>
  </consolePatternMatchListener>
</extension>

Вам понадобится API для IPatternMatchListenerDelegate и после этого вы сможете использовать TextConsole.addHyperlink для создания нужной ссылки.

8
ответ дан 4 December 2019 в 12:20
поделиться

Плагин Grep Console сделает именно это.

1
ответ дан 4 December 2019 в 12:20
поделиться
Другие вопросы по тегам:

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