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 

Быстрое добавление типов файлов в Ассоциации ТС

 
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: Tue Mar 23, 2010 12:45    Post subject: Быстрое добавление типов файлов в Ассоциации ТС Reply with quote

Кто занимался Ассоциациями знает... Для того, чтобы добавить тип (расширение) нужно сделать ряд нажатий мышью (диалог Ассоциаций...), далее прописать сам тип... короче на это уходит время и если кто-то этим захочет заняться вплотную, тот наверное хотел бы это сделать побыстрее, а для тех кто редко, но всё же добавляет типы в ассоциации, тем более не хотелось бы тратить своё драгоценное время на ряд этих мелочей
На мысль об автоматизации процесса натолкнула тема
http://forum.wincmd.ru/viewtopic.php?t=13058&start=0&postdays=0&postorder=asc&highlight=

Для этого надо:
1. Скрипт из верхнего поста Замена текста в файле
2. Настроить 5-10 основных Фильтров в Ассоциациях
3. Сделать выпадающее меню на панели с соответствующими параметрами

1 С позваления Batya я размещу скрипт и здесь, т.к. в той теме выложено несколько скриптов (для незапутанности)
Code:
'=============================================
' Замена текста в файле
'
' Параметры:
' {файл} {текст для поиска} {текст для замены}
'=============================================
Option Explicit
Dim FSO, F, Str1, Str2, Text
Set FSO = CreateObject("Scripting.FileSystemObject")
With WScript
  F    = .Arguments(0)
  Str1 = .Arguments(1)
  Str2 = .Arguments(2)
End With
F = FSO.GetAbsolutePathName(CreateObject("WScript.Shell").ExpandEnvironmentStrings(F))

Text = FSO.OpenTextFile(F, 1).ReadAll
Text = Replace(Text, Str1, Str2, 1, -1, 1)
FSO.OpenTextFile(F, 2).Write Text

Set FSO = Nothing
WScript.Quit 0

У меня скрипт сохранён с названием ReplaceText.vbs

2. Настроим 10-ть популярных ассоциаций типов. К примеру:

1.Текстовые
2.Изображения
3.Видео
4.Музыка
...
т.е. нам важно какими программами будут открываться эти типы и какой значок будет отображаться, вот пример начальной настройки:
Code:
[Associations]
Filter1=; 1 |
Filter1_open="""%COMMANDER_PATH%\Plugins\exe\AkelPad\AkelPad.exe" "%1"""
Filter1.icon=%COMMANDER_PATH%\Wcmicons.dll,62
Filter2=; 2 |
Filter2_open=""%COMMANDER_PATH%\Plugins\wlx\Imagine\Imagine.exe" "%1""
Filter2.icon=%COMMANDER_PATH%\Wcmicons.dll,26
Filter3=; 3 |
Filter3_open=""%COMMANDER_PATH%\Programs\VideoLAN\App\VLC\vlc.exe" "%1""
Filter3.icon=%COMMANDER_PATH%\Wcmicons.dll,74

По аналогии можно сколько хошь

3. Настроим кнопки:
Первый вид копок - Добавление расширение в Ассоциации
Code:
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Files\Scripts\ReplaceText.vbs
"%%COMMANDER_PATH%%\WinAssociations.ini" "Filter1=" "Filter1=*.%E;"
%COMMANDER_PATH%\Wcmicons.dll,2060
Добавл. расш. под курс. в Ассоциации в Filter1 (Тестовый)

0
-1

По аналогии создаются остальные
Второй вид копок - Добавление полного имени...параметр
Code:
"%%COMMANDER_PATH%%\WinAssociations.ini" "Filter1=" "Filter1=%O.%E;"

Третий вид копок - кроме этого расширения...параметр
Code:
"%%COMMANDER_PATH%%\WinAssociations.ini" "1 | " "1 | *.%E;"

Четвёртый вид копок - Копока удаления расширения...параметр
Code:
"%%COMMANDER_PATH%%\WinAssociations.ini" "*.%E;" ""

Четвёртый вид копок - Копока удаления полного имени...параметр
Code:
"%%COMMANDER_PATH%%\WinAssociations.ini" "%O.%E;" ""

Потратив несколько минут, собрав всё это в выпадающее меню, каждый получит своё, у меня к примеру так:
Back to top
View user's profile Send private message
Andrey_A



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

Post (Separately) Posted: Tue Mar 23, 2010 14:22    Post subject: Reply with quote

