possible to add another STARTMENU?
Moderators: Hacker, petermad, Stefan2, white
possible to add another STARTMENU?
STARTMENU is very kind method to add some commands.
when many commands were added, the one STARTMENU cause a little mess.
is it possible to add another STARTMENU?
in other words, i want to define a new menu for example we call that work, and the work munu have the same function as STARTMENU except for different name.
It will be more easy to organize the commands. also the menu space will be used in some way.
when many commands were added, the one STARTMENU cause a little mess.
is it possible to add another STARTMENU?
in other words, i want to define a new menu for example we call that work, and the work munu have the same function as STARTMENU except for different name.
It will be more easy to organize the commands. also the menu space will be used in some way.
- Vochomurka
- Power Member
- Posts: 816
- Joined: 2005-09-14, 22:19 UTC
- Location: Russia
- Contact:
1) You can create submenus of Start menu, then its sub-submenus, etc.
2) Why don't you want to use menus from buttons? There can be as many buttons as needed.
3) Try PowerPro. It allows to create numerous menus and button bars with different options (left, right, middle mouse clicks, colors, pictures, etc).
2) Why don't you want to use menus from buttons? There can be as many buttons as needed.
3) Try PowerPro. It allows to create numerous menus and button bars with different options (left, right, middle mouse clicks, colors, pictures, etc).
Single user license #329241
PowerPro scripts for Total Commander
PowerPro scripts for Total Commander
You can also add a menu directly in the main menu, but for that you need to edit the .mnu file manually, and you need to make user commands (em_commands) for every external program you want to start.
In my Extend Menus (see signature), you can find examples of comprehensive use of this.
In my Extend Menus (see signature), you can find examples of comprehensive use of this.
License #524 (1994)
Danish Total Commander Translator
TC 11.51 32+64bit on Win XP 32bit & Win 7, 8.1 & 10 (22H2) 64bit, 'Everything' 1.5.0.1391a
TC 3.60b4 on Android 6, 13, 14
TC Extended Menus | TC Languagebar | TC Dark Help | PHSM-Calendar
Danish Total Commander Translator
TC 11.51 32+64bit on Win XP 32bit & Win 7, 8.1 & 10 (22H2) 64bit, 'Everything' 1.5.0.1391a
TC 3.60b4 on Android 6, 13, 14
TC Extended Menus | TC Languagebar | TC Dark Help | PHSM-Calendar
i knew that, but no submenus makes operation more easy.Vochomurka wrote:1) You can create submenus of Start menu, then its sub-submenus, etc.
already used, i also want keep the buttons in one line.Vochomurka wrote:2) Why don't you want to use menus from buttons? There can be as many buttons as needed.
Vochomurka wrote:3) Try PowerPro. It allows to create numerous menus and button bars with different options (left, right, middle mouse clicks, colors, pictures, etc).
maybe manually edit the main menu is the one time solution.
also thanks for the advises.
- Balderstrom
- Power Member
- Posts: 2148
- Joined: 2005-10-11, 10:10 UTC
You wouldn't need to do that Peter, one user command would suffice.petermad wrote:You can also add a menu directly in the main menu, but for that you need to edit the .mnu file manually, and you need to make user commands (em_commands) for every external program you want to start.
In my Extend Menus (see signature), you can find examples of comprehensive use of this.
I've actually figured out how to externally call "em_" user commands, including things like "SELECTFILES", and internal cm_ commands by name .
Here's a snippet of the TC_CD() cmd, which as well as changing dirs can select files from the same command.
e.g. TC_CD("C:\Program Files\TotalCMD\TotalCMD.chm")
Which would change TC's Left pane to it's program dir, and select the Help file.
Code: Select all
exist := FileExist(src)
if( src && !inStr( FileExist(src), "D" ) && RegExMatch( src, "^(.*)\\(.*)$", pathOnly ))
src := pathOnly1, srcFile := pathOnly2
if( trg && !inStr( FileExist(trg), "D" ) && RegExMatch( trg, "^(.*)\\(.*)$", pathOnly ))
trg := pathOnly1, trgFile := pathOnly2
if( (srcFile && !FileExist(src)) || (trgFile && !FileExist(trg)) )
{
MsgBox 4, % "No Such File", % "One of the files doesn't exist.`nStill open the parent folders?"
ifMsgBox, NO
return
}
params := ( srcTrg ? "S" : "" )
params .= ( newTab ? "T" : "" )
if( params )
params = "%params%"
cdpath := src "`r" trg
TC_SendCommand__WM( "CD", cdpath, params, wID )
if( !srcFile && !trgFile )
return
ControlGetFocus, focus1, A ; SourceFocus PANEL
TC_CMD("cm_FocusLeft", "", wID, wControl, allowMin )
ControlGetFocus, focus2, A
stopFocus := "cm_FocusLeft"
if( focus2 <> focus1 )
{
stopFocus := ""
if( inStr( params, "S" ) )
fileTMP := trgFile, trgFile := srcFile, srcFile := fileTMP
}
stopFocus := "cm_FocusLeft"
if( focus2 <> focus1 )
{
stopFocus := ""
if( inStr( params, "S" ) )
fileTMP := trgFile, trgFile := srcFile, srcFile := fileTMP
}
if( srcFile )
{
aSelect = em_SELECTFILES "%srcFile%"
TC_EMC( aSelect, wID, wControl, allowMin )
TC_CMD("cm_GotoNextSelected", "", wID, wControl, allowMin )
if( !keepSelect )
TC_CMD("cm_ClearAll", "", wID, wControl, allowMin )
}
TC_CMD("cm_FocusRight", "", wID, wControl, allowMin )
Which I can then call with any arg I want...em_SELECTFILES
Command: SELECTFILES
Also, send commands to TC when it's in the background.
I'll wikify it and clean up my last wiki post -- likely towards the end of the week though.
The next step is to get it so it will accept msg's from a non-persistent script, so it can be loaded once, then the user can interface with it simply without needing to understand a scripting language.
2Balderstrom
But TC doesn't support args in the .mnu files not for em_ neither cm_ commands, and commands like APPENDTABS or SELECTFILES are not supported at all - how will your script come around that?Which I can then call with any arg I want..
License #524 (1994)
Danish Total Commander Translator
TC 11.51 32+64bit on Win XP 32bit & Win 7, 8.1 & 10 (22H2) 64bit, 'Everything' 1.5.0.1391a
TC 3.60b4 on Android 6, 13, 14
TC Extended Menus | TC Languagebar | TC Dark Help | PHSM-Calendar
Danish Total Commander Translator
TC 11.51 32+64bit on Win XP 32bit & Win 7, 8.1 & 10 (22H2) 64bit, 'Everything' 1.5.0.1391a
TC 3.60b4 on Android 6, 13, 14
TC Extended Menus | TC Languagebar | TC Dark Help | PHSM-Calendar
- Balderstrom
- Power Member
- Posts: 2148
- Joined: 2005-10-11, 10:10 UTC
Basically, you enter something like:
Command: %AHKSCRIPT% em_SELECTFILES someThing Here.
Script receives command, parses it into what TC can understand, and tells TC to execute it.
It's already working in a persistent script. I just don't have a interim layer setup yet so the end-user can use a non-persistent script, thus limiting how much the end-user will need to interface with the underpinnings.
I have a single, em_CmdPromptK user-definition:
Command: cmd.exe /k
And am able to make that single user-command do anything that you would be able to do if you had to define a given user-command for each and every cmd.exe "somebatch.cmd" you want to execute currently.
Or even have it do inline-code, etc..
Although, considering I have been able to get this working, it makes me wonder WHY we have to use an interim layer to get this functionality: It should be possible directly from TC.
Here's the internal definition for ChangeDir:
If the string passed is a file's full path, it additionally selects that file after changing directory.
Also if you give it a few more args, you can tell it to use "Source/Target" instead of Left/Right, or the newTab part, set that to 1 and the path opens in a new tab. As well the "allowMin" flag will enable sending commands to TC when it is minimized or not currently in the foreground.
Command: %AHKSCRIPT% em_SELECTFILES someThing Here.
Script receives command, parses it into what TC can understand, and tells TC to execute it.
It's already working in a persistent script. I just don't have a interim layer setup yet so the end-user can use a non-persistent script, thus limiting how much the end-user will need to interface with the underpinnings.
I have a single, em_CmdPromptK user-definition:
Command: cmd.exe /k
And am able to make that single user-command do anything that you would be able to do if you had to define a given user-command for each and every cmd.exe "somebatch.cmd" you want to execute currently.
Or even have it do inline-code, etc..
Although, considering I have been able to get this working, it makes me wonder WHY we have to use an interim layer to get this functionality: It should be possible directly from TC.
Here's the internal definition for ChangeDir:
If you only pass it one (first) arg, it changes path on the left side; two args: path on left and right.TC_CD( src="", trg="", newTab="", srcTrg="", keepSelect="", wID="", wControl="", allowMin="" )
If the string passed is a file's full path, it additionally selects that file after changing directory.
Also if you give it a few more args, you can tell it to use "Source/Target" instead of Left/Right, or the newTab part, set that to 1 and the path opens in a new tab. As well the "allowMin" flag will enable sending commands to TC when it is minimized or not currently in the foreground.
Reiterating the Need for Additional STARTMENU Customization After 15 Years
It’s remarkable to see this discussion from 15 years ago still resonating today. While workarounds like submenus, button bars, and external tools (e.g., PowerPro) remain helpful, the core request for native support of multiple named menus (e.g., "Work," "Projects") persists. Over the years, workflows have grown even more complex, making streamlined command organization critical.
Manual edits to .mnu files or reliance on scripts still feel cumbersome compared to an integrated solution. Many long-term users, myself included, continue to hope for a feature allowing custom menus akin to STARTMENU.
@Ghisler (Christian Ghisler), after all this time, has there been renewed consideration for such functionality? Even a minimalist implementation would address a longstanding usability gap.
Thank you for TC’s enduring evolution—it’s why we’re still here advocating for improvements!
Manual edits to .mnu files or reliance on scripts still feel cumbersome compared to an integrated solution. Many long-term users, myself included, continue to hope for a feature allowing custom menus akin to STARTMENU.
@Ghisler (Christian Ghisler), after all this time, has there been renewed consideration for such functionality? Even a minimalist implementation would address a longstanding usability gap.
Thank you for TC’s enduring evolution—it’s why we’re still here advocating for improvements!
#359839
- ghisler(Author)
- Site Admin
- Posts: 50383
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Re: possible to add another STARTMENU?
No, the recommendation is to create submenus in the STARTMENU.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com