Page 100 of 101
Posted: Fri Jan 18, 2013 7:08 am
by Jabberwock
VladSh wrote:JabberwockПосле каждого изменения надо делать обновление кэша - Call("Coder::Settings", 2).
Дело было в этом.
DV wrote:Jabberwock,
пробовали замочить (удалить с крайней жестокостью) файл AkelFiles\Plugs\Coder\cache ?
Нет, не знал, что это необходимо.
Тадам! Заработало.
Вопрос к Инструктору: можно ли как-то делать это автоматически силами самого плагина?
Я привык к акелпаду, но многие после такого облома не стали бы спрашивать на форуме, а ушли бы на нотепад++ с концами.
Posted: Fri Jan 18, 2013 9:01 am
by DV
Jabberwock wrote:Вопрос к Инструктору: можно ли как-то делать это автоматически силами самого плагина?
+1
Можно было бы в файле cache дополнительно хранить время последней модификации каждого из файлов. А при старте плагина Coder смотреть, какие файлы *.coder есть в наличии - и в случае несовпадения последней даты модификации какого-то из файлов или при появлении/исчезновении какого-то файла обновлять cache. (Обновлять cache = читать только изменеённые или появившиеся файлы.)
Posted: Fri Jan 18, 2013 6:13 pm
by VladSh
DV wrote:Можно было бы в файле cache дополнительно хранить время последней модификации каждого из файлов. А при старте плагина Coder смотреть, какие файлы *.coder есть в наличии - и в случае несовпадения последней даты модификации какого-то из файлов или при появлении/исчезновении какого-то файла обновлять cache.
Дело в том, что когда мы редактируем coder-файл плагин Coder уже стартовал (при загрузке проги).
Если пересоздавать файл именно при старте плагина, то я против, т.к. будет увеличиваться время открытия проги.
Ещё вариант - плагин Coder отслеживает событие сохранения файла, и если это coder-файл, то автоматически делать Call("Coder::Settings", 2), но обновляя информацию в cache только для этого coder-файла; должно быть быстро. + сразу будем видеть изменения в подсветке.
Posted: Fri Jan 18, 2013 7:27 pm
by FeyFre
Можно было бы в файле cache дополнительно хранить время последней модификации каждого из файлов
Зачем?
Хранить ничего лишнего не надо. Поступить как старый добрый make: если кеш-файл старше какого либо файла(либо его нету, либо в кеше нету этого файла), то (пере)обработать только этот файл.
Posted: Fri Jan 18, 2013 11:15 pm
by F. Phoenix
Хм... разобрался, похоже, с
глюком регексповых цитат. Все просто: они друг с другом на одной строке не уживаются.
Пример 1.
Единственное правило синтаксиса:
Создаю новый файл, отрубаю перенос строк, прописываю:
"Какая-то длинная строка" + "еще строка, чтоб на экране не помещалась"
С первой строкой все ок, со второй постоянно слетает цвет (частично). Глючит и с переносом строк, но горизонтальной прокруткой оно более наглядно.
Пример 2.
Т.к. "особенности национальных регулярок" я еще не до конца понял, то чтоб уж точно не было никаких пересечений, опробовал еще такие правила:
Code: Select all
1 `\<a+\>` `\0=(0,#800000,0)`
1 `\<b+\>` `\0=(0,#008000,0)`
Результат тот же:

Posted: Wed Jan 23, 2013 9:34 am
by Instructor
Posted: Wed Jan 23, 2013 3:46 pm
by F. Phoenix
То, вроде, исправилось, но в большинстве случаев перестали работать скобки:
Code: Select all
1 `".*"` `\0=(0,#800000,0)` ; работает
1 `(".*")` `\0=(0,#800000,0)` ; не работает
1 `(".*")` `\1=(0,#800000,0)` ; не работает
1 `(z+)` `\0=(2,#800000,0)` ; работает
Posted: Thu Jan 24, 2013 6:47 am
by Instructor
F. Phoenix wrote:...перестали работать скобки
Тестовая
Posted: Thu Jan 24, 2013 9:51 am
by Infocatcher
Есть *.html с включениями js.
При этом
Code: Select all
.replace(/<button[\s>][\s\S]*<\/button>/i, "")
ломает подсветку всех окружающих тэгов, тогда как тут явно нет нормальных тэгов, вроде как, так что искать ничего не надо.
Posted: Thu Jan 24, 2013 4:56 pm
by Instructor
VladSh wrote:Прошу из cpp.coder убрать *.java, т.к. java.coder
имеется.
Переименовываем "java.coder", например, в "_java.coder", чтобы имя располагалось выше по алфавиту, и обновляем кэш.
Posted: Thu Jan 24, 2013 5:49 pm
by VladSh
Instructor wrote:Переименовываем "java.coder", например, в "_java.coder", чтобы имя располагалось выше по алфавиту, и обновляем кэш.
Я заметил, что иногда новые пользователи выкладывают свои подсветки, и они Вами добавляются на сайт, а также с учётом их делаются модификации... Это какая-то принципиальная нелюбовь именно к моим coder-файлам?

Если java.coder в чём-то недоработан, можно рассмотреть этот вопрос. Составляя его, выдерживалась оптимальность, и так как я сам немного пишу на Java, то делал не просто так, - почти весь Java-Core (классы) имеется. Т.е. хочу сказать, что java.coder не так уж и плох; не вижу причин, чтобы не использовать его наравне с другими.
Posted: Fri Jan 25, 2013 2:41 am
by F. Phoenix
Теперь все вроде наконец починилось

Спасибо за апдейт!
Кстати, в хелпе момент с квантификаторами описан фигово, и я из-за него долго путался. Во-первых в большинстве случаев ленивое поведение наблюдается у абсолютно всех квантификаторов, а не только у перечисленных (в списке, например, не говорится о
?). А во-вторых, единственное исключение, когда они становятся жадными, как я понял, - это на конце шаблона, и то не уверен, что всегда.
VladSh, а где твоя ява-то? Че-то не нашел.
Posted: Fri Jan 25, 2013 9:07 am
by VladSh
F. Phoenix wrote:а где твоя ява-то? Че-то не нашел.
По ссылке если перейти:
VladSh wrote:Прошу из cpp.coder убрать *.java, т.к. java.coder
имеется.
Posted: Fri Jan 25, 2013 9:58 am
by F. Phoenix
Пардон, ослеп совсем

А можешь куда-нить залить, чтоб табуляция сохранилась?
Posted: Fri Jan 25, 2013 10:03 am
by Infocatcher
F. Phoenix wrote:чтоб табуляция сохранилась?
Нажать «
ответить»?
