Orion9

|
Posted: Mon Jan 20, 2025 14:04 Post subject: |
|
|
AkulaBig wrote: | А я ей никогда не пользовался  |
А зачем же она у вас в сборке тогда?
Шутки шутками, а внутренние ассоциации вполне могут пригодиться. Это классный функционал, но у него есть недостатки: не очень удобный интерфейс и необходимость "прокачки" секции [Associations] для комфортного использования. Мало кто станет делать индивидуальное сопоставление расширений, но только так можно извлечь хоть какую-то пользу.
Вот и у вас в сборке полноценно расставлена только SumatraPDF, а на IrfanView, как я понимаю, вы уже поленились ))
А ведь могли бы сделать что-то вроде:
Code: | Filter10=*.b3d
Filter10.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,036
Filter10_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter11=*.bmp
Filter11.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,000
Filter11_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter12=*.cam
Filter12.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,001
Filter12_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter13=*.clp
Filter13.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,002
Filter13_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1"" |
Или перспектива "возиться " руками с десятками расширений вас напугала? ) А как вы хотели? По-другому ведь красиво не бывает - иногда нужно и руками поработать.) Главное не забывать про мудрый совет Николая Степановича "Глаза больших дел боятся, но руки-то делают" Выпил кружку кофе и вперёд - что там сотни расширений
Но попробуем пойти другим путём. В IrfanView есть библиотека Icons.dll в папке плагинов, я попробовал сделать на неё "map-файл" для дальнейшего удобства:
 Hidden text b3d=036
bmp=000
cam=001
clp=002
crw=037
dcm=003
dcx=004
dds=045
djvu=005
ecw=038
emf=006
eps=007
fpx=008
fsh=039
g3=009
gif=010
iff=011
img=012
jng=040
jp2=013
jpg=014
kdk=015
mng=041
nlm=016
pbm=017
pcd=018
pcx=019
pgm=020
png=021
ppm=022
psd=023
psp=024
ras=025
raw=042
rle=026
sff=027
sfw=028
sgi=029
sid=043
tga=030
tiff=031
ttf=044
wbmp=032
wmf=033
xbm=034
xpm=035
Тут пока без "фокусов": просто руками сопоставил выгруженные .ico, что заняло буквально несколько минут. Но теперь подключаем Autorun:
Code: | # Alt + "["
SetHotkeyAction /K:A /V:219 IconMapTest 0
Func IconMapTest(lParam)
Local map = %COMMANDER_PATH% & "\Icons\IrfanView.map", _
lib = '%COMMANDER_PATH%\Icons\IrfanView.dll', _
cmd = '""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""', _
idx = 10
AssocIconsMap(map, idx, lib, cmd)
EndFunc
Func AssocIconsMap(MapFile, StartIdx, IconLib, CmdOpen)
Local out, ext, idx
If Not FileExist(MapFile) Then
ShowHint("Не найден " & MapFile)
Return
Endif
ProcessExecGetOutput out %COMSPEC% '/c type "%MapFile%"'
Local aMap = List(), j
aMap.Text = out
out = ""
For j = 0 To aMap.Count - 1
ext = StrPart(aMap[j], "=", 1)
idx = StrPart(aMap[j], "=", 2)
out &= auCRLF & "Filter" & StartIdx + j & "=*." & ext
out &= auCRLF & "Filter" & StartIdx + j & ".icon=" & IconLib & ","& idx
out &= auCRLF & "Filter" & StartIdx + j & "_open=" & CmdOpen
Next
ClipPut(out)
ShowHint("Скопировано в буфер.")
EndFunc |
Запускаем скрипт, и получаем в буфере:
 Hidden text Filter10=*.b3d
Filter10.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,036
Filter10_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter11=*.bmp
Filter11.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,000
Filter11_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter12=*.cam
Filter12.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,001
Filter12_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter13=*.clp
Filter13.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,002
Filter13_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter14=*.crw
Filter14.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,037
Filter14_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter15=*.dcm
Filter15.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,003
Filter15_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter16=*.dcx
Filter16.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,004
Filter16_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter17=*.dds
Filter17.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,045
Filter17_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter18=*.djvu
Filter18.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,005
Filter18_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter19=*.ecw
Filter19.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,038
Filter19_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter20=*.emf
Filter20.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,006
Filter20_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter21=*.eps
Filter21.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,007
Filter21_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter22=*.fpx
Filter22.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,008
Filter22_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter23=*.fsh
Filter23.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,039
Filter23_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter24=*.g3
Filter24.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,009
Filter24_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter25=*.gif
Filter25.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,010
Filter25_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter26=*.iff
Filter26.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,011
Filter26_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter27=*.img
Filter27.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,012
Filter27_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter28=*.jng
Filter28.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,040
Filter28_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter29=*.jp2
Filter29.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,013
Filter29_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter30=*.jpg
Filter30.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,014
Filter30_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter31=*.kdk
Filter31.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,015
Filter31_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter32=*.mng
Filter32.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,041
Filter32_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter33=*.nlm
Filter33.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,016
Filter33_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter34=*.pbm
Filter34.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,017
Filter34_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter35=*.pcd
Filter35.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,018
Filter35_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter36=*.pcx
Filter36.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,019
Filter36_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter37=*.pgm
Filter37.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,020
Filter37_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter38=*.png
Filter38.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,021
Filter38_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter39=*.ppm
Filter39.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,022
Filter39_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter40=*.psd
Filter40.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,023
Filter40_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter41=*.psp
Filter41.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,024
Filter41_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter42=*.ras
Filter42.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,025
Filter42_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter43=*.raw
Filter43.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,042
Filter43_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter44=*.rle
Filter44.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,026
Filter44_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter45=*.sff
Filter45.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,027
Filter45_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter46=*.sfw
Filter46.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,028
Filter46_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter47=*.sgi
Filter47.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,029
Filter47_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter48=*.sid
Filter48.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,043
Filter48_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter49=*.tga
Filter49.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,030
Filter49_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter50=*.tiff
Filter50.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,031
Filter50_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter51=*.ttf
Filter51.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,044
Filter51_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter52=*.wbmp
Filter52.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,032
Filter52_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter53=*.wmf
Filter53.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,033
Filter53_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter54=*.xbm
Filter54.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,034
Filter54_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Filter55=*.xpm
Filter55.icon=%COMMANDER_PATH%\Icons\IrfanView.dll,035
Filter55_open=""%COMMANDER_PATH%\Plugins\wlx\TCIrfanView\IrfanView\i_view32.exe" "%1""
Вот это другое дело. Индекс фильтра можно менять, как и команду открытия и путь к библиотеке.
 P.S. Чешуться руки, конечно, и другие библиотеки "размапить", но всему свое время... И, кстати, в "свое время" на PotPlayer мне пришлось практически всё вручную делать.)) |
|