Author Topic: Баги :)  (Read 3673 times)

Offline DrakonHaSh

  • Newbie
  • *
  • Posts: 18
  • Karma: +0/-0
    • View Profile
Баги :)
« on: March 21, 2010, 01:05:57 pm »
версия 1.48.765

1. perl - не учитывается функция qq в результате чего "портится" распознавание кода вида:
Code: [Select]
  if ($err<0) {
      print qq|bla ' bla \n\n|.
            qq| bla bla   \n\n|;
      return $err;
   }
т.е. все, что идет после ' считается строкой

2. Поиск регулярного выражения ^. почему-то не учитывает начало строки, т.е. ищет любой символ в строке, а не любой символ в начале строки

3. при нажатии и удержании кнопок перемещения курсора right, left, ctrl-right, ctrl-left курсор не "успевает" двигаться, т.е. стоит на месте и значительно возрастает нагрузка на процессор. похжее поведение и при кнопках up, down

4. в perl по кнопкам ctrl-right доходит до конца строки и дальше (на следующую строку) не идет
« Last Edit: March 21, 2010, 02:05:44 pm by DrakonHaSh »

Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Баги :)
« Reply #1 on: March 22, 2010, 01:46:23 am »
Спасибо за баг репорт - в основном все воспроизвел.

1. Да, это было не учтено в схеме. Сейчас добавил, плюс подправил Labels для Navigation Bar и добавил еще кое какие дополнительные стили. Схему можно скачать из библиотеки.

2. Это баг. Исправлю в следующей бете 1.48. Гдето через пару дней.

3. Это, вообщето, оптимизация. Когда клавиша жмется долго, каретка обновляеться только в конце... Но так как Вы не первый на это жалуетесь, скорее всего "простой народ" :) эту оптимизацию не понимает. Так что в следующей 1.48 подправлю.

4. Здесь не понял. Это переход по словам вправо. У меня прыгает на следующюю строку. Или это тоже что и в пункте 3? Если нет пришлите пожалуйста пример. Возможно проблема в схеме (какой то симdол, не описан как delimiter - такое бывает).

Offline DrakonHaSh

  • Newbie
  • *
  • Posts: 18
  • Karma: +0/-0
    • View Profile
Re: Баги :)
« Reply #2 on: March 22, 2010, 12:01:53 pm »
1. Да, это было не учтено в схеме. Сейчас добавил, плюс подправил Labels для Navigation Bar и добавил еще кое какие дополнительные стили. Схему можно скачать из библиотеки.
Спасибо, теперь все ок. Но сразу возник новый вопрос/нюанс - новый файл спецификации затирает внесенные мной изменения. Т.е. получается что мне, как пользователю необходимо контролировать каждое обновление программы и вручную переносить изменения в новые конфиги - не очень удобное поведение. Возможно Ваша светлая голова найдет время подумать над этим нюансом. Так навскидку я бы предложил рассмотреть вариант с 2-х уровневыми конфигурационными файлами - "заводскими" и пользовательскими. Причем  пользовательские имели бы высший приоритет и могли переопределять некоторые "заводские" параметры.

4. Здесь не понял. Это переход по словам вправо. У меня прыгает на следующюю строку. Или это тоже что и в пункте 3? Если нет пришлите пожалуйста пример. Возможно проблема в схеме (какой то симdол, не описан как delimiter - такое бывает).
Там файл "линуксовского" типа :) Перевод строки - 0x0A
Со стандартным 0x0D 0x0A все работает нормально


