Страница 6 из 20

Добавлено: Ср июл 26, 2006 07:50
WhiteWind
Несколько раз при первой попытке сохранения Syn выдвал Access Violation, при второй попытке нормально сохранял.
К сожалению, я не смог повторить эту ошибку в последствии.

Добавлено: Ср июл 26, 2006 10:48
sepa
Ну, например, есть у меня кусок кода на java:
Нет смысла это в программе реализовывать, потому как у всех свои виды на стиль форматирования кода. Сделай примитивный скрипт code Beatufier на php. И запускай его после загрузки файла. А перед сохранением можно сделать скрипт-компрессор. Я например когда то давно так и написал скрипт который ужимает (стирает все табы, пробелы, комменты) js файлы. Т.к. они грузятся на комп юзера, то хотелось бы чтобы они были как можно меньше. До сих пор им и пользуюсь. Скрипт который будет наоборот код форматировать, написать не проблема, главное знать чего именно хочешь. Благо эти скрипты даже так встречаются, можно просто портировать.
Очень просто: Alt+Tab куда-нибудь, Alt+Tab обратно в Syn.
токо сейчас понял что ты про syn.exe говоришь =)
Не, это будет извращение, а вот в standalone exe - в самый раз.
С стандалоне то же самое. syn.exe это лишь загрузчик, и если в нем сделать табы то уже внутри таба будут менюшки. Так что тоже в каком то смысле извращение. А листеров на табах нет потому что надо при открытии нового листера как то воровать у него имя файла и закрывать листер. А в первом открытом это имя открывать. В общем ничего хорошего и багов много будет. Вот гислер бы реализовал API и все были бы счастливы =)
Несколько раз при первой попытке сохранения Syn выдвал Access Violation
Это было видимо после того как ты что то делал с кодфолдингом свернутым. Раньше эти баги просто не выбавали экшепнов, но после того как Виталик понаходил утечки, любой даже мелкий баг себя сразу проявляет. В подсветке delphi достаточно свернуть строку , поставить курсор в ее начало и нажать enter. И отловить его я вообще не могу. Кодфолдинг очень не стабильный, потому то я и задумался о переходе на другой движок.

Добавлено: Ср июл 26, 2006 16:51
WhiteWind
если в нем сделать табы то уже внутри таба будут менюшки
Какие менюшки? У тебя же нет главного меню? Да и вообще, не сложно это.

Добавлено: Ср июл 26, 2006 17:42
Batya
А подсветка активной строки не отключается?

Vitalik
Возвращаясь "к нашим баранам"... А выбор стиля подсветки не работатет на новом движке?

Добавлено: Ср июл 26, 2006 18:38
WhiteWind
А подсветка активной строки не отключается?
Поставь цвет активной строки clNone

