                                           *** DISABLE WRAP TEXT FOR BETTER VIEWING OF THIS FILE ***


<--[ APPLYING THE MENU FILE ]-----------------------------------------------------------------------> 

 Copy TCExtMenu.mnu file into your Totals Commander's [Language] folder (optional but  recommended).
 Click on the menu "Configuration" then select "Options", point to the "Language" tab and then click
 on the >> button ("Main menu file:" field area) to browse for the location of the .mnu file.  Click
 the "Apply" button and restart Total Commander (latter action is optional but also recommended). 
 
 You have now applied the extended menus! Every  possible function of TotalCmd is now shown on  your
 menus in meaningful organization. Most commands under the "View" menu are repeated individually  by
 TotalCmd for the left, right and active (either right or left) file panels. For simplicity  reasons
 this menu file  is not repeating  commands with the  same function that  apply individually on  the
 right and left panels. That doesn't mean that  those functions are missing. You just have to  first
 activate either  of the  two panels  and then  point to  the "View"  menu to  select the  desirable
 command. 

 There are just a few cases where you'll see a command being duplicated (deliberately), just because
 those commands  can "fit" into more than one  category and more importantly, they help you be  more
 productive.    

 Note: The following keyboard shortcuts are not  part of the default configuration of TotalCmd.  The
 fact that  this menu  file displays  them does  not necessarily  mean that  they are active on your
 application. Configure according to your needs.
 
 Since TCv7.50 the Windows key can be configured for user needs hence it can be assigned to internal
 commands. This has also a new section in the INI file for backwards compatibility (ShortcutsWin). 
 
 [Shortcuts]
   CA+C=cm_CopyFullNamesToClip
   C+H=cm_SwitchHidSys
   CA+X=cm_CopyNamesToClip
   C+S=cm_ShowOnlySelected
   CA+TAB=cm_SyncChangeDir
   A+P=cm_editpath
   A+E=cm_NextCommand
   CA+/=cm_SaveSelection
   A+Z=cm_MatchSrc
   A+A=cm_GoToFirstFile
   C+1=cm_srcactivatetab1
   C+2=cm_srcactivatetab2
   C+3=cm_srcactivatetab3
   C+4=cm_srcactivatetab4
   C+5=cm_srcactivatetab5
   C+6=cm_srcactivatetab6
   C+7=cm_srcactivatetab7
   C+8=cm_srcactivatetab8
   C+9=cm_srcactivatetab9
   A+1=cm_trgactivatetab1
   A+2=cm_trgactivatetab2
   A+3=cm_trgactivatetab3
   A+4=cm_trgactivatetab4
   A+5=cm_trgactivatetab5
   A+6=cm_trgactivatetab6
   A+7=cm_trgactivatetab7
   A+8=cm_trgactivatetab8
   A+9=cm_trgactivatetab9
   AS+F2=cm_CompareDirsWithSubdirs
   A+/=cm_GoToLockedDir
   A+R=cm_ReloadSelThumbs
   A+Q=cm_srcnextcustomview
   CA+A=cm_CopyFileDetailsToClip
   A+F6=cm_RenameSingleFile
   A+S=cm_SelectCurrentPath
   C+I=cm_SwitchIgnoreList
   A+T=cm_SwitchSeparateTree
   CS+Q=cm_SrcQuickNoPlugins
   A+PGDN=cm_GotoNextSelected
   A+PGUP=cm_GotoPrevSelected
   CA+U=cm_CopyNetNamesToClip

[ShortcutsWin]
   P=cm_SrcPathFocus

 (extract from wincmd.ini file)

 Remark: You can easily copy the above shortcuts  and then paste them in your wincmd.ini file  under
 the  [Shortcuts] section  in order  to support   the displayed  shortcuts on  this menu  file.  The
 [Shortcuts] section  may not  be visible  if you  haven't specified  one before.  In that case type
 "[Shortcuts]" (without the double quotations) at the end of your ini file and then paste the  above
 entries. Don't forget to remove the ";" comment  character. You should be also careful not to  have
 any shortcut duplicates!  
 
 Note also that newly introduced features of  TC v7.0 allow redirection of INI settings.  If you are
 using redirection, apply your tweaks accordingly. 
 
 JUST A REMINDER THAT SHORTCUTS ON MY MENU FILE WITH PARENTHESIS ARE TO BE CONSIDERED AS ONE KEY AND
 IN SQUARE BRACHETS AS AN ADDITIONAL COMBINATION WHICH WILL GIVE YOU A RELATIVE FUNCTION TO THE MAIN
 ONE. 
 
 e.g. Ctrl+[Shift]+(Gray +)
              |        |
	      |        |---> One key (used to separate groups and combination symbols)
	      |
	      |---> Optional (if combined, will give you another function but always related)

 AS ALWAYS, THE CHARACTER "/" IS USED INSTEAD OF THE WORD "OR" AND "+" INSTEAD OF "AND" EXCEPT THOSE
 CASES WHERE THE AFOREMENTIONED CHARACTERS REPRESENT KEYS. 
 	      
	      
 
