|
|
| Title | UserMenuAnalyzer |
| File Name | UserMenuAnalyzer.txt |
| Description | Retrieve information about user menus from [User] and [DirMenu] sections of TC's configuration |
| Author | Vochomurka |
| Parameters | ("user") |
| Plugins Called | ini |
| Icon |
|
| Version | 1.0 |
| Updated on | 02.03.15 |
args Sec
static Config = env("WINDIR") ++ "\wincmd.ini"
static CR = esc(?+\n+, ?+\+)
static Tab = esc(?+\t+, ?+\+)
local i, Value, OpenSM, CloseSM, Separator, Temp, cd, param, Target, Nest, MaxNest
for(i = 1; i <= 200; i++)
Temp = "menu" ++ i
if(ini.check_exists(Config, Sec, Temp) != 3) do
break
else
Value = ini.get(Config, Sec, Temp)
if(Value == "-") do
Separator++
jump NotMenu
endif
if(Value[0, 1] == "--") do
CloseSM++
Nest--
jump NotMenu
endif
if(Value[0] == "-") do
OpenSM++
Nest++
MaxNest = max(Nest, MaxNest)
jump NotMenu
endif
endif
@NotMenu
Temp = "cmd" ++ i
if(ini.check_exists(Config, Sec, Temp) == 3 && slice(ini.get(Config, Sec, Temp), 3) == "cd ")
cd++
if(ini.check_exists(Config, Sec, "path" ++ i) == 3)
Target++
endfor
Temp = "Section:" ++ Tab ++ Tab ++ Sec ++ CR ++ "Items:" ++ Tab ++ Tab ++ (i - 1) ++ CR
Temp ++= "Submenu starts:" ++ Tab ++ OpenSM ++ CR ++ "Submenu ends:" ++ Tab ++ CloseSM ++ CR
Temp ++= "Max. Nesting:" ++ Tab ++ MaxNest ++ CR ++ "'cd' Commands:" ++ Tab ++ cd ++ CR
Temp ++= "Separators:" ++ Tab++ Separator ++ CR ++ "Target paths:" ++ Tab ++ Target
messagebox("ok info", Temp, "UserMenuAnalyzer Script")
if(Sec.case("lower") == "user")
.UserMenuAnalyzer("DirMenu")
The script execution gives the message box similar to this one:
Three first numbers are of greatest interest. The very first is a total number of [user] menu items that can not exceed 200. If your number is close to it, you should "clean up" your menu or reorganise it.
Second and third numbers must be equal. They show hao many submenus are opened, and closed, respectively.
Remaining numbers are mainly for the curiousity or reference purposes.
After pressing OK the similar information about the [DirMenu] is provided.
|
Main Page |
|
Total Commander |
|
PowerPro |
|
|