Добавлено: Ср июл 26, 2006 19:40
Lev
Нет смысла это в программе реализовывать, потому как у всех свои виды на стиль форматирования кода
тогда надо запретить свои подсветки писать :)
Сделай примитивный скрипт code Beatufier на php
Это мне придётся php на машину ставить и учить его...
И запускай его после загрузки файла. А перед сохранением можно сделать скрипт-компрессор
А если я двухсотмеговый постскрипт файл хочу поразглядывать? вставить перевод строки после "}" и некоторых операторов
В принципе, я написал для себя подобную штуку на VBScript lister, но там нельзя раскрасску сделать
Ну, ладно, придётся обойтись :( Авось, когда регекспы прикрутятся, можно будет подмены сделать

Добавлено: Чт июл 27, 2006 11:08
George_7209
Помогите с настройкой синтаксиса.
Надо отловить идентификатор (имя метки), начинающийся жестко с начала строки (с первой позиции). т.е. как такого "открывающего тега" нет - если не пробел в первой позиции, значит метка.

Добавлено: Чт июл 27, 2006 11:28
Митяй
2George
Кажется так сделать нельзя. Но можно сделать наоборот. Ввести диапазон, начинающийся с пробела, если он стоит в начале строки, и заканчивающийся на конце строки. И в этом диапазоне писать все остальные правила. А корневой диапазон (Root) и будет подсвечивать строки, не начинающиеся с пробела. Возможно есть способ лучше, но я его не знаю.

Добавлено: Чт июл 27, 2006 11:43
Batya
WhiteWind
Спасибо!

sepa
Почему-то при подгрузке подсветки наблюдается визуальный эффект скачка строчек - то ли увеличивается междустрочный интервал, то ли увеличивается шрифт. Особенно хорошо видно на больших файлах, когда подсветка подгружается не моментально.
Например, я вижу это на pas-файлах с дистрибутивной подсветкой.
У меня шрифт просмотра - Courier New - Regular - 10. Остальные шрифты не менял.

Добавлено:
Для поиска нажимаю Ctrl+F. Затем вставляю из буфера - Ctrl+V. Содержимое буфера вставляется дважды.

Добавлено:
Почему-то поиск назад по Shift+F3 работает только при заполненном поле быстрого поиска.
И, поскольку поиск по Ctrl+F -> F3 и F7 -> F5 работают независимо, то есть ли горячая клавиша для очистки поля быстрого поиска, чтобы работало F7 -> F3?

Добавлено:
Хотелось бы опционально иметь возможность для показа в заголовке не полного пути файла, а только имени.

Добавлено: Чт июл 27, 2006 15:03
KF-121
Syn 0.6
[-]
1. В поиске, после нахождения первого вхождения, не работает кнопка F3, т.к. курсор находиться в поле для поиска, приходиться нажимать Esc, что бы активировать поиск по F3
2. Не работает в поиске RegEx
3. Не ищет по F3 RegEx в файлах, в которых были обнаружены регулярные выражения после поиска в TC. Т.е. после поиска по Alt+F7, в найденном файле жмем F3,открывается листер, жмем еще раз F3 и тут он уже не находит эту строку которую только, что искали, либо у ты с гислером используешь разные RegEx, либо в листер не передается строка которую мы искали, либо передается, но не правильно разбирается. В родном листере работает! Например ищу строку blablabla(.*)xxxx
4. На панелях, куда не клацнешь правой кнопкой всегда вылезает редактор кнопочек, и в Code Explorer`e тоже!
5. При ReadOnly, В Code Explorer`e, если клацаешь на переменных, то он вставляются в текшую позицию курсора, а я так понимаю, курсор должен переходить на то место, где она объявлена!
6. Не открывает Пустые файлы.
7. Комбинация Ctrl+Shift+U не работает, в отличие от Shift+Tab.
8. Не работает печать, и комбинация тоже Ctrl+P.
9. Выскачила ошибка при поиске Изображение
10. Так же остался буг с копированием русского текста в англицкой раскладке. Абра-кодабра вылазиет.
11. При повторном сохранении вылезла ошибка I/O Error 32, при первом сохранении все нормально, сначало подумал что что-то с флешкой, потом на винт скопировал также фигня, кстати SunPlus тоже не сохраняет, блокнот предлагает сохранить под другим именем. Если изначально работать с блокнотом, т.е. не открывать Syn -ом то все нормально. Короче какая-то херня происходит.
Дополнение к 11. Как ни странно все эти глюки отслежывались только при написании замечаний к Плагину! :)

Добавлено: Чт июл 27, 2006 15:32
Vitalik
Batya писал(а):Возвращаясь "к нашим баранам"... А выбор стиля подсветки не работатет на новом движке?
Ты про использование clr-файла со стилями?
Если да, то этого пока временно нету.. Ввиду его нестабильности.. :(
Митяй писал(а):Кажется так сделать нельзя. Но можно сделать наоборот.
Спасибо, что придумал такое оригинальное решение проблемы ;)

Добавлено: Чт июл 27, 2006 15:44
Vitalik
Batya писал(а):Почему-то при подгрузке подсветки наблюдается визуальный эффект скачка строчек - то ли увеличивается междустрочный интервал, то ли увеличивается шрифт.
Дело в том, что если в подсветке присутствуют правила с атрибутами, содержащими одновременно стили шрифта "подчеркивание" и "курсив", то междустрочный интервал автоматически увеличиваться на 1 или 2 пикселя (в зависимости от размера шрифта), чтобы там это подчеркивание смогло поместиться :)
Это особенность не UniHighlighter'а, а SynEdit'а.

