Syn (Lister plugin)
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
Syn 0.8
[-]
1. Не правильно работает поиск и замена. Как это показанно на рисунке.

1.1 Начинает искать не от курсора, а от своего внутреннегог счетчика. Если к примеру нажать пару раз Find Next, а потом переместить курсор выше, то он проболжает искать от туда где остановился перед этим.
1.2 В окне поиска и замены по табуляции перескакивало из мемки поиска в мемку замены, а не по кнопочкам.
2. После сортировки 5000 строк, плагин сожэрал 1.3 Gb памяти, и не очистил как закончил сортировать, такде и после выхода он не почистил память.
[-]
1. Не правильно работает поиск и замена. Как это показанно на рисунке.
1.1 Начинает искать не от курсора, а от своего внутреннегог счетчика. Если к примеру нажать пару раз Find Next, а потом переместить курсор выше, то он проболжает искать от туда где остановился перед этим.
1.2 В окне поиска и замены по табуляции перескакивало из мемки поиска в мемку замены, а не по кнопочкам.
2. После сортировки 5000 строк, плагин сожэрал 1.3 Gb памяти, и не очистил как закончил сортировать, такде и после выхода он не почистил память.
Во всем виновато КАКАДУ!
--------------------------------
IIIypuk©KF-121
--------------------------------
IIIypuk©KF-121
поправилв syn.exe ReadOnly всегда выключен, это правильно. Но зачем же сохранять это в истории?
2KF-121
1. Движок pcre теперь другой, так что этот баг мне не найти. Надеюсь и не будет его.
1.1 Теперь будет всегда F3, Shift-F3 делать от курсора. Так что опции 'search from caret' и 'search in selection' будут актуальны только с маркерами или ReplaceAll.
1.2 а как табуляцию вводить тогда? По Shift-Tab могу сделать переход между мемками
2. поправил
Так он и не вводит табуляцию, а сразу переходит к кнопке Find Next, из-за этого я и предложил чтобв прехдило по мемкам.sepa писал(а): 1.2 а как табуляцию вводить тогда? По Shift-Tab могу сделать переход между мемками
А в быстром поиске есть какие нибудь опции типа Match Case и фразу целиком? Что то типа в инишке или в диалоге настроек.
Еще вот что заметил.
3. Сделать чтобы когда курсор мыши находился на Code Explorer и крутилось колесо, прокручивался Code Explorer а не основное поле!
4. Если открыт диалог настроек то во-первых в списке окнон( Alt+Tab) не чего тоталовского нет кроме этил настроек. Во-Вторых тотал становится недоступным.
5.Не корректно работает вставка в режиме выделенеия колонкой. Если текст был скопирован колонкой, то вставляется он уде не колонкой, а обычно, т.е. сдвигает все строки!
Во всем виновато КАКАДУ!
--------------------------------
IIIypuk©KF-121
--------------------------------
IIIypuk©KF-121
2KF-121
4. уже писали, пока не знаю как исправить
5. для вставки колонкой надо вначале переключить режим выделения на колонку.
остальное поправил
2WhiteWind
По моему бесполезная функция, ни разу ей не пользовался =) Но в SynEdit вроде есть, погляжу если не трудно прикрутить то можно было бы.
v 0.9
Именовыные скобки в Detect strings. Имена следующие: name (для имени функции/ переменной), params (параметры функции включая скобки), type (тип возращаемого значения, необязательно), index (для переменных, индексная часть массива). Т.е. теперь можно использовать вместо
(function)\s+([a-z_]+[a-z_0-9]+)\;?\s*?(\([^\)]*?\))?\s*?\{
например
function\s+(?P<name>[a-z_]+[a-z_0-9]+)\;?\s*?(?P<param>\([^\)]*?\))?\s*?\{
и проблема второй скобки должна отпасть. Пока написал DetectString используя именованные скобки только для php. Для остальных языков если кто напишет более качественные строки, выкладывайте здесь, включу в дистрибутив.
И еще появилась возможность переходить по ссылкам кликая мышкой с нажатым Ctrl. Чтобы это работало нужно чтобы в подсветке был определен стиль с именем 'Links'. Пока сделал в качестве примера в подсветке txt.hgl. Весь найденный токен при щелчке передается в функцию ShellExecute (аналог Start->Run). Так что можно использовать любые ссылки которые распознает эксплорер. Так же теперь можно переходить к месту определения функции через Ctrl-Click на ее имени.
PS На wincmd сейчас меняют пароли в панели аворов, поэтому пока нет возможности залить плагин сюда. Пока можете скачать на домашней страничке (670kb).
4. уже писали, пока не знаю как исправить
5. для вставки колонкой надо вначале переключить режим выделения на колонку.
остальное поправил
2WhiteWind
По моему бесполезная функция, ни разу ей не пользовался =) Но в SynEdit вроде есть, погляжу если не трудно прикрутить то можно было бы.
v 0.9
- RegEx now is perl5.8 compatible. You can use naming braces in Detect strings.
- Improved ACP of tag names
- RegEx replacing (Ctrl-R) support captured substrings ($1 ... $N , $<SubStringName>)
- ReadOnly state not saved in history when opened thru syn.exe
- Much faster ReplaceAll
- Bug with long time save when non CRLF line endings
- Memory leak when sort lines
- Search/Replace window is now resizable. F3, Shift-F3 & Alt-shortcut key now works in it
- Added 'Want Tabs' option for Search/Replace text areas.
- 'Cancel' button added to dialog asking for save when close by Alt-F4 or system button
- Scroll CodeExplorer by MouseWheel when cursor over it
- Some CodeFolding bugs fixed (thanx DavidCl0nel)
- Ctrl-Click for open links ( file://c:/ ) and go to function declaration
Именовыные скобки в Detect strings. Имена следующие: name (для имени функции/ переменной), params (параметры функции включая скобки), type (тип возращаемого значения, необязательно), index (для переменных, индексная часть массива). Т.е. теперь можно использовать вместо
(function)\s+([a-z_]+[a-z_0-9]+)\;?\s*?(\([^\)]*?\))?\s*?\{
например
function\s+(?P<name>[a-z_]+[a-z_0-9]+)\;?\s*?(?P<param>\([^\)]*?\))?\s*?\{
и проблема второй скобки должна отпасть. Пока написал DetectString используя именованные скобки только для php. Для остальных языков если кто напишет более качественные строки, выкладывайте здесь, включу в дистрибутив.
И еще появилась возможность переходить по ссылкам кликая мышкой с нажатым Ctrl. Чтобы это работало нужно чтобы в подсветке был определен стиль с именем 'Links'. Пока сделал в качестве примера в подсветке txt.hgl. Весь найденный токен при щелчке передается в функцию ShellExecute (аналог Start->Run). Так что можно использовать любые ссылки которые распознает эксплорер. Так же теперь можно переходить к месту определения функции через Ctrl-Click на ее имени.
PS На wincmd сейчас меняют пароли в панели аворов, поэтому пока нет возможности залить плагин сюда. Пока можете скачать на домашней страничке (670kb).
Не скажи, бывает очень полезна. Допустим есть такой код:По моему бесполезная функция, ни разу ей не пользовался =)
Код: Выделить всё
Lang:=Ini.ReadString('Main', 'Lang', Lang);
ReportFileName:=Ini.ReadString('Report', 'FileName', '');
ReportBegin:=Ini.ReadString('Report', 'Begin', '');
ReportFile:=Ini.ReadString('Report', 'File', '');
ReportEnd:=Ini.ReadString('Report', 'End', '');
SRFileName:=Ini.ReadString('SearchReplace', 'SRFileName', '');
SRSearchExpr:=Ini.ReadString('SearchReplace', 'SRSearchExpr', '');
SRReplace:=Ini.ReadString('SearchReplace', 'SRReplace', '');
SROverwrite:=Ini.ReadBool('SearchReplace', 'SROverwrite', False);
SRSearchFiles:=Ini.ReadBool('SearchReplace', 'SRSearchFiles', False);
SRRenameFiles:=Ini.ReadBool('SearchReplace', 'SRRenameFiles', True);
SRKeepOldFiles:=Ini.ReadBool('SearchReplace', 'SRKeepOldFiles', True);
SRCreateDirs:=Ini.ReadBool('SearchReplace', 'SRCreateDirs', False);
RegExprEnabledSnR:=Ini.ReadBool('SearchReplace', 'RegExprEnabledSnR', True);
RegExprExpandSpacesSnR:=Ini.ReadBool('SearchReplace', 'RegExprExpandSpacesSnR', False);
с первой строчкой, а остальные - одним нажатием.
- Maximus
- Сообщения: 927
- Зарегистрирован: Чт апр 07, 2005 10:51
- Откуда: Украина, Кировоградская обл., г. Знаменка
- Контактная информация:
Пытался поиском/заменой заменить пробел на черточку.
Поменяло весь выделенный мною текст на черточку (кнопка Replace). Так и должно быть??
Кнопка ReplaceAll ничего не сделала.
А пробелы тоже иногда хочется на что-то заменить
Потом еще поэкспериментировал: Search=" 0" Replace="-". Нажал Replace. Как результат - выделенный текст был заменен на "-" и заодно выполнился поиск " 0" (была у меня такая комбинация в конце файла). Опция "Selected text only" на ситуацию никак не влияет.
Поменяло весь выделенный мною текст на черточку (кнопка Replace). Так и должно быть??
Кнопка ReplaceAll ничего не сделала.
А пробелы тоже иногда хочется на что-то заменить
Потом еще поэкспериментировал: Search=" 0" Replace="-". Нажал Replace. Как результат - выделенный текст был заменен на "-" и заодно выполнился поиск " 0" (была у меня такая комбинация в конце файла). Опция "Selected text only" на ситуацию никак не влияет.
При нажатии на Replace заменяется выделенный текст. Если ничего не выделено то выполняется SearchNext и выделяет найденное. Так что вы всегда видите что сейчас будет заменено. И можно потом поштучно отменять по Ctrl-Z. Когда выполняется Replace All выделяется весь текст. Так что отмена удалит все изменения. SearchNext SearchPrev выполняются всегда от курсора. Так что опции 'selected text only' и 'search from caret' имеет смысл только если делать Find&MarkAll или ReplaceAll, потому что выделение будет сброшено.
А по поводу того что пробел не ищет - это баг, погляжу.
А по поводу того что пробел не ищет - это баг, погляжу.
Syn 0.9
[-]
1.Сделать по нажатию на колесо мыши чтобы открывался/закрывался Code Explorer.
1.1 А лучше добавить настройки клавишь и каждый будет сам настраивать, как ему в кайф.
2. Осталось буг при копировании , галочка на Unicode стоит, но опять каракули. Например из плагина в оперу.
Такой вопрос: Какую надо написать детект сроку для пременных которая бы понимала перечисление переменных типа Dim xxx, dfff, gggg?
Кстати в диалоге замены вводит табуляцию по Ctrl + Tab. пр отключенной Want tabs.
[-]
1.Сделать по нажатию на колесо мыши чтобы открывался/закрывался Code Explorer.
1.1 А лучше добавить настройки клавишь и каждый будет сам настраивать, как ему в кайф.
2. Осталось буг при копировании , галочка на Unicode стоит, но опять каракули. Например из плагина в оперу.
Такой вопрос: Какую надо написать детект сроку для пременных которая бы понимала перечисление переменных типа Dim xxx, dfff, gggg?
Кстати в диалоге замены вводит табуляцию по Ctrl + Tab. пр отключенной Want tabs.
Во всем виновато КАКАДУ!
--------------------------------
IIIypuk©KF-121
--------------------------------
IIIypuk©KF-121
2KF-121
1. подумаю, у меня просто на средней кнопке меню
1.1 это уже просили
2. попробуй в SynPlus там тоже есть возможность скопировать в буфер как unicode. Если там работает, то можно будет спросить как сделали. Потому что у меня все нормально пашет и так и с уникодом в опере.
Детект строку трудно сказать какую. Можно попробовать с lookbehind assertions покопаться. Но на это не расчитано, всегда найдется код который не отловишь регекспами. Например если у тебя переменные будут идти через запятую на каждой строке и после некоторых переменных будет еще и строковый коментарий. Делал я это для php, с ним и работает. Чтоб со всеми языками сделать, это уже лексический анализатор прийдется писать =) Потом еще и вложенность кода определять надо будет=) Если кто может предложить что нибудь простое и универсальное, то давайте обсудим.
Очередная тест версия для тех у кого баг с обновлением статусбара
test 3
1. подумаю, у меня просто на средней кнопке меню
1.1 это уже просили
2. попробуй в SynPlus там тоже есть возможность скопировать в буфер как unicode. Если там работает, то можно будет спросить как сделали. Потому что у меня все нормально пашет и так и с уникодом в опере.
Детект строку трудно сказать какую. Можно попробовать с lookbehind assertions покопаться. Но на это не расчитано, всегда найдется код который не отловишь регекспами. Например если у тебя переменные будут идти через запятую на каждой строке и после некоторых переменных будет еще и строковый коментарий. Делал я это для php, с ним и работает. Чтоб со всеми языками сделать, это уже лексический анализатор прийдется писать =) Потом еще и вложенность кода определять надо будет=) Если кто может предложить что нибудь простое и универсальное, то давайте обсудим.
ага баг, но проявляется только через syn.exe Там вообще Tab и Alt-shortcut не обрабатывает =(Кстати в диалоге замены вводит табуляцию по Ctrl + Tab. пр отключенной Want tabs
Очередная тест версия для тех у кого баг с обновлением статусбара
test 3
Прикрутить VBS
Строка для запуска cscript Param2Console.vbs q qq qqq
Скрипт Param2Console.vbs
For I = 0 to WScript.Arguments.Count - 1
Wscript.Echo "param"&I&"="& wscript.arguments(I)
Next
Идея именно в cscript. Он консольный и все эхо на консоль.
А wscript MUI. А он запускается по умолчанию.
Скрипт Param2Console.vbs
For I = 0 to WScript.Arguments.Count - 1
Wscript.Echo "param"&I&"="& wscript.arguments(I)
Next
Идея именно в cscript. Он консольный и все эхо на консоль.
А wscript MUI. А он запускается по умолчанию.