Metrolog / marks

Развитие проекта прекращено.
GNU General Public License v3.0
3 stars 1 forks source link

Добавить promblemmatcher для VSCode для ghostscript #52

Open sergey-s-betke opened 6 years ago

sergey-s-betke commented 6 years ago

Требуемое поведение

В случае ошибок при выполнении тестов на страницу "Проблемы" информация не поступает. Только в терминал. Целесообразно выводить информацию при использовании Vscode и из ghostscript.

sergey-s-betke commented 6 years ago

Потребуется дополнительная обработка в PostScript.

Идея следующая: подключение файлов "библиотеки" всё равно выполняется методами библиотеки. В этих методах стоит предусмотреть отдельный словарь, в который мы будем по принципу стека складывать пути к обрабатываемым файлам, а по завершению их обработки - вытаскивать их из стека.

Проблема остаётся с определением имени корневого файла. Для его определения целесообразно обрабатывать командную строку ghostscript. И передавать каким-либо образом это имя в ghostscript.

Далее, необходимо подготовить свой обработчик ошибок. В нём как раз мы определим текущий файл, позицию в текущем файле. В идеале - там же и перевести позицию в файле в номер строки и символа в строке.

На первый взгляд определение позиции в файле вполне возможно: в цикле readline, пока fileposition не достигнет той, что вызвала проблемы.

sergey-s-betke commented 6 years ago

Однако, это не совсем решение. Если не сказать - не решение. Оно поможет только с ошибкам загрузки файлов. В случае проблем с исполнением - уже не поможет.

sergey-s-betke commented 6 years ago

https://www.ghostscript.com/doc/doc/Use.htm#Debugging

sergey-s-betke commented 6 years ago

Вероятно, потребуется debug сборка ghostscript.