Страница 112 из 198

Добавлено: Вт май 08, 2012 21:03
kvichans
Alextp писал(а):переделывать на другое стоит? Моя формула проста, а ваша нет (не очевидна)

нехорошо что результат может не включать исходное выделение, это не оч согласуется с понятием "Расширить выделение".
Я же на стороне пользователей - нам сложность формулы ничем не мешает. Мой уверенный ответ: стоит переделать.
Предлагаемая логика основывается на единственном соображении: новая функциональность должна продолжать существующую. Продолжение в рассматриваемом случае однозначное: Extend полный аналог Shift. Я смотрю как действуют операции с Shift и предлагаю такие же действия с Extend.

Про неполное выделение найденного фрагмента. Это следует из необходимости сохранять начало выделения (Н в формуле) без изменений. Такая необходимость очень существенна, так как позволяет выполнить сложное выделение, выполняя серию команд поиска (с Extend) или перемещения каретки (с Shift). (NB! Этого не удастся без перехода на предложенную формулу)

В целом. Extend - сила! Если какие-то препятствия не позволят поменять формулу - не беда. К любой реализации можно приспособиться.

Только нужны две команды (поиск вперед и поиск назад) для расширения выделения до найденного фрагмента без вызова диалога. Без них будет явная дыра.
Тут есть небольшая проблема: как будет выполнена реализация этих команд. Есть два варианта:
- учитывать галку Extend из диалога Поиск при работе уже существующих команда поиска без диалога,
- игнорировать Extend и дать две новых команды.
Мое мнение: лучше второй вариант, так как не требует заглядывания в диалог, чтобы предсказать поведение Син

Добавлено спустя 7 минут:

Уточнение. Сейчас есть четыре команды для поиска без диалога
- поиск вперед/назад,
- поиск текущего слова (=выделения) вперед/назад.
Похоже, нужны для них всех новые варианты.

Добавлено: Вт май 08, 2012 21:13
Alextp
новые команды- посмотрю. Вариант 2(из ваших).
beta upd. Можно делать Goto относительно

Добавлено: Вт май 08, 2012 22:32
kvichans
(повтор) Появилось много новых полезных команд для перемещения каретки и для настройки выделения. Невозможно подобрать для них всех сочетания клавиш, так как применять можно только Ctrl, Shift, Alt со стрелками - они уже все заняты. Предлагаю (еще раз) дать (вернуть?) возможность применять в Клавишах несколько последовательных сочетаний.

Добавлено: Вт май 08, 2012 22:35
Alextp
Пока не хочу вляпываться в это опять. тестить много. //проверьте "Find next/prev with ext sel" keys

Добавлено: Вт май 08, 2012 23:17
kvichans
Alextp писал(а):Пока не хочу вляпываться в это опять. тестить много.
Буду ждать и напоминать.
Alextp писал(а):проверьте "Find next/prev with ext sel" keys
Нормально (но естественных сочетаний пока подобрать не удалось)

Добавлено: Вт май 08, 2012 23:28
Alextp
Лучше Win-key задействовать. пока нельзя

Добавлено: Вт май 08, 2012 23:39
kvichans
Alextp писал(а):Лучше Win-key задействовать. пока нельзя
Модификатор Win сейчас в Син не перехватывается - может это и к лучшему, так как он активно используется на уровне ОС. Конечно, если появится его поддержка, то количество возможных сочетаний возрастет и проблема "нехватки" станет острой немного позднее. Но это не решение, а отсрочка.

Добавлено: Ср май 09, 2012 00:51
Alextp
kvichans писал(а):проблема "нехватки" станет острой немного позднее
Ничего себе нерешение. Посчитайте насколько больше комбинаций. в 2 раза. но двойные пары тоже стоит сделать- потом

Добавлено спустя 1 час 1 минуту:

с "двойными" клавишами - проблема показать их в меню, и работать в меню (вызывать команды) они тоже не будут. Только будут работать как клавиши редактора. часть команд при этом могут не вызваться (команды вызова внеш-инстр например)

Добавлено: Ср май 09, 2012 16:39
kvichans
Alextp писал(а):с "двойными" клавишами - проблема показать их в меню, и работать в меню (вызывать команды) они тоже не будут. Только будут работать как клавиши редактора. часть команд при этом могут не вызваться (команды вызова внеш-инстр например)
Можно ли не заморачиваться про меню и внешние инструменты? Редактор же важнее.
Еще раз про модификатор Win. Как раз сочетания со стрелками (которые исчерпаны в Син) уже частично заняты в ОС - доступных станет не в два раза больше.

Добавлено: Ср май 09, 2012 16:47
Alextp
новость

УЖЕ есть regex metachar "\z" (ниж регистр!) обозначающий все концы строк. Я упустил его

Добавлено спустя 3 минуты:
kvichans писал(а):не заморачиваться про меню и внешние инструменты?
Нет- меню должно поддерживать такие шорткаты- как не заморачиваться

Добавлено: Ср май 09, 2012 19:32
kvichans
Попробую вспомнить, что еще обсуждалось (и поставить свою оценку важности от 1 до 10)

1. (~2) Ограничение действия лексера при превышении размера файла (было здесь)