Забыл дописать:
1. Необходимо вставить свои пути (к примеру у меня написано "%%COMMANDER_PATH%%\WinAssociations.ini", потому что секция вынесена из основного ini файла, у вас будет наверное "%%COMMANDER_PATH%%\WinCmd.ini")
2. Единственный нюанс при запуске кнопки (к примеру добавления расширения) в том, что сразу на ассоциированном типе файла значок не отображается. Нужно
- либо перезапустить Тотал,
- либо вызывать окно Ассоциаций и нажимать Enter
- либо использовать скрипт
Code:
'Вызывает окно Ассоциаций и нажимает Enter
'Необходимо для того, чтобы проявились назначенные значки
Dim TCS
Set TCS = CreateObject("TCSCRIPT.Helper")
TCS.SendCommand "cm_InternalAssociate"
Pause = 300
TCS.SendKeystroke "{Enter}"
Set TCS = Nothing
Back to top
View user's profile Send private message
Andrey_A



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

Post (Separately) Posted: Tue Mar 23, 2010 19:23    Post subject: Reply with quote

Вспомнилось ещё
Строка FilterN имеет ограничение примерно 1024 знака, поэтому если кто задумает делать много типов в одной строке контролируйте эту ситуацию... При достижениии предела, в начало строки типы будут вставляться, а концовки обрезаться.
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Tue Mar 23, 2010 19:39    Post subject: Reply with quote

Три поста от одного пользователя подряд - по-моему, рекорд. Рискую показаться занудой, но такие темы вряд ли имеет смысл обсуждать на форуме. Напиши статью и положи в ТСКВ, а здесь лишь дай на нее ссылку. Дискутировать здесь не о чем. Те, кто заинтересуется, воспользуются статьей как учебником. Если ты ждешь восхищения, то прими его от меня, хотя это можно было сделать и после коротенького поста со ссылкой.
Удачи тебе в твоем нелегком ремесле. "Безумству храбрых поем мы славу" ((С) Горький)
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Mar 23, 2010 20:23    Post subject: Reply with quote

Ну вот, зачем ты человеку всю мазу обломал?) Не рекорд это пока: см. Very Happy
А вот написание красивой статьи на TCKB поддерживаю. Вполне себе такой нормальный рецепт приготовления связки ассоциаций.
Back to top
View user's profile Send private message
Tol!k



Joined: 01 Apr 2008
Posts: 1727
Location: Арзамас

Post (Separately) Posted: Wed Mar 24, 2010 03:19    Post subject: Reply with quote

[offtop]
Flasher wrote:
Не рекорд это пока
Mr. Green
Рекордсмен мира смотрит на вас как на... Ну вы поняли.
[/offtop]
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Mar 24, 2010 03:41    Post subject: Reply with quote

[off]
Tol!k wrote:
смотрит на вас как на... Ну вы поняли.
Это точно. Я там 16 штук подряд насчитал. Ну с таким мегаплагином и не грех.. Куда нам.. Просто я не стал лазить по форуму, вспомнил свои три, этого было вполне достаточно для указания на несущественность предположения Вахмурки. Даа.. Пусть останется в архиве непоколебимых достижений форума. Хотя смею предположить, такое кол-во постов подряд вызвано скорей либо малой востребованностью, либо плохой осведомлённостью в предмете (в данном случае шифрования). Уж больно тема узкоспециализирована. Там автор сам без всех лучше знает, что, как и почему..
[/off]
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Wed Mar 24, 2010 10:22    Post subject: Reply with quote

Quote:
такое кол-во постов подряд вызвано скорей либо малой востребованностью, либо плохой осведомлённостью в предмете
Золотые слова. Причем мне кажется, что в данной теме осведомлены-то как раз все прекрасно...

2Andrey_A
В свете дискуссии еще раз призываю подумать над статьей.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Andrey_A



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

Post (Separately) Posted: Wed Mar 24, 2010 12:42    Post subject: Reply with quote

Не стремился быть рекордсменом, даже не знал об этом (если бы знал, то может быть). Просто когда писал... в конце сбили всякие дела, а последний 3-й пост писал вообще в машине на ходу.
По поводу статьи, у меня нет опыта в написании, если кто захочет написать на эту тему..., то я лишь могу помочь какими-то советами, если что-то обнаружится при обследовании Ассоциаций
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Mar 24, 2010 13:15    Post subject: Reply with quote

Andrey_A wrote:
если что-то обнаружится при обследовании Ассоциаций
При исследовании темы ассоциаций уже обнаружилось и реализовалось тем же Tol!k. Очень важное дополнение IMHO.
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Wed Mar 24, 2010 13:19    Post subject: Reply with quote

Щелкаешь на ссылке "ТСКВ" вверху страницы, изучаешь формат Вики, причесываешь, выкладываешь. Не забудь посоветоваться с "литературным редактором", а то там и ошибок и опечаток хренова гора.
D1P тебе в помощь Wink
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
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