Wadia
30-08-2010, 06:28
Здравствуйте!
Опишу вкратце для чего мне это нужно. Переделываю Оперу под себя. Во всех ini-файлах Оперы секции находятся не в алфавитном порядке. Сортировка вручную занимает слишком много времени (не первый раз уже делаю). Вот поэтому и призадумался над тем, а можно ли как-то упростить или вообще автоматизировать данный процесс. Если бы это были классические ini-файлы, то проблем бы не было, pspad позволяет отсортировать секции нажатием одной кнопки.
Что удалось сделать к настоящему времени.
Текстовый редактор UltraEdit. Сначала регэкспом проверил поиск требуемых блоков без ложных срабатываний, получил такое выражение: ^[*^p^p
Затем создал макрос:
InsertMode
ColumnModeOff
HexOff
Find RegExp "^[*^p^p"
Copy
NewFile
Paste
CloseFile Save
PreviousDocument
Запуск макроса по горячей кнопке вызывает окно с предложением сохранить файл, и так много много раз. В итоге получаю кучу файлов: одна_секция=один_файл, да еще и с произвольным именем. Как их можно переименовать по первой строке (после или до сохранения в отдельные файлы особой роли не играет)?
Наглядный пример:
[Advanced Tools Menu]
Item, 69887=Manage cookies
Item, 69888=Manage wand
Item, 920136405=Content block details, 1
--------------------1
Item, 67476=Show Message console
Item, 54122=Show Java console
--------------------2
Item, 1592381550=Open URL in new page, "opera:config",,,"Blank"
Item, 1520601154=Open URL in new page, "opera:history",,,"Blank"
Item, -939867699=Open URL in new page, "opera:plugins",,,"Blank"
Item, -1429037863=Open URL in new page, "opera:cache",,,"Blank"
Item, 1395472123=Open URL in new page, "opera:drives",,,"Blank"
При сохранении этого блока в файл, он должен называться по первой строке, т.е. [Advanced Tools Menu]. В конце концов, все файлы необходимо объединить в один, чтобы все секции находились в нем в алфавитном порядке. Есть какие-нибудь идеи на этот счет?
Опишу вкратце для чего мне это нужно. Переделываю Оперу под себя. Во всех ini-файлах Оперы секции находятся не в алфавитном порядке. Сортировка вручную занимает слишком много времени (не первый раз уже делаю). Вот поэтому и призадумался над тем, а можно ли как-то упростить или вообще автоматизировать данный процесс. Если бы это были классические ini-файлы, то проблем бы не было, pspad позволяет отсортировать секции нажатием одной кнопки.
Что удалось сделать к настоящему времени.
Текстовый редактор UltraEdit. Сначала регэкспом проверил поиск требуемых блоков без ложных срабатываний, получил такое выражение: ^[*^p^p
Затем создал макрос:
InsertMode
ColumnModeOff
HexOff
Find RegExp "^[*^p^p"
Copy
NewFile
Paste
CloseFile Save
PreviousDocument
Запуск макроса по горячей кнопке вызывает окно с предложением сохранить файл, и так много много раз. В итоге получаю кучу файлов: одна_секция=один_файл, да еще и с произвольным именем. Как их можно переименовать по первой строке (после или до сохранения в отдельные файлы особой роли не играет)?
Наглядный пример:
[Advanced Tools Menu]
Item, 69887=Manage cookies
Item, 69888=Manage wand
Item, 920136405=Content block details, 1
--------------------1
Item, 67476=Show Message console
Item, 54122=Show Java console
--------------------2
Item, 1592381550=Open URL in new page, "opera:config",,,"Blank"
Item, 1520601154=Open URL in new page, "opera:history",,,"Blank"
Item, -939867699=Open URL in new page, "opera:plugins",,,"Blank"
Item, -1429037863=Open URL in new page, "opera:cache",,,"Blank"
Item, 1395472123=Open URL in new page, "opera:drives",,,"Blank"
При сохранении этого блока в файл, он должен называться по первой строке, т.е. [Advanced Tools Menu]. В конце концов, все файлы необходимо объединить в один, чтобы все секции находились в нем в алфавитном порядке. Есть какие-нибудь идеи на этот счет?