2. (~5) В контекстных меню тоже показывать Клавиши, как и в общем меню приложения (было здесь)

3. (~8) Дополнение результатов поиска

4. (~6) Замена отображения результатов поиска с listbox на обычный редактор. Весьма не хватает поиска внутри Рез.поиска.

5. (10) Баг при сдвиге вертикального выделения (было здесь). Насколько я понял, баг был передан далее. Сейчас он не закрыт.

6. (~7) Центрировать на экране строку при переходе из Дерева (и командах СледующийУзелДерева), если эта строка еще не видна.

7. (~2) Неужели нет команды "забыть все маркеры"?

8. (~4) Если включено слежение за обновлением файлов и их автоматическая перезагрузка, и файл удален, то для оставшегося в табе текста желательно поступить так
- рассматривать его как "новый" (как после команды New file)
- бывшее имя файла использовать как умолчание при попытке сохранения
- м.б. поменять отображение имени в титуле Син с
{SES} C:\dir\file.ext - SynWrite
на
{SES} (C:\dir\file.ext) - SynWrite
чтобы было похоже на отображение нового файла
{SES} (Untitled) - SynWrite

9. (~5) Запоминать закладку в диалоге Настройки, даже при выходе по Отмена

10. (~4) Очищать все пометки о модификации строк после команды reopen

11. (~5) Диалог Свойства для получения (в том числе с возможностью скопировать)
- размер на диске
- дата последней модификациии
- число символов/строк/слов(?)

12. (~7) Чтобы \n воспринимался как любой из вариантов \n \r\n \r

Добавлено спустя 6 минут:
Alextp писал(а):УЖЕ есть regex metachar "\z" (ниж регистр!) обозначающий все концы строк.
Да, хорошая новость. Предлагаю дать настройку: "использовать \z вместо концов строк". При включенной настройке Син будет при вставке в Искать заменять на все варианты на \z

Добавлено: Ср май 09, 2012 20:05
Alextp
Не всё:
1. 7. done
9. не планирую
12. используйте \z

Добавлено спустя 28 минут:

Можно делать вставку с \z и без опции.

Добавлено: Ср май 09, 2012 20:08
kvichans
Alextp писал(а):12. используйте \z
Я-то его могу использовать. Проблема не в этом месте. Повторю описание ситуации:
Приходится обрабатывать много текстовых файлов с разными концами (часть с \r\n, часть с \r, обе части значительные, изредка попадаются \n).
- Есть потребность начинать поиск на файле с одним вариантом, а продолжать на другом.
- Есть потребность искать фрагмент из одного файла в многих других.
- Есть потребность искать фрагмент из нескольких строк, скопированный из другой среды (Word, Excel).
Если Син будет переносить/вставлять в Искать только \n и \r, то придется править руками на \z каждый раз. Как этого избежать?

Добавлено спустя 4 минуты:
Alextp писал(а):Можно делать вставку с \z и без опции.
Это плохой ход, так как изменит привычное поведение. Кроме меня есть и другие пользователи. Они могут пострадать

Добавлено: Ср май 09, 2012 20:18
Alextp
Будет опция "Использовать \z"- включите и вставка-подстановка будут с \z

Добавлено спустя 3 минуты:

-В контекстных меню тоже показывать Клавиши
OK

Добавлено: Ср май 09, 2012 21:10
kvichans
Alextp писал(а):Будет опция "Использовать \z"- включите и вставка-подстановка будут с \z
Будет ли \z в числе Special chars? Это было бы удобно

13. Приходится много работать с вкладной Клавиши. Пожелания. (Оценки важности от 1 до 10)
- (~6) Дать кнопку для очистки Filter list (к слову - очень удобная получилась реализация фильтра).
- (~8) Если в таблице команд есть выделенная пользователем строка, то при очистке фильтра оставлять ее выделенной (и конечно отображенной). А если нет, то действовать как сейчас - переходить к выбранной Категории. Если диагностика: пользователем выделена строка или самим Сином - избыточно сложна, то лучше отказаться от применения Категории.
- (~10) Доработать диалог, который возникает при попытке назначить сочетание, которое уже используется. Добавить в него ответ "Да, хочу здесь назначить, а там отменить". (Очень утомляет прыгать туда-сюда)
- (~3) Ликбез. Как организовать Save/Load для всех назначенных сочетаний? Это уже возможно? Это можно добавить?
- (~4) Нужен совет. Как мне построить такую таблицу:
Клавиша (чистая) (+Shift) (+Ctrl) (+Shift+Ctrl) (+Shift+Alt) (+Ctrl+Alt) (+Shift+Ctrl+Alt)
F1 Повтор - - - - - -
F2 ...
Первая колонка - клавиша на клавиатуре. В остальных колонках - имена команд, на которые назначено сочетание клавиши с указанными в шапке модификаторами.
Цель: понять какие сочетания заняты/свободны.
Пример: в Word есть штатный макрос ListCommands (из категории Команды Word), который строит подобную таблицу с колонками: CommandName Modifiers Key Menu.
Может в Син сделать команду для выдачи такой таблицы, например, с TAB-разделителями (можно будет в Excel ее изучить)?