еще чуть чуть багов/нюансов схемы XML нашел пока на первый вопрос отвечал:
новый файл perl_spec.xml:
* нюанс: становимся на 4-ю строку внутрь <FILEINFO author="HippoEDIT.com" type="LangSpec"/> - в Hierarchy Bar FILEINFO не попадает, выделения не происходит. В notepad++ поведение заметно более удобное - красиво выделяется весь блок. не критично конечно, но Ваш редактор ближе всего, из всего что я видел, к идеалу. Можно я буду замечать "неидельные" вещи, которые сделаны лучше у "конкурентов"  :) ?
* нюанс или баг: становимся на 6-ю строку внутрь <SPECIFICATION> -  в Hierarchy Bar - SPECIFICATION SPECIFICATION. почему 2 раза ? в 5-й строке внутри  <SYNTAX вне нормально
* баг наверное: 20-я строка внутри FORMAT - нет выделения, не попадает в Hierarchy Bar
* тоже баг наверное: строка 11, позиция 19 - EscapeChar не выделяется, в Hierarchy Bar  не попадает

Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Баги :)
« Reply #3 on: March 22, 2010, 09:20:39 pm »
1) Смотря что Вы изменяли.
 - Если Вы считаете что Ваши изменения "стандартны", то лучше послать их мне и я внесу их в исталлируемую схему.
 - Если Вы расширили ключевые слова, стили, метки или что то еще, то правильный путь просто отнаследоваться от инсталлирумой схемы и перекрыть то, что Вам не нравиться.
 - Если вы меняли цвета, настройки шрифтов и тд (то что также меняется в UI) то надо менять в xxx_user.xml. Который в принципе и является тем самым пользовательским конфигурационным файлом.
 - Ну или последний вариант, просто скопируйте инсталлируемую схему, переименуйте файл и измените synatx id. Тогда они никогда не перепишутся.

Ну а так - merging of xml не такое простое дело :)
Короче - пишите что конкретно :)

4) не, перевод строки тут не причем... HippoEDIT хранит текст строками, а перевод строки хранится как параметр строки, и в расчете координат не участвует. Так что шлите пример на supportbox hippoedit com. Ну и само собой документ с 0A я проверил.

Не идеальные вещи замечать можно и нужно :) А также что лучше у конкурентов. Тем более с примерами.

По поводу всех проблем с Hierarchy bar и Current scope highlighting, это не баг а просто пока недостаток...
В отличии от Notepad++ (all Scintilla based), HippoEDIT не имеет hardcoded лексеров для каждого языка, а имеет только один динамический, настраиваемый с помощью синтаксической схемы для разных языков. И вот алгоритма по разбору так сказать "симметричных" тегов пока нет (XML like tags). Для HTLM это работает, потому как там набор тегов определенный (как и в спецификации синтаксиса), но те теги которые могут не иметь пары, выбрасывються из разбора.
Короче... Знаем - это в туду :) Будет доделано после 1.50.

А SPECIFICATION SPECIFICATION наверное таки баг. Посмотрю - поправлю в 1.48.
FORMAT и  EscapeChar - тоже баг - нет в спецификации. Исправлю. Хотя для EscapeChar например большого смысла добавлять нет.
« Last Edit: March 22, 2010, 09:26:57 pm by alex »

Offline DrakonHaSh

  • Newbie
  • *
  • Posts: 18
  • Karma: +0/-0
    • View Profile
Re: Баги :)
« Reply #4 on: March 23, 2010, 01:24:18 pm »
1) все ясно :)
4) файлик в аттаче

по поводу алгоритмов по разбору так сказать "симметричных" тегов XML like tags) да и прочего предлагаю подсмотреть идеи в colorer (опенсорц) - наверное самая лучшая на сей момент в мире система разбора текста для "разукрашек". хотя, думаю, Вы и так про сие чудо знаете.
Примеры реализации:
* far + плагин colorer
* bred 3.0.3U

Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Баги :)
« Reply #5 on: March 23, 2010, 07:42:04 pm »
4) файлик не помог - у меня все работает. Жму Ctrl+Right и прохожу документ по словам из начала в конец. Переход на след строку переходит нормально. Так что давайте по шагам: куда поставить курсор, что нажать.

Про colorer я конечно знаю :) exUSSR лицензия HE это переработанная exUSSR лицензия FAR.
Да, в colorer самая мощная система описания расскраски. Я смотрел его схемы, и кое какие идеи использовал в HE. Но напрямую использовать те же алгоритмы (regexp based) мне не подходит. Регулярные выражения на порядок медленнее оптимизированных автоматов (попробуйте открыть большой файл в colorer, там специально введены ограничения на величину блока для парсинга). Но скорее всего, мне таки придется как то включить поддержку регулярных выражений в описание синтаксиса. Существуют ситуации которые описать текущими средствами HE сложно, а писать для каждого случая свой автомат как то желания нет :) Но там надо будет что то думать чтоб все остальное не затормозить.
Но за совет спасибо, может перед имплементацией разборки xml я гляну еще раз, хуже не будет.
Кстати есть еще плагин для Eclipse c расскраской на движке colorer.

