SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 01:55
by GrAnD
GMax wrote:
я так понял, что это плагин типа SortEdit by Dmitry V.Lomanov, но с поддержкой юникода...
вот об этом и хочу сказать.
интерфейс почти совпадает, но(!) в SortStr смысл первой галочки от меня ускользает. ведь несложно её заменить на комбинацию Ctrl+A ? Выделение-то всё равно портится.
а вот в оригинальной версии смысл галочки в том, чтобы сортировать только выделенное - и при вертикальном блоке это очень полезная опция, которой сильно не хватает в SortStr. хотелось бы её видеть и тут И, кстати, по-возможности выделение не портить.
что то не понял ничего
галочка так и устроена - есть выделение будет сортироваться выделение, нет выделения будет сортироваться файл целиком. Просто она выставляется автоматически в зависимости от наличия выделения. Для удобства.
Если есть выделение, но нужно отсортировать весь файл снимаем галочку.
Выделен вертикальный блок - сортируются только строки в блоке и только по выделению.
Вы читали readme? На счет вертикальных блоков я тут повторил то что написано там.
А сброс выделения, если надо, я уберу.
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 12:59
by roksoft
Можно добавить прогресс для длительных операций?
Сортировка в файлах от 20 мег выполняется более 5 секунд.
В "SortEdit by Dmitry V.Lomanov" прогресс отображался.
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 13:06
by GrAnD
нет возможности вычислить продолжительность сортировки, можно лишь вывести окошко типа
"Идет операция подождите".
Оно совершенно не информативно и поэтому, если честно - не вижу смысла
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 13:10
by Max Rusov
Еще пожелание: чтобы вся сортировка отменялась одной командой Undo
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 13:15
by GrAnD
и как это сделать???
формировать буффер для вставки?
потребуется памяти в 2 раза больше.
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 13:20
by Max Rusov
GrAnD wrote:и как это сделать???
ECTL_UNDOREDO
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 13:22
by GrAnD
вроде понял, попробую
у такого подхода есть обратная сторона - при сортировке слишком большого массива строк отмена потом вообще не работает. (видимо превышается буфер отмены)
Несмотря на это делать отмену целым блоком?
Re: SortStr: Sort strings in editor — Сортировка строк в ред
1.8.6.(TechInfo #44)
~~~~~~~~~~~~~~~~~~~~
[HKEY_CURRENT_USER\Software\Far2\Editor]
"EditorUndoSize":REG_DWORD
Параметр "Editor/EditorUndoSize" с типом DWORD - позволяет изменить
размер буфера отмены действий в редакторе. "EditorUndoSize" определяет
количество сохранённых операций (а не размер буфера в байтах) и может
принимать значение от 64 до 2147483645. Если число выходит из этого
диапазона, то считается, что EditorUndoSize равно 64.
По умолчанию значение = 2048.
В тексте несколько устаревшая информация, на самом деле по умолчанию буфер условно бесконечный.
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 13:47
by GrAnD
понятно, в след версии будет блоком
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 13:48
by Max Rusov
GrAnD wrote:при сортировке слишком большого массива строк отмена потом вообще не работает. (видимо превышается буфер отмены)
Ну так, отмена по частям в этом случае тоже не восстановит исходный текст, часть строк просто потеряется, что еще хуже.
GrAnD wrote:Несмотря на это делать отмену целым блоком?
Можно сделать опционально, конечно, хотя я не вижу причин, почему может понадобится отмена по частям...
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 13:52
by GrAnD
да ты прав, все правильно.
Есть у кого предложения как сделать прогресс, учитывая что для сортировки вызывается стандартный алгоритм sort и калбэка у него нет?
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 14:00
by Max Rusov
А уже сам Sort модифицирует текст, или сначала делается массив перестановок, а потом - модификация?
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 14:07
by GrAnD
сначала создается вектор строк потом сортируется затем вставляется.
получается сортируется копия в памяти.
Re: SortStr: Sort strings in editor — Сортировка строк в ред
Posted: Tue 23 Nov, 2010 14:20
by Max Rusov
Надо посмотреть что сколько времени занимает. Если окажется что модификация текста сильно дольше чем собственно сортировка - можно рисовать прогресс только для второго этапа. А на первом просто писать "sorting..."