Поиск в выделении

Russian main discussion
  • Author
  • Message
Offline
Posts: 19
Joined: Mon Jul 19, 2010 9:36 pm

Re: Что хотелось бы добавить в AkelPad

Post by FalseMaster »

Userzo wrote:Akelpad один из лучших заменителей блокнота.
Не согласен. По моему - это вообще единственный юзабельный текстовый редактор. НО как всегда есть ложка дёгтя в бочке мёда, а именно - при вызове диалога замены, когда выделен участок текста, пункт "In selection" не крыжится автоматически и всё время приходится хвататься за мышь, что весьма раздражает и если можно так выразиться, сбивает с ритма. Очень хочется надеяться, что автор обратит внимание на эту досадную недоработку. А в остальном всё супер.

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

FalseMaster
Приложения для ОС семейства Microsoft Windows вполне управляемые клавиатурой, без участия иных HID-устройств. Учитесь :)

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

FalseMaster
тысячу лет назад уже высказывал это пожелание, реакции ноль :(
FeyFre
неудобно... 5 раз Таб и 3 раза Вниз - это едва ли можно назвать хорошим вариантом.

Offline
Posts: 767
Joined: Mon Sep 28, 2009 10:03 am
Location: Minsk, Belarus

Post by se7h »

пару месяцев назад задавал вопрос:
Instructor wrote:se7h
можно ли в редакторе изменять позицию курсора по правому клику мыши точно так как по левому?
Т.е. меняется позиция на место клика, а потом появляется контекстное меню?
может всё-таки сделать такую опцию?

то есть:
правый клик на выделении - появляется контекстное меню без снятия выделения
мимо - выделение снимается и курсор перемещается в место клика с появлением меню

полезно когда хочешь получить справку или варианты правописания для определенного слова

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

Fr0sT
А акселераторы для кого придуманы? Такие буковки подчеркнутые. Если в диалоге нажать ALT+БУКВА то получит фокус элемент нарисовавший эту букву(или в случае static-control следующий елемент диалога).

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

FeyFre
я, может, как-то не так смотрю, но где акселератор для комбобокса "Направление"?
Image

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

Fr0sT
Ну во первых для это не комбо-бокс, а тот же статик-контрол со стилем Group Box
Во-вторых, Вы смотрите правильно - их там вообще нету нигде, и с этим нужно обращаться к Инструктору(либо самому пилить ресурсы).
В третьих, на тот Group Box ставить акселератор не нужно, ибо можно сразу поставить на радио-кнопки.

KDJ
Offline
Posts: 1949
Joined: Sat Mar 06, 2010 7:40 pm
Location: Poland

Post by KDJ »

Fr0sT
In the Polish version, I've got accelerators for all options.
Image

Offline
Posts: 767
Joined: Mon Sep 28, 2009 10:03 am
Location: Minsk, Belarus

Post by se7h »

Разумнее будет, чего уж тут спорить, реализовать автовыбор пункта "В выделении" при наличии оного, к чему лишние движения мышью, клавишами, когда можно сделать очевидную доработку? Принцип бритвы Оккама рулит

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

se7h wrote:может всё-таки сделать такую опцию?
то есть:
правый клик на выделении - появляется контекстное меню без снятия выделения
мимо - выделение снимается и курсор перемещается в место клика с появлением меню
Ни в коем случае!!!
Об этом говорили здесь.
se7h wrote:полезно когда хочешь получить справку или варианты правописания для определенного слова
Просто в таком случае в скипте нужно использовать не POS_CURSOR, а POS_CARET :wink:

se7h wrote:Разумнее будет, чего уж тут спорить, реализовать автовыбор пункта "В выделении" при наличии оного, к чему лишние движения мышью, клавишами, когда можно сделать очевидную доработку?
Это само собой.

Более того "В выделении" это должен быть чекбокс, а не часть радиобаттона, т.к. внутри выделения тоже можно искать "вверх" и "вниз".

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

FeyFre
Ну во первых для это не комбо-бокс, а тот же статик-контрол со стилем Group Box
Благодарю за уточнение, но главное, что все поняли, о чем речь. "статик-контрол со стилем Group Box" поняли бы немногие.

KDJ
It's just a question of "&" before a letter in an option's label ))

Продолжаю придерживаться своей позиции. Акселераторы - не вариант. Тем более (!), что в другой раскладке он не действует ни фига. Это мне раскладку ещё менять?

Я уже предлагал следующий вариант - определять по переносам строк. Если в выделении они есть, то очень маловероятно, что оно предполагается как поле "Что заменять". В этом случае включать чекбокс "В выделении". Если же переносов нет, то больше вероятность, что именно выделенный текст нужно заменять. В этом случае чекбокс снимать.

P.S. Да, идею Влада насчет чекбокса, как видите, одобряю.

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

Если в выделении они есть, то очень маловероятно, что оно предполагается как поле "Что заменять". В этом случае включать чекбокс "В выделении".
Очень даже предполагается, и очень даже часто. :P

Offline
Posts: 767
Joined: Mon Sep 28, 2009 10:03 am
Location: Minsk, Belarus

Post by se7h »

Влад, я предлагаю демократично сделать опцию, как в PSPad: хочешь - включи, хочешь - выключи

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Ну может быть.. Но заменять - ни в коем разе! Акел - единственный редактор в котором не надо целиться в выделенный текст или в позицию курсора - это мегаудобно!

Offline
Posts: 19
Joined: Mon Jul 19, 2010 9:36 pm

Re: Что хотелось бы добавить в AkelPad

Post by FalseMaster »

FalseMaster wrote:... при вызове диалога замены, когда выделен участок текста, пункт "In selection" не крыжится автоматически ...
Всё оказалось не так фатально, как я думал - всего-то надо было в модуле "Edit.cpp" (строка 8002) заменить:

Code: Select all

if (moCur.dwSearchOptions & AEFR_ALLFILES)
  SendMessage(hWndAllFiles, BM_SETCHECK, BST_CHECKED, 0);
else if (moCur.dwSearchOptions & AEFR_SELECTION)
  SendMessage(hWndInSelection, BM_SETCHECK, BST_CHECKED, 0);
на:

Code: Select all

if (AE_IndexCompare(&crSel.ciMin, &crSel.ciMax))
{
  moCur.dwSearchOptions|=AEFR_SELECTION;
  SendMessage(hWndInSelection, BM_SETCHECK, BST_CHECKED, 0);
}
else if (moCur.dwSearchOptions & AEFR_ALLFILES)
  SendMessage(hWndAllFiles, BM_SETCHECK, BST_CHECKED, 0);
Жаль только, что теперь в каждую новую версию придётся руками лезть.
Post Reply