AkelPad Forum Index AkelPad
Support forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Format plugin
Goto page Previous  1, 2, 3, 4, 5, 6, 7
 
Post new topic   Reply to topic    AkelPad Forum Index -> Plugins
View previous topic :: View next topic  
Author Message
[Yustas.NeO]



Joined: 12 Mar 2007
Posts: 258

PostPosted: Tue Sep 13, 2011 8:09 am    Post subject: Reply with quote

Instructor wrote:
Доработано.

Наконец-то дошли руки попробовать... Отлично! Правда я имел ввиду именно опцию... И жаль что не сохраняется изначальная сортировка...
Но все равно спасибо!
Back to top
View user's profile Send private message
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5311

PostPosted: Thu Sep 15, 2011 4:58 am    Post subject: Reply with quote

Изменено: увеличение скорости выполнения всех Line* функций и в особенности функций LineGetUnique, LineGetDuplicates, LineRemoveDuplicates, у которых изменен механизм обработки.
Изменено: LineGetDuplicates не меняет порядок строк.

Changed: increase execution speed of Line* functions, and in particular LineGetUnique, LineGetDuplicates, LineRemoveDuplicates functions, in which changed the mechanism of processing.
Changed: LineGetDuplicates does not change the lines order.


Format plugin v2.3
Back to top
View user's profile Send private message Send e-mail
Andrey_A_A



Joined: 03 Jun 2010
Posts: 547
Location: Сочи, Хоста

PostPosted: Thu Sep 15, 2011 6:10 am    Post subject: Reply with quote

Quote:
увеличение скорости


Instructor, отлично работает, только что проверил метод Call("Format::LineSortStrAsc") на документе в 1.327.560 строк - время работы 15-18 секунд, когда раньше можно было и не дождаться!!!
Call("Format::LineRemoveDuplicates") - 13 сек - здорово!!!
Back to top
View user's profile Send private message Send e-mail Visit poster's website
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Fri Dec 16, 2011 9:57 am    Post subject: Reply with quote

Сортировка строк по возрастанию добавляет в конце лишний перевод строки.
MouseOptions=23, WordBreak=265, SmartSel::NoSelEOL включен.

P.S. Остальные функции не проверял.
Back to top
View user's profile Send private message Visit poster's website
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5311

PostPosted: Fri Dec 16, 2011 11:00 am    Post subject: Reply with quote

VladSh
65-ый раз - отключаем "SmartSel::NoSelEOL".
Back to top
View user's profile Send private message Send e-mail
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Fri Dec 16, 2011 12:25 pm    Post subject: Reply with quote

Instructor
В 65-ый же - он нужен.

По функции сортировки строк по возрастанию.
Баг всё равно присутствует, только с выключенным SmartSel::NoSelEOL он выглядит иначе - перебрасывает курсор на строку, после которой было выделение.
Например выделил 3 строки, курсор стоит в конце 3-й строки, после отработки функции он стоит в начале 4-й.
У нас по этому поводу уже было длительное обсуждение "по поводу захватов переводов всех выделенных строк", и это может быть 256 раз правильно, но но с точки зрения пользователя это баг, - если пользователь выделил 3 строки и это видно визуально, то после отработки различных функций оно так и должно оставаться.
Back to top
View user's profile Send private message Visit poster's website
Tcheluskin



Joined: 16 Mar 2012
Posts: 7

PostPosted: Sat Mar 17, 2012 9:02 am    Post subject: Reply with quote

Во первых, спасибо автору плагина.

Меня интересует только функция вставки разрывов строк в местах переноса (Format::LineFixWrap).

Проблемы:
1. Format::LineFixWrap не удаляет лишний пробел перед переносом строки.

2. Есть ли отдельный плагин/скрипт только с такой функцией? Прочие мне не нужны.

Спасибо.
Back to top
View user's profile Send private message
opk44



Joined: 16 Jan 2010
Posts: 324

PostPosted: Sat Mar 17, 2012 10:41 am    Post subject: Reply with quote

Tcheluskin wrote:
Проблемы:
1. Format::LineFixWrap не удаляет лишний пробел перед переносом строки.
Это не проблема. Это нормально. Ф-ция делает ровно то, что должна - "Вставка разрывов строк в местах переноса."
Для удаления концевых пробелов есть соответствующая встроенная (безо всяких плагинов) функция (Alt+Backspace = "убрать Tab'ы и пробелы в конце строк"). Для вызова её в скрипте используйте Command(4174) сразу после вызова LineFixWrap.
Back to top
View user's profile Send private message
nikspb



Joined: 15 May 2011
Posts: 7
Location: г.С.Петебург

PostPosted: Thu Mar 29, 2012 2:02 pm    Post subject: Reply with quote

Уважаемые!
Не подскажете, что надо сделать, чтобы после применения Format::LineGetDuplicates номера оставшихся строк в тексте окна не изменялись ? (По сравнению с номерами этих строк до применения Format::LineGetDuplicates).
P.S. Плагин LineBoard включен.
Заранее благодарен за ответ.
Back to top
View user's profile Send private message
dracosha



Joined: 21 Apr 2013
Posts: 2

PostPosted: Sun Apr 21, 2013 1:08 pm    Post subject: Reply with quote

Instructor спасибо большое за AkelPad.
У меня возник вопрос по данному плагину.
Вот что написано в описании:
Format::LineSortIntAsc
Сортировка строк текста по числовому возрастанию.

мне нужно сделать сортировку вот этих строк:
текст

