Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

BARдак внутри BAR файлов

 
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы printer-friendly view
View previous topic :: View next topic  
Author Message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Sat Sep 18, 2010 05:35    Post subject: BARдак внутри BAR файлов Reply with quote

Недавно необходимо было извлечь информацию из .Bar файлов и обнаружил такую вещь что информация (команды, параметы, ...)в них располагаются не по порядку:
button1=...
param1=...
cmd1=...
paht1=...
iconic1=...
menu1=...
button2=...
param2=...
cmd2=...
paht2=...
iconic2=...
menu2=... затем все с 3,4...60...

а встречается в середине,к примеру,такое на три листа:
param38=...
cmd26=...
paht53=...
button19=... и т. д. и. т. п.
Сначало вообще не мог понять мои ли это Бары Smile
потом дошло... видимо это происходит когда что-то добавляешь, изменяешь. Конечно в таком разброде извлечь нужную информацию сложно. Сначала пытался вручную это поправить - но дело гиблое...
Нашёл решение : Чтобы привести в порядок это дело, необходимо на панели инструментов (нужного бара) нажать изменить, а потом ok
Вопрос: можно ли как-то сделать так чтобы все bar файлы обновлялись.?Представьте... их не один десяток и каждый жать изменить, окей
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4815
Location: Ростов-Дон

Post (Separately) Posted: Sat Sep 18, 2010 08:28    Post subject: Reply with quote

Вопрос - а смысл?

В INI-файлах порядок секций, равно как и порядок параметров в рамках отдельно взятой секции не имеет абсолютно никакого значения. Где бы не располагался параметр cmd26, тотал все равно поймет, что это команда 26-й кнопки.

Кстати, такой же бардак ты можешь наблюдать в файлах wincmd.ini и wcxftp.ini. И во всех INI-файлах конфигурации плагинов.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10415
Location: Россия, Саратов

Post (Separately) Posted: Sat Sep 18, 2010 09:16    Post subject: Reply with quote

Andrey_A
Способ принудительной сортировки содержимого BAR-файлов предложен эффективный. Попробовал — работает. Я о такой возможности не знал, благодарю.
Что касается пакетного обновления BAR-файлов, то надо всё-таки признать, что:
• ручная правка их содержимого позарез нужна по большому счёту в очень специфических случаях, когда сортировка не имеет никакого значения (например, при замене абсолютных путей на %Commander_path%);
• огромное число ("не один десяток") BAR-файлов — ситуация ещё более нетривиальная (у меня их, например, всего три).
Так что можно воспринимать обновление BAR-файлов только по одному (если уж оно действительно зачем-то так нужно) как своего рода "налог на роскошь". Wink
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Andrey_A



Joined: 10 Apr 2009
Posts: 394
Location: Сочи

Post (Separately) Posted: Sat Sep 18, 2010 10:01    Post subject: Reply with quote

Quote:
Вопрос - а смысл?

сам смысл и идея, если честно, ещё витает в голове, а именно построчное сравнение новых BAR файлов (созданных из табличного файла, где я всё меню,команды... редактирую) и имеющихся с выводом изменений)
Quote:
Кстати, такой же бардак ты можешь наблюдать во всех INI-файлах конфигурации плагинов

Кстати, а почему бы Гислеру не сделать кнопочку "обновление" или "оптимизиция файлов\секций" К примеру, я не люблю бардака и во многих секциях привык сразу ставить всё на свои места:
В секциях где можно делаю всё в алфавитном порядке [Shortcuts],Configuration],[ShortcutsWin],[PackerPlugins],FileSystemPlugins],[ContentPlugins],[Searches],.....-хотя Тотал как научили класть всё в конец, так он и кладёт ,но можно ведь и переучить!
Мне кажется это остаточное явление с 90-х годов. Взять, к примеру недавно созданную функцию Ассоциаций [Associations] - там всё кладётся как надо!!!! Значит можно, когда захотим!!!
Не программист, но подозреваю, что в алфавитном и красиво причёсанном порядке тотал на мили-мили секунды, а быстрее будет работать!
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2586
Location: Большая деревня Москва

Post (Separately) Posted: Sat Sep 18, 2010 10:08    Post subject: Reply with quote

Quote:
огромное число ("не один десяток") BAR-файлов — ситуация ещё более нетривиальная (у меня их, например, всего три)
Да вы, батенька, минималист. Сейчас ради прикола посчитал - у меня 85, и мне вовсе не кажется, что это много.
Один или два раза мне действительно приходилось разыскивать заблудившийся параметр по файлу, но не чаще того. Далее, сейчас открыл несколько панелей, над которыми больше других измываюсь, редактируя как средствами Тотала, так и руками - почти все на месте. Было бы интересно знать, какая именно операция вносит этот BARдак.
Способ, предложенный Andrey_A, достаточно очевиден, но все равно ему спасибо, буду знать.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
GGS



Joined: 02 May 2009
Posts: 322

Post (Separately) Posted: Sat Sep 18, 2010 11:20    Post subject: Reply with quote

Вахмурка wrote:
Было бы интересно знать, какая именно операция вносит этот BARдак.

Редактирование отдельных кнопок, удаление, вставка и т.п.
То есть работа не с панелью, а с отдельными кнопками.
Back to top
View user's profile Send private message
CaptainFlint



Joined: 14 Dec 2004
Posts: 6193
Location: Москва

Post (Separately) Posted: Sat Sep 18, 2010 12:37    Post subject: Reply with quote

Andrey_A wrote:
Не программист, но подозреваю, что в алфавитном и красиво причёсанном порядке тотал на мили-мили секунды, а быстрее будет работать!

Не будет. Ускорение было бы в том случае, если бы сам Тотал считывал параметры в алфавитном порядке (точнее, если бы та часть параметров, что считывается им при очередной операции, располагалась бы в начале INI-файла). К тому же, неизвестно, как работают виндовые функции. Может быть, система при первом обращении автоматом считывает весь файл в память, парсит его, и потом уже ищет ключи в некой оптимизированной структуре, где время поиска практически не зависит от имени ключа.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4815
Location: Ростов-Дон

Post (Separately) Posted: Sat Sep 18, 2010 15:19    Post subject: Reply with quote

Думаю, такую задачу запросто можно вынести за рамки возможностей тотала, поручив ее внешней утилите, сортирующей секции и параметры INI-файлов, и вызывать ее для INI и BAR-файлов.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы All times are GMT + 4 Hours
Page 1 of 1

 
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


Powered by phpBB © 2001, 2005 phpBB Group