Добавлено: Чт июл 27, 2006 16:11
Batya
Vitalik писал(а):Ты про использование clr-файла со стилями?
Если да, то этого пока временно нету.. Ввиду его нестабильности.. :(
Да, я про это. Жаль, что большое начинание так завершилось :(
Vitalik писал(а):Дело в том, что если в подсветке присутствуют правила с атрибутами, содержащими одновременно стили шрифта "подчеркивание" и "курсив", то междустрочный интервал автоматически увеличиваться на 1 или 2 пикселя (в зависимости от размера шрифта), чтобы там это подчеркивание смогло поместиться
Это особенность не UniHighlighter'а, а SynEdit'а.
ОК. Понятно. И, я так понимаю, что, поскольку подсветка грузится уже после отображения содержимого, это побороть нельзя :(

Добавлено: Чт июл 27, 2006 18:59
sepa
тогда надо запретить свои подсветки писать
а по моему раскраска и форматирование текста по моему совершенно разные вещи =)
И, поскольку поиск по Ctrl+F -> F3 и F7 -> F5 работают независимо, то есть ли горячая клавиша для очистки поля быстрого поиска, чтобы работало F7 -> F3?
не понял. один Search Next от Listera, другой от плагина и они не связаны. Когда у тебя не работает Shift-F3? если ты пользовался QuickSearch то в нем есть текст. Если Ctrl-R то тоже работает. А в листере нет SearchBack.
Для поиска нажимаю Ctrl+F. Затем вставляю из буфера - Ctrl+V. Содержимое буфера вставляется дважды.
исправлено
2KF-121
1. так и задумывалось, используй enter
2. если ты про QuickSearch то так и задумано
3. недостаток API листера. в плагин передается только строка и 4 атрибута:
lcs_findfirst Search from the beginning of the first displayed line (not set: find next)
lcs_matchcase The search string is to be treated case-sensitively.
lcs_wholewords Find whole words only.
lcs_backwards Search backwards towards the beginning of the file.
4. не дает работать? =)
5. подправил
6. подправил
7. ты выделять не забываешь?
8. ее и не делал и не собираюсь пока
9. пока не найти причину =(
10. ты чекбокс в опциях включал?
11. ты же тестер, сам знаешь что это плохое сообщение о баге =)

v 0.7
  • CodeExplorer settings are now saved in Highlighter
  • SelectionColor and ActiveLineColor for each highlighter (set color to clDefaut to use Defaults)
  • Focus lost on Alt-Tab in syn.exe
  • Drag files over syn.exe header
  • Right margin position in options
  • Open blank files
  • Small fixes
По видимому последний апдейт. Сделал чтобы работа Виталика не пропадала до следующей версии. Теперь можно сохранять произвольные параметры в подсветке. Сейчас сохраняется
цвет активной строки, цвета выделения и 5 строковых значений с вкладки Code в опциях плагина. Так же доработан дизайнер. Чтобы выбрать цвет по умолчанию (тот что задан в программе) нажмите средней кнопкой мышки на колорбоксе и выберите clDefault.
Регекспы для детектирования функций и переменных в подсветках прописал на скорую руку для тех языков что знал, так что кто доработает выкладывайте тут.

Добавлено: Чт июл 27, 2006 19:26
Lev
Регекспы для детектирования функций и переменных в подсветках прописал на скорую руку для тех языков что знал, так что кто доработает выкладывайте тут.
Выкусил из ини файла mystix (http://sf.net/projects/mystix)

C#, C++
DocumentTypeFunctionRegExp3=^[A-Za-z]+([\x20\t]*)[A-Za-z]+[A-Za-z0-9_:]*\([^)]*\)

INI
DocumentTypeFunctionRegExp7=\[[A-Za-z0-9_]+\]

Pascal
DocumentTypeFunctionRegExp12=^(function|procedure)([\x20\t]*)[A-Za-z]+[A-Za-z0-9_.]*\([^)]*\)

Perl
DocumentTypeFunctionRegExp13=sub([\x20\t]*)[A-Za-z]+[A-Za-z0-9_]*\([^)]*\)

PHP
DocumentTypeFunctionRegExp14=function([\x20\t]*)[A-Za-z]+[A-Za-z0-9_]*\([^)]*\)

VBScript, Visual Basic
DocumentTypeFunctionRegExp16=^(private|public)?([\x20\t]*)(function|sub)([\x20\t]*)[A-Za-z]+[A-Za-z0-9_.]*\([^)]*\)