Code:
Group0/Action0/descr=u13
Group0/Action1/descr=b3
Group0/Action10/descr=u5a
Group0/Action11/descr=u6
Group0/Action12/descr=u6a
Group0/Action13/descr=u7
Group0/Action14/descr=u7a
Group0/Action15/descr=u8
Group0/Action2/descr=u2
Group0/Action3/flags2=d1
Group1/Action0/descr=u13
Group1/Action1/descr=b3
Group1/Action10/descr=u5a
Group1/Action11/descr=u6
Group1/Action12/descr=u6a
Group1/Action13/descr=u7
Group1/Action14/descr=u7a
Group1/Action15/descr=u8
Group1/Action2/descr=u2
Group1/Action3/flags2=d1

что бы в итоге получилось вот так:
текст

Code:
Group0/Action0/descr=u13
Group0/Action1/descr=b3
Group0/Action2/descr=u2
Group0/Action3/flags2=d1
Group0/Action10/descr=u5a
Group0/Action11/descr=u6
Group0/Action12/descr=u6a
Group0/Action13/descr=u7
Group0/Action14/descr=u7a
Group0/Action15/descr=u8
Group1/Action0/descr=u13
Group1/Action1/descr=b3
Group1/Action2/descr=u2
Group1/Action3/flags2=d1
Group1/Action10/descr=u5a
Group1/Action11/descr=u6
Group1/Action12/descr=u6a
Group1/Action13/descr=u7
Group1/Action14/descr=u7a
Group1/Action15/descr=u8

может пример конечно и грубоватый, но сортировка по численному возрастанию реально работает только до первого знака /
Back to top
View user's profile Send private message
KDJ



Joined: 06 Mar 2010
Posts: 1338
Location: Poland

PostPosted: Sun Apr 21, 2013 2:09 pm    Post subject: Reply with quote

dracosha
You can do this using the script SortInColumns.js with following settings:

Sort range:
Columns: From: 1, To: 26
Lines: From: 1, To: 20

Sort keys - columns:
Key 1: From: 6, To: 7, Numerically
Key 2: From: 14, To: 16, Numerically

To make easy to see, in AkelPad you should set monospace font (eg.: Consolas, Courier New, Lucida Console).
Back to top
View user's profile Send private message
Infocatcher



Joined: 06 Aug 2007
Posts: 1613

PostPosted: Sun Apr 21, 2013 4:16 pm    Post subject: Reply with quote

dracosha
Можно сначала отсортировать все строки, а потом выделить нужный столбец с зажатым Alt и отсортировать еще раз. Правда, Group0 и Group1 придется сортировать отдельно...
Back to top
View user's profile Send private message Visit poster's website
dracosha



Joined: 21 Apr 2013
Posts: 2

PostPosted: Wed Apr 24, 2013 6:45 pm    Post subject: Reply with quote

KDJ
По ссылке какой-то код, в котором я ничего не понимаю Smile


Infocatcher
Дело в том что у меня таких групп аж 145 Smile
Back to top
View user's profile Send private message
opk44



Joined: 16 Jan 2010
Posts: 324

PostPosted: Wed Apr 24, 2013 8:35 pm    Post subject: Reply with quote

dracosha
Только без обид. Оказание помощи предполагает от просящего, как минимум, желание понять. Если вопрос так стоит, что Вы не желаете даже попробовать самостоятельно разобраться "как воспользоваться чужим скриптом", то предлагаю Вам воспользоваться каким-либо офисным пакетом (MS Excel или LibreOffice). Вероятно для Вас это будет проще и быстрее. Кроме того, это еще и избавит от необходимости "шаманить" над текстом из-за переменной длины и начальной позиции ключей сортировки (0-145).

Порядок действий (для Excel2003) такой
Code:
1) открыть текстовый файл с сортируемым списком.
2) в мастере текстов указываем
на первом шаге: "с разделителями",
на втором шаге: "символом разделителем является" ставим птичку в [другой:], и указываем символ слэш [/]
3) Получаем текст в трех колонках.
Group0   Action0   descr=u13
Group0   Action1   descr=b3
Group0   Action10   descr=u5a
Group0   Action11   descr=u6
Group0   Action12   descr=u6a
...
4) В первых двух столбцах сделать замену "Group" и "Action" на "ничего". Получится так:
0   0   descr=u13
0   1   descr=b3
0   10   descr=u5a
0   11   descr=u6
0   12   descr=u6a
...
5) Сделать сортировку диапазона, указав последовательность (Столбец A, затем Столбец B, затем Столбец C)
6) Осталось склеить текст обратно, восстановив выброшенные слэши, "Group" и "Action". Для русской версии Excel формула будет такой (для второй строки):
   =СЦЕПИТЬ("Group";A2;"/";"Action";B2;"/";C2)
7) Растягиваете формулу на все строки. Получаете что хотели
Group0/Action0/descr=u13
Group0/Action1/descr=b3
Group0/Action2/descr=u2
Group0/Action3/flags2=d1
Group0/Action10/descr=u5a
Group0/Action11/descr=u6
...
8) Копируете результат обратно в текстовый файл.

В случае с LibreOffice Calc разница в том, что он не умеет сортировать списки без заголовков, поэтому возможно придется добавить одну строку с "заголовками". И формулы там по английски (на примере второй строки):
   =CONCATENATE("Group";A2;"/";"Action";B2;"/";C2)


Есть ограничение по максимальному количеству строк. Для Excel2003 - 65536 строк, LibreOffice - 1048575 строк (минус 1 на заголовки).
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    AkelPad Forum Index -> Plugins All times are GMT
Goto page Previous  1, 2, 3, 4, 5, 6, 7
Page 7 of 7

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


SourceForge.net Logo Powered by phpBB © 2001, 2005 phpBB Group