<--[ MODIFYING THE MENU FILE ]---------------------------------------------------------------------->
 
 { THE "SYSTEM" MENU }______________________________________________________________________________
 
 The following command can be used to access the "My Documents" folder:  
 		
   <cd ::{450D8FBA-AD25-11D0-98A8-0800361B1103}> 
 
 You can actually create a user menu entry or just add the command in Start -> Change Start Menu and
 then  use the  corresponding internal command   that your new  entry points  to.  You can also edit
 <totalcmd.inc>  to modify  the  internal  command's name  to  fit  your needs  (or  to  expand  the
 available entries) but since, in my case, I'm  using just numbers for this menu file I  didn't have
 to follow that action. The 3rd menu option on the following menu opens the "My Documents" folder by  
 following the aforementioned technique. Notice that I'm using the 1st user menu entry which is 701. 
 By adding the "cd" command in my Start Menu, my <totalcmd.ini> looks like this:
 
   [user]
   menu1=My Documents
   cmd1=cd ::{450D8FBA-AD25-11D0-98A8-0800361B1103}
 
 The same effect can be achieved from the <User Menu> of this menu file which uses the 7??  internal
 commands. That menu  is there for  your aid only  and from its  form you can  tell that it does not
 correspond to my settings and it is just a template for further adjustments.   
 
 Some other useful commands are the following:
 
   Scheduled Tasks:     cd ::{D6277990-4C6A-11CF-8D87-00AA0060F5BF}
   Network Connections: cd ::{7007ACC7-3202-11D1-AAD2-00805FC1270E}
 
 
 { THE "USER MENU" MENU }___________________________________________________________________________
 
 This  menu is  just a  template and  needs to  be edited  according to  your needs  and/or  current
 configurations. Its  presence though  is harmless,  yet non-functional  if you  haven't apply "user
 menus" before.

 Please, modify  this menu  section according to your  needs and/or "Start Menu" configurations. You
 should also edit  the <totalcmd.inc> file located  in Total Commander's root directory if you  have
 more than  10 available  entries in  your Start  Menu or  if you  need to  modify the  names of the
 individual internal commands.

 As you can see by viewing the menu file with your editor, those internal commands are numbered  701
 -710. But this  menu section is there, as I  mentioned before, as a template for you; it is  just a
 visible sample, if you  like. The actual range  of those commands is  from 701 up to  and including
 899. Respectively your  <totalcmd.inc> file within  your TotalCmd folder  holds only the  first ten
 commands so this file also needs to be modified in order to extend them by just continuing the list. 
 So, your next entry could be: 
 
   cm_usermenu11=711  

 Bear in mind that the  name of the internal command  can also be configured. So,  the above command
 can look like: 
 
   cm_MyDemoMovie=711
 
 Just make sure that you have unique names in your .inc file to avoid any problems. 
 
 So, this is wrong:
 
   cm_MyDemoMovie=711
   cm_MyDemoMovie=712
 
 ...while this is right:
 
   cm_MyDemoMovieOne=711
   cm_MyDemoMovieTwo=712

 Now, say  you have  configured a  "Start Menu"  entry (refer  to "Change  start menu" dialog box in
 TotalCmd's  help file),  so that  you can  playback a  short video  of your  son's first  birthday.
 Playback can be performed by selecting the newly created entry under your "Start" menu but to  make
 things more complete say  you have also defined  a keyboard shortcut to  make your life easier  and
 playback the video as fast as possible. Let's assume you used Ctrl+Alt+F1 as your KBD shortcut  and
 your entry is numbered 21  (either automatically or manually) and  you have named the new  entry as
 "Ben One Year  Old". Your .ini  file (usually located  in your Windows  directory) will hold  those
 information and look as follows:   
  
   menu21=Ben One Year Old
   cmd21=C:\Program Files\Media Player Classic\mplayerc.exe 
   param21=D:\MyMovies\ben1_v1.mpg
 
 Now, you can immediately use the newly created  internal command (721), edit your menu file to  add
 it with a corresponding title and an indication of the KBD shortcut in use. I won't show you how to
 do it since we'll examine a more complicated  case where you will actually need to change  the name
 of the internal command as well. Total Commander  has a predefined name scheme for the "user  menu"
 internal commands so by default your  newly created command will automatically be:  cm_usermenu721.
 You would like to  rename it to ease  yourself in the future  say to cm_MyBenVidOne (always  unique
 remember). You can also  use text with the  ";" prefix symbol to  type in some comments  as a short
 description for your commands.  
 
 So your new entry in your .inc file will look like:
 
   cm_MyBenVidOne=721;Plays a video of my son on his first birthday 

 So, now you can edit your menu file to look like this:
  
   TCExtMenu.mnu
   ...
   POPUP "&User Menu"
      MENUITEM "Play a video of &Ben on his first birthday\tCtrl+Alt+F1", cm_MyBenVidOne 
   END_POPUP                                                               (or just 721) 

 And your <wincmd.ini> should hold the newly assigned KBD shortcut:
 
   [Shortcuts]
   C+A+F1=cm_MyBenVidOne
 
 The character  "\t"  will  be converted   to a  tabstop  to  display your   shortcut  while the "&"
 character will underline  the next  symbol (in this case  "B"  from the name "Ben"), to  indicate a
 menu shortcut. Please,  also use this   character in a  unique manner  for  all your entries   in a
 specific pull-down  menu. In the menu hierarchy the  entry "User Menu" is higher so in the  current
 situation  you  can  either  use  your  own  shortcut  (Ctrl+Alt+F1)  or  alternatively  Alt+U  (to
 expand the "User Menu" pull-down menu) and then  press the "B" button to  select and  execute   the
 entry:  "Play a video of Ben on his first birthday     Ctrl+Alt+F1".
 
 On my menu file I try to  use the "&" character as much as I can.  When the alphabet runs out and I 
 have no  possible options I simply let those  entries "unshortcuted" if you like. I  do not replace 
 them with regular  key combinations since  those cases are frequent and  it's a good  techniques to 
 reserve normal shortcuts for your frequently used commands that need to be memorised.   

 The use of the Alt key to  access menu entries can be sometimes problematic  if you have previously
 assigned  those shortcuts  to a command.  A trick you  can  do is  to press Alt  and then leave the
 button to activate the menus  and then  press the desirable  symbol. If you need to  access an "Alt
 -related" shortcut which  is not menu-related just press the  combination simultaneously. Of course
 you  can also activate the menus by pressing F10 and then the desirable symbol! A  vivid separation 
 between different Alt-key behaviors! ;-) 

 TC version 7 introduces a "Special handling of Alt + Letter user-defined hotkeys: catch them before 
 they can get to the menu handler,  so Alt+S doesn't invoke both  the internal command and  open the 
 Starter menu".
 
 
 { THE "CUSTOM COMMANDS" MENU }_____________________________________________________________________

 This menu file includes a right-aligned  "Custom Commands" menu that includes the all commands that 
 can accept parameters but none have been specified since this is strictly user specific. No entries
 within this  menu section will  work if you haven't previously defined  e.g. a file for loading. In
 order for these menu entries to work, you will have to edit this menu file.  Previously saved files 
 are necessary for the  majority of  commands with parameters,  i.e. the parameter is the saved file 
 itself.  
 
 Refer also to section COMMANDS WITH PARAMETERS below. 

 
 { OTHER CUSTOMIZABLE SECTIONS }____________________________________________________________________
 
 cm_GotoDriveX 
 -------------
 Where X can be any drive letter from A to Z. The corresponding range of commands is 2061 - 2086.
 Can be used to either make selectable options on your menus or assign keyboard shortcuts for direct
 drive switching. 
 This menu file makes use of just the following as a template: A-F and Z
  
 cm_XXXactivatetab
 -----------------
 Where XXX can be for: Source panel: "src"   - range of commands 5001-5099
                       Target panel: "trg"   - range of commands 5101-5199
                         Left panel: "left"  - range of commands 5201-5299
                        Right panel: "right" - range of commands 5301-5399 
 Can be used to either make selectable options on your menus or assign keyboard shortcuts for direct
 folder tab switching.  
 This menu file makes use of just 9 source and 9 target commands. No left/right commands are in use.
 
 cm_XXXCustomView
 ----------------
 Where XXX can be for: Source panel: "src"   - range of commands 271-300
                       Target panel: "trg"   - range of commands 421-450
                         Left panel: "left"  - range of commands  71-100
                        Right panel: "right" - range of commands 171-200
 Can be used to either make selectable options on your menus or assign keyboard shortcuts for direct
 custom column viewing.  
 This menu file makes use of just the cm_SrcCustomViewMenu=270 command for a source custom view menu
 which includes all available custom columns, i.e. it's not column specific directly. 
 
 cm_SrcSortByColXX, cm_TrgSortByColXX, cm_LeftSortByColXX, cm_RightSortByColXX
 -----------------------------------------------------------------------------
 Where XX can be a value between 1 up to and including 99. Single digit up to 9.
 These commands refer to columns (custom or not), and can be expanded (by default,  for  each  group
 you get 1-10 and 99 as samples). My supplied menu file used just seven of those commands (source  &
 target groups) for  typical everyday use. You can can modify  them based on your needs and  working 
 style or if you extensively use custom columns.


