Комментарии 22
термин «подсветка кода» заиграл новыми красками
Жаль нет раздела «я хвастаюсь». Что бы пропускать такое…
Синтаксический разбор как то раньше проходили в курсе прикладная математика (у других может быть по другому назывался курс)
Где то пара лекций и одна лабораторная работа по ним.
Как то хвастаться «я тут накидал простейшую смотрелку кода» + 2 огромных скриншота…
Без исходников…
Может зря?
Было бы любопытно взглянуть на исходники. Изобрели вы велосипед или все же использовали много лет назад известные классические алгоритмы?
Синтаксический разбор как то раньше проходили в курсе прикладная математика (у других может быть по другому назывался курс)
Где то пара лекций и одна лабораторная работа по ним.
Как то хвастаться «я тут накидал простейшую смотрелку кода» + 2 огромных скриншота…
Без исходников…
Может зря?
Было бы любопытно взглянуть на исходники. Изобрели вы велосипед или все же использовали много лет назад известные классические алгоритмы?
не думаю что я использовал какой то известный классический алгоритм, какой имеете ввиду вы. Там делиться слова символами ( не буквами, такими как =,*{/ ). А ключевые слова просто в array записаны. группа с зеленым цветом записана в один массив, группа с другим цветом в другой массив. потом проверяется в какой группе находится это слово, если оно есть в какой то группе, то ему назначается цвет текущей темы. и всё. код пока выкладывать не хочу. надо в лучший вид некоторые детали привести. да и для устройства на работу такое приложение наверное не подойдет.
Значит тот же шарп скорее всего не будет верно подсвечен?
var var = 1;
и тп.
он не только будет неверно подсвечен, но и код не скомпилируется. вы что, докопаться решили?
данный код абсолютно компилируемый.
Я решил напомнить про такую вещь как контекстнозависимые ключевые слова.
а, да? но у меня не анализатор кода, а только подсветка. даже в этом примере, где вы написали
var var = 1;
подсветило как есть. так все работают парсеры. потому что var это ключевое слово. или в vim посмотрите, там тоже самое будет, тоже подсветиться. а где не подсвечивается — покажите.хотя в принципе я могу это добавить. у меня для каждого языка есть класс, который от одного интерфейса наследуется, который они реализуют. и в них учтены особенности для каждого языка. но как мне узнать все эти приколюшки языка, чтобы их добавить?
это вот это? docs.microsoft.com/ru-ru/dotnet/csharp/language-reference/keywords
то есть можно сделать даже так?
то есть можно сделать даже так?
var async = 1;
А среди этих ключевых слов может только быть var в начале?
я делал так, как видит vim. где в vim подсвечивает, там и в этой программе подсвечивает.
Норм, зря минусов накидали. С чего-то надо начинать же! Кстати, вот ещё большой список идей приложений для тренировки.
Судя по заголовку, мне померещилось приложение для чтения исходников вслух и с выражением ;). А тут целый viewer с подсветкой синтаксиса. 2001 год возвращается ;)
скажите пожалуйста, а как называется шрифт на скриншотах?
Бросилось в глаза несколько моментов:
Как могут быть на одном экране кнопки "сохранить" и "продолжить"? Сохранить, но не продолжать? Продолжить, но не сохранять?
Подсветки URL в комментарии нет. Строка в кавычках подсвечивается вместе с кавычками, а не значение внутри кавычек
если вкладок много, где-то будет их список?
При чтении статьи подумал "статью похоже писал молодой, но сильный, ИИ" :)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Программа для чтения исходных кодов