Page 1 of 18

SortStr: Sort strings in editor — Сортировка строк в ред-ре

Posted: Mon 22 Nov, 2010 21:41
by GrAnD

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 — Сортировка строк в ред

Posted: Tue 23 Nov, 2010 13:40
by John Doe

В тексте несколько устаревшая информация, на самом деле по умолчанию буфер условно бесконечный.

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..."