<--[ COMMANDS WITH PARAMETERS ]--------------------------------------------------------------------->

 Commands that can accept parameters can be integrated to other features of Total Commander like for
 example the button bar, the directory hotlist, as parameters inside the Start Menu and so on. 
 Detailed explanation can be found within TC's help file hence excluded in this readme file.  
 A "Custom Commands" menu had been added initially for this menu file  which  was  dropped  later on
 since commands with parameters cannot be used in the menus. The reason is that  the  menu  commands
 are converted to numbers and stored in the menus, a conversion which cannot store strings hence the
 present limitation.
 A section inside  totalcmd.inc has been added in version 7 of TC with those commands listed.  
 i.e.
 [________Commands with parameters_________]=0
 
 Aside the above dedicated section, some additional commands  could be applicable in accepting argu- 
 ments. As an example the following two commands under 'Custom column views'  are offered for scrip- 
 ting; set  lparam=custom columns view, 1 based.  Commands accept a  numeric parameter in the button 
 bar or start menu:
 
 cm_LeftSwitchToThisCustomView=5510;For scripting, lparam=view
 cm_RightSwitchToThisCustomView=5511;For scripting, lparam=view
 
 
<--[ USER-DEFINED COMMANDS ]------------------------------------------------------------------------>

 New to v7 of TC is also the ability to define your custom commands in the form of em_xyz.  The file 
 that holds this information is  usercmd.ini in the same directory as wincmd.ini,  with entries like 
 this:  
 [em_notepad] cmd=notepad.exe param=%P%N path=c:\windows iconic=0 
                          (same as in .bar file, but not numbered)
                          
 em_xyz commands can be used in the button bar, main menu, start menu, directory menu and for hotkeys.
 em_xyz commands can be read from wcmd_lng.ini  (where wcmd_lng is the base name of the selected mnu 
 file) if not found in usercmd.ini. This allows custom mnu files with user-defined commands.

 Sounds complicated?  Don't be alarmed!  You can skip the manual modification of usercmd.ini and the
 corresponding  mnu  related file  since you can  do the very same  thing via buttons located in the 
 internal command selection dialog (button bar, start menu, hotkey configuration). Pure and simple!
 
 Note that the em_xyz commands do NOT take any parameters like the cm_xyz commands do. They have to
 be built into the main menu and used for shortcuts,  where no parameters are possible.  But how do 
 they support  parameters then?  The parameters are  stored with the  command itself,  they are not 
 passed to the command! 
 
 Extended commands also support internal commands. For example, em_editor calls cm_edit (with user-
 assigned icon).
 
 User-defined commands may also contain numeric values instead of the equivalent cm_xyz commands. 
 
 Sample from past menu:     
 
 POPUP "&User Menu"
  MENUITEM "Start Menu Command # 0&1", 701 
  MENUITEM "Start Menu Command # 0&2", 702
  MENUITEM "Start Menu Command # 0&3", 703
  MENUITEM "Start Menu Command # 0&4", 704
  MENUITEM SEPARATOR
  MENUITEM "Start Menu Command # 0&5 (N/A)", 705
  MENUITEM "Start Menu Command # 0&6 (N/A)", 706
  MENUITEM "Start Menu Command # 0&7 (N/A)", 707
  MENUITEM "Start Menu Command # 0&8 (N/A)", 708
  MENUITEM "Start Menu Command # 0&9 (N/A)", 709
  MENUITEM "Start Menu Command # 1&0 (N/A)", 710
