Page 55 of 97
Posted: Sun Jan 30, 2011 12:55 am
by Infocatcher
ColumnCounter_mod.js
Меня довольно давно раздражало, что для случаев вроде вот такого
отрезаются символы справа (в данном случае – запятая после девятки).
Суть исправления:
Code: Select all
pLinesArray[nIndex]="" + nFirstNumber + pLinesArray[nIndex].replace(/^(0x[\da-f]+|\d+)/i, "");
То есть из начала строки вырезается число, а остаток прибавляется к результату.
Posted: Sun Jan 30, 2011 2:33 am
by Deim0s
Несколько вопросов по скриптам:
TabsToSpaces_mod.js и
SpacesToTabs.js
VladSh,
Если пробельный символ один, то замены на табуляцию не происходит. Можно исправить (или добавить опцию, если так задумано)?
Infocatcher,
Если выбрана (или всего одна) строка без табуляции с пробелами, то при срабатывании скрипта первые пробелы заменяются табуляцией.
Пример:

В
оригинальном скрипте так не происходит.
Можно ли добавить опцию, чтобы замена Tabs -> Spaces происходила на реальное количество символов указанных в настройках редактора, без smart штучек?
К примеру, при размере табуляции 8, что бы из этого:

получалось не так:

а так:

Posted: Sun Jan 30, 2011 2:47 am
by Infocatcher
Deim0s wrote:Если выбрана (или всего одна) строка без табуляции с пробелами, то при срабатывании скрипта первые пробелы заменяются табуляцией.
Эээ... замена пробелов табуляциями в случае, когда в тексте нет ни одной табуляции, – практически единственное отличие от оригинального скрипта.
Deim0s wrote:Можно ли добавить опцию, чтобы замена Tabs -> Spaces происходила на реальное количество символов указанных в настройках редактора, без smart штучек?
В простейшем случае, без хитрых выделений целых строк:
Code: Select all
var nTabStop = AkelPad.SendMessage(AkelPad.GetEditWnd(), 3239 /*AEM_GETTABSTOP*/, 0, 0);
var text = AkelPad.GetSelText() || AkelPad.SetSel(0, -1) || AkelPad.GetSelText();
AkelPad.ReplaceSel(text.replace(/\t/g, new Array(nTabStop + 1).join(" ")));
Posted: Sun Jan 30, 2011 3:08 am
by Deim0s
Infocatcher,
замена пробелов табуляциями в случае, когда в тексте нет ни одной табуляции
Спасибо за пояснение, но всё же почему, в этом случае, только первые пробелы?
В простейшем случае, без хитрых выделений целых строк:
Не работает что то.
Posted: Sun Jan 30, 2011 3:19 am
by Infocatcher
Deim0s wrote:почему, в этом случае, только первые пробелы?
Потому что в большинстве случаев остальные пробелы нужны для выравнивания, и их лучше не трогать.
И не понятно, как определять, нужна ли замена.
Вот тут, например, не нужна (SearchReplace.js):
Code: Select all
//Direction
var DN_DOWN =0x00000001
var DN_UP =0x00000002
var DN_BEGINNING =0x00000004
var DN_SELECTION =0x00000008
var DN_ALLFILES =0x00000010
А тут вообще все гораздо сложнее:
Code: Select all
hWndDialog=oSys.Call("user32::CreateWindowEx" + _TCHAR,
0, //dwExStyle
pClassName, //lpClassName
Deim0s wrote:Не работает что то.
Да там даже не работать практически нечему...
Posted: Sun Jan 30, 2011 3:31 am
by Deim0s
Infocatcher,
Ясно, спасибо.
Не работает что то.
Прошу прощения, моя вина - всё работает. Хм... действительно и так просто.
Posted: Sun Jan 30, 2011 3:34 pm
by KDJ
I changed the names of the following scripts:
ColumnsSort.js -> SortInColumns.js
LinesSort.js -> SortLines.js
ListSort.js -> SortList.js
Posted: Sun Jan 30, 2011 7:22 pm
by Instructor
Скрипты
сгруппированны по авторам в порядке плодовитости
Scripts
grouped by authors.
Т.к. первое сообщение в теме принадлежит VladSh, он также имеет возможность вносить изменения.
Posted: Sun Jan 30, 2011 7:30 pm
by se7h
Instructor
так гораздо удобнее, респект за здравый смысл

Posted: Mon Jan 31, 2011 8:09 am
by VladSh
Deim0s wrote:Несколько вопросов по скриптам ...
SpacesToTabs.js
Если пробельный символ один, то замены на табуляцию не происходит. Можно исправить (или добавить опцию, если так задумано)?
Дело в том, что я тогда пошёл по простому пути - написал скрипт, который преобразовывает всю строку целиком, а не только отступы. Если же заменять одиночные пробелы внутри строки, представьте, что получится... Меня это "соглашение" с самим собой

по этой особенности скрипта полностью устраивало.
Если кто-то напишет паттерн для regexp, который будет работать только для начальных пробелов (т.е. только отступ перед текстом), то я с удовольствием вставлю его код себе в скрипт.
Специальный паттерн, чисто для отступов, - это хорошая идея, а замена одиночного пробела всё же, думаю, не очень, т.к. отступы могут съехать.
Posted: Mon Jan 31, 2011 8:15 am
by VladSh
Instructor wrote:Скрипты
сгруппированны по авторам в порядке плодовитости

Т.к. первое сообщение в теме принадлежит VladSh, он также имеет возможность вносить изменения.

Идея такая уже была, и я начинал даже формировать такой список, да что-то отвлекло и.. забыл.
Instructor, спасибо за скурпулёзную работу!
Авторам скриптов
Могу в конце каждого скрипта добавить его краткое описание (1 строка). Предлагаю не засорять предложениями тему, лучше в личке.
Posted: Mon Jan 31, 2011 11:30 am
by FeyFre
VladShАвторам скриптов
Могу в конце каждого скрипта добавить его краткое описание (1 строка). Предлагаю не засорять предложениями тему, лучше в личке.
Пройдись ка по постам-скриптам, если есть авторские особые замечания к скриптам, то они там(или в крайнем случае в начале самого скрипта)
Posted: Mon Jan 31, 2011 11:57 am
by Deim0s
VladSh,
чисто для отступов, - это хорошая идея, а замена одиночного пробела всё же, думаю, не очень
Хотелось бы, если можно, как раз любые одиночные, не только отступы.
Posted: Mon Jan 31, 2011 3:25 pm
by Infocatcher
scriptToBookmarklet.js, scriptToBookmarklet_w2k.js
Улучшено удаление однострочных комментариев.
Теперь есть только два исключения:
var s = "http
://example.com/";
и
var r = /
\//;
P.S. Заодно появилась идея выделить новости скриптов в отдельную тему.
[Upd]
Кажется, экспериментальное наконец-то закончилось.
highlighter.js
Version 0.3.1 (2010-12-07)
[+] Added recognize mechanism for unsaved files or files without extension.
(This is just renamed test version
from here.)
Posted: Mon Jan 31, 2011 6:17 pm
by KDJ
A mistake in script collection.
Script SplitSwitch_alternative.js is assigned to VladSh.