Offline DrakonHaSh

  • Newbie
  • *
  • Posts: 18
  • Karma: +0/-0
    • View Profile
Re: Баги :)
« Reply #6 on: March 24, 2010, 08:55:26 pm »
4) буду искать закономерность. у меня на обоих компах имено такое поведение, но настройки и набор сопуствующих обстоятельств примерно одинаков. если закономерность выявлю - конечно сообщу

насчет колорера и вообще программы в целом желаю много вдохновения, энтузиазма и, естественно, море бабла ;)

огромное спасибо за ответы и за великолепный редактор !

Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Баги :)
« Reply #7 on: March 24, 2010, 11:21:09 pm »
Спасибо за пожелания :) Я сделаю все что смогу.

а с ошибкой - вышлите мне все Ваши файлы настроек: hippoedit.config + \data + \workspaces каталоги. Может делов в настройках: supportbox hipppoedit com.
Чудес не бывает - причина должна быть :)

Offline DrakonHaSh

  • Newbie
  • *
  • Posts: 18
  • Karma: +0/-0
    • View Profile
Re: Баги :)
« Reply #8 on: March 29, 2010, 12:06:34 pm »
насчет Ctrl+Right - проблема оказалась в Tools - Sintax setting (Perl) - [X] Virtual space
(видимо глюк)


Quote
Регулярные выражения на порядок медленнее оптимизированных автоматов (попробуйте открыть большой файл в colorer, там специально введены ограничения на величину блока для парсинга). Но скорее всего, мне таки придется как то включить поддержку регулярных выражений в описание синтаксиса
глянте:
http://groups.google.com/group/colorer_ru/browse_thread/thread/b0f970620fb56c69
возможно найдете что нить для себя интересное ;)

Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Баги :)
« Reply #9 on: March 29, 2010, 08:28:33 pm »
Quote
насчет Ctrl+Right - проблема оказалась в Tools - Sintax setting (Perl) - [X] Virtual space
нет. Это баг. Исправлю в новой бете.

За ссылку спасибо - интересно. В хиппоедит используються boost regexp. Это полноциальная библиотека, с обратным обратным поиском и тд. Так что если что использоваться будует она. Или boost xpressive, она в принципе может быть быстрее.

Offline DrakonHaSh

  • Newbie
  • *
  • Posts: 18
  • Karma: +0/-0
    • View Profile
Re: Баги :)
« Reply #10 on: April 20, 2010, 10:34:16 am »
1.48.768

бага:
поиск по f3 не учитывает опции [Wrap Search] - ищет в любом случае по кругу

Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Баги :)
« Reply #11 on: April 20, 2010, 02:21:53 pm »
Вообщето, это нак и было задумано... Многие даже не знают про Wrap Search...
Но поговорив с коллегами решил, что да, наверное лучше таки выдерживатъ те же настройки что и в диалоге поиска.
Так что исправлю в следующей 1.48.

Offline Reniel

  • Newbie
  • *
  • Posts: 17
  • Karma: +0/-0
    • View Profile
