BasiL
|
Posted: Thu Oct 15, 2009 12:30 Post subject: [Script] Перенос меню в "Избранные каталоги" |
|
|
На нетбуках разрешение по вертикали всего 600 точек, по этому имеет смысл максимально минимизировать интерфейс ТС. панель инструментов можно скрывать по хоткею, так же можно поступить и с другими панельками.
Однако, скрыть\показать меню нельзя, можно только его отключить целиком, выбрав пустой *.mnu файл и установив RestrictInterface=1.
Но меню бывает нужно, по этому возникла идея перенести все меню в "избранные каталоги". Т.к. часто бывает, что меню так же настроено "под себя", я сделал скрипт, который может конвертировать mnu файл в формат секции [DirMenu] wincmd.ini
Code: | @echo off
setlocal ENABLEDELAYEDEXPANSION
echo from which menu item we will start?
set /p p=
echo which menufile to convert?
set /p menufile=
echo output filename (text will be added to eof)
set /p file=
rem add first separator
echo menu!p!=->>%file%.tmp
rem add a "Menu" title
set /a p=p+1
echo menu!p!=-Menu>>%file%.tmp
set /a p=p+1
for /f "tokens=*" %%a in ('findstr /c:"MENUITEM" /c:"POPUP" %menufile%') do (
if "%%a"=="MENUITEM SEPARATOR" (
echo menu!p!=->>%file%.tmp
set /a p=p+1
) else (
if "%%a"=="END_POPUP" (
echo menu!p!=-->>%file%.tmp
set /a p=p+1
) else (
set "name=%%a"
set name=!name:"=@!
for /f "tokens=1,2,3,4 delims=@" %%A in ("!name!") do (
if "%%A"=="POPUP " (
echo menu!p!=-%%B>>%file%.tmp
set /a p=p+1
) else (
echo menu!p!="%%B">>%file%.tmp
set "value=%%C"
echo cmd!p!=!value:~2!>>%file%.tmp
set /a p=p+1)
)
)
)
)
rem close "Menu"
echo menu!p!=-->>%file%.tmp
rem removing \t
for /f "tokens=*" %%A in (%file%.tmp) do (
set "str=%%A"
set str=!str:^\t= !
echo !str!>>%file%.txt
)
del /q %file%.tmp |
сохранить в текстовый файл с расширением .cmd (или .bat)
надо ввести номер пункта, котрым заканчивается ваше меню избранных каталогов, можно посмотреть последний номер в секции [DirMenu]
Затем - указать полный путь к вашему mnu файлу
И последнее - указать имя файла, в который запишется результат.
к имени добавится расширение .txt
Так же скрипт использует временный файл с расширением .tmp, который в конце работы удаляется, по этому желательно выбирать имя файла, которого нет в каталоге со скриптом.
Полученный текст надо вставить в секцию [DirMenu] вашего wincmd.ini (если эта секция не перенесена в другой файл, как это сделано у меня). |
|