END_POPUP

 
<--[ HIDDEN COMMANDS ]------------------------------------------------------------------------------>

At TC v8.51 level the author added a new internal command where deliberately no update to the .inc 
file was planned in listing it.  

OPENLANGUAGEFILE WCMD_xyz.LNG/WCMD_xyz.MNU to open specific LNG/MNU file pair from "language" subdir. 
Leave out parameter for internal language.


<--[ MODIFYING THE LANGUAGE FILE ]------------------------------------------------------------------>
 
 Some default "&" type KBD shortcut of TotalCmd  may not fit your working behavior and you  may need
 them for a very repetitive task of your own.  Being by  default occupied  by TC you are stuck!  Not
 really! You  can actually  modify the  .lng file  to help  you on  this issue  or even to make some
 interface  changes.  A typical  example   is when  using   the Directory  Hotlist   feature of   TC
 (Ctrl+D) where you  cannot assign an entry with the symbol "C" as a shortcut since this shortcut is
 by default used by TC for the entry "Configure". You can overcome this "problem" by  modifying  the
 English language file and removing the association. 

 While modifying the language file  is a  pretty straightforward task and to some extend  similar to
 that of editing a menu file, I will not cover the procedure here for three main reasons:

 1. This menu file does not use any such modification. 
 
 2. Modifying .lng files is not directly related  to menu files (if the language is kept  the same),
 while modifying your .inc file it can be!

 3. I did not  follow that path (i.e.  modifying   the .lng file)  because I don't like the idea  of
 intervening  to Total  Commander's interface.  Main reason  for that  is that  this menu  file   is
 distributed over the internet to many users that either haven't modified their .lng or could have a
 totally  different modification scheme  than one  that could   have been  possibly  supplied  here.
 Furthermore, those   type of   modification can  be divergent  to  the  help file  of TC.  But most
 importantly, the presence (or not) of those modifications are, most of the times, bound to a user's
 working behavior and become a habit which I won't interfere. 

 Of course you can validly argue that modifying a menu file is the exact same thing. And  you'll  be
 correct. At the end  of the day, everything  is down to personal  taste. This menu file  has a more
 additive nature other than that of a modifying one.
 
 Ok, but what is a language file, what do I do with it, and where can I find one?  
 
 A language file is  a script which replaces  the static interface text  of an application and  uses
 some codes bound to each individual text of an application (e.g. a dialog box, an error message,  a
 warning, some interface elements  etc.). When the application  is executed, it uses  those codes to
 call the  necessary text  and build  in this  way the  interface in  the form  of meaningful, human
 -readable form. 

 Advantages of this approach are, for example, that some output data can be fed along with the text,
 the size of an application is smaller since messages are not duplicated but only the call-outs,  as
 an extension of the latter you get faster execution times and finally, you have a template where it
 can we used by others to easily translate  an application on another language without the need  for
 individual compilations for each language.     

 Having installed Total  Commander without any  additional languages you  won't actually be  able to
 locate any   .lng files  anywhere. The  functionality is  build-in and  only an  external .lng  can
 overwrite the  internal one, if certain conditions are meet. 

 If you download a language package from http://www.ghisler.com/languages.htm you'll see two  files.
 One  is  the  menu file   for the   language  you    have downloaded   and the   other one  is  the
 corresponding language  file which  when  a   menu file   is configured  by   a  user within   TC's
 configurations,  the application automatically checks  for the corresponding language file. In this
 way you  don't just  get a  translation for  the menus  but for  the whole application (having just
 translated menus is possible though since the presence of a .lng file is optional).       

 I have supplied with this zip file the "external" version of the English language file in order for
 you to  make any  tunings you  may find  useful. This  is the  original and untouched file to start
 things up.  If you  don't apply  any modifications  you don't  actually need  this file.  If you do
 though, be careful to use the following naming scheme: wcmd_*.lng as this is the form TC expects to
 find. It is also  advisable to copy your  modified version in the  "Language" directory of your  TC
 installation. Only  make changes  if you  know that  you are  going. You  only need to include your
 modified entries within this file  since TC includes all of  them internally and will only  replace
 your custom entries. You won't cause though any  problem if you include all possible entries or  if
 you leave some out. Modifying any special characters is not advisable.
                    
 