Re: Баги :)
« Reply #12 on: September 11, 2011, 07:16:37 pm »
- В шаблоны html добавил следующий код "<!-- %SelectedText%%|% -->" и повесил на него горячие клавиши ctrl + shift + C, когда много текста подряд комментируешь, программа бывает вылетает.
- работал на win 7 x64 заметил следующее незнаю бага это или нет, ставлю опции что бы когда файл открыт он блокировался для записи другими приложениями, но при сохранении из самой программы, она только первый раз сохраняет нормально, все последующие разы сохраняет с тем же именем но с припиской *.auto так и должно быть?
« Last Edit: September 11, 2011, 09:24:04 pm by Reniel »

Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Баги :)
« Reply #13 on: September 12, 2011, 01:27:41 am »
Quote
В шаблоны html добавил следующий код "<!-- %SelectedText%%|% -->" и повесил на него горячие клавиши ctrl + shift + C, когда много текста подряд комментируешь, программа бывает вылетает.
Ну первым делом если упало - надо слать crash_report (диалог должен появиться после падения), тогда я получу хоть какую информацию почему. Если можно воспроизвести - еще лучше. Плюс пишите какая версия ;) Или шлите через "Report a Bug" в программе, там все уже проставлено.
Ну и еще, а чем стандартный комментарий не подходит?

Quote
работал на win 7 x64 заметил следующее незнаю бага это или нет, ставлю опции что бы когда файл открыт он блокировался для записи другими приложениями, но при сохранении из самой программы, она только первый раз сохраняет нормально, все последующие разы сохраняет с тем же именем но с припиской *.auto так и должно быть?
Проверил - у меня все нормально. HippoEDIT x64 1.49.824. Файл перезаписывается нормально, другие программы его изменить не могут. Если можете воспроизвести- опишите сценарий, что за файл и тд. *.auto, это recovery файлы. Они удаляются после успешного сохранения, а если редактор упал, используются для восстановления данных.

Offline Reniel

  • Newbie
  • *
  • Posts: 17
  • Karma: +0/-0
    • View Profile
Re: Баги :)
« Reply #14 on: September 12, 2011, 07:03:34 am »
Quote from: alex
Ну первым делом если упало - надо слать crash_report (диалог должен появиться после падения), тогда я получу хоть какую информацию почему. Если можно воспроизвести - еще лучше. Плюс пишите какая версия ;) Или шлите через "Report a Bug" в программе, там все уже проставлено.
Ну и еще, а чем стандартный комментарий не подходит?
Часто приходиться что то коммениторовать уже написанное, поэтому повесил на сочетание клавиш, выделил текст, нажал комбинацию и текст уже заккоментирован, очень удобно. Мне кажется лучше было бы повесить возможность при установке выбирать устанавливать шаблоны для языков или нет, допустим что бы по умолчанию они были выставлены, те кому это не нужно снимут галочку и все.

Quote from: alex
Проверил - у меня все нормально. HippoEDIT x64 1.49.824. Файл перезаписывается нормально, другие программы его изменить не могут. Если можете воспроизвести- опишите сценарий, что за файл и тд. *.auto, это recovery файлы. Они удаляются после успешного сохранения, а если редактор упал, используются для восстановления данных.
У меня была HippoEDIT x32 1.49.822 Portable.

Еще заметил что у редактора целых три инсталера, под 98\me - по мне так это уже давно не актуально, я уже несколько лет никого не видел кто бы сидел на этих системах... x32 это нужно, а вот x64 зачем? Это ведь просто текстовый редактор, думаю версия 32-bit в window 7 64-bit тоже нормально будет работать, точнее я уже проверял, он так и работает. Зачем рассеивать свои силы сразу на несколько сборок, когда можно сосредоточить внимание на одной. А что касается портабельной, просто можно допустим в программу добавить такую функцию которая будет делать экспорт и импорт всех настроек программы (шаблоны, цветовые схемы, и все остальное), я понимаю для больших программ таких как photoshop портабельность востребована, потому что на его установку уйма времени уйдет, твой редактор устанавливается меньше минуты. Нормальная версия у меня в момент запускается меня это очень порадовало, а вот портабельная при запуске начинает думать... Экспорт и импорт всех настроек с заданием какие именно настройки переносить, мне кажется это выход... Допустим если экспорт идет из более новой версии программы в старую то сделать так что бы лишние параметры отсекались, а если наоборот то ставились по умолчанию...

Подскажи, когда переходишь к нужной строке через ctrl+G, как то можно отключить анимашку прокрутки документа, а то у меня в файле около 3000 строк, и приходиться порядка секунд 3-5 ждать пока он перейдет к нужной строке
« Last Edit: September 12, 2011, 11:11:51 am by Reniel »