Add description of feature to man/help
[midnight-commander.git] / doc / man / mc.1.in
blob7e990f8a5574430c5405a2c04af9dff2858572c3
1 .\"TOPICS "Topics:"
2 .TH MC 1 "%DATE_OF_MAN_PAGE%" "MC Version %DISTR_VERSION%" "GNU Midnight Commander"
3 .\"SKIP_SECTION"
4 .SH "NAME"
5 mc \- Visual shell for Unix\-like systems.
6 .\"SKIP_SECTION"
7 .SH "USAGE"
8 .B mc
9 [\-abcCdfhPstuUVx] [\-l log] [dir1 [dir2]] [\-e [file] ...] [\-v file]
10 .\"NODE "DESCRIPTION"
11 .SH "DESCRIPTION"
12 GNU Midnight Commander is a directory browser/file manager for
13 Unix\-like operating systems.
14 .\"NODE "OPTIONS"
15 .\"DONT_SPLIT"
16 .SH "OPTIONS"
17 .TP
18 .I \-a, \-\-stickchars
19 Disable usage of graphic characters for line drawing.
20 .TP
21 .I \-b, \-\-nocolor
22 Force black and white display.
23 .TP
24 .I \-c, \-\-color
25 Force color mode, please check the section
26 .\"LINK2"
27 Colors
28 .\"Colors"
29 for more information.
30 .TP
31 .I \-C arg, \-\-colors=arg
32 Specify a different color set in the command line.  The format of arg is
33 documented in the
34 .\"LINK2"
35 Colors
36 .\"Colors"
37 section.
38 .TP
39 .I \-S arg, \-\-skin=arg
40 Specify a name of skin in the command line. Technology of skins is
41 documented in the
42 .\"LINK2"
43 Skins
44 .\"Skins"
45 section.
46 .TP
47 .I \-d, \-\-nomouse
48 Disable mouse support.
49 .TP
50 .I \-e [file], \-\-edit[=file]
51 Start the internal editor.  If the file is specified, open it on
52 startup.  See also
53 .BR "mcedit (1)" .
54 .TP
55 .I \-f, \-\-datadir
56 Display the compiled\-in search paths for Midnight Commander files.
57 .TP
58 .I \-F, \-\-datadir\-info
59 Display extended info about compiled\-in paths for
60 Midnight Commander.
61 .TP
62 .I \-\-configure\-options
63 Display configure options.
64 .TP
65 .I \-k, \-\-resetsoft
66 Reset softkeys to their default from the termcap/terminfo
67 database. Only useful on HP terminals when the function keys don't work.
68 .TP
69 .I \-K file, \-\-keymap=file
70 Specify a name of keymap file in the command line.
71 .TP
72 .I \-\-nokeymap
73 Don't load key bindings from any file, use default hardcoded keys.
74 .TP
75 .I \-l file, \-\-ftplog=file
76 Save the ftpfs dialog with the server in file.
77 .TP
78 .I \-D N, \-\-debuglevel=N
79 Save the debug level for SMB VFS. N is in 0\-10 range.
80 .TP
81 .I \-P file, \-\-printwd=file
82 Print the last working directory to the specified file.  This option is
83 not meant to be used directly.  Instead, it's used from a special shell
84 script that automatically changes the current directory of the shell to
85 the last directory the Midnight Commander was in.  Source the file
86 .B %prefix%/share/mc/bin/mc.sh
87 (bash and zsh users) or
88 .B %prefix%/share/mc/bin/mc.csh
89 (tcsh users) respectively to define
90 .B mc
91 as an alias to the appropriate shell script.
92 .TP
93 .I \-s, \-\-slow
94 Set alternative mode drawing of frameworks.
95 If the section [Lines] is not filled, the symbol for the pseudographics
96 frame is a space, otherwise the frame characters are taken from follow params.
98 .B You can redefine the following variables:
99 .TP
100 .B lefttop
101 left\-top corner
103 .B righttop
104 right\-top corner
106 .B centertop
107 center\-top cross
109 .B centerbottom
110 center\-bottom cross
112 .B leftbottom
113 left\-bottom corner
115 .B rightbottom
116 right\-bottom corner
118 .B leftmiddle
119 left\-middle cross
121 .B rightmiddle
122 right\-middle cross
124 .B centermiddle
125 center cross
127 .B horiz
128 default horizontal line
130 .B vert
131 default vertical line
133 .B thinhoriz
134 thin horizontal line
136 .B thinvert
137 thin vertical line
139 .I \-t, \-\-termcap
140 Used only if the code was compiled with Slang and terminfo: it makes
141 the Midnight Commander use the value of the
142 .B TERMCAP
143 variable for the terminal information instead of the information on
144 the system wide terminal database
146 .I \-u, \-\-nosubshell
147 Disable use of the concurrent shell (only makes sense if the Midnight
148 Commander has been built with concurrent shell support).
150 .I \-U, \-\-subshell
151 Enable use of the concurrent shell support (only makes sense if the
152 Midnight Commander was built with the subshell support set as an
153 optional feature).
155 .I \-v file, \-\-view=file
156 Start the internal viewer to view the specified file.  See also
157 .BR "mcview (1)" .
159 .I \-V, \-\-version
160 Display the version of the program.
162 .I \-x, \-\-xterm
163 Force xterm mode.  Used when running on xterm\-capable terminals (two
164 screen modes, and able to send mouse escape sequences).
166 .I \-X, \-\-no\-x11
167 Do not use X11 to get the state of modifiers Alt, Ctrl, Shift
169 .I \-g, \-\-oldmouse
170 Force a "normal tracking" mouse mode. Used when running on
171 xterm\-capable terminals (tmux/screen).
173 If specified, the first path name is the directory to show in the
174 selected panel; the second path name is the directory to be shown in
175 the other panel.
176 .\"NODE "Overview"
177 .SH "Overview"
178 The screen of the Midnight Commander is divided into four parts.
179 Almost all of the screen space is taken up by two directory panels.
180 By default, the second line from the bottom of the screen is the
181 shell command line, and the bottom line shows the function key labels.
182 The topmost line is the
183 .\"LINK2"
184 menu bar line\&.
185 .\"Menu Bar"
186 The menu bar line may not be visible, but appears if you click the
187 topmost line with the mouse or press the F9 key.
189 The Midnight Commander provides a view of two directories at the same
190 time. One of the panels is the current panel (a selection bar is in
191 the current panel). Almost all operations take place on the current
192 panel. Some file operations like Rename and Copy by default use the
193 directory of the unselected panel as a destination (don't worry, they
194 always ask you for confirmation first). For more information, see the
195 sections on the
196 .\"LINK2"
197 Directory Panels\&,
198 .\"Directory Panels"
200 .\"LINK2"
201 Left and Right Menus
202 .\"Left and Right Menus"
203 and the
204 .\"LINK2"
205 File Menu\&.
206 .\"File Menu"
208 You can execute system commands from the Midnight Commander by simply
209 typing them. Everything you type will appear on the shell command line,
210 and when you press Enter the Midnight Commander will execute the
211 command line you typed; read the
212 .\"LINK2"
213 Shell Command Line
214 .\"Shell Command Line"
216 .\"LINK2"
217 Input Line Keys
218 .\"Input Line Keys"
219 sections to learn more about the command line.
220 .\"NODE "Mouse Support"
221 .SH "Mouse Support"
222 The Midnight Commander comes with mouse support.  It is activated
223 whenever you are running on an
224 .B xterm(1)
225 terminal (it even works if you take a telnet, ssh or rlogin connection to
226 another machine from the xterm) or if you are running on a Linux
227 console and have the
228 .B gpm
229 mouse server running.
231 When you left click on a file in the directory panels, that file is
232 selected; if you click with the right button, the file is marked (or
233 unmarked, depending on the previous state).
235 Double\-clicking on a file will try to execute the command if it is
236 an executable program; and if the
237 .\"LINK2"
238 extension file
239 .\"Extension File Edit"
240 has a program specified for the file's extension, the specified
241 program is executed.
243 Also, it is possible to execute the commands assigned to the function
244 key labels by clicking on them.
246 The default auto repeat rate for the mouse buttons is 400
247 milliseconds. This may be changed to other values by editing the
248 .\"LINK2"
249 \&~/.config/mc/ini
250 .\"Save Setup"
251 file and changing the
252 .I mouse_repeat_rate
253 parameter.
255 If you are running the Midnight Commander with the mouse support, you
256 can get the default mouse behavior (cutting and pasting text) by holding
257 down the Shift key.
258 .SH ""
259 .\"NODE "Keys"
260 .SH "Keys"
261 Some commands in the Midnight Commander involve the use of the
262 .I Control
263 (sometimes labeled CTRL or CTL) and the
264 .I Meta
265 (sometimes labeled ALT or even Compose) keys. In this manual we will
266 use the following abbreviations:
268 .B C\-<chr>
269 means hold the Control key while typing the character <chr>.
270 Thus C\-f would be: hold the Control key and type f.
272 .B Alt\-<chr>
273 means hold the Meta or Alt key down while typing <chr>.
274 If there is no Meta or Alt key, type
275 .IR ESC ,
276 release it, then type the character <chr>.
278 .B S\-<chr>
279 means hold the Shift key down while typing <chr>.
281 All input lines in the Midnight Commander use an approximation to
282 the GNU Emacs editor's key bindings (default).
284 You may redefine key bindings. See
285 .\"LINK2"
286 .I redefine hotkey bindings
287 .\"Keys_redefine"
289 for more info. All other key bindings (described in this manual) relative
290 to default behavior.
293 There are many sections which tell about the keys. The following are
294 the most important.
297 .\"LINK2"
298 File Menu
299 .\"File Menu"
300 section documents the keyboard shortcuts for the commands appearing in
301 the File menu. This section includes the function keys. Most of these
302 commands perform some action, usually on the selected file or the
303 tagged files.
306 .\"LINK2"
307 Directory Panels
308 .\"Directory Panels"
309 section documents the keys which select a file or tag files as a
310 target for a later action (the action is usually one from the file
311 menu).
314 .\"LINK2"
315 Shell Command Line
316 .\"Shell Command Line"
317 section list the keys which are used for entering and editing command
318 lines. Most of these copy file names and such from the directory
319 panels to the command line (to avoid excessive typing) or access the
320 command line history.
322 .\"LINK2"
323 Input Line Keys
324 .\"Input Line Keys"
325 are used for editing input lines. This means both the command line and
326 the input lines in the query dialogs.
328 .\"NODE "  Keys_redefine"
329 .SH "  Redefine hotkey bindings"
330 Hotkey bindings may be read from external file (keymap\-file).
331 Initially, Mignight Commander creates key bindings using keymap defined
332 in the source code. Then, two files
333 .B %prefix%/share/mc/mc.keymap
335 .B %sysconfdir%/mc/mc.keymap
336 are loaded always, sequentially reassigned key bindings defined earlier.
337 User\-defined keymap\-file is searched on the following algorithm (to the first one found):
340 1) command line option
341 .B \-K \<keymap\>
343 .B \-\-keymap=\<keymap\>
345 2) Environment variable
346 .B MC_KEYMAP
348 3) Parameter
349 .B keymap
350 in section
351 .B [Midnight\-Commander]
352 of config file.
354 4) File
355 .B ~/.config/mc/mc.keymap
358 Command line option, environment variable and parameter in config file may
359 contain the absolute path to the keymap\-file (with the extension \.keymap
360 or without it). Search of keymap\-file will occur in (to the first one found):
364 .B ~/.config/mc
367 .B %sysconfdir%/mc/
370 .B %prefix%/share/mc/
372 .\"NODE "  Miscellaneous Keys"
373 .SH "  Miscellaneous Keys"
374 Here are some keys which don't fall into any of the other categories:
376 .B Enter
377 if there is some text in the command line (the one at the bottom of
378 the panels), then that command is executed. If there is no text in the
379 command line then if the selection bar is over a directory the
380 Midnight Commander does a
381 .B chdir(2)
382 to the selected directory and reloads the information on the panel;
383 if the selection is an executable file then it is executed. Finally,
384 if the extension of the selected file name matches one of the
385 extensions in the
386 .\"LINK2"
387 extensions file
388 .\"Extension File Edit"
389 then the corresponding command is executed.
391 .B C\-l
392 repaint all the information in the Midnight Commander.
394 .B C\-x c
395 run the
396 .\"LINK2"
397 Chmod
398 .\"Chmod"
399 command on a file or on the tagged files.
401 .B C\-x o
402 run the
403 .\"LINK2"
404 Chown
405 .\"Chown"
406 command on the current file or on the tagged files.
408 .B C\-x l
409 run the hard link command.
411 .B C\-x s
412 run the absolute symbolic link command.
414 .B C\-x v
415 run the relative symbolic link command. See the
416 .\"LINK2"
417 File Menu
418 .\"File Menu"
419 section for more information about symbolic links.
421 .B C\-x i
422 set the other panel display mode to information.
424 .B C\-x q
425 set the other panel display mode to quick view.
427 .B C\-x !
428 execute the
429 .\"LINK2"
430 External panelize
431 .\"External panelize"
432 command.
434 .B C\-x h
435 run the
436 .\"LINK2"
437 add directory to hotlist
438 .\"Hotlist"
439 command.
441 .B Alt\-!
442 executes the Filtered view command, described in the
443 .\"LINK2"
444 view command\&.
445 .\"Internal File Viewer"
447 .B Alt\-?
448 executes the
449 .\"LINK2"
450 Find file
451 .\"Find File"
452 command.
454 .B Alt\-c
455 pops up the
456 .\"LINK2"
457 quick cd
458 .\"Quick cd"
459 dialog.
461 .B C\-o
462 when the program is being run in the Linux or FreeBSD console or under
463 an xterm, it will show you the output of the previous command.  When ran
464 on the Linux console, the Midnight Commander uses an external program
465 (cons.saver) to handle saving and restoring of information on the
466 screen.
468 When the subshell support is compiled in, you can type C\-o at any time
469 and you will be taken back to the Midnight Commander main screen, to
470 return to your application just type C\-o.  If you have an application
471 suspended by using this trick, you won't be able to execute other
472 programs from the Midnight Commander until you terminate the suspended
473 application.
474 .\"NODE "  Directory Panels"
475 .SH "  Directory Panels"
476 This section lists the keys which operate on the directory panels. If
477 you want to know how to change the appearance of the panels take a
478 look at the section on
479 .\"LINK2"
480 Left and Right Menus\&.
481 .\"Left and Right Menus"
483 .B Tab, C\-i
484 change the current panel. The old other panel becomes the new current
485 panel and the old current panel becomes the new other panel. The
486 selection bar moves from the old current panel to the new current
487 panel.
489 .B Insert, C\-t
490 to tag files you may use the Insert key (the kich1 terminfo sequence).
491 To untag files, just retag a tagged file.
493 .B M\-e
494 to change charset of panel you may use M\-e (Alt\-e).
495 Recoding is made from selected codepage into system codepage. To
496 cancel the recoding you may select "directory up" (..) in active panel.
497 To cancel the charsets in all directories, select "No translation " in
498 the dialog of encodings.
500 .B Alt\-g, Alt\-r, Alt\-j
501 used to select the top file in a panel, the middle file and the bottom one,
502 respectively.
504 .B Alt\-t
505 toggle the current display listing to show the next display listing
506 mode.
507 With this it is possible to quickly switch to brief listing, long
508 listing, user defined listing mode, and back to the default.
510 .B C\-\\\\ (control\-backslash)
511 show the
512 .\"LINK2"
513 directory hotlist
514 .\"Hotlist"
515 and change to the selected directory.
517 .B + \ (plus)
518 this is used to select (tag) a group of files.  The Midnight Commander
519 will prompt for a selection options. When
520 .I Files only
521 checkbox is on, only files will be selected.  If
522 .I Files only
523 is off, as files as directories will be selected.
524 When
525 .I Shell Patterns
526 checkbox is on, the regular expression is much like the filename globbing
527 in the shell (* standing for zero or more characters and ? standing
528 for one character). If
529 .I Shell Patterns
530 is off, then the tagging of files is done with normal regular
531 expressions (see ed (1)). When
532 .I Case sensitive
533 checkbox is on, the selection will be case sensitive characters.
535 .I Case sensitive
536 is off, the case will be ignored.
538 .B \\\\ (backslash)
539 use the "\\" key to unselect a group of files. This is the opposite of
540 the Plus key.
542 .B up\-key, C\-p
543 move the selection bar to the previous entry in the panel.
545 .B down\-key, C\-n
546 move the selection bar to the next entry in the panel.
548 .B home, a1, Alt\-<
549 move the selection bar to the first entry in the panel.
551 .B end, c1, Alt\->
552 move the selection bar to the last entry in the panel.
554 .B next\-page, C\-v
555 move the selection bar one page down.
557 .B prev\-page, Alt\-v
558 move the selection bar one page up.
560 .B Alt\-o
561 If the currently selected file is a directory, load that directory on
562 the other panel and moves the selection to the next file. If the
563 currently selected file is not a directory, load the parent directory
564 on the other panel and moves the selection to the next file.
566 .B Alt\-i
567 make the current directory of the current panel also the current
568 directory of the other panel.  Put the other panel to the listing mode
569 if needed.  If the current panel is panelized, the other panel doesn't
570 become panelized.
572 .B C\-PageUp, C\-PageDown
573 only when supported by the terminal: change to ".." and to the currently
574 selected directory respectively.
576 .B Alt\-y
577 moves to the previous directory in the history, equivalent to clicking
579 .I <
580 with the mouse.
582 .B Alt\-u
583 moves to the next directory in the history, equivalent to clicking the
584 .I >
585 with the mouse.
587 .B Alt\-Shift\-h, Alt\-H
588 displays the directory history, equivalent to depressing the 'v' with
589 the mouse.
590 .\"NODE "  Quick search"
591 .SH "  Quick search"
592 The Quick search mode allows you to perform fast file search in file panel.
593 Press
594 .I C\-s
596 .I Alt\-s
597 to start a filename search in the directory listing.
599 When the search is active, the user input will be added to the search string
600 instead of the command line. If the
601 .I Show mini\-status
602 option is enabled the search string is shown on the mini\-status
603 line. When typing, the selection bar will move to the next file
604 starting with the typed letters. The
605 .I Backspace
607 .I DEL
608 keys can be used to correct typing mistakes. If C\-s is pressed
609 again, the next match is searched for.
611 If quick search is started with double pressing of C\-s, the previous quick
612 search pattern will be used for current search.
614 Besides the filename characters, you can also use wildcard
615 characters '*' and '?'.
616 .\"NODE "  Shell Command Line"
617 .SH "  Shell Command Line"
618 This section lists keys which are useful to avoid excessive typing when
619 entering shell commands.
621 .B Alt\-Enter
622 copy the currently selected file name to the command line.
624 .B C\-Enter
625 same a Alt\-Enter.  May not work on remote systems and some terminals.
627 .B C\-Shift\-Enter
628 copy the full path name of the currently selected file to the command
629 line.  May not work on remote systems and some terminals.
631 .B Alt\-Tab
632 does the filename, command, variable, username and hostname
633 .\"LINK2"
634 completion
635 .\"Completion"
636 for you.
638 .B C\-x t, C\-x C\-t
639 copy the tagged files (or if there are no tagged files, the selected
640 file) of the current panel (C\-x t) or of the other panel (C\-x C\-t) to
641 the command line.
643 .B C\-x p, C\-x C\-p
644 the first key sequence copies the current path name to the command
645 line, and the second one copies the unselected panel's path name to
646 the command line.
648 .B C\-q
649 the quote command can be used to insert characters that are otherwise
650 interpreted by the Midnight Commander (like the '+' symbol)
652 .B Alt\-p, Alt\-n
653 use these keys to browse through the command history. Alt\-p takes you
654 to the last entry, Alt\-n takes you to the next one.
656 .B Alt\-h
657 displays the history for the current input line.
658 .\"NODE "  General Movement Keys"
659 .SH "  General Movement Keys"
660 The help viewer, the file viewer and the directory tree use common
661 code to handle moving. Therefore they accept exactly the same
662 keys. Each of them also accepts some keys of its own.
664 Other parts of the Midnight Commander use some of the same movement
665 keys, so this section may be of use for those parts too.
667 .B Up, C\-p
668 moves one line backward.
670 .B Down, C\-n
671 moves one line forward.
673 .B Prev Page, Page Up, Alt\-v
674 moves one page up.
676 .B Next Page, Page Down, C\-v
677 moves one page down.
679 .B Home, A1
680 moves to the beginning.
682 .B End, C1
683 move to the end.
685 The help viewer and the file viewer accept the following keys in
686 addition the to ones mentioned above:
688 .B b, C\-b, C\-h, Backspace, Delete
689 moves one page up.
691 .B Space bar
692 moves one page down.
694 .B u, d
695 moves one half of a page up or down.
697 .B g, G
698 moves to the beginning or to the end.
699 .\"NODE "  Input Line Keys"
700 .SH "  Input Line Keys"
701 The input lines (they are used for the
702 .\"LINK2"
703 command line
704 .\"Shell Command Line"
705 and for the query dialogs in the program) accept these keys:
707 .B C\-a
708 puts the cursor at the beginning of line.
710 .B C\-e
711 puts the cursor at the end of the line.
713 .B C\-b, move\-left
714 move the cursor one position left.
716 .B C\-f, move\-right
717 move the cursor one position right.
719 .B Alt\-f
720 moves one word forward.
722 .B Alt\-b
723 moves one word backward.
725 .B C\-h, Backspace
726 delete the previous character.
728 .B C\-d, Delete
729 delete the character in the point (over the cursor).
731 .B C\-@
732 sets the mark for cutting.
734 .B C\-w
735 copies the text between the cursor and the mark to a kill buffer and
736 removes the text from the input line.
738 .B Alt\-w
739 copies the text between the cursor and the mark to a kill buffer.
741 .B C\-y
742 yanks back the contents of the kill buffer.
744 .B C\-k
745 kills the text from the cursor to the end of the line.
747 .B Alt\-p, Alt\-n
748 Use these keys to browse through the command history. Alt\-p takes you
749 to the last entry, Alt\-n takes you to the next one.
751 .B Alt\-C\-h, Alt\-Backspace
752 delete one word backward.
754 .B Alt\-Tab
755 does the filename, command, variable, username and hostname
756 .\"LINK2"
757 completion
758 .\"Completion"
759 for you.
760 .SH ""
761 .\"NODE "Menu Bar"
762 .SH "Menu Bar"
763 The menu bar pops up when you press F9 or click the mouse on the top
764 row of the screen. The menu bar has five menus: "Left", "File",
765 "Command", "Options" and "Right".
768 .\"LINK2"
769 Left and Right Menus
770 .\"Left and Right Menus"
771 allow you to modify the appearance of the left and right directory
772 panels.
775 .\"LINK2"
776 File Menu
777 .\"File Menu"
778 lists the actions you can perform on the currently selected file or
779 the tagged files.
782 .\"LINK2"
783 Command Menu
784 .\"Command Menu"
785 lists the actions which are more general and bear no relation to the
786 currently selected file or the tagged files.
789 .\"LINK2"
790 Options Menu
791 .\"Options Menu"
792 lists the actions which allow you to customize the Midnight Commander.
793 .\"NODE "  Left and Right Menus"
794 .SH "  Left and Right (Above and Below) Menus"
795 The outlook of the directory panels can be changed from the
796 .B Left
798 .B Right
799 menus (they are named
800 .B Above
802 .B Below
803 when the horizontal panel split is chosen from the
804 .\"LINK2"
805 Layout
806 .\"Layout"
807 options dialog).
808 .\"NODE "    Listing Mode..."
809 .SH "    Listing Mode..."
810 The listing mode view is used to display a listing of files, there are
811 four different listing modes available:
812 .BR Full ,
813 .BR Brief ,
814 .B Long
816 .BR User .
817 The full directory view shows the file name, the size of the file and
818 the modification time.
820 The brief view shows only the file name and it has two columns
821 (therefore showing twice as many files as other views). The long view
822 is similar to the output of
823 .B "ls \-l"
824 command. The long view takes the whole screen width.
826 If you choose the "User" display format, then you have to specify
827 the display format.
829 The user display format must start with a panel size specifier.  This
830 may be "half" or "full", and they specify a half screen panel and a
831 full screen panel respectively.
833 After the panel size, you may specify the two columns mode on the
834 panel, this is done by adding the number "2" to the user format
835 string.
837 After this you add the name of the fields with an optional size
838 specifier.  This are the available fields you may display:
840 .B name
841 displays the file name.
843 .B size
844 displays the file size.
846 .B bsize
847 is an alternative form of the
848 .B size
849 format. It displays the size of the files and for directories it just
850 shows SUB\-DIR or UP\-\-DIR.
852 .B type
853 displays a one character wide type field.  This character is similar to
854 what is displayed by ls with the \-F flag \-
855 .B *
856 for executable files,
857 .B /
858 for directories,
859 .B @
860 for links,
861 .B =
862 for sockets,
863 .B \-
864 for character devices,
865 .B +
866 for block devices,
867 .B |
868 for pipes,
869 .B ~
870 for symbolic links to directories and
871 .B !
872 for stale symlinks (links that point nowhere).
874 .B mark
875 an asterisk if the file is tagged, a space if it's not.
877 .B mtime
878 file's last modification time.
880 .B atime
881 file's last access time.
883 .B ctime
884 file's status change time.
886 .B perm
887 a string representing the current permission bits of the file.
889 .B mode
890 an octal value with the current permission bits of the file.
892 .B nlink
893 the number of links to the file.
895 .B ngid
896 the GID (numeric).
898 .B nuid
899 the UID (numeric).
901 .B owner
902 the owner of the file.
904 .B group
905 the group of the file.
907 .B inode
908 the inode of the file.
910 Also you can use following keywords to define the panel layout:
912 .B space
913 a space in the display format.
915 .B |
916 add a vertical line to the display format.
918 To force one field to a fixed size (a size specifier), you just add
919 .B :
920 followed by the number of characters you want the field to have.  If the
921 number is followed by the symbol
922 .BR + ,
923 then the size specifies the minimal field size \- if the program finds
924 out that there is more space on the screen, it will then expand that
925 field.
927 For example, the
928 .B Full
929 display corresponds to this format:
931 half type name | size | mtime
933 And the
934 .B Long
935 display corresponds to this format:
937 full perm space nlink space owner space group space size space mtime
938 space name
940 This is a nice user display format:
942 half name | size:7 | type mode:3
944 Panels may also be set to the following modes:
946 .B "Info"
947 The info view display information related to the currently
948 selected file and if possible information about the current file
949 system.
951 .B "Tree"
952 The tree view is quite similar to the
953 .\"LINK2"
954 directory tree
955 .\"Directory Tree"
956 feature. See the section about it for more information.
958 .B "Quick View"
959 In this mode, the panel will switch to a reduced
960 .\"LINK2"
961 viewer
962 .\"Internal File Viewer"
963 that displays the contents of the currently selected file, if you
964 select the panel (with the tab key or the mouse), you will have access
965 to the usual viewer commands.
966 .\"NODE "    Sort Order..."
967 .SH "    Sort Order..."
968 The eight sort orders are by name, by extension, by modification time,
969 by access time, and by inode information modification time, by size,
970 by inode and unsorted.  In the Sort order dialog box you can choose
971 the sort order and you may also specify if you want to sort in reverse
972 order by checking the reverse box.
974 By default directories are sorted before files but this can be changed
975 from the
976 .\"LINK2"
977 Panel options
978 .\"Panel options"
979 menu (option
980 .BR "Mix all files" ).
981 .\"NODE "    Filter..."
982 .SH "    Filter..."
983 The filter command allows you to specify a shell pattern (for example
984 .BR "*.tar.gz" )
985 which the files must match to be shown. Regardless
986 of the filter pattern, the directories and the links to directories
987 are always shown in the directory panel.
988 .\"NODE "    Reread"
989 .SH "    Reread"
990 The reread command reload the list of files in the directory. It is
991 useful if other processes have created or removed files.
992 .\"NODE "  File Menu"
993 .SH "  File Menu"
994 The Midnight Commander uses the F1 \- F10 keys as keyboard shortcuts
995 for commands appearing in the file menu.  The escape sequences for the
996 function keys are terminfo capabilities kf1 trough kf10.  On terminals
997 without function key support, you can achieve the same functionality by
998 pressing the ESC key and then a number in the range 1 through 9 and 0
999 (corresponding to F1 to F9 and F10 respectively).
1001 The File menu has the following commands (keyboard shortcuts in parentheses):
1003 .B Help (F1)
1005 Invokes the built\-in hypertext help viewer. Inside the
1006 .\"LINK2"
1007 help viewer\&,
1008 .\"Contents"
1009 you can use the Tab key to select the next link and the Enter key to
1010 follow that link. The keys Space and Backspace are used to move
1011 forward and backward in a help page. Press F1 again to get the full
1012 list of accepted keys.
1014 .B Menu (F2)
1016 Invoke the
1017 .\"LINK2"
1018 user menu\&.
1019 .\"Menu File Edit"
1020 The user menu provides an easy way to provide users with a menu and
1021 add extra features to the Midnight Commander.
1023 .B View (F3, F13)
1025 View the currently selected file. By default this invokes the
1026 .\"LINK2"
1027 Internal File Viewer
1028 .\"Internal File Viewer"
1029 but if the option "Use internal view" is off, it invokes an external
1030 file viewer specified by the
1031 .B VIEWER
1032 environment variable.  If
1033 .B VIEWER
1034 is undefined, the
1035 .B PAGER
1036 environment variable is tried.  If
1037 .B PAGER
1038 is also undefined, the "view" command is invoked.  If you use F13
1039 instead, the viewer will be invoked without doing any formatting or
1040 preprocessing to the file.
1043 .\"LINK2"
1044 parameters for external viewer
1045 .\"Parameters for external editor or viewer"
1046 for explain how you may specify an extended command line options
1047 for external viewers.
1049 .B Filtered View (Alt\-!)
1051 This command prompts for a command
1052 and its arguments (the argument defaults to the currently selected
1053 file name), the output from such command is shown in the internal file
1054 viewer.
1056 .B Edit (F4, F14)
1058 Press F4 to edit the highlighted file.  Press F14 (usually F14)
1059 to start the editor with a new, empty file.
1060 Currently they invoke the
1061 .B vi
1062 editor, or the editor specified in the
1063 .B EDITOR
1064 environment variable, or the
1065 .\"LINK2"
1066 Internal File Editor
1067 .\"Internal File Editor"
1068 if the use_internal_edit option is on.
1071 .\"LINK2"
1072 parameters for external editor
1073 .\"Parameters for external editor or viewer"
1074 for explain how you may specify an extended command line options
1075 for external editors.
1077 .B Copy (F5, F15)
1079 Press F5 to pop up an input dialog to copy the currently selected file (or
1080 the tagged files, if there is at least one file tagged) to the
1081 directory/filename you specify in the input dialog. The destination
1082 defaults to the directory in the non\-selected panel. Space for destination
1083 file may be preallocated relative to preallocate_space configure option.
1084 During this process, you can press C\-c or ESC to abort the operation.
1085 For details about source mask (which will be usually either * or ^\\(.*\\)$
1086 depending on setting of Use shell patterns) and possible wildcards in the
1087 destination see
1088 .\"LINK2"
1089 Mask copy/rename\&.
1090 .\"Mask Copy/Rename"
1092 F15 (usually F15) is similar, but defaults to the directory in the
1093 selected panel. It always operates on the selected file, regardless of
1094 any tagged files.
1096 On some systems, it is possible to do the copy in the background by
1097 clicking on the background button (or pressing Alt\-b in the dialog
1098 box).  The
1099 .\"LINK2"
1100 Background Jobs
1101 .\"Background jobs"
1102 is used to control the background process.
1104 .B Link (C\-x l)
1106 Create a hard link to the current file.
1108 .B Absolute symlink (C\-x s)
1110 Create a absolute symbolic link to the current file.
1112 .B Relative symLink (C\-x v)
1114 Create a relative symbolic link to the current file.
1116 To those of you who don't know what links are: creating a link to a file
1117 is a bit like copying the file, but both the source filename and the destination
1118 filename represent the same file image. For example, if you edit one of these
1119 files, all changes you make will appear in both files. Some people call
1120 links aliases or shortcuts.
1122 A hard link appears as a real file. After making it, there is no way of
1123 telling which one is the original and which is the link. If you delete
1124 either one of them the other one is still intact. It is very difficult
1125 to notice that the files represent the same image. Use hard links when
1126 you don't even want to know.
1128 A symbolic link is a reference to the name of the original file. If
1129 the original file is deleted the symbolic link is useless. It is quite
1130 easy to notice that the files represent the same image. The Midnight
1131 Commander shows an "@"\-sign in front of the file name if it is a
1132 symbolic link to somewhere (except to directory, where it shows a tilde (~)).
1133 The original file which the link points to is shown on mini\-status line if the
1134 .I "Show mini\-status"
1135 option is enabled. Use symbolic links when you want to avoid the
1136 confusion that can be caused by hard links.
1138 When you press "C\-x s" Midnight Commander will automatically fill in the
1139 complete path+filename of the original file and suggest a name for the link.
1140 You can change either one.
1142 Sometimes you may want to change the absolute path of the original into
1143 a relative path. An absolute path starts from the root directory:
1145 .I /home/frodo/mc/mc -> /home/frodo/new/mc
1147 A relative link describes the original file's location starting from the
1148 location of the link itself:
1150 .I /home/frodo/mc/mc -> ../new/mc
1152 You can force Midnight Commander to suggest a relative path by pressing
1153 "C\-x v" instead of "C\-x s".
1155 .B Rename/Move (F6, F16)
1157 Press F6 to pop up an input dialog to copy the currently selected file (or
1158 the tagged files, if there is at least one file tagged) to the
1159 directory/filename you specify in the input dialog.  The destination
1160 defaults to the directory in the non\-selected panel. For more details
1161 look at Copy (F5) operation above, most of the things are quite similar.
1163 F16 (usually F16) is similar, but defaults to the directory in the
1164 selected panel. It always operates on the selected file, regardless of
1165 any tagged files.
1167 On some systems, it is possible to do the copy in the background by
1168 clicking on the background button (or pressing Alt\-b in the dialog
1169 box).  The
1170 .\"LINK2"
1171 Background Jobs
1172 .\"Background jobs"
1173 is used to control the background process.
1175 .B Mkdir (F7)
1177 Pop up an input dialog and creates the directory specified.
1179 .B Delete (F8)
1181 Delete the currently selected file or the tagged files in the
1182 currently selected panel. During the process, you can press C\-c or
1183 ESC to abort the operation.
1185 .B Quick cd (Alt\-c)
1186 Use the
1187 .\"LINK2"
1188 quick cd
1189 .\"Quick cd"
1190 command if you have full command line and want to cd somewhere.
1192 .B Select group (+)
1194 This is used to select (tag) a group of files. The Midnight Commander
1195 will prompt for a selection options. When
1196 .I Files only
1197 checkbox is on, only files will be selected.  If
1198 .I Files only
1199 is off, as files as directories will be selected.
1200 When
1201 .I Shell Patterns
1202 checkbox is on, the regular expression is much like the filename globbing
1203 in the shell (* standing for zero or more characters and ?  standing
1204 for one character). If
1205 .I Shell Patterns
1206 is off, then the tagging of files is done with normal regular
1207 expressions (see ed (1)). When
1208 .I Case sensitive
1209 checkbox is on, the selection will be case sensitive characters.
1211 .I Case sensitive
1212 is off, the case will be ignored.
1214 .B Unselect group (\\\\)
1216 Used to unselect a group of files. This is the opposite of the
1217 .I "Select group"
1218 command.
1220 .B Quit (F10, Shift\-F10)
1222 Terminate the Midnight Commander.  Shift\-F10 is used when you want to
1223 quit and you are using the shell wrapper.  Shift\-F10 will not take you
1224 to the last directory you visited with the Midnight Commander, instead
1225 it will stay at the directory where you started the Midnight Commander.
1226 .\"NODE "    Quick cd"
1227 .SH "    Quick cd"
1228 This command is useful if you have a full command line and want to
1229 .\"LINK2"
1231 .\"The cd internal command"
1232 somewhere without having to yank and paste the command line. This command
1233 pops up a small dialog, where you enter everything you would enter after
1234 .B cd
1235 on the command line and then you press enter. This features all the things
1236 that are already in the
1237 .\"LINK2"
1238 internal cd command\&.
1239 .\"The cd internal command"
1240 .\"NODE "  Command Menu"
1241 .SH "  Command Menu"
1243 .\"LINK2"
1244 Directory tree
1245 .\"Directory Tree"
1246 command shows a tree figure of the directories.
1249 .\"LINK2"
1250 "Find file"
1251 .\"Find File"
1252 command allows you to search for a specific file.
1254 The "Swap panels" command swaps the contents of the two directory panels.
1256 The "Switch panels on/off" command shows the output of the last shell command.
1257 This works only on xterm and on Linux and FreeBSD console.
1259 The "Compare directories" command compares the directory
1260 panels with each other. You can then use the Copy (F5) command to make
1261 the panels identical. There are three compare methods. The quick method
1262 compares only file size and file date. The thorough method makes a
1263 full byte\-by\-byte compare. The thorough method is not available if the
1264 machine does not support the mmap(2) system call.  The size\-only
1265 compare method just compares the file sizes and does not check the
1266 contents or the date times, it just checks the file size.
1269 .\"LINK2"
1270 "External panelize"
1271 .\"External panelize"
1272 allows you to execute an external program, and make the output of that
1273 program the contents of the current panel.
1275 The "Command history" command shows a list of typed commands. The
1276 selected command is copied to the command line. The command history
1277 can also be accessed by typing Alt\-p or Alt\-n.
1280 .\"LINK2"
1281 "Directory hotlist"
1282 .\"Hotlist"
1283 command makes changing of the current directory to often used directories
1284 faster.
1287 .\"LINK2"
1288 "Screen list"
1289 .\"Screen selector"
1290 command shows a dialog window with the list of currently running
1291 internal editors, viewers and other MC modules that support this mode.
1294 .\"LINK2"
1295 "Edit extension file"
1296 .\"Extension File Edit"
1297 command allows you to specify programs to executed when you try to
1298 execute, view, edit and do a bunch of other thing on files
1299 with certain extensions (filename endings).
1302 .\"LINK2"
1303 "Edit menu file"
1304 .\"Menu File Edit"
1305 command may be used for editing the user menu (which appears by
1306 pressing F2).
1307 .\"NODE "    Directory Tree"
1308 .SH "    Directory Tree"
1309 The Directory Tree command shows a tree figure of the directories. You
1310 can select a directory from the figure and the Midnight Commander will
1311 change to that directory.
1313 There are two ways to invoke the tree. The real directory tree command
1314 is available from Commands menu. The other way is to select tree view
1315 from the Left or Right menu.
1317 To get rid of long delays the Midnight Commander creates the tree
1318 figure by scanning only a small subset of all the directories. If the
1319 directory which you want to see is missing, move to its parent
1320 directory and press C\-r (or F2).
1322 You can use the following keys:
1324 .\"LINK2"
1325 General movement keys
1326 .\"General Movement Keys"
1327 are accepted.
1329 .B Enter.
1330 In the directory tree, exits the directory tree and changes to this
1331 directory in the current panel. In the tree view, changes to this
1332 directory in the other panel and stays in tree view mode in the
1333 current panel.
1335 .B C\-r, F2 (Rescan).
1336 Rescan this directory. Use this when the tree figure is out of date:
1337 it is missing subdirectories or shows some subdirectories which don't
1338 exist any more.
1340 .B F3 (Forget).
1341 Delete this directory from the tree figure. Use this to remove clutter
1342 from the figure. If you want the directory back to the tree figure
1343 press F2 in its parent directory.
1345 .B F4 (Static/Dynamic).
1346 Toggle between the dynamic navigation mode (default) and the static
1347 navigation mode.
1349 In the static navigation mode you can use the Up and Down keys to
1350 select a directory. All known directories are shown.
1352 In the dynamic navigation mode you can use the Up and Down keys to
1353 select a sibling directory, the Left key to move to the parent
1354 directory, and the Right key to move to a child directory. Only the
1355 parent, sibling and children directories are shown, others are left
1356 out. The tree figure changes dynamically as you traverse.
1358 .B F5 (Copy).
1359 Copy the directory.
1361 .B F6 (RenMov).
1362 Move the directory.
1364 .B F7 (Mkdir).
1365 Make a new directory below this directory.
1367 .B F8 (Delete).
1368 Delete this directory from the file system.
1370 .B C\-s, Alt\-s.
1371 Search the next directory matching the search string. If there is
1372 no such directory these keys will move one line down.
1374 .B C\-h, Backspace.
1375 Delete the last character of the search string.
1377 .B Any other character.
1378 Add the character to the search string and move to the next directory
1379 which starts with these characters. In the tree view you must first
1380 activate the search mode by pressing C\-s. The search string is shown
1381 in the mini status line.
1383 The following actions are available only in the directory tree. They
1384 aren't supported in the tree view.
1386 .B F1 (Help).
1387 Invoke the help viewer and show this section.
1389 .B Esc, F10.
1390 Exit the directory tree. Do not change the directory.
1392 The mouse is supported. A double\-click behaves like Enter. See
1393 also the section on
1394 .\"LINK2"
1395 mouse support\&.
1396 .\"Mouse Support"
1397 .\"NODE "    Find File"
1398 .SH "    Find File"
1399 The Find File feature first asks for the start directory for the
1400 search and the filename to be searched for. By pressing the Tree
1401 button you can select the start directory from the
1402 .\"LINK2"
1403 directory tree
1404 .\"Directory Tree"
1405 figure.
1407 Option \"Whole words\" allows select only those files containing matches that
1408 form whole words. Like grep \-w.
1410 You can start the search by pressing the OK button.
1411 During the search you can stop from the Stop button and continue from
1412 the Start button.
1414 You can browse the filelist with the up and down arrow keys. The Chdir
1415 button will change to the directory of the currently selected
1416 file. The Again button will ask for the parameters for a new
1417 search. The Quit button quits the search operation. The Panelize
1418 button will place the found files to the current directory panel so
1419 that you can do additional operations on them (view, copy, move,
1420 delete and so on). After panelizing you can press C\-r to return to the
1421 normal file listing.
1423 The 'Enable ignore directories' checkbox and input field below it
1424 allow to set up the list of directories that should be skip during the search
1425 files (for example, you may want to avoid searches on a CD\-ROM or on a NFS
1426 directory that is mounted across a slow link). List components must be separated
1427 with a colon, here is an example:
1430 /cdrom:/nfs/wuarchive:/afs
1433 Relative paths are supported also. The following example shows how to skip special
1434 directories of version control systems:
1436 /cdrom:/nfs/wuarchive:/afs:.svn:.git:CVS
1439 Attention: input field can contain a dot (.), this means the current absolute path.
1441 You may consider using the
1442 .\"LINK2"
1443 External panelize
1444 .\"External panelize"
1445 command for some operations. Find file command is for simple queries
1446 only, while using External panelize you can do as mysterious searches
1447 as you would like.
1448 .\"NODE "    External panelize"
1449 .SH "    External panelize"
1450 The External panelize allows you to execute an external program, and
1451 make the output of that program the contents of the current panel.
1453 For example, if you want to manipulate in one of the panels all the
1454 symbolic links in the current directory, you can use external
1455 panelization to run the following command:
1458 find . \-type l \-print
1461 Upon command completion, the directory contents of the panel will no
1462 longer be the directory listing of the current directory, but all the
1463 files that are symbolic links.
1465 If you want to panelize all of the files that have been downloaded
1466 from your FTP server, you can use this awk command to extract the file
1467 name from the transfer log files:
1470 awk '$9 ~! /incoming/ { print $9 }' < /var/log/xferlog
1473 You may want to save often used panelize commands under a descriptive name,
1474 so that you can recall them quickly. You do this by typing the command on
1475 the input line and pressing Add new button. Then you enter a name under
1476 which you want the command to be saved. Next time, you just choose that
1477 command from the list and do not have to type it again.
1478 .\"NODE "    Hotlist"
1479 .SH "    Hotlist"
1480 The Directory hotlist command shows the labels of the directories
1481 in the directory hotlist.  The Midnight Commander will change to the
1482 directory corresponding to the selected label.  From the hotlist dialog,
1483 you can remove already created label/directory pairs and add new ones.
1484 To add new directories quickly, you can use the Add to hotlist command
1485 (C\-x h), which adds the current directory into the directory hotlist,
1486 asking just for the label for the directory.
1488 This makes cd to often used directories faster. You may consider using the
1489 CDPATH variable as described in
1490 .\"LINK2"
1491 internal cd command
1492 .\"The cd internal command"
1493 description.
1494 .\"NODE "    Extension File Edit"
1495 .SH "    Extension File Edit"
1496 This will invoke your editor on the file
1497 .IR ~/.config/mc/mc.ext .
1498 The format of this file following:
1500 All lines starting with # or empty lines are thrown away.
1502 Lines starting in the first column should have following format:
1504 .IR keyword/expr ,
1505 i.e. everything after the slash until new line is
1506 .IR expr .
1508 .I keyword
1509 can be:
1511 .I shell
1513 .I expr
1514 is an extension (no wildcards).  File matches it its name ends
1515 with
1516 .IR expr .
1517 Example:
1518 .I shell/.tar
1519 matches
1520 .IR *.tar .
1522 .I regex
1524 .I expr
1525 is a regular expression.  File matches if its name matches the regular
1526 expression.
1528 .I directory
1530 .I expr
1531 is a regular expression.  File matches if it is a directory and its name
1532 matches the regular expression.
1534 .I type
1536 .I expr
1537 is a regular expression.  File matches if the output of
1538 .I file %f
1539 without the initial "filename:" part matches regular expression
1540 .IR expr .
1542 .I default
1543 \- matches any file.
1544 .I expr
1545 is ignored.
1547 .I include
1548 \- denotes a common section.
1549 .I expr
1550 is the name of the section.
1552 Other lines should start with a space or tab and should be of the format:
1553 .I keyword=command
1554 (with no spaces around =), where
1555 .I keyword
1556 should be:
1557 .I Open
1558 (invoked on Enter or double click),
1559 .I View
1560 (F3),
1561 .I Edit
1562 (F4) or
1563 .I Include
1564 (to add rules from the common section).
1565 .I command
1566 is any one\-line shell command, with the simple
1567 .\"LINK2"
1568 macro substitution\&.
1569 .\"Macro Substitution"
1571 Rules are matched from top to bottom, thus the order is important.  If
1572 the appropriate action is missing, search continues as if this rule
1573 didn't match (i.e. if a file matches the first and second entry and View
1574 action is missing in the first one, then on pressing F3 the View action
1575 from the second entry will be used).
1576 .I default
1577 should match all the actions.
1578 .\"NODE "    Background jobs"
1579 .SH "    Background Jobs"
1580 This lets you control the state of any background Midnight Commander
1581 process (only copy and move files operations can be done in the
1582 background).  You can stop, restart and kill a background job from
1583 here.
1584 .\"NODE "    Menu File Edit"
1585 .SH "    Menu File Edit"
1586 The user menu is a menu of useful actions that can be customized by
1587 the user. When you access the user menu, the
1588 file .mc.menu from the current directory is used if it exists,
1589 but only if it is owned by user or root and is not world\-writable.
1590 If no such file found, ~/.config/mc/menu is tried in the same way,
1591 and otherwise mc uses the default system\-wide menu
1592 %prefix%/share/mc/mc.menu.
1594 The format of the menu file is very simple. Lines that start with
1595 anything but space or tab are considered entries for the menu (in
1596 order to be able to use it like a hot key, the first character should
1597 be a letter). All the lines that start with a space or a tab are the
1598 commands that will be executed when the entry is selected.
1600 When an option is selected all the command lines of the option are
1601 copied to a temporary file in the temporary directory (usually
1602 /usr/tmp) and then that file is executed. This allows the user to put
1603 normal shell constructs in the menus. Also simple macro substitution
1604 takes place before executing the menu code. For more information, see
1605 .\"LINK2"
1606 macro substitution\&.
1607 .\"Macro Substitution"
1609 Here is a sample mc.menu file:
1612 A       Dump the currently selected file
1613         od \-c %f
1615 B       Edit a bug report and send it to root
1616         I=`mktemp ${MC_TMPDIR:\-/tmp}/mail.XXXXXX` || exit 1
1617         vi $I
1618         mail \-s "Midnight Commander bug" root < $I
1619         rm \-f $I
1621 M       Read mail
1622         emacs \-f rmail
1624 N       Read Usenet news
1625         emacs \-f gnus
1627 H       Call the info hypertext browser
1628         info
1630 J       Copy current directory to other panel recursively
1631         tar cf \- . | (cd %D && tar xvpf \-)
1633 K       Make a release of the current subdirectory
1634         echo \-n "Name of distribution file: "
1635         read tar
1636         ln \-s %d `dirname %d`/$tar
1637         cd ..
1638         tar cvhf ${tar}.tar $tar
1640 = f *.tar.gz | f *.tgz & t n
1641 X       Extract the contents of a compressed tar file
1642         tar xzvf %f
1645 .B Default Conditions
1647 Each menu entry may be preceded by a condition. The condition must
1648 start from the first column with a '=' character. If the condition is
1649 true, the menu entry will be the default entry.
1652 Condition syntax:       = <sub\-cond>
1653   or:                   = <sub\-cond> | <sub\-cond> ...
1654   or:                   = <sub\-cond> & <sub\-cond> ...
1656 Sub\-condition is one of following:
1658   y <pattern>           syntax of current file matching pattern?
1659                         (for edit menu only)
1660   f <pattern>           current file matching pattern?
1661   F <pattern>           other file matching pattern?
1662   d <pattern>           current directory matching pattern?
1663   D <pattern>           other directory matching pattern?
1664   t <type>              current file of type?
1665   T <type>              other file of type?
1666   x <filename>          is it executable filename?
1667   ! <sub\-cond>         negate the result of sub\-condition
1670 Pattern is a normal shell pattern or a regular expression, according
1671 to the shell patterns option. You can override the global value of
1672 the shell patterns option by writing "shell_patterns=x" on the first
1673 line of the menu file (where "x" is either 0 or 1).
1675 Type is one or more of the following characters:
1678   n     not a directory
1679   r     regular file
1680   d     directory
1681   l     link
1682   c     character device
1683   b     block device
1684   f     FIFO (pipe)
1685   s     socket
1686   x     executable file
1687   t     tagged
1690 For example 'rlf' means either regular file, link or fifo. The 't'
1691 type is a little special because it acts on the panel instead of the
1692 file. The condition '=t t' is true if there are tagged files in the
1693 current panel and false if not.
1695 If the condition starts with '=?' instead of '=' a debug trace will be
1696 shown whenever the value of the condition is calculated.
1698 The conditions are calculated from left to right. This means
1700         = f *.tar.gz | f *.tgz & t n
1702 is calculated as
1704         ( (f *.tar.gz) | (f *.tgz) ) & (t n)
1707 Here is a sample of the use of conditions:
1710 = f *.tar.gz | f *.tgz & t n
1711 L       List the contents of a compressed tar\-archive
1712         gzip \-cd %f | tar xvf \-
1715 .B Addition Conditions
1717 If the condition begins with '+' (or '+?') instead of '=' (or '=?') it
1718 is an addition condition. If the condition is true the menu entry will
1719 be included in the menu. If the condition is false the menu entry will
1720 not be included in the menu.
1722 You can combine default and addition conditions by starting condition
1723 with '+=' or '=+' (or '+=?' or '=+?' if you want debug trace). If you
1724 want to use two different conditions, one for adding and another for
1725 defaulting, you can precede a menu entry with two condition lines, one
1726 starting with '+' and another starting with '='.
1728 Comments are started with '#'. The additional comment lines must start
1729 with '#', space or tab.
1730 .\"NODE "  Options Menu"
1731 .SH "  Options Menu"
1732 The Midnight Commander has some options that may be toggled on and
1733 off in several dialogs which are accessible from this menu. Options
1734 are enabled if they have an asterisk or "x" in front of them.
1737 .\"LINK2"
1738 Configuration
1739 .\"Configuration"
1740 command pops up a dialog from which you can change most of settings of
1741 the Midnight Commander.
1744 .\"LINK2"
1745 Layout
1746 .\"Layout"
1747 command pops up a dialog from which you specify a bunch of options how mc
1748 looks like on the screen.
1751 .\"LINK2"
1752 Panel options
1753 .\"Panel options"
1754 command pops up a dialog from which you specify options of file manager panels.
1757 .\"LINK2"
1758 Confirmation
1759 .\"Confirmation"
1760 command pops up a dialog from which you specify which actions you want to
1761 confirm.
1764 .\"LINK2"
1765 Display bits
1766 .\"Display bits"
1767 command pops up a dialog from which you may select which characters is your
1768 terminal able to display.
1771 .\"LINK2"
1772 Learn keys
1773 .\"Learn keys"
1774 command pops up a dialog from which you test some keys which are not working
1775 on some terminals and you may fix them.
1778 .\"LINK2"
1779 Virtual FS
1780 .\"Virtual FS"
1781 command pops up a dialog from which you specify some VFS related options.
1784 .\"LINK2"
1785 Save setup
1786 .\"Save Setup"
1787 command saves the current settings of the Left, Right and Options
1788 menus. A small number of other settings is saved, too.
1789 .\"NODE "    Configuration"
1790 .SH "    Configuration"
1791 The options in this dialog are divided into several groups: "File
1792 operation options", "Esc key mode", "Pause after run" and "Other options".
1794 .B File operation options
1796 .I Verbose operation.
1797 This toggles whether the file Copy, Rename and Delete operations are
1798 verbose (i.e., display a dialog box for each operation). If you have a
1799 slow terminal, you may wish to disable the verbose operation. It is
1800 automatically turned off if the speed of your terminal is less than
1801 9600 bps.
1803 .I Compute totals.
1804 If this option is enabled, the Midnight Commander computes total byte
1805 sizes and total number of files prior to any Copy, Rename and Delete
1806 operations. This will provide you with a more accurate progress bar
1807 at the expense of some speed. This option has no effect, if
1808 .I Verbose  operation
1809 is disabled.
1811 .I Classic progressbar.
1812 If this option is enabled, the progressbar of Copy/Move/Delete operations
1813 is always grown form left to right. If disabled, the growing direction
1814 of progressbar follows to direction of Copy/Move/Delete operation:
1815 from left panel to right one and vice versa. Enabled by default.
1817 .I Mkdir autoname
1818 When you press F7 to create a new directory, the input line in popup dialog
1819 will be filled by name of current file or directory in active panel.
1820 Disabled by default.
1822 .I Preallocate space
1823 Preallocate space for whole target file, if possible, before copy operation.
1824 Disabled by default.
1826 .B Esc key mode.
1828 By default the Midnight Commander treats the ESC key as a key prefix.
1829 Therefore, you should press Esc code twice to exit a dialog. But there is
1830 a possibility to use a single press of ESC key for that action.
1832 .I Single press.
1833 By default this option is disabled. If you'll enable it, the ESC key
1834 will act as a prefix key for set up time interval (see
1835 .I Timeout
1836 option below), and if no extra keys have arrived, then the ESC key
1837 is interpreted as a cancel key (ESC ESC).
1839 .I Timeout.
1840 This options is used to setup the time interval (in microseconds)
1841 for single press of ESC key. By default, this inrerval is one second
1842 (1000000 microseconds). Also the timeout can be set via KEYBOARD_KEY_TIMEOUT_US
1843 environment variable (also in microseconds), which has higher priority
1844 than Timeout option value.
1846 .B Pause after run
1848 After executing your commands, the Midnight Commander can pause, so
1849 that you can examine the output of the command.  There are three
1850 possible settings for this variable:
1852 .IR Never .
1853 Means that you do not want to see the output of your command.  If you
1854 are using the Linux or FreeBSD console or an xterm, you will be able to
1855 see the output of the command by typing C\-o.
1857 .IR On dumb terminals .
1858 You will get the pause message on terminals that are not capable of
1859 showing the output of the last command executed (any terminal that is
1860 not an xterm or the Linux console).
1862 .IR Always .
1863 The program will pause after executing all of your commands.
1865 .B Other options
1867 .I Use internal editor.
1868 If this option is enabled, the built\-in file editor is used to edit
1869 files. If the option is disabled, the editor specified in the
1870 .B EDITOR
1871 environment variable is used.
1872 If no editor is specified,
1873 .B vi
1874 is used.  See the section on the
1875 .\"LINK2"
1876 internal file editor\&.
1877 .\"Internal File Editor"
1879 .I Use internal viewer.
1880 If this option is enabled, the built\-in file viewer is used to view
1881 files. If the option is disabled, the pager specified in the
1882 .B PAGER
1883 environment variable is used.
1884 If no pager is specified, the
1885 .B view
1886 command is used.  See the section on the
1887 .\"LINK2"
1888 internal file viewer\&.
1889 .\"Internal File Viewer"
1891 .I Ask new file name
1892 If this option is enabled, file name is asked before open new file in editor.
1894 .I Auto menus.
1895 If this option is enabled, the user menu will be invoked at startup.
1896 Useful for building menus for non\-unixers.
1898 .I Drop down menus.
1899 When this option is enabled, the pull down menus will be activated as
1900 soon as you press the F9 key. Otherwise, you will only get the menu title,
1901 and you will have to activate the menu either with the arrow keys or with
1902 the hotkeys. It is recommended if you are using hotkeys.
1904 .I Shell Patterns.
1905 By default the Select, Unselect and Filter commands will use shell\-like
1906 regular expressions. The following conversions are performed to achieve
1907 this: the '*' is replaced by '.*' (zero or more characters); the '?'
1908 is replaced by '.' (exactly one character) and '.' by the literal
1909 dot. If the option is disabled, then the regular expressions are the
1910 ones described in ed(1).
1912 .I Complete: show all.
1913 By default the Midnight Commander pops up all possible
1914 .\"LINK2"
1915 completions
1916 .\"Completion"
1917 if the completion is ambiguous only when you press
1918 .B Alt\-Tab
1919 for the second time.  For the first time, it just completes as much as
1920 possible and beeps in the case of ambiguity.  Enable this option if you
1921 want to see all possible completions even after pressing
1922 .B Alt\-Tab
1923 the first time.
1925 .I Rotating dash.
1926 If this option is enabled, the
1927 Midnight Commander shows a rotating dash in the upper right corner
1928 as a work in progress indicator.
1930 .I Cd follows links.
1931 This option, if set, causes the Midnight Commander to follow the
1932 logical chain of directories when changing current directory
1933 either in the panels, or using the cd command. This is the default
1934 behavior of bash. When unset, the Midnight Commander follows the
1935 real directory structure, so cd .. if you've entered that directory
1936 through a link will move you to the current directory's real parent
1937 and not to the directory where the link was present.
1939 .I Safe delete.
1940 If this option is enabled, deleting files and directory hotlist entries
1941 unintentionally becomes more difficult.  The default selection in the
1942 confirmation dialogs for deletion changes from "Yes" to "No".
1943 This option is disabled by default.
1945 .I Auto save setup.
1946 If this option is enabled, when you exit the Midnight Commander the
1947 configurable options of the Midnight Commander are saved in the
1948 ~/.config/mc/ini file.
1949 .\"NODE "    Layout"
1950 .SH "    Layout"
1951 The layout dialog gives you a possibility to change the general layout
1952 of screen. The options in this dialog are divided into several groups:
1953 "Panel split", "Console output" and "Other options".
1955 .B Panel split
1957 The rest of the screen area is used for the two directory panels. You
1958 can specify whether the area is split to the panels in
1959 .I Vertical
1960  or
1961 .I Horizontal
1962 direction. Panel layout can be changed using Alt\-, (Alt\-comma) shortcut.
1964 .I Equal split.
1965 By default, panels have equal sizes. Using this option you can specify
1966 an unequal split.
1968 .B Console output
1970 On the Linux or FreeBSD console you can specify how many lines are shown
1971 in the output window. This option is available if Midnight Commander runs
1972 on native console only.
1974 .B Other options
1976 .I Menu bar visible.
1977 If enabled, main menu of Midnight Commander is always visible on the top row
1978 of screen above panels. Enabled by default.
1980 .I Command prompt.
1981 If enabled, command line is avalable. Enabled by default.
1983 .I Keybar visible.
1984 If enabled, 10 lables associated with F1\-F10 keys are located at the bottom
1985 row of screen. Enabled by default.
1987 .I Hintbar visible.
1988 If enabled, the one\-line hints are visible below panels. Enabled by default.
1990 .I XTerm window title.
1991 When run in a terminal emulator for X11, Midnight Commander sets the
1992 terminal window title to the current working directory and updates it
1993 when necessary.  If your terminal emulator is broken and you see some
1994 incorrect output on startup and directory change, turn off this option.
1995 Enabled by default.
1997 .I Show free space.
1998 If enabled, free space and total space of current file system is shown
1999 at the bottom frame of panel. Enabled by default.
2000 .\"NODE "    Panel options"
2001 .SH "    Panel options"
2002 .B Main panel options
2004 .I Show mini\-status.
2005 If enabled, one line of status information about the currently selected item
2006 is shown at the bottom of the panels. Enabled by default.
2008 .I Use SI size units.
2009 If this option is enabled, Midnight Commander will use SI units (powers of 1000)
2010 when displaying any byte sizes. The suffixes (k, m ...) are shown in lowercase.
2011 If disabled (default), Midnight Commander will use binary units (powers of 1024)
2012 and the suffixes are shown in upper case (K, M ...)
2014 .I Mix all files.
2015 If this option is enabled, all files and directories are shown mixed
2016 together.  If the option is desabled (default), directories (and links to
2017 directories) are shown at the beginning of the listing, and other files below.
2019 .I Show backup files.
2020 If enabled, the Midnight Commander will show files ending with a tilde.
2021 Otherwise, they won't be shown (like GNU's ls option \-B). Enabled by default.
2023 .I Show hidden files.
2024 If enabled, the Midnight Commander will show all files that start with
2025 a dot (like ls \-a). Disabled by default.
2027 .I Fast directory reload.
2028 If this option is enabled, the Midnight Commander will use a trick to
2029 determine if the directory contents have changed.  The trick is to reload
2030 the directory only if the i\-node of the directory has changed; this means
2031 that reloads only happen when files are created or deleted.  If what
2032 changes is the i\-node for a file in the directory (file size changes,
2033 mode or owner changes, etc) the display is not updated.  In these cases,
2034 if you have the option on, you have to rescan the directory manually
2035 (with C\-r). Disabled by default.
2037 .I Mark moves down.
2038 If enabled, the selection bar will move down when you mark a file (with
2039 Insert key). Enabled by default.
2041 .I Reverse files only.
2042 Allow revert selection of files only. Enabled by default.
2043 If enabled, the reverse selection is applied to files only, not to directories.
2044 The selection of directories is untouched. If off, the reverse selection
2045 is applied to files as well to directories: all unselected items become
2046 selected, and vice versa.
2048 .I Simple swap.
2049 If both panels contain file listing, simple swap means that panels exchange
2050 its screen positions: left panel become right one, and vice versa. If this
2051 option is unchecked, file listing panels exchange its content keeping listing
2052 format and sort options. Unchecked by default.
2054 .I Auto save panels setup.
2055 If this option is enabled, when you exit the Midnight Commander the
2056 current settings of panels are saved in the ~/.config/mc/panels.ini file.
2057 Disabled by default.
2059 .B Navigation
2061 .I Lynx\-like motion.
2062 If this option is enabled, you may use the arrows keys to automatically
2063 chdir if the current selection is a subdirectory and the shell command
2064 line is empty. By default, this setting is off.
2066 .I Page scrolling.
2067 If set (the default), panel will scroll by half the display when the
2068 cursor reaches the end or the beginning of the panel, otherwise it
2069 will just scroll a file at a time.
2071 .I Mouse page scrolling.
2072 Controls whenever scrolling with the mouse wheel is done by pages or
2073 line by line on the panels.
2075 .B File highlight
2077 You can specify whether
2078 .I permissions
2080 .I file types
2081 should be highlighted with distinctive
2082 .\"LINK2"
2083 Colors\&.
2084 .\"Colors"
2085 If the permission highlighting is enabled, the parts of the
2086 .I perm
2088 .I mode
2089 .\"LINK2"
2090 display fields
2091 .\"Listing Mode..."
2092 which apply to the user running Midnight Commander are highlighted with
2093 the color defined by the
2094 .I selected
2095 keyword.  If the file type highlighting is enabled, file names are colored
2096 according to rules described in
2097 %sysconfdir%/mc/filehighlight.ini
2098 file. See
2099 .\"LINK2"
2100 Filenames Highlight
2101 .\"Filenames Highlight"
2102 for more info.
2104 .B Quick search
2106 You can specify how the
2107 .\"LINK2"
2108 Quick search
2109 .\"Quick search"
2110 mode should works: case insensitively, case sensitively or be matched
2111 to the the panel sort order: case sensitive or not.
2112 .\"NODE "    Confirmation"
2113 .SH "    Confirmation"
2114 In this dialog you configure the confirmation options for file deletion,
2115 overwriting files, execution by pressing enter, quitting the program,
2116 directory hotlist entries deletion and history cleanup.
2117  and.
2118 .\"NODE "    Display bits"
2119 .SH "    Display bits"
2120 This is used to configure the range of visible characters on the
2121 screen.  This setting may be 7\-bits if your terminal/curses supports
2122 only seven output bits, ISO\-8859\-1 displays all the characters in the
2123 ISO\-8859\-1 map and full 8 bits is for those terminals that can display
2124 full 8 bit characters.
2125 .\"NODE "    Learn keys"
2126 .SH "    Learn keys"
2127 This dialog allows you to test and redefine functional keys, cursor
2128 arrows and some other keys to make them work properly on your terminal.
2129 They often don't, since many terminal databases are incomplete or broken.
2131 You can move around with the Tab key and with the vi moving keys ('h'
2132 left, 'j' down, 'k' up and 'l' right).  Once you press any cursor movement
2133 key and it is recognized, you can use that key as well.
2135 You can test keys just by pressing each of them.  When you press a
2136 key and it is recognized properly, OK should appear next to the name
2137 of that key.  Once a key is marked OK it starts working as usually,
2138 e.g. F1 pressed the first time will just check that the F1 key works,
2139 but after that it will show help.  The same applies to the arrow keys.
2140 The Tab key should be working always.
2142 If some keys do not work properly then you won't see OK appear after
2143 pressing one of these.  Then you may want to redefine it.  Do it by pressing
2144 the button with the name of that key (either by the mouse or by Enter
2145 or Space after selecting the button with Tab or arrows).  Then a message
2146 box will appear asking you to press that key.  Do it and wait until the
2147 message box disappears.  If you want to abort, just press Escape once
2148 and wait.
2150 When you finish with all the keys, you can Save them.  The definitions
2151 for the keys you have redefined will be written into the [terminal:TERM]
2152 section of your ~/.config/mc/ini file (where TERM is the name of your current
2153 terminal).  The definitions of the keys that were already working properly
2154 are not saved.
2155 .\"NODE "    Virtual FS"
2156 .SH "    Virtual FS"
2157 This option gives you control over the settings of the
2158 .\"LINK2"
2159 Virtual File System\&.
2160 .\"Virtual File System"
2162 The Midnight Commander keeps in memory the information related to some
2163 of the virtual file systems to speed up the access to the files in the
2164 file system (for example, directory listings fetched from FTP servers).
2166 Also, in order to access the contents of compressed files (for example,
2167 compressed tar files) the Midnight Commander needs to create temporary
2168 uncompressed files on your disk.
2170 Since both the information in memory and the temporary files on disk
2171 take up resources, you may want to tune the parameters of the cached
2172 information to decrease your resource usage or to maximize the speed of
2173 access to frequently used file systems.
2175 Because of the format of the tar archives, the
2176 .I Tar filesystem
2177 needs to read the whole file just to load the file entries.  Since most
2178 tar files are usually kept compressed (plain tar files are species in
2179 extinction), the tar file system has to uncompress the file on the disk
2180 in a temporary location and then access the uncompressed file as a
2181 regular tar file.
2183 Now, since we all love to browse files and tar files all over the disk,
2184 it's common that you will leave a tar file and then re\-enter it later.
2185 Since decompression is slow, the Midnight Commander will cache the
2186 information in memory for a limited time.  When the timeout expires, all
2187 the resources associated with the file system are released.  The default
2188 timeout is set to one minute.
2191 .\"LINK2"
2192 FTP File System
2193 .\"FTP File System"
2194 (ftpfs) allows you to browse directories on remote FTP servers.  It has
2195 several options.
2197 .I ftp anonymous password
2198 is the password used when you login as "anonymous".  Some sites require
2199 a valid e\-mail address.  On the other hand, you probably don't want to
2200 give your real e\-mail address to untrusted sites, especially if you are
2201 not using spam filtering.
2203 ftpfs keeps the directory listing it fetches from a FTP server in a cache.
2204 The cache expire time is configurable with the
2205 .I ftpfs directory cache timeout
2206 option.  A low value for this option may slow down every operation on
2207 the ftpfs because every operation would require sending a request to the
2208 FTP server.
2210 You can define an FTP proxy host for doing FTP.  Note that most modern
2211 firewalls are fully transparent at least for passive FTP (see below), so
2212 FTP proxies are considered obsolete.
2215 .I Always use ftp proxy
2216 is not set, you can use the exclamation sign to enable proxy for certain
2217 hosts.  See
2218 .\"LINK2"
2219 FTP File System
2220 .\"FTP File System"
2221 for examples.
2223 If this option is set, the program will do two things: consult the
2224 %prefix%/lib/mc/mc.no_proxy file for lines containing host names that
2225 are local (if the host name starts with a dot, it is assumed to be a
2226 domain) and to assume that any hostnames without dots in their names are
2227 directly accessible.  All other hosts will be accessed through the
2228 specified FTP proxy.
2230 You can enable using
2231 .I ~/.netrc
2232 file, which keeps login names and passwords for ftp servers.  See netrc
2233 (5) for the description of the .netrc format.
2235 .I Use passive mode
2236 enables using FTP passive mode, when the connection for data transfer is
2237 initiated by the client, not by the server.  This option is recommended
2238 and enabled by default.  If this option is turned off, the data
2239 connection is initiated by the server.  This may not work with some
2240 firewalls.
2241 .\"NODE "    Save Setup"
2242 .SH "    Save Setup"
2243 At startup the Midnight Commander will try to load initialization
2244 information from the ~/.config/mc/ini file. If this file
2245 doesn't exist, it will load the information from the system\-wide
2246 configuration file, located in %prefix%/share/mc/mc.ini. If the 
2247 system\-wide configuration file doesn't exist, MC uses the default settings.
2250 .I Save Setup
2251 command creates the ~/.config/mc/ini file by saving the
2252 current settings of the
2253 .\"LINK2"
2254 Left, Right
2255 .\"Left and Right Menus"
2257 .\"LINK2"
2258 Options
2259 .\"Options Menu"
2260 menus.
2262 If you activate the
2263 .I auto save setup
2264 option, MC will always save the current settings when exiting.
2266 There also exist settings which can't be changed from the menus. To
2267 change these settings you have to edit the setup file with your
2268 favorite editor. See the section on
2269 .\"LINK2"
2270 Special Settings
2271 .\"Special Settings"
2272 for more information.
2273 .SH ""
2274 .\"NODE "Executing operating system commands"
2275 .SH "Executing operating system commands"
2276 You may execute commands by typing them directly in the Midnight
2277 Commander's input line, or by selecting the program you want to
2278 execute with the selection bar in one of the panels and hitting Enter.
2280 If you press Enter over a file that is not executable, the Midnight
2281 Commander checks the extension of the selected file against the
2282 extensions in the
2283 .\"LINK2"
2284 Extensions File\&.
2285 .\"Extension File Edit"
2286 If a match is found then the code associated with that extension is
2287 executed. A very simple
2288 .\"LINK2"
2289 macro expansion
2290 .\"Macro Substitution"
2291 takes place before executing the command.
2292 .\"NODE "  The cd internal command"
2293 .SH "  The cd internal command"
2295 .I cd
2296 command is interpreted by the Midnight Commander, it is not passed to
2297 the command shell for execution.  Thus it may not handle all of the
2298 nice macro expansion and substitution that your shell does, although it
2299 does some of them:
2301 .I Tilde substitution.
2302 The (~) will be substituted with your home directory, if you append a
2303 username after the tilde, then it will be substituted with the login
2304 directory of the specified user.
2306 For example, ~guest is the home directory for the user guest, while
2307 ~/guest is the directory guest in your home directory.
2309 .I Previous directory.
2310 You can jump to the directory you were previously by using the special
2311 directory name '\-' like this:
2312 .B cd \-
2314 .I CDPATH directories.
2315 If the directory specified to the
2316 .B cd
2317 command is not in the current directory, then The Midnight Commander
2318 uses the value in the environment variable
2319 .B CDPATH
2320 to search for the directory in any of the named directories.
2322 For example you could set your
2323 .B CDPATH
2324 variable to ~/src:/usr/src, allowing you to change your directory to
2325 any of the directories inside the ~/src and /usr/src directories, from
2326 any place in the file system by using its relative name (for example
2327 cd linux could take you to /usr/src/linux).
2328 .\"NODE "  Macro Substitution"
2329 .SH "  Macro Substitution"
2330 When accessing a
2331 .\"LINK2"
2332 user menu\&,
2333 .\"Menu File Edit"
2334 or executing an
2335 .\"LINK2"
2336 extension dependent command\&,
2337 .\"Extension File Edit"
2338 or running a command from the command line input, a simple macro
2339 substitution takes place.
2341 The macros are:
2343 .I %i
2344 The indent of blank space, equal the cursor column position.  For edit
2345 menu only.
2347 .I %y
2348 The syntax type of current file. For edit menu only.
2350 .I %k
2351 The block file name.
2353 .I %e
2354 The error file name.
2356 .I %m
2357 The current menu name.
2359 .IR %f " and " %p
2360 The current file name.
2362 .I %x
2363 The extension of current file name.
2365 .I %b
2366 The current file name without extension.
2368 .I %d
2369 The current directory name.
2371 .I %F
2372 The current file in the unselected panel.
2374 .I %D
2375 The directory name of the unselected panel.
2377 .I %t
2378 The currently tagged files.
2380 .I %T
2381 The tagged files in the unselected panel.
2383 .IR %u " and " %U
2384 Similar to the %t and %T macros, but in addition the files are untagged.
2385 You can use this macro only once per menu file entry or extension file
2386 entry, because next time there will be no tagged files.
2388 .IR %s " and " %S
2389 The selected files: The tagged files if there are any. Otherwise the
2390 current file.
2392 .I %cd
2393 This is a special macro that is used to change the current directory
2394 to the directory specified in front of it.  This is used primarily as
2395 an interface to the
2396 .\"LINK2"
2397 Virtual File System\&.
2398 .\"Virtual File System"
2400 .I %view
2401 This macro is used to invoke the internal viewer.  This macro can be
2402 used alone, or with arguments.  If you pass any arguments to this
2403 macro, they should be enclosed in brackets.
2405 The arguments are:
2406 .I ascii
2407 to force the viewer into ascii mode;
2408 .I hex
2409 to force the viewer into hex mode;
2410 .I nroff
2411 to tell the viewer that it should interpret the bold and underline
2412 sequences of nroff;
2413 .I unformatted
2414 to tell the viewer to not interpret nroff commands for making the text
2415 bold or underlined.
2417 .I %%
2418 The % character
2420 .I %{some text}
2421 Prompt for the substitution. An input box is shown and the text inside
2422 the braces is used as a prompt. The macro is substituted by the text
2423 typed by the user. The user can press ESC or F10 to cancel. This macro
2424 doesn't work on the command line yet.
2426 .I %var{ENV:default}
2427 If environment variable
2428 .I ENV
2429 is unset, the
2430 .I default
2431 is substituted.  Otherwise, the value of
2432 .I ENV
2433 is substituted.
2434 .\"NODE "  The subshell support"
2435 .SH "  The subshell support"
2436 The subshell support is a compile time option, that works with the
2437 shells: bash, tcsh and zsh.
2439 When the subshell code is activated the Midnight Commander will
2440 spawn a concurrent copy of your shell (the one defined in the
2441 .B SHELL
2442 variable and if it is not defined, then the one in the /etc/passwd
2443 file) and run it in a pseudo terminal, instead of invoking a new shell
2444 each time you execute a command, the command will be passed to the
2445 subshell as if you had typed it.  This also allows you to change the
2446 environment variables, use shell functions and define aliases that are
2447 valid until you quit the Midnight Commander.
2449 If you are using
2450 .B bash
2451 you can specify startup
2452 commands for the subshell in your ~/.local/share/mc/bashrc file and
2453 special keyboard maps in the ~/.local/share/mc/inputrc file.
2454 .B tcsh
2455 users may specify startup commands in the ~/.local/share/mc/tcshrc file.
2457 When the subshell code is used, you can suspend applications at any
2458 time with the sequence C\-o and jump back to the Midnight Commander, if
2459 you interrupt an application, you will not be able to run other
2460 external commands until you quit the application you interrupted.
2462 An extra added feature of using the subshell is that the prompt
2463 displayed by the Midnight Commander is the same prompt that you are
2464 currently using in your shell.
2467 .\"LINK2"
2468 OPTIONS
2469 .\"OPTIONS"
2470 section has more information on how you can control the subshell code.
2471 .\"NODE "Chmod"
2472 .SH "Chmod"
2473 The Chmod window is used to change the attribute bits in a group of
2474 files and directories.  It can be invoked with the C\-x c key combination.
2476 The Chmod window has two parts \-
2477 .I Permissions
2479 .IR File .
2481 In the File section are displayed the name of the file or directory
2482 and its permissions in octal form, as well as its owner and group.
2484 In the Permissions section there is a set of check buttons which
2485 correspond to the file attribute bits.  As you change the attribute
2486 bits, you can see the octal value change in the File section.
2488 To move between the widgets (buttons and check buttons) use the
2489 .I arrow keys
2490 or the
2491 .I Tab
2492 key.  To change the state of the check buttons or to select a button
2494 .I Space.
2495 You can also use the hotkeys on the buttons to quickly activate them.
2496 Hotkeys are shown as highlighted letters on the buttons.
2498 To set the attribute bits, use the Enter key.
2500 When working with a group of files or directories, you just click on
2501 the bits you want to set or clear.  Once you have selected the bits
2502 you want to change, you select one of the action buttons (Set marked
2503 or Clear marked).
2505 Finally, to set the attributes exactly to those specified, you can use
2507 .B [Set all]
2508 button, which will act on all the tagged files.
2510 .B [Marked all]
2511 set only marked attributes to all selected files
2513 .B [Set marked]
2514 set marked bits in attributes of all selected files
2516 .B [Clean marked]
2517 clear marked bits in attributes of all selected files
2519 .B [Set]
2520 set the attributes of one file
2522 .B [Cancel]
2523 cancel the Chmod command
2524 .\"NODE "Chown"
2525 .SH "Chown"
2526 The Chown command is used to change the owner/group of a file. The hot
2527 key for this command is C\-x o.
2528 .\"NODE "Advanced Chown"
2529 .SH "Advanced Chown"
2530 The Advanced Chown command is the
2531 .\"LINK2"
2532 Chmod
2533 .\"Chmod"
2535 .\"LINK2"
2536 Chown
2537 .\"Chown"
2538 command combined into one window. You can change the permissions and
2539 owner/group of files at once.
2540 .\"NODE "File Operations"
2541 .SH "File Operations"
2542 When you copy, move or delete files the Midnight Commander shows the
2543 file operations dialog.  It shows the files currently being processed
2544 and uses up to three progress bars.  The file bar indicates the
2545 percentage of the current file that has been processed so far.  The
2546 count bar shows how many of the tagged files have been handled.  The
2547 bytes bar indicates the percentage of the total size of the tagged files
2548 that has been handled.  If the verbose option is off, the file and bytes
2549 bars are not shown.
2551 There are two buttons at the bottom of the dialog. Pressing the Skip
2552 button will skip the rest of the current file. Pressing the Abort
2553 button will abort the whole operation, the rest of the files are
2554 skipped.
2556 There are three other dialogs which you can run into during the file
2557 operations.
2559 The error dialog informs about error conditions and has three choices.
2560 Normally you select either the Skip button to skip the file or the Abort
2561 button to abort the operation altogether.  You can also select the Retry
2562 button if you fixed the problem from another terminal.
2564 The replace dialog is shown when you attempt to copy or move a file on
2565 the top of an existing file.  The dialog shows the dates and sizes of
2566 the both files.  Press the Yes button to overwrite the file, the No
2567 button to skip the file, the All button to overwrite all the files, the
2568 None button to never overwrite and the Update button to overwrite if the
2569 source file is newer than the target file.  You can abort the whole
2570 operation by pressing the Abort button.
2572 The recursive delete dialog is shown when you try to delete a directory
2573 which is not empty.  Press the Yes button to delete the directory
2574 recursively, the No button to skip the directory, the All button to
2575 delete all the directories and the None button to skip all the non\-empty
2576 directories.  You can abort the whole operation by pressing the Abort
2577 button.  If you selected the Yes or All button you will be asked for a
2578 confirmation.  Type "yes" only if you are really sure you want to do the
2579 recursive delete.
2581 If you have tagged files and perform an operation on them only the files
2582 on which the operation succeeded are untagged. Failed and skipped files
2583 are left tagged.
2584 .\"NODE "Mask Copy/Rename"
2585 .SH "Mask Copy/Rename"
2586 The copy/move operations let you translate the names of files in an
2587 easy way.  To do it, you have to specify the correct source mask and
2588 usually in the trailing part of the destination specify some wildcards.
2589 All the files matching the source mask are copied/renamed according to
2590 the target mask.  If there are tagged files, only the tagged files
2591 matching the source mask are renamed.
2593 There are other options which you can set:
2595 .B Follow links
2597 determines whether make the symlinks and hardlinks in the source
2598 directory (recursively in subdirectories) new links in the target
2599 directory or whether would you like to copy their content.
2601 .B Dive into subdirs
2603 determines the behavior when the source directory is about to be copied,
2604 but the target directory already exists.  The default action is to copy
2605 the contents of the source directory into the target directory.
2606 Enabling this option causes copying the source directory itself into the
2607 target directory.
2609 For example, you want to copy directory
2610 .I /foo
2611 containing file
2612 .I bar
2614 .IR /bla/foo ,
2615 which is an already existing directory.  Normally (when
2616 .B Dive into subdirs
2617 is not set), mc would copy file
2618 .I /foo/bar
2619 into the file
2620 .IR /bla/foo/bar .
2621 By enabling this option the
2622 .I /bla/foo/foo
2623 directory will be created, and
2624 .I /foo/bar
2625 will be copied into
2626 .IR /bla/foo/foo/bar .
2628 .B Preserve attributes
2630 determines whether to preserve the permissions, timestamps and (if you
2631 are root) the ownership of the original files.  If this option is not
2632 set, the current value of the umask will be respected.
2634 .B Use shell patterns
2636 When this option is on you can use the '*' and '?' wildcards in the source
2637 mask. They work like they do in the shell. In the target mask only the '*'
2638 and '\\<digit>' wildcards are allowed. The first '*' wildcard in the target
2639 mask corresponds to the first wildcard group in the source mask,
2640 the second '*' corresponds to the second group and so on.  The '\\1' wildcard
2641 corresponds to the first wildcard group in the source mask, the '\\2' wildcard
2642 corresponds to the second group and so on all the way up to '\\9'.
2643 The '\\0' wildcard is the whole filename of the source file.
2645 Two examples:
2647 If the source mask is "*.tar.gz", the destination is "/bla/*.tgz" and the
2648 file to be copied is "foo.tar.gz", the copy will be "foo.tgz" in "/bla".
2650 Suppose you want to swap basename and extension so that "file.c" would
2651 become "c.file" and so on.  The source mask for this is "*.*" and the
2652 destination is "\\2.\\1".
2654 .B Use shell patterns off
2656 When the shell patterns option is off the MC doesn't do automatic
2657 grouping anymore. You must use '\\(...\\)' expressions in the source
2658 mask to specify meaning for the wildcards in the target mask. This is
2659 more flexible but also requires more typing. Otherwise target masks
2660 are similar to the situation when the shell patterns option is on.
2662 Two examples:
2664 If the source mask is "^\\(.*\\)\\.tar\\.gz$", the destination is
2665 "/bla/*.tgz" and the file to be copied is "foo.tar.gz", the copy
2666 will be "/bla/foo.tgz".
2668 Let's suppose you want to swap basename and extension so that "file.c"
2669 will become "c.file" and so on. The source mask for this is
2670 "^\\(.*\\)\\.\\(.*\\)$" and the destination is "\\2.\\1".
2672 .B Case Conversions
2674 You can also change the case of the filenames.  If you use '\\u'
2675 or '\\l' in the target mask, the next character will be converted to
2676 uppercase or lowercase correspondingly.
2678 If you use '\\U' or '\\L' in the target mask, the next characters will
2679 be converted to uppercase or lowercase correspondingly up to the
2680 next '\\E' or next '\\U', '\\L' or the end of the file name.
2682 The '\\u' and '\\l' are stronger than '\\U' and '\\L'.
2684 For example, if the source mask is '*' (
2685 .I Use shell patterns
2686 on) or '^\\(.*\\)$' (
2687 .I Use shell patterns
2688 off) and the target mask is '\\L\\u*' the file names will be converted
2689 to have initial upper case and otherwise lower case.
2691 You can also use '\\' as a quote character. For example, '\\\\' is
2692 a backslash and '\\*' is an asterisk.
2694 .B Stable symlinks
2696 commands Midnight Commander, that it should change symlinks in the target,
2697 so that they'll point to the same location as it did before. With absolute
2698 symbolic links this does nothing, but if you have a relative one, it will
2699 recompute its value, adding necessary ../ and other directory parts and making
2700 the value as short as possible (most modern filesystems keep short symlinks
2701 inside inodes and thus don't waste much disk space).
2703 .\"NODE "Select/Unselect Files"
2704 .SH "Select/Unselect Files"
2705 The dialog of group of files and directories selection or uselection.
2707 .\"LINK2"
2708 input line
2709 .\"Input Line Keys"
2710 allow enter the regular expression of filenames that will be
2711 selected/unselected.
2713 When
2714 .I Files only
2715 checkbox is on, only files will be selected.  If
2716 .I Files only
2717 is off, as files as directories will be selected.
2718 When
2719 .I Shell Patterns
2720 checkbox is on, the regular expression is much like the filename globbing
2721 in the shell (* standing for zero or more characters and ?  standing
2722 for one character). If
2723 .I Shell Patterns
2724 is off, then the tagging of files is done with normal regular
2725 expressions (see ed (1)). When
2726 .I Case sensitive
2727 checkbox is on, the selection will be case sensitive characters.
2729 .I Case sensitive
2730 is off, the case will be ignored.
2731 .\"NODE "Diff Viewer"
2732 .SH "Internal Diff Viewer"
2733 The mcdiff is a visual diff tool. You can compare two files and edit them
2734 in\-place (diffs are updated dynamically). You can browse and view a working
2735 copy from popular version control systems (GIT, Subversion, etc).
2737 Following shortcuts are available in internal diff viewer of Midnight
2738 Commander.
2740 .B F1
2741 Invoke the built\-in hypertext help viewer.
2743 .B F2
2744 Save modified files.
2746 .B F4
2747 Edit file of the left panel in the internal editor.
2749 .B F14
2750 Edit file of the right panel in the internal editor.
2752 .B F5
2753 Merge the current hunk. Only the current hunk will be merged.
2755 .B F7
2756 Start search.
2758 .B F17
2759 Continue search.
2761 .B F10, Esc, q
2762 Exit from diff viewer.
2764 .B Alt\-s, s
2765 Toggle show of hunk status.
2767 .B Alt\-n, l
2768 Toggle show of line numbers.
2770 .B f
2771 Maximize left panel.
2773 .B \=
2774 Make panels equal in width.
2776 .B \>
2777 Reduce the size of the right panel.
2779 .B \<
2780 Reduce the size of the left panel.
2782 .B c
2783 Toggle show of trailing carriage return (CR) symbol as ^M.
2785 .B 2, 3, 4, 8
2786 Set tabulation size
2788 .B C\-u
2789 Swap contents of diff panels.
2791 .B C\-r
2792 Refresh the screen.
2794 .B C\-o
2795 Switch to the subshell and show the command screen.
2797 .B Enter, Space, n
2798 Find next diff hunk.
2800 .B Backspace, p
2801 Find previous diff hunk.
2803 .B g
2804 Go to line.
2806 .B Down
2807 Scroll one line forward.
2809 .B Up
2810 Scroll one line backward.
2812 .B PageUp
2813 Move one page up.
2815 .B PageDown
2816 Mves one page down.
2818 .B Home, A1
2819 Moves to the line beginning.
2821 .B End
2822 Moves to the line end.
2824 .B C\-Home
2825 Move to the file beginning.
2827 .B C\-End, C1
2828 Move to the file end.
2829 .\"NODE "Internal File Viewer"
2830 .SH "Internal File Viewer"
2831 The internal file viewer provides two display modes: ASCII and hex.
2832 To toggle between modes, use the F4 key.
2834 The viewer will try to use the best method provided by your system or
2835 the file type to display the information.
2836 Some character sequences, which appear most often in preformatted manual
2837 pages, are displayed bold and underlined, thus making a pretty display
2838 of your files.
2840 When in hex mode, the search function accepts text in quotes and
2841 constant numbers.  Text in quotes is matched exactly after removing
2842 the quotes.  Each number matches one byte.  You can mix quoted text
2843 with constants like this:
2846 "String" \-1 0xBB 012 "more text"
2849 Note that 012 is an octal number.  \-1 is converted to 0xFF.
2851 Here is a listing of the actions associated with each key that the
2852 Midnight Commander handles in the internal file viewer.
2854 .B F1
2855 Invoke the built\-in hypertext help viewer.
2857 .B F2
2858 Toggle the wrap mode.
2860 .B F4
2861 Toggle the hex mode.
2863 .B F5
2864 Goto line.  This will prompt you for a line number and will display
2865 that line.
2867 .B F6, /.
2868 Regular expression search.
2870 .B ?,
2871 Reverse regular expression search.
2873 .B F7
2874 Normal search / hex mode search.
2876 .B C\-s, F17, n.
2877 Start normal search if there was no previous search expression else
2878 find next match.
2880 .B C\-r.
2881 Start reverse search if there was no previous search expression else
2882 find next match.
2884 .B F8
2885 Toggle Raw/Parsed mode: This will show the file as found on disk or if
2886 a processing filter has been specified in the mc.ext file, then the
2887 output from the filter. Current mode is always the other than written
2888 on the button label, since on the button is the mode which you enter
2889 by that key.
2891 .B F9
2892 Toggle the format/unformat mode: when format mode is on the viewer
2893 will interpret some string sequences to show bold and underline with
2894 different colors. Also, on button label is the other mode than current.
2896 .B F10, Esc.
2897 Exit the internal file viewer.
2899 .B next\-page, space, C\-v.
2900 Scroll one page forward.
2902 .B prev\-page, Alt\-v, C\-b, Backspace.
2903 Scroll one page backward.
2905 .B down\-key
2906 Scroll one line forward.
2908 .B up\-key
2909 Scroll one line backward.
2911 .B C\-l
2912 Refresh the screen.
2914 .B C\-o
2915 Switch to the subshell and show the command screen.
2917 .B "[n] m"
2918 Set the mark n.
2920 .B "[n] r"
2921 Jump to the mark n.
2923 .B C\-f
2924 Jump to the next file.
2926 .B C\-b
2927 Jump to the previous file.
2929 .B Alt\-r
2930 Toggle the ruler.
2932 .B Alt\-e
2933 to change charset of displayed text may use M\-e (Alt\-e).
2934 Recoding is made from selected codepage into system codepage. To
2935 cancel the recoding you may select "<No translation>" in charset
2936 selection dialog.
2938 It's possible to instruct the file viewer how to display a file, look
2939 at the
2940 .\"LINK2"
2941 Extension File Edit section
2942 .\"Extension File Edit"
2944 .\"NODE "Internal File Editor"
2945 .SH "Internal File Editor"
2946 The internal file editor is a full\-featured full screen editor.  It can
2947 edit files up to 64 megabytes.  It is possible to edit binary files.
2948 The internal file editor is invoked using
2949 .B F4
2950 if the
2951 .I use_internal_edit
2952 option is set in the initialization file.
2954 The features it presently supports are: block copy, move, delete, cut,
2955 paste; key for key undo; pull\-down menus; file insertion; macro
2956 commands; regular expression search and replace; shift\-arrow text highlighting
2957 (if supported by the terminal); insert\-overwrite toggle; word wrap;
2958 autoindent; tunable tab size; syntax highlighting for various file
2959 types; and an option to pipe text blocks through shell commands like
2960 indent and ispell.
2962 Sections:
2964 .\"LINK2"
2965 Options of editor in ini\-file
2966 .\"Internal File Editor / options"
2968 The editor is very easy to use and requires no tutoring. To see what
2969 keys do what, just consult the appropriate pull\-down menu. Other keys
2970 are: Shift movement keys do text highlighting.
2971 .B Ctrl\-Ins
2972 copies to the file
2973 .B mcedit.clip
2975 .B Shift\-Ins
2976 pastes from mcedit.clip.
2977 .B Shift\-Del
2978 cuts to
2979 .BR mcedit.clip ,
2981 .B Ctrl\-Del
2982 deletes highlighted text. Mouse highlighting also works, and you
2983 can override the mouse as usual by holding down the shift key
2984 while dragging the mouse to let normal terminal mouse highlighting
2985 work.
2987 To define a macro, press
2988 .B Ctrl\-R
2989 and then type out the key
2990 strokes you want to be executed. Press
2991 .B Ctrl\-R
2992 again when finished. You can then assign the macro to any key you
2993 like by pressing that key. The macro is executed when you press
2994 .B Ctrl\-A
2995 and then the assigned key. The macro is also executed if
2996 you press Meta, Ctrl, or Esc and the assigned key, provided that the
2997 key is not used for any other function. Once defined, the macro
2998 commands go into the file
2999 .B ~/.local/share/mc/mcedit/mcedit.macros
3000 You can delete a macro by deleting the
3001 appropriate line in this file.
3003 To change charset of displayed text may use M\-e (Alt\-e).
3004 Recoding is made from selected codepage into system codepage. To
3005 cancel the recoding you may select "<No translation>" in charset
3006 selection dialog.
3008 .B F19
3009 will format the currently highlighted block (plain text or
3010 .B C
3012 .B C++
3013 code or another). This is controlled by the
3014 file
3015 .B %prefix%/share/mc/edit.indent.rc
3016 which is copied to
3017 .B ~/.local/share/mc/mcedit/edit.indent.rc
3018 in your home directory the first time you use it.
3020 The editor also displays non\-us characters (160+). When editing
3021 binary files, you should set
3022 .B display bits
3023 to 7 bits in the options menu to keep the spacing clean.
3025 .\"NODE "Internal File Editor / options"
3026 .SH "Options of editor in ini\-file"
3028 Some editor options of ini\-file are described in this section.
3029 Options are placed in [Midnight\-Commander] section
3031 .I editor_wordcompletion_collect_entire_file
3032 Search autocomplete candidates in entire of file or just from
3033 begin of file to cursor position (0)
3035 .\"NODE "Screen selector"
3036 .SH "Screen selector"
3037 Midnight Commander supports running many internal modules (such as
3038 editor, viewer and diff viewer) simultaneously and switching between
3039 them without closing open files. Using several file managers at a time,
3040 however, is not currently supported.
3042 Let's call each of these modules a screen. There are three ways to
3043 switch between screens, using one of these global shortcuts:
3045 .B Alt\-}
3046 switch to the next screen;
3048 .B Alt\-{
3049 switch to the previous screen;
3051 .B Alt\-`
3052 open a dialog window with the list of currently open screens (or use the
3053 "Screen list" menu item).
3054 .\"NODE "Completion"
3055 .SH "Completion"
3056 Let the Midnight Commander type for you.
3058 Attempt to perform completion on the text before current position.  MC
3059 attempts completion treating the text as variable (if the text begins
3060 with
3061 .BR $ ),
3062 username (if the text begins with
3063 .BR ~ ),
3064 hostname (if the text begins with
3065 .BR @ )
3066 or command (if you are on the command line in the position where you
3067 might type a command, possible completions then include shell reserved
3068 words and shell built\-in commands as well) in turn.  If none of these
3069 matches, filename completion is attempted.
3071 Filename, username, variable and hostname completion works on all input
3072 lines, command completion is command line specific.  If the completion
3073 is ambiguous (there are more different possibilities), MC beeps and the
3074 following action depends on the setting of the
3075 .\"LINK2"
3076 Complete: show all
3077 .\"Configuration"
3078 option in the
3079 .\"LINK2"
3080 Configuration
3081 .\"Configuration"
3082 dialog.  If it is enabled, a list of all possibilities pops up next to
3083 the current position and you can select with the arrow keys and
3084 .B Enter
3085 the correct entry.  You can also type the first letters in which the
3086 possibilities differ to move to a subset of all possibilities and
3087 complete as much as possible.  If you press
3088 .B Alt\-Tab
3089 again, only the subset will be shown in the listbox, otherwise the first
3090 item which matches all the previous characters will be highlighted.  As
3091 soon as there is no ambiguity, dialog disappears, but you can hide it by
3092 canceling keys
3093 .BR Esc ,
3094 .B F10
3095 and left and right arrow keys. If
3096 .\"LINK2"
3097 Complete: show all
3098 .\"Configuration"
3099 is disabled, the dialog pops up only if you press
3100 .B Alt\-Tab
3101 for the second time, for the first time MC just beeps.
3103 Apply escaping of
3104 .BR ? ", " * " and " &
3105 symbols (as
3106 .BR \\? ", " \\* ", " \\& )
3107 in filenames to disallow use them as metasymbols in regular expressions
3108 when substitution is performed in the input line.
3110 .\"NODE "Virtual File System"
3111 .SH "Virtual File System"
3112 The Midnight Commander is provided with a code layer to access the file
3113 system; this code layer is known as the virtual file system switch.  The
3114 virtual file system switch allows the Midnight Commander to manipulate
3115 files not located on the Unix file system.
3117 Currently the Midnight Commander is packaged with some Virtual File
3118 Systems (VFS): the
3119 .I local
3120 file system, used for accessing the regular Unix file system; the
3121 .IR ftpfs ,
3122 used to manipulate files on remote systems with the FTP protocol; the
3123 .IR tarfs ,
3124 used to manipulate tar and compressed tar files; the
3125 .IR undelfs ,
3126 used to recover deleted files on ext2 file systems (the default file
3127 system for Linux systems),
3128 .I fish
3129 (for manipulating files over shell connections such as rsh and ssh).
3130 If the code was compiled with
3131 .I sftpfs
3132 (for manipulating files over SFTP connections).
3133 If the code was compiled with
3134 .I smbfs
3135 support, you can manipulate files on remote systems with the SMB (CIFS)
3136 protocol.
3138 A generic
3139 .I extfs
3140 (EXTernal virtual File System) is provided in order to easily expand
3141 VFS capabilities using scripts and external software.
3143 The VFS switch code will interpret all of the path names used and will
3144 forward them to the correct file system, the formats used for each one
3145 of the file systems is described later in their own section.
3146 .\"NODE "  FTP File System"
3147 .SH "  FTP File System"
3148 The FTP File System (ftpfs) allows you to manipulate files on remote
3149 machines.  To actually use it, you can use the
3150 .I FTP link
3151 item in the menu or directly change your current directory using the
3152 .I cd
3153 command to a path name that looks like this:
3155 .I ftp://[!][user[:pass]@]machine[:port][remote\-dir]
3158 .IR user ,
3159 .I port
3161 .I remote\-dir
3162 elements are optional.  If you specify the
3163 .I user
3164 element, the Midnight Commander will login to the remote machine as that
3165 user, otherwise it will use anonymous login or the login name from the
3166 .I ~/.netrc
3167 file.  The optional
3168 .I pass
3169 element is the password used for the connection.  Using the password in
3170 the VFS directory name is not recommended, because it can appear on the
3171 screen in clear text and can be saved to the directory history.
3173 To enable using FTP proxy, prepend
3174 .B !
3175 (an exclamation sign) to the hostname.
3177 Examples:
3180     ftp://ftp.nuclecu.unam.mx/linux/local
3181     ftp://tsx\-11.mit.edu/pub/linux/packages
3182     ftp://!behind.firewall.edu/pub
3183     ftp://guest@remote\-host.com:40/pub
3184     ftp://miguel:xxx@server/pub
3187 Please check the
3188 .\"LINK2"
3189 Virtual File System
3190 .\"Virtual FS"
3191 dialog box for ftpfs options.
3192 .\"NODE "  Tar File System"
3193 .SH "  Tar File System"
3194 The tar file system provides you with read\-only access to your tar
3195 files and compressed tar files by using the chdir command.  To change
3196 your directory to a tar file, you change your current directory to the
3197 tar file by using the following syntax:
3199 .I /filename.tar/utar://[dir\-inside\-tar]
3201 The mc.ext file already provides a shortcut for tar files, this means
3202 that usually you just point to a tar file and press return to enter
3203 into the tar file, see the
3204 .\"LINK2"
3205 Extension File Edit
3206 .\"Extension File Edit"
3207 section for details on how this is done.
3209 Examples:
3212     mc\-3.0.tar.gz/utar://mc\-3.0/vfs
3213     /ftp/GCC/gcc\-2.7.0.tar/utar://
3216 The latter specifies the full path of the tar archive.
3217 .\"NODE "  FIle transfer over SHell filesystem"
3218 .SH "  FIle transfer over SHell filesystem"
3219 The fish file system is a network based file system that allows you to
3220 manipulate the files in a remote machine as if they were local. To use
3221 this, the other side has to either run fish server, or has to have
3222 bash\-compatible shell.
3224 To connect to a remote machine, you just need to chdir
3225 into a special directory which name is in the following
3226 format:
3228 .I sh://[user@]machine[:options]/[remote\-dir]
3231 .I user,
3232 .I options
3234 .I remote\-dir
3235 elements are optional.  If you specify the
3236 .I user
3237 element, the Midnight Commander will try to login on the remote
3238 machine as that user, otherwise it will use your login name.
3240 The available
3241 .I options
3242 are:
3244   'C' \- use compression;
3245   'r' \- use rsh instead of ssh;
3246   port \- specify the port used by remote server.
3248 If the
3249 .I remote\-dir
3250 element is present, your current directory on the remote machine will be
3251 set to this one.
3253 Examples:
3256     sh://onlyrsh.mx:r/linux/local
3257     sh://joe@want.compression.edu:C/private
3258     sh://joe@noncompressed.ssh.edu/private
3259     sh://joe@somehost.ssh.edu:2222/private
3261 .\"NODE "  SFTP (SSH File Transfer Protocol) filesystem"
3262 .SH "  SFTP (SSH File Transfer Protocol) filesystem"
3263 The SFTP file system is a network based file system that allows you to
3264 manipulate the files in a remote machine as if they were local.
3266 To connect to a remote machine, you just need to chdir
3267 into a special directory which name is in the following
3268 format:
3270 .I sftp://[user@]machine:[port]/[remote\-dir]
3273 .I user,
3274 .I port
3276 .I remote\-dir
3277 elements are optional.  If you specify the
3278 .I user
3279 element, the Midnight Commander will try to login on the remote
3280 machine as that user, otherwise it will use your login name.
3281 .I port
3282 \- specify the port used by remote server (22 by default).
3283 If the
3284 .I remote\-dir
3285 element is present, your current directory on the remote machine will be
3286 set to this one.
3288 Examples:
3291     sftp://onlyrsh.mx/linux/local
3292     sftp://joe:password@want.compression.edu/private
3293     sftp://joe@noncompressed.ssh.edu/private
3294     sftp://joe@somehost.ssh.edu:2222/private
3296 .\"NODE "  Undelete File System"
3297 .SH "  Undelete File System"
3298 On Linux systems, if you asked configure to use the ext2fs undelete
3299 facilities, you will have the undelete file system available.
3300 Recovery of deleted files is only available on ext2 file systems.  The
3301 undelete file system is just an interface to the ext2fs library to
3302 retrieve all of the deleted files names on an ext2fs and provides and
3303 to extract the selected files into a regular partition.
3305 To use this file system, you have to chdir into the special file name
3306 formed by the "undel://" prefix and the file name where the actual
3307 file system resides.
3309 For example, to recover deleted files on the second partition of the
3310 first SCSI disk on Linux, you would use the following path name:
3313     undel://sda2
3316 It may take a while for the undelfs to load the required information
3317 before you start browsing files there.
3318 .\"NODE "  SMB File System"
3319 .SH "  SMB File System"
3320 The smbfs allows you to manipulate files on remote machines with SMB
3321 (or CIFS) protocol.  These include Windows for Workgroups,
3322 Windows 9x/ME/XP, Windows NT, Windows 2000 and Samba.
3323 To actually use it, you may try to use the panel command "SMB link..."
3324 (accessible from the menubar) or you may directly change your current
3325 directory to it using the cd command to a path name that looks like this:
3327 .I smb://[user@]machine[/service][/remote\-dir]
3330 .IR user ,
3331 .I service
3333 .I remote\-dir
3334 elements are optional.
3336 .IR user ,
3337 .I domain
3339 .I password
3340 can be specified in an input dialog.
3342 Examples:
3345     smb://machine/Share
3346     smb://other_machine
3347     smb://guest@machine/Public/Irlex
3349 .\"NODE "  EXTernal File System"
3350 .SH "  EXTernal File System"
3351 .B extfs
3352 allows you to integrate numerous features and file types into GNU Midnight
3353 Commander in an easy way, by writing scripts.
3355 Extfs filesystems can be divided into two categories:
3357 1. Stand\-alone filesystems, which are not associated with any existing
3358 file.  They represent certain system\-wide data as a directory tree.
3359 You can invoke them by typing
3360 .RI ' "cd fsname://" '
3361 where fsname is an extfs short name (see below).  Examples of such
3362 filesystems include audio (list audio tracks on the CD) or apt (list of
3363 all Debian packages in the system).
3365 For example, to list CD\-Audio tracks on your CD\-ROM drive, type
3368   cd audio://
3371 2. 'Archive' filesystems (like rpm, patchfs and more), which represent
3372 contents of a file as a directory tree.  It can consist of 'real' files
3373 compressed in an archive (urar, rpm) or virtual files, like messages
3374 in a mailbox (mailfs) or parts of a patch (patchfs).  To access such
3375 filesystems
3376 .RI ' fsname:// '
3377 should be appended to the archive name.  Note that the archive itself
3378 can be on another vfs.
3380 For example, to list contents of a zip archive documents.zip type
3383   cd documents.zip/uzip://
3386 In many aspects, you could treat extfs like any other directory.  For
3387 instance, you can add it to the hotlist or change to it from directory
3388 history.  An important limitation is that you cannot invoke shell
3389 commands inside extfs, just like any other non\-local VFS.
3391 Common extfs scripts included with Midnight Commander are:
3393 .B a
3394 access 'A:' DOS/Windows diskette
3395 .RI ( "cd a://" ).
3397 .B apt
3398 front end to Debian's APT package management system
3399 .RI ( "cd apt://" ).
3401 .B audio
3402 audio CD ripping and playing
3403 .RI ( "cd audio://"
3405 .IR "cd device/audio://" ).
3407 .B bpp
3408 package of Bad Penguin GNU/Linux distribution
3409 .RI ( "cd file.bpp/bpp://" ).
3411 .B deb
3412 package of Debian GNU/Linux distribution
3413 .RI ( "cd file.deb/deb://" ).
3415 .B dpkg
3416 Debian GNU/Linux installed packages
3417 .RI ( "cd deb://" ).
3419 .B hp48
3420 view and copy files to/from a HP48 calculator
3421 .RI ( "cd hp48://" ).
3423 .B lslR
3424 browsing of lslR listings as found on many FTPs
3425 .RI ( "cd filename/lslR://" ).
3427 .B mailfs
3428 mbox\-style mailbox files support
3429 .RI ( "cd mailbox/mailfs://" ).
3431 .B patchfs
3432 extfs to handle unified and context diffs
3433 .RI ( "cd filename/patchfs://" ).
3435 .B rpm
3436 RPM package
3437 .RI ( "cd filename/rpm://" ).
3439 .B rpms
3440 RPM database management
3441 .RI ( "cd rpms://" ).
3443 .B ulha, urar, uzip, uzoo, uar, uha
3444 archivers
3445 .RI ( "cd archive/xxxx://"
3446 where xxxx is one of:
3447 .IR ulha ,
3448 .IR urar ,
3449 .IR uzip ,
3450 .IR uzoo ,
3451 .IR uar ,
3452 .IR uha ).
3454 You could bind file type/extension to specified extfs as described in the
3455 .\"LINK2"
3456 Extension File Edit
3457 .\"Extension File Edit"
3458 section.  Here is an example entry for Debian packages:
3461   regex/\.deb$
3462           Open=%cd %p/deb://
3464 .\"NODE "Colors"
3465 .SH "Colors"
3466 The Midnight Commander will try to detect if your terminal supports
3467 color using the terminal database and your terminal name.  Sometimes
3468 it gets confused, so you may force color mode or disable color mode
3469 using the \-c and \-b flag respectively.
3471 If the program is compiled with the Slang screen manager instead of
3472 ncurses, it will also check the variable
3473 .B COLORTERM,
3474 if it is set, it has the same effect as the \-c flag.
3476 You may specify terminals that always force color mode
3477 by adding the
3478 .I color_terminals
3479 variable to the Colors section of the initialization file.  This will
3480 prevent the Midnight Commander from trying to detect if your terminal
3481 supports color.  Example:
3484 [Colors]
3485 color_terminals=linux,xterm
3486 color_terminals=terminal\-name1,terminal\-name2...
3489 The program can be compiled with both ncurses and slang, ncurses does
3490 not provide a way to force color mode: ncurses uses just the
3491 information in the terminal database.
3493 The Midnight Commander provides a way to change the default colors.
3494 Currently the colors are configured using the environment variable
3495 .B MC_COLOR_TABLE
3496 or the Colors section in the initialization file.
3498 In the Colors section, the default color map is loaded from the
3499 .I base_color
3500 variable.  You can specify an alternate color map for a terminal by
3501 using the terminal name as the key in this section.  Example:
3504 [Colors]
3505 base_color=
3506 xterm=menu=magenta:marked=,magenta:markselect=,red
3509 The format for the color definition is:
3512   <keyword>=<fgcolor>,<bgcolor>,<attributes>:<keyword>=...
3515 The colors are optional, and the keywords are: normal, selected, disabled, marked,
3516 markselect, errors, input, inputmark, inputunchanged, commandlinemark,
3517 reverse, gauge, header, inputhistory, commandhistory. Button bar colors are:
3518 bbarhotkey, bbarbutton. Status bar color: statusbar. Menu colors are: menunormal,
3519 menusel, menuhot, menuhotsel, menuinactive. Dialog colors are: dnormal, dfocus,
3520 dhotnormal, dhotfocus, dtitle. Error dialog colors are: errdfocus, errdhotnormal,
3521 errdhotfocus, errdtitle.  Help colors are: helpnormal, helpitalic, helpbold,
3522 helplink, helpslink, helptitle.  Viewer color are: viewbold, viewunderline, viewselected.
3523 Editor colors are: editnormal, editbold, editmarked, editwhitespace, editlinestate.
3524 Popup menu colors are: pmenunormal, pmenusel, pmenutitle.
3526 .I header
3527 determines the color of panel header, the line that contains column titles
3528 and sort mode indicator.
3530 .I input
3531 determines the color of input lines used in query dialogs.
3533 .I gauge
3534 determines the color of the filled part of the progress bar (gauge),
3535 which is used to show the user the progress of file operations, such as
3536 copying.
3538 .I disabled
3539 determines the color of the widget that cannot be selected.
3541 The dialog boxes use the following colors:
3542 .I dnormal
3543 is used for the normal text,
3544 .I dfocus
3545 is the color used for the currently selected component,
3546 .I dhotnormal
3547 is the color used to differentiate the hotkey color in normal
3548 components, whereas the
3549 .I dhotfocus
3550 color is used for the highlighted color in the currently selected
3551 component.
3553 Menus use the same scheme but uses the menunormal, menusel, menuhot, menuhotsel
3554 and menuinactive tags instead.
3556 Help uses the following colors:
3557 .I helpnormal
3558 is used for normal text,
3559 .I helpitalic
3560 is used for text which is emphasized in italic in the manual page,
3561 .I helpbold
3562 is used for text which is emphasized in bold in the manual page,
3563 .I helplink
3564 is used for not selected hyperlinks and
3565 .I helpslink
3566 is used for selected hyperlink.
3568 Popup menu uses following colors:
3569 .I pmenunormal
3570 is used for non-selected menu items and as a main color of popup menu window,
3571 .I pmenusel
3572 is used for selected menu item,
3573 .I pmenutitle
3574 is used for popup menu title.
3576 The possible colors are: black, gray, red, brightred, green,
3577 brightgreen, brown, yellow, blue, brightblue, magenta, brightmagenta,
3578 cyan, brightcyan, lightgray and white. And there is a special keyword
3579 for transparent background. It is 'default'. The 'default' can only be
3580 used for background color. Another special keyword "base" means mc's main
3581 colors.  When 256 colors are available, they can be specified either as
3582 color16 to color255, or as rgb000 to rgb555 and gray0 to gray23. Example:
3585 [Colors]
3586 base_color=normal=white,default:marked=magenta,default
3589 Attributes can be any of bold, underline, reverse and blink, appended by a
3590 plus sign if more than one are desired.  The special word "none" means no
3591 attributes, without attempting to fall back to base_color.  Example:
3594 menuhotsel=yellow;black;bold+underline
3597 .\"NODE "Skins"
3598 .SH "Skins"
3599 You can change the appearance of Midnight Commander.
3600 To do this, you must specify a file that contain descriptions of colors
3601 and lines to draw boxes. Redefining of the colors is entirely compatible
3602 with the assignment of colors, as described in Section
3603 .\"LINK2"
3604 Colors\&.
3605 .\"Colors"
3607 If your skin contains any of 256\-color definitions, you should define
3608 the '256colors' key set to TRUE value in [skin] section.
3611 A skin\-file is searched on the following algorithm (to the first one found):
3614 1) command line option
3615 .B \-S \<skin\>
3617 .B \-\-skin=\<skin\>
3619 2) Environment variable
3620 .B MC_SKIN
3622 3) Parameter
3623 .B skin
3624 in section
3625 .B [Midnight\-Commander]
3626 in config file.
3628 4) File
3629 .B %sysconfdir%/mc/skins/default.ini
3631 5) File
3632 .B %prefix%/share/mc/skins/default.ini
3635 Command line option, environment variable and parameter in config file may
3636 contain the absolute path to the skin\-file (with the extension \.ini
3637 or without it). Search of skin\-file will occur in (to the first one found):
3640 .B ~/.local/share/mc/skins/
3643 .B @sysconfdir@/mc/skins/
3646 .B %prefix%/share/mc/skins/
3650 For getting extended info, refer to:
3652 .\"LINK2"
3653 Description of section and parameters
3654 .\"Skins sections"
3656 .\"LINK2"
3657 Color pair definitions
3658 .\"Skins colors"
3660 .\"LINK2"
3661 Draw lines
3662 .\"Skins lines"
3664 .\"LINK2"
3665 Compatibility
3666 .\"Skins oldcolors"
3669 .\"NODE "  Skins sections"
3670 .SH "  Description of section and parameters"
3672 Section
3673 .B [skin]
3674 contain metainfo for skin\-file. Parameter
3675 .I description
3676 contain short text about skin.
3679 Section
3680 .B [filehighlight]
3681 contain descriptions of color pairs for filenames highlighting.
3682 Name of parameters must be equal to names of sections into
3683 filehighlight.ini file.
3685 .\"LINK2"
3686 Filenames Highlight
3687 .\"Filenames Highlight"
3688 for getting more info.
3691 Section
3692 .B [core]
3693 describes the elements that are used everywhere.
3695 .I _default_
3696 Default color pair. Used in all other sections if they not contain
3697 color definitions
3699 .I selected
3700 cursor
3702 .I marked
3703 selected data
3705 .I markselect
3706 cursor on selected data
3708 .I gauge
3709 color of the filled part of the progress bar
3711 .I input
3712 color of input lines used in query dialogs
3714 .I inputmark
3715 color of input selected text
3717 .I inputunhanged
3718 color of input text before first modification or cursor movement
3720 .I commandlinemark
3721 color of selected text in command line
3723 .I reverse
3724 reverse color
3726 Section
3727 .B [dialog]
3728 describes the elements that are placed on dialog windows (except error dialogs).
3730 .I _default_
3731 Default color for this section. Used [core]._default_ if not specified
3733 .I dfocus
3734 Color of active element (in focus)
3736 .I dhotnormal
3737 Color of hotkeys
3739 .I dhotfocus
3740 Color of hotkeys in focused element
3743 Section
3744 .B [error]
3745 describes the elements that are placed on error dialog windows
3747 .I _default_
3748 Default color for this section. Used [core]._default_ if not specified
3750 .I errdhotnormal
3751 Color of hotkeys
3753 .I errdhotfocus
3754 Color of hotkeys in focused element
3757 Section
3758 .B [menu]
3759 describes the elements that are placed in menu. This section describes
3760 system menu (called by F9) and user\-defined menus (called by F2 in panels
3761 and by F11 in editor).
3763 .I _default_
3764 Default color for this section. Used [core]._default_ if not specified
3766 .I entry
3767 Color of menu items
3769 .I menuhot
3770 Color of menu hotkeys
3772 .I menusel
3773 Color of active menu item (in focus)
3775 .I menuhotsel
3776 Color of menu hotkeys in focused menu item
3778 .I menuinactive
3779 Color of inactive menu
3782 Section
3783 .B [help]
3784 describes the elements that are placed on help window.
3786 .I _default_
3787 Default color for this section. Used [core]._default_ if not specified
3789 .I helpitalic
3790 Color pair for element with
3791 .B italic
3792 attribute
3794 .I helpbold
3795 Color pair for element with
3796 .B bold
3797 attribute
3799 .I helplink
3800 Color of links
3802 .I helpslink
3803 Color of active link (on focus)
3806 Section
3807 .B [editor]
3808 describes the colors of elements placed in editor.
3810 .I _default_
3811 Default color for this section. Used [core]._default_ if not specified
3813 .I editbold
3814 Color pair for element with
3815 .B bold
3816 attribute
3818 .I editmarked
3819 Color of selected text
3821 .I editwhitespace
3822 Color of tabs and trailing spaces highlighting
3824 .I editlinestate
3825 Color for line state area
3828 Section
3829 .B [viewer]
3830 describes the colors of elements placed in viewer.
3832 .I viewunderline
3833 Color pair for element with
3834 .B underline
3835 attribute
3837 .\"NODE "  Skins colors"
3838 .SH "  Color pair definitions"
3839 Any parameter in skin\-file contain definition of color pair.
3841 Color pairs described as two colors and the optional attributes
3842 separated by ';'. First field sets the foreground color, second
3843 field sets background color, third field sets the attributes.
3844 Any of the fields may be omitted, in this case value will be
3845 taken from default color pair (global color pair or from default
3846 color pair of this section).
3848 Example:
3851 [core]
3852     # green on black
3853     _default_=green;black
3854     # green (default) on blue
3855     selected=;blue
3856     # yellow on black (default)
3857     # underlined yellow on black (default)
3858     marked=yellow;;underline
3862 Possible colors (names) and attributes are described in
3863 .\"LINK2"
3864 Colors\&.
3865 .\"Colors"
3866 section.
3868 .\"NODE "  Skins lines"
3869 .SH "  Draw lines"
3870 Lines sets in section
3871 .B [Lines]
3872 into skin\-file. By default single lines are used, but you may redefine
3873 to usage of any utf\-8 symbols (like to lines, for example).
3875 .I WARNING!!!
3876 When you build Midnight Commander with the Ncurses screen library
3877 usage of drawing lines is limited!
3878 Possible only drawing a single lines.
3879 For all questions and comments please contact the developers of Ncurses.
3882 Descriptions of parameters
3883 .BR [Lines] :
3885 .I lefttop
3886 left\-top line fragment.
3888 .I righttop
3889 right\-top line fragment.
3891 .I centertop
3892 down branch of horizontal line
3894 .I centerbottom
3895 up branch of horizontal line
3897 .I leftbottom
3898 left\-bottom line fragment
3900 .I rightbottom
3901 right\-bottom line fragment
3903 .I leftmiddle
3904 right branch of vertical line
3906 .I rightmiddle
3907 left branch of vertical line
3909 .I centermiddle
3910 cross of lines
3912 .I horiz
3913 horizontal line
3915 .I vert
3916 vertical line
3918 .I thinhoriz
3919 thin horizontal line
3921 .I thinvert
3922 thin vertical line
3925 .\"NODE "  Skins oldcolors"
3926 .SH "  Compatibility"
3928 Appointment of color  by skin\-files fully compatible with
3929 the appointment of the colors described in
3930 .\"LINK2"
3931 Colors\&.
3932 .\"Colors"
3933 section.
3935 In this case, reassignment of colors has priority over the skin file and is
3936 complementary.
3938 .\"NODE "Filenames Highlight"
3939 .SH "Filenames Highlight"
3940 Section [filehighlight] in current skin\-file contains key names as
3941 highlight groups and values as color pairs. Color pairs is documented
3943 .\"LINK2"
3944 Skins
3945 .\"Skins"
3946 section.
3948 Rules of filenames highlight are placed in %prefix%/share/mc/filehighlight.ini file
3949 (~/.config/mc/filehighlight.ini).
3950 Name of section in this file must be equal to parameters names in
3951 [filehighlight] section (in current skin\-file).
3953 Keys in these groups are:
3955 .I type
3956 file type. If present, all other options are ignored.
3958 .I regexp
3959 regular expression. If present, 'extensions' option is ignored.
3961 .I extensions
3962 list of extensions of files. Separated by ';' sign.
3964 .I extensions_case
3965 (make sense only with 'extensions' parameter) make 'extensions'
3966 rule case sentitive (true) or not (false).
3968 `type' key may have values:
3970 \- FILE (all files)
3971   \- FILE_EXE
3972 \- DIR (all directories)
3973   \- LINK_DIR
3974 \- LINK (all links except stale link)
3975   \- HARDLINK
3976   \- SYMLINK
3977 \- STALE_LINK
3978 \- DEVICE (all device files)
3979   \- DEVICE_BLOCK
3980   \- DEVICE_CHAR
3981 \- SPECIAL (all special files)
3982   \- SPECIAL_SOCKET
3983   \- SPECIAL_FIFO
3984   \- SPECIAL_DOOR
3988 .\"NODE "Special Settings"
3989 .SH "Special Settings"
3990 Most of the Midnight Commander settings can be changed from the
3991 menus. However, there are a small number of settings which can only be
3992 changed by editing the setup file.
3994 These variables may be set in your ~/.config/mc/ini file:
3996 .I clear_before_exec
3997 By default the Midnight Commander clears the screen before executing a
3998 command.  If you would prefer to see the output of the command at the
3999 bottom of the screen, edit your ~/.config/mc/ini file and change the value of
4000 the field clear_before_exec to 0.
4002 .I confirm_view_dir
4003 If you press F3 on a directory, normally MC enters that directory.  If
4004 this flag is set to 1, then MC will ask for confirmation before changing
4005 the directory if you have files tagged.
4007 .I ftpfs_retry_seconds
4008 This value is the number of seconds the Midnight Commander will wait
4009 before attempting to reconnect to an FTP server that has denied the
4010 login.  If the value is zero, the login will no be retried.
4012 .I max_dirt_limit
4013 Specifies how many screen updates can be skipped at most in the internal
4014 file viewer.  Normally this value is not significant, because the code
4015 automatically adjusts the number of updates to skip according to the
4016 rate of incoming keystrokes.  However, on very slow machines or
4017 terminals with a fast keyboard auto repeat, a big value can make screen
4018 updates too jumpy.
4020 It seems that setting max_dirt_limit to 10 causes the best behavior,
4021 and that is the default value.
4023 .I mouse_move_pages_viewer
4024 Controls if scrolling with the mouse is done by pages or line by line
4025 on the internal file viewer.
4027 .I only_leading_plus_minus
4028 Allow special treatment for '+', '\-', '*' in the command line (select,
4029 unselect, reverse selection) only if the command line is empty.  You
4030 don't need to quote those characters in the middle of the command line.
4031 On the other hand, you cannot use them to change selection when the
4032 command line is not empty.
4034 .I show_output_starts_shell
4035 This variable only works if you are not using the subshell support.
4036 When you use the C\-o keystroke to go back to the user screen, if this
4037 one is set, you will get a fresh shell.  Otherwise, pressing any key
4038 will bring you back to the Midnight Commander.
4040 .I timeformat_recent
4041 Change the time format used to display dates less than 6 months from
4042 now.
4043 See strftime or date man page for the format specification. If this
4044 option is absent, default timeformat is used.
4046 .I timeformat_old
4047 Change the time format used to display  dates older than 6 months from
4048 now or for dates in the future.
4049 See strftime or date man page for the format specification. If this
4050 option is absent, default timeformat is used.
4052 .I torben_fj_mode
4053 If this flag is set, then the home and end keys will work slightly
4054 different on the panels, instead of moving the selection to the first
4055 and last files in the panels, they will act as follows:
4057 The home key will: Go up to the middle line, if below it; else go to the
4058 top line unless it is already on the top line, in this case it will go
4059 to the first file in the panel.
4061 The end key has a similar behavior: Go down to the middle line, if over
4062 it; else go to the bottom line unless you already are at the bottom
4063 line, in such case it will move the selection to the last file name in
4064 the panel.
4066 .I use_file_to_guess_type
4067 If this variable is on (the default) it will spawn the file command to
4068 match the file types listed on the
4069 .\"LINK2"
4070 mc.ext file\&.
4071 .\"Extension File Edit"
4073 .I xtree_mode
4074 If this variable is on (default is off) when you browse the file system
4075 on a Tree panel, it will automatically reload the other panel with the
4076 contents of the selected directory.
4078 .I fish_directory_timeout
4079 This variable holds the lifetime of a directory cache entry in seconds. The
4080 default value is 900 seconds.
4082 .I clipboard_store
4083 This variable contains path (with options) to the external clipboard
4084 utility like 'xclip' to read text into X selection from file.
4085 For example:
4088 clipboard_store=xclip \-i
4091 .I clipboard_paste
4092 This variable contains path (with options) to the external clipboard
4093 utility like 'xclip' to print the selection to standard out.
4094 For example:
4097 clipboard_pastee=xclip \-o
4100 .I autodetect_codeset
4101 This option allows use the `enca' command to autodetect codeset of text files
4102 in internal viewer and editor. List of valid values can be obtain by the
4103 `enca \-\-list languages | cut \-d : \-f1' command. Option must be located
4104 in the [Misc] section.
4106 For example:
4109 autodetect_codeset=russian
4111 .\"NODE "Parameters for external editor or viewer"
4112 .SH "Parameters for external editor or viewer"
4113 The Midnight Commander provides a way for specify an options for external editors
4114 and viewers. The Midnight Commander tries to search the
4115 "[External editor or viewer parameters]" section in the system initialization file
4116 (the mc.lib file located in the Midnight Commander library directory)
4117 and then in the ~/.config/mc/ini file. The option name should be equal to the name
4118 (full pathname) of external editor or viewer. The option value can contain following
4119 variables:
4121 .I %filename
4123 The filename to edit/view.
4125 .I %lineno
4127 The start line in the opening file.
4129 For example:
4132 [External editor or viewer parameters]
4133     vi=%filename +%lineno
4134     joe=%filename +%lineno
4135     more=%filename +%lineno
4137 .\"NODE "Terminal databases"
4138 .SH "Terminal databases"
4139 The Midnight Commander provides a way to fix your system terminal
4140 database without requiring root privileges.  The Midnight Commander
4141 searches in the system initialization file (the mc.lib file located in
4142 the Midnight Commander library directory) and in the 
4143 ~/.config/mc/ini file for the section 
4144 "terminal:your\-terminal\-name" and then for the section
4145 "terminal:general", each line of the section contains a key symbol that
4146 you want to define, followed by an equal sign and the definition for the
4147 key.  You can use the special \\e form to represent the escape character
4148 and the ^x to represent the control\-x character.
4150 The possible key symbols are:
4153 f0 to f20     Function keys f0\-f20
4154 bs            backspace
4155 home          home key
4156 end           end key
4157 up            up arrow key
4158 down          down arrow key
4159 left          left arrow key
4160 right         right arrow key
4161 pgdn          page down key
4162 pgup          page up key
4163 insert        the insert character
4164 delete        the delete character
4165 complete      to do completion
4168 For example, to define the key insert to be the Escape + [ + O + p, you
4169 set this in the ini file:
4172 insert=\\e[Op
4176 Also now you can use
4177 .I extended learn keys.
4178 For example:
4181     ctrl\-alt\-right=\\e[[1;6C
4182     ctrl\-alt\-left=\\e[[1;6D
4186 This means that ctrl+alt+left sends a \\e[[1;6D escape sequence
4187 and therefore Midnight Commander interprets "\\e[[1;6D" as Ctrl\-Alt\-Left.
4191 .I complete
4192 key symbol represents the escape sequences used to invoke the completion
4193 process, this is invoked with Alt\-tab, but you can define other keys to do
4194 the same work (on those keyboard with tons of nice and unused keys
4195 everywhere).
4196 .SH ""
4197 .\"NODE "FILES"
4198 .SH "FILES"
4199 Full paths below may vary between installations.  They are also affected
4200 by the
4201 .BR MC_DATADIR
4202 environment variable. If it's set, its value is used instead of
4203 %prefix%/share/mc in the paths below.
4205 .I %prefix%/share/mc/mc.hlp
4207 The help file for the program.
4209 .I %prefix%/share/mc/mc.ext
4211 The default system\-wide extensions file.
4213 .I ~/.config/mc/mc.ext
4215 User's own extension, view configuration and edit configuration
4216 file.  They override the contents of the system wide files if present.
4218 .I %prefix%/share/mc/mc.ini
4220 The default system\-wide setup for the Midnight Commander, used only if
4221 the user doesn't have his own ~/.config/mc/ini file.
4223 .I %prefix%/share/mc/mc.lib
4225 Global settings for the Midnight Commander.  Settings in this file
4226 affect all users, whether they have ~/.config/mc/ini or not.  Currently, only
4227 .\"LINK2"
4228 terminal settings
4229 .\"Terminal databases"
4230 are loaded from mc.lib.
4232 .I ~/.config/mc/ini
4234 User's own setup. If this file is present then the setup is loaded
4235 from here instead of the system\-wide startup file.
4237 .I %prefix%/share/mc/mc.hint
4239 This file contains the hints displayed by the program.
4241 .I %prefix%/share/mc/mc.menu
4243 This file contains the default system\-wide applications menu.
4245 .I ~/.config/mc/menu
4247 User's own application menu. If this file is present it is used instead
4248 of the system\-wide applications menu.
4250 .I ~/.cache/mc/Tree
4252 The directory list for the directory tree and tree view features.
4254 .I ~/.local/share/mc.menu
4256 Local user\-defined menu. If this file is present, it is used instead of
4257 the home or system\-wide applications menu.
4259 To change default root directory of MC, you can use
4260 .BR MC_HOME
4261 environment variable. The value of MC_HOME must be an absolute path. If MC_HOME
4262 is unset or empty, HOME variable is used. If HOME is unset or empty, MC
4263 directories are get from GLib library.
4264 .\"SKIP_SECTION"
4265 .SH "LICENSE"
4266 This program is distributed under the terms of the GNU General Public
4267 License as published by the Free Software Foundation. See the built\-in
4268 help for details on the License and the lack of warranty.
4269 .\"NODE "AVAILABILITY"
4270 .SH "AVAILABILITY"
4271 The latest version of this program can be found at
4272 ftp://ftp.gnu.org/gnu/mc/.
4273 .\"NODE "SEE ALSO"
4274 .SH "SEE ALSO"
4275 ed(1), gpm(1), terminfo(1), view(1), sh(1), bash(1),
4276 tcsh(1), zsh(1).
4279 The Midnight Commander page on the World Wide Web:
4280         http://www.midnight\-commander.org/
4282 .\"NODE "AUTHORS"
4283 .SH "AUTHORS"
4284 Authors and contributors are listed in the AUTHORS file in the source
4285 distribution.
4286 .\"NODE "BUGS"
4287 .SH "BUGS"
4288 See the file TODO in the distribution for information on what remains to
4289 be done.
4291 If you want to report a problem with the program, please send mail to
4292 this address: mc\-devel@gnome.org.
4294 Provide a detailed description of the bug, the version of the program
4295 you are running
4296 .RI ( "mc \-V"
4297 displays this information), the operating system you are running the
4298 program on.  If the program crashes, we would appreciate a stack trace.