<--[ VIEW MODE COMMANDS ]---------------------------------------------------------------------------> 
 
 As of TC  v9.00 and the introduction of the View Modes feature,  Source/Target and  Left/Right panel
 internal commands were added as I replicate below from within the totalcmd.inc file. 
 For the purpose of simplicity and since my menu file is targeted  away from the left/right structure
 focusing rather on the  source/target principle,  I added under the "View" menu a  sample that users 
 can adapt according to individual needs. 

 Relevant extract from totalcmd.inc:    
  [________View modes_________]=0
  cm_ToggleAutoViewModeSwitch=2947;Turn automatic view mode switching on/off
  cm_SrcViewMode0=8500; Source: Default view mode (no colors or icons)
  cm_SrcViewMode1=8501; Source: View mode 1
  cm_SrcViewMode2=8502; (e.g. for tab and background colors)
  cm_SrcViewMode9=8509; etc. until 8749
  cm_TrgViewMode0=8750; Target: Default view mode (no colors or icons)
  cm_TrgViewMode1=8751; Target: View mode 1
  cm_TrgViewMode2=8752; (e.g. for tab and background colors)
  cm_TrgViewMode9=8759; etc. until 8999
  cm_LeftViewMode0=8000; Left: Default view mode (no colors or icons)
  cm_LeftViewMode1=8001; Left: View mode 1
  cm_LeftViewMode2=8002; (e.g. for tab and background colors)
  cm_LeftViewMode9=8009; etc. until 8249
  cm_RightViewMode0=8250; Right: Default view mode (no colors or icons)
  cm_RightViewMode1=8251; Right: View mode 1
  cm_RightViewMode2=8252; (e.g. for tab and background colors)
  cm_RightViewMode9=8259; etc. until 8499
 
 <---------------------------------------------------------------------------------------------------> 
 
 <--[ Renamed and New Commands with Perameter of the Release ]---------------------------------------> 
 
  renamed: 
   old: 
    OPENTABS <filename>=-3;Open tabs from saved .tab file
    APPENDTABS <filename>=-4;Append tabs to existing tabs
   new: 
    OPENTABS <filename>=-3;Open tabs from saved .tab file (supports modifiers L and R)
    APPENDTABS <filename>=-4;Append tabs to existing tabs (supports modifiers L and R)

   old:
    SELECTFILES <*.ext *.ex2>=-11;Select files of specified types
   new:
    SELECTFILES <*.ext *.ex2>=-11;Select files of specified types (supports modifiers D, B, U, L, R, T and S)

   old: 
    SAVEDETAILS <filename>=-23;Save selection with all details to file (supports modifiers A and W)
   new:
    SAVEDETAILS <filename>=-23;Save selection with all details to file (supports modifiers A, W and H)

   newly introduced:
    LOADLIST <filename>=-25;Load complete list (like search result) from file
    ZIPFROMLIST <archive name> <filelist>=-26;Pack files from list (supports parameters -m, -o, -c0-3 and 0-9)
    OPENATTRIBUTES <parameters>=-27;Change Attributes dialog: +f (subfolders), +a/-a +r/-r +h/-h +s/-s +L/+L2 +c +dDate +tTime Plugin_settings
	OPENBARMENU <filename>=-28;Open button bar file as dropdown menu

 <--------------------------------------------------------------------------------------------------->
 
 Last edit: 11/11/2023 
 Latest release of this Extended Menu can be found here:
 Totalcmd.net: http://www.totalcmd.net/plugring/TCExtMenu.html
