doc: man pages fixes
[midnight-commander.git] / doc / man / mc.1.in
blob4ea7a4b645bde64b76865c11fe82bcf4bff0739d
1 .\" -*- mode: troff; coding: UTF-8 -*-
2 .\"TOPICS "Topics:"
3 .TH MC 1 "%DATE_OF_MAN_PAGE%" "MC Version %DISTR_VERSION%" "GNU Midnight Commander"
4 .\"SKIP_SECTION"
5 .SH "NAME"
6 mc \- Visual shell for Unix\-like systems.
7 .\"SKIP_SECTION"
8 .SH "USAGE"
9 .B mc
10 [\-abcCdfhPstuUVx] [\-l log] [dir1 [dir2]] [\-e [file] ...] [\-v file]
11 .\"NODE "DESCRIPTION"
12 .SH "DESCRIPTION"
13 GNU Midnight Commander is a directory browser/file manager for
14 Unix\-like operating systems.
15 .\"NODE "OPTIONS"
16 .\"DONT_SPLIT"
17 .SH "OPTIONS"
18 .TP
19 .I \-a, \-\-stickchars
20 Disable usage of graphic characters for line drawing.
21 .TP
22 .I \-b, \-\-nocolor
23 Force black and white display.
24 .TP
25 .I \-c, \-\-color
26 Force color mode, please check the section
27 .\"LINK2"
28 Colors
29 .\"Colors"
30 for more information.
31 .TP
32 .I \-C arg, \-\-colors=arg
33 Specify a different color set in the command line.  The format of arg is
34 documented in the
35 .\"LINK2"
36 Colors
37 .\"Colors"
38 section.
39 .TP
40 .I \-\-configure\-options
41 Display configure options.
42 .TP
43 .I \-d, \-\-nomouse
44 Disable mouse support.
45 .TP
46 .I \-D N, \-\-debuglevel=N
47 Save the debug level for SMB VFS. N is in 0\-10 range.
48 .TP
49 .I \-e [file], \-\-edit[=file]
50 Start the internal editor.  If the file is specified, open it on
51 startup.  See also
52 .BR "mcedit (1)" .
53 .TP
54 .I \-f, \-\-datadir
55 Display the compiled\-in search paths for Midnight Commander files.
56 .TP
57 .I \-F, \-\-datadir\-info
58 Display extended info about compiled\-in paths for
59 Midnight Commander.
60 .TP
61 .I \-g, \-\-oldmouse
62 Force a "normal tracking" mouse mode. Used when running on
63 xterm\-capable terminals (tmux/screen).
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 \-l file, \-\-ftplog=file
73 Save the ftpfs dialog with the server in file.
74 .TP
75 .I \-\-nokeymap
76 Don't load key bindings from any file, use default hardcoded keys.
77 .TP
78 .I \-P file, \-\-printwd=file
79 Print the last working directory to the specified file.  This option is
80 not meant to be used directly.  Instead, it's used from a special shell
81 script that automatically changes the current directory of the shell to
82 the last directory the Midnight Commander was in.  Source the file
83 .B %libexecdir%/mc/mc.sh
84 (bash and zsh users) or
85 .B %libexecdir%/mc.csh
86 (tcsh users) respectively to define
87 .B mc
88 as an alias to the appropriate shell script.
89 .TP
90 .I \-s, \-\-slow
91 Set alternative mode drawing of frameworks.
92 If the section [Lines] is not filled, the symbol for the pseudographics
93 frame is a space, otherwise the frame characters are taken from following
94 parameters.
96 .B You can redefine the following variables:
97 .TP
98 .B lefttop
99 left\-top corner
101 .B righttop
102 right\-top corner
104 .B centertop
105 center\-top cross
107 .B centerbottom
108 center\-bottom cross
110 .B leftbottom
111 left\-bottom corner
113 .B rightbottom
114 right\-bottom corner
116 .B leftmiddle
117 left\-middle cross
119 .B rightmiddle
120 right\-middle cross
122 .B centermiddle
123 center cross
125 .B horiz
126 default horizontal line
128 .B vert
129 default vertical line
131 .B thinhoriz
132 thin horizontal line
134 .B thinvert
135 thin vertical line
137 .I \-S arg, \-\-skin=arg
138 Specify a name of skin in the command line. Technology of skins is
139 documented in the
140 .\"LINK2"
141 Skins
142 .\"Skins"
143 section.
145 .I \-t, \-\-termcap
146 Used only if the code was compiled with Slang and terminfo: it makes
147 the Midnight Commander use the value of the
148 .B TERMCAP
149 variable for the terminal information instead of the information on
150 the system wide terminal database
152 .I \-u, \-\-nosubshell
153 Disable use of the concurrent shell (only makes sense if the Midnight
154 Commander has been built with concurrent shell support).
156 .I \-U, \-\-subshell
157 Enable use of the concurrent shell support (only makes sense if the
158 Midnight Commander was built with the subshell support set as an
159 optional feature).
161 .I \-v file, \-\-view=file
162 Start the internal viewer to view the specified file.  See also
163 .BR "mcview (1)" .
165 .I \-V, \-\-version
166 Display the version of the program.
168 .I \-x, \-\-xterm
169 Force xterm mode.  Used when running on xterm\-capable terminals (two
170 screen modes, and able to send mouse escape sequences).
172 .I \-X, \-\-no\-x11
173 Do not use X11 to get the state of modifiers Alt, Ctrl, Shift
175 If both paths are specified, the first path name is the directory to show
176 in the active panel; the second path name is the directory to be shown in
177 the other panel.
179 If one path is specified, the path name is the directory to show
180 in the active panel; value of "other_dir" from panels.ini is the directory
181 to be shown in the passive panel.
183 If no paths are specified, current directory is shown in the active panel;
184 value of "other_dir" from panels.ini is the directory to be shown in
185 the passive panel.
186 .\"NODE "Overview"
187 .SH "Overview"
188 The screen of the Midnight Commander is divided into four parts.
189 Almost all of the screen space is taken up by two directory panels.
190 By default, the second line from the bottom of the screen is the
191 shell command line, and the bottom line shows the function key labels.
192 The topmost line is the
193 .\"LINK2"
194 menu bar line\&.
195 .\"Menu Bar"
196 The menu bar line may not be visible, but appears if you click the
197 topmost line with the mouse or press the F9 key.
199 The Midnight Commander provides a view of two directories at the same
200 time. One of the panels is the current panel (a selection bar is in
201 the current panel). Almost all operations take place on the current
202 panel. Some file operations like Rename and Copy by default use the
203 directory of the unselected panel as a destination (don't worry, they
204 always ask you for confirmation first). For more information, see the
205 sections on the
206 .\"LINK2"
207 Directory Panels\&,
208 .\"Directory Panels"
210 .\"LINK2"
211 Left and Right Menus
212 .\"Left and Right Menus"
213 and the
214 .\"LINK2"
215 File Menu\&.
216 .\"File Menu"
218 You can execute system commands from the Midnight Commander by simply
219 typing them. Everything you type will appear on the shell command line,
220 and when you press Enter the Midnight Commander will execute the
221 command line you typed; read the
222 .\"LINK2"
223 Shell Command Line
224 .\"Shell Command Line"
226 .\"LINK2"
227 Input Line Keys
228 .\"Input Line Keys"
229 sections to learn more about the command line.
230 .\"NODE "Mouse Support"
231 .SH "Mouse Support"
232 The Midnight Commander comes with mouse support.  It is activated
233 whenever you are running on an
234 .B xterm(1)
235 terminal (it even works if you take a telnet, ssh or rlogin connection to
236 another machine from the xterm) or if you are running on a Linux
237 console and have the
238 .B gpm
239 mouse server running.
241 When you left click on a file in the directory panels, that file is
242 selected; if you click with the right button, the file is marked (or
243 unmarked, depending on the previous state).
245 Double\-clicking on a file will try to execute the command if it is
246 an executable program; and if the
247 .\"LINK2"
248 extension file
249 .\"Edit Extension File"
250 has a program specified for the file's extension, the specified
251 program is executed.
253 Also, it is possible to execute the commands assigned to the function
254 key labels by clicking on them.
256 The default auto repeat rate for the mouse buttons is 400
257 milliseconds. This may be changed to other values by editing the
258 .\"LINK2"
259 \&~/.config/mc/ini
260 .\"Save Setup"
261 file and changing the
262 .I mouse_repeat_rate
263 parameter.
265 If you are running the Midnight Commander with the mouse support, you
266 can get the default mouse behavior (cutting and pasting text) by holding
267 down the Shift key.
268 .SH ""
269 .\"NODE "Keys"
270 .SH "Keys"
271 Some commands in the Midnight Commander involve the use of the
272 .I Control
273 (sometimes labeled CTRL or CTL) and the
274 .I Meta
275 (sometimes labeled ALT or even Compose) keys. In this manual we will
276 use the following abbreviations:
278 .B C\-<chr>
279 means hold the Control key while typing the character <chr>.
280 Thus C\-f would be: hold the Control key and type f.
282 .B Alt\-<chr>
283 means hold the Meta or Alt key down while typing <chr>.
284 If there is no Meta or Alt key, type
285 .IR ESC ,
286 release it, then type the character <chr>.
288 .B S\-<chr>
289 means hold the Shift key down while typing <chr>.
291 All input lines in the Midnight Commander use an approximation to
292 the GNU Emacs editor's key bindings (default).
294 You may redefine key bindings. See
295 .\"LINK2"
296 .I redefine hotkey bindings
297 .\"Keys_redefine"
299 for more info. All other key bindings (described in this manual) are relative
300 to default behavior.
303 There are many sections which tell about the keys. The following are
304 the most important.
307 .\"LINK2"
308 File Menu
309 .\"File Menu"
310 section documents the keyboard shortcuts for the commands appearing in
311 the File menu. This section includes the function keys. Most of these
312 commands perform some action, usually on the selected file or the
313 tagged files.
316 .\"LINK2"
317 Directory Panels
318 .\"Directory Panels"
319 section documents the keys which select a file or tag files as a
320 target for a later action (the action is usually one from the file
321 menu).
324 .\"LINK2"
325 Shell Command Line
326 .\"Shell Command Line"
327 section list the keys which are used for entering and editing command
328 lines. Most of these copy file names and such from the directory
329 panels to the command line (to avoid excessive typing) or access the
330 command line history.
332 .\"LINK2"
333 Input Line Keys
334 .\"Input Line Keys"
335 are used for editing input lines. This means both the command line and
336 the input lines in the query dialogs.
338 .\"NODE "  Keys_redefine"
339 .SH "  Redefine hotkey bindings"
340 Hotkey bindings may be read from external file (keymap\-file).
341 Initially, Mignight Commander creates key bindings using keymap defined
342 in the source code. Then, two files
343 .B %prefix%/share/mc/mc.keymap
345 .B %sysconfdir%/mc/mc.keymap
346 are loaded always, sequentially reassigned key bindings defined earlier.
347 User\-defined keymap\-file is searched on the following algorithm (to the first one found):
350 1) command line option
351 .B \-K <keymap>
353 .B \-\-keymap=<keymap>
355 2) Environment variable
356 .B MC_KEYMAP
358 3) Parameter
359 .B keymap
360 in section
361 .B [Midnight\-Commander]
362 of config file.
364 4) File
365 .B ~/.config/mc/mc.keymap
368 Command line option, environment variable and parameter in config file may
369 contain the absolute path to the keymap\-file (with the extension \.keymap
370 or without it). Search of keymap\-file will occur in (to the first one found):
374 .B ~/.config/mc
377 .B %sysconfdir%/mc/
380 .B %prefix%/share/mc/
382 .\"NODE "  Miscellaneous Keys"
383 .SH "  Miscellaneous Keys"
384 Here are some keys which don't fall into any of the other categories:
386 .B Enter
387 if there is some text in the command line (the one at the bottom of
388 the panels), then that command is executed. If there is no text in the
389 command line then if the selection bar is over a directory the
390 Midnight Commander does a
391 .B chdir(2)
392 to the selected directory and reloads the information on the panel;
393 if the selection is an executable file then it is executed. Finally,
394 if the extension of the selected file name matches one of the
395 extensions in the
396 .\"LINK2"
397 extensions file
398 .\"Edit Extension File"
399 then the corresponding command is executed.
401 .B C\-l
402 repaint all the information in the Midnight Commander.
404 .B C\-x c
405 run the
406 .\"LINK2"
407 Chmod
408 .\"Chmod"
409 command on a file or on the tagged files.
411 .B C\-x o
412 run the
413 .\"LINK2"
414 Chown
415 .\"Chown"
416 command on the current file or on the tagged files.
418 .B C\-x l
419 run the hard link command.
421 .B C\-x s
422 run the absolute symbolic link command.
424 .B C\-x v
425 run the relative symbolic link command. See the
426 .\"LINK2"
427 File Menu
428 .\"File Menu"
429 section for more information about symbolic links.
431 .B C\-x i
432 set the other panel display mode to information.
434 .B C\-x q
435 set the other panel display mode to quick view.
437 .B C\-x !
438 execute the
439 .\"LINK2"
440 External panelize
441 .\"External panelize"
442 command.
444 .B C\-x h
445 run the
446 .\"LINK2"
447 add directory to hotlist
448 .\"Hotlist"
449 command.
451 .B Alt\-!
452 executes the Filtered view command, described in the
453 .\"LINK2"
454 view command\&.
455 .\"Internal File Viewer"
457 .B Alt\-?
458 executes the
459 .\"LINK2"
460 Find file
461 .\"Find File"
462 command.
464 .B Alt\-c
465 pops up the
466 .\"LINK2"
467 quick cd
468 .\"Quick cd"
469 dialog.
471 .B C\-o
472 when the program is being run in the Linux or FreeBSD console or under
473 an xterm, it will show you the output of the previous command.  When ran
474 on the Linux console, the Midnight Commander uses an external program
475 (cons.saver) to handle saving and restoring of information on the
476 screen.
478 When the subshell support is compiled in, you can type C\-o at any time
479 and you will be taken back to the Midnight Commander main screen, to
480 return to your application just type C\-o.  If you have an application
481 suspended by using this trick, you won't be able to execute other
482 programs from the Midnight Commander until you terminate the suspended
483 application.
484 .\"NODE "  Directory Panels"
485 .SH "  Directory Panels"
486 This section lists the keys which operate on the directory panels. If
487 you want to know how to change the appearance of the panels take a
488 look at the section on
489 .\"LINK2"
490 Left and Right Menus\&.
491 .\"Left and Right Menus"
493 .B Tab, C\-i
494 change the current panel. The old other panel becomes the new current
495 panel and the old current panel becomes the new other panel. The
496 selection bar moves from the old current panel to the new current
497 panel.
499 .B Insert, C\-t
500 to tag files you may use the Insert key (the kich1 terminfo sequence).
501 To untag files, just retag a tagged file.
503 .B M\-e
504 to change charset of panel you may use M\-e (Alt\-e).
505 Recoding is made from selected codepage into system codepage. To
506 cancel the recoding you may select "directory up" (..) in active panel.
507 To cancel the charsets in all directories, select "No translation " in
508 the dialog of encodings.
510 .B Alt\-g, Alt\-r, Alt\-j
511 used to select the top file in a panel, the middle file and the bottom one,
512 respectively.
514 .B Alt\-t
515 toggle the current display listing to show the next display listing
516 mode.
517 With this it is possible to quickly switch to brief listing, long
518 listing, user defined listing mode, and back to the default.
520 .B C\-\\\\ (control\-backslash)
521 show the
522 .\"LINK2"
523 directory hotlist
524 .\"Hotlist"
525 and change to the selected directory.
527 .B + \ (plus)
528 this is used to select (tag) a group of files.  The Midnight Commander
529 will prompt for a selection options. When
530 .I Files only
531 checkbox is on, only files will be selected.  If
532 .I Files only
533 is off, as files as directories will be selected.
534 When
535 .I Shell Patterns
536 checkbox is on, the regular expression is much like the filename globbing
537 in the shell (* standing for zero or more characters and ? standing
538 for one character). If
539 .I Shell Patterns
540 is off, then the tagging of files is done with normal regular
541 expressions (see ed (1)). When
542 .I Case sensitive
543 checkbox is on, the selection will be case sensitive characters.
545 .I Case sensitive
546 is off, the case will be ignored.
548 .B \\\\ (backslash)
549 use the "\\" key to unselect a group of files. This is the opposite of
550 the Plus key.
552 .B up\-key, C\-p
553 move the selection bar to the previous entry in the panel.
555 .B down\-key, C\-n
556 move the selection bar to the next entry in the panel.
558 .B home, a1, Alt\-<
559 move the selection bar to the first entry in the panel.
561 .B end, c1, Alt\->
562 move the selection bar to the last entry in the panel.
564 .B next\-page, C\-v
565 move the selection bar one page down.
567 .B prev\-page, Alt\-v
568 move the selection bar one page up.
570 .B Alt\-o
571 If the currently selected file is a directory, load that directory on
572 the other panel and moves the selection to the next file. If the
573 currently selected file is not a directory, load the parent directory
574 on the other panel and moves the selection to the next file.
576 .B Alt\-i
577 make the current directory of the current panel also the current
578 directory of the other panel.  Put the other panel to the listing mode
579 if needed.  If the current panel is panelized, the other panel doesn't
580 become panelized.
582 .B C\-PageUp, C\-PageDown
583 only when supported by the terminal: change to ".." and to the currently
584 selected directory respectively.
586 .B Alt\-y
587 moves to the previous directory in the history, equivalent to clicking
589 .I <
590 with the mouse.
592 .B Alt\-u
593 moves to the next directory in the history, equivalent to clicking the
594 .I >
595 with the mouse.
597 .B Alt\-Shift\-h, Alt\-H
598 displays the directory history, equivalent to depressing the 'v' with
599 the mouse.
600 .\"NODE "  Quick search"
601 .SH "  Quick search"
602 The Quick search mode allows you to perform fast file search in file panel.
603 Press
604 .I C\-s
606 .I Alt\-s
607 to start a filename search in the directory listing.
609 When the search is active, the user input will be added to the search string
610 instead of the command line. If the
611 .I Show mini\-status
612 option is enabled the search string is shown on the mini\-status
613 line. When typing, the selection bar will move to the next file
614 starting with the typed letters. The
615 .I Backspace
617 .I DEL
618 keys can be used to correct typing mistakes. If C\-s is pressed
619 again, the next match is searched for.
621 If quick search is started with double pressing of C\-s, the previous quick
622 search pattern will be used for current search.
624 Besides the filename characters, you can also use wildcard
625 characters '*' and '?'.
626 .\"NODE "  Shell Command Line"
627 .SH "  Shell Command Line"
628 This section lists keys which are useful to avoid excessive typing when
629 entering shell commands.
631 .B Alt\-Enter
632 copy the currently selected file name to the command line.
634 .B C\-Enter
635 same a Alt\-Enter.  May not work on remote systems and some terminals.
637 .B C\-Shift\-Enter
638 copy the full path name of the currently selected file to the command
639 line.  May not work on remote systems and some terminals.
641 .B Alt\-Tab
642 does the filename, command, variable, username and hostname
643 .\"LINK2"
644 completion
645 .\"Completion"
646 for you.
648 .B C\-x t, C\-x C\-t
649 copy the tagged files (or if there are no tagged files, the selected
650 file) of the current panel (C\-x t) or of the other panel (C\-x C\-t) to
651 the command line.
653 .B C\-x p, C\-x C\-p
654 the first key sequence copies the current path name to the command
655 line, and the second one copies the unselected panel's path name to
656 the command line.
658 .B C\-q
659 the quote command can be used to insert characters that are otherwise
660 interpreted by the Midnight Commander (like the '+' symbol)
662 .B Alt\-p, Alt\-n
663 use these keys to browse through the command history. Alt\-p takes you
664 to the last entry, Alt\-n takes you to the next one.
666 .B Alt\-h
667 displays the history for the current input line.
668 .\"NODE "  General Movement Keys"
669 .SH "  General Movement Keys"
670 The help viewer, the file viewer and the directory tree use common
671 code to handle moving. Therefore they accept exactly the same
672 keys. Each of them also accepts some keys of its own.
674 Other parts of the Midnight Commander use some of the same movement
675 keys, so this section may be of use for those parts too.
677 .B Up, C\-p
678 moves one line backward.
680 .B Down, C\-n
681 moves one line forward.
683 .B Prev Page, Page Up, Alt\-v
684 moves one page up.
686 .B Next Page, Page Down, C\-v
687 moves one page down.
689 .B Home, A1
690 moves to the beginning.
692 .B End, C1
693 move to the end.
695 The help viewer and the file viewer accept the following keys in
696 addition the to ones mentioned above:
698 .B b, C\-b, C\-h, Backspace, Delete
699 moves one page up.
701 .B Space bar
702 moves one page down.
704 .B u, d
705 moves one half of a page up or down.
707 .B g, G
708 moves to the beginning or to the end.
709 .\"NODE "  Input Line Keys"
710 .SH "  Input Line Keys"
711 The input lines (they are used for the
712 .\"LINK2"
713 command line
714 .\"Shell Command Line"
715 and for the query dialogs in the program) accept these keys:
717 .B C\-a
718 puts the cursor at the beginning of line.
720 .B C\-e
721 puts the cursor at the end of the line.
723 .B C\-b, move\-left
724 move the cursor one position left.
726 .B C\-f, move\-right
727 move the cursor one position right.
729 .B Alt\-f
730 moves one word forward.
732 .B Alt\-b
733 moves one word backward.
735 .B C\-h, Backspace
736 delete the previous character.
738 .B C\-d, Delete
739 delete the character in the point (over the cursor).
741 .B C\-@
742 sets the mark for cutting.
744 .B C\-w
745 copies the text between the cursor and the mark to a kill buffer and
746 removes the text from the input line.
748 .B Alt\-w
749 copies the text between the cursor and the mark to a kill buffer.
751 .B C\-y
752 yanks back the contents of the kill buffer.
754 .B C\-k
755 kills the text from the cursor to the end of the line.
757 .B Alt\-p, Alt\-n
758 Use these keys to browse through the command history. Alt\-p takes you
759 to the last entry, Alt\-n takes you to the next one.
761 .B Alt\-C\-h, Alt\-Backspace
762 delete one word backward.
764 .B Alt\-Tab
765 does the filename, command, variable, username and hostname
766 .\"LINK2"
767 completion
768 .\"Completion"
769 for you.
770 .SH ""
771 .\"NODE "Menu Bar"
772 .SH "Menu Bar"
773 The menu bar pops up when you press F9 or click the mouse on the top
774 row of the screen. The menu bar has five menus: "Left", "File",
775 "Command", "Options" and "Right".
778 .\"LINK2"
779 Left and Right Menus
780 .\"Left and Right Menus"
781 allow you to modify the appearance of the left and right directory
782 panels.
785 .\"LINK2"
786 File Menu
787 .\"File Menu"
788 lists the actions you can perform on the currently selected file or
789 the tagged files.
792 .\"LINK2"
793 Command Menu
794 .\"Command Menu"
795 lists the actions which are more general and bear no relation to the
796 currently selected file or the tagged files.
799 .\"LINK2"
800 Options Menu
801 .\"Options Menu"
802 lists the actions which allow you to customize the Midnight Commander.
803 .\"NODE "  Left and Right Menus"
804 .SH "  Left and Right (Above and Below) Menus"
805 The outlook of the directory panels can be changed from the
806 .B Left
808 .B Right
809 menus (they are named
810 .B Above
812 .B Below
813 when the horizontal panel split is chosen from the
814 .\"LINK2"
815 Layout
816 .\"Layout"
817 options dialog).
818 .\"NODE "    Listing Mode..."
819 .SH "    Listing Mode..."
820 The listing mode view is used to display a listing of files, there are
821 four different listing modes available:
822 .BR Full ,
823 .BR Brief ,
824 .B Long
826 .BR User .
827 The full directory view shows the file name, the size of the file and
828 the modification time.
830 The brief view shows only the file name and it has from 1 up to 9 columns
831 (therefore showing more files unlike other views). The long view
832 is similar to the output of
833 .B "ls \-l"
834 command. The long view takes the whole screen width.
836 If you choose the "User" display format, then you have to specify
837 the display format.
839 The user display format must start with a panel size specifier.  This
840 may be "half" or "full", and they specify a half screen panel and a
841 full screen panel respectively.
843 After the panel size, you may specify the two columns mode on the
844 panel, this is done by adding the number "2" to the user format
845 string.
847 After this you add the name of the fields with an optional size
848 specifier.  This are the available fields you may display:
850 .B name
851 displays the file name.
853 .B size
854 displays the file size.
856 .B bsize
857 is an alternative form of the
858 .B size
859 format. It displays the size of the files and for directories it just
860 shows SUB\-DIR or UP\-\-DIR.
862 .B type
863 displays a one character wide type field.  This character is similar to
864 what is displayed by ls with the \-F flag \-
865 .B *
866 for executable files,
867 .B /
868 for directories,
869 .B @
870 for links,
871 .B =
872 for sockets,
873 .B \-
874 for character devices,
875 .B +
876 for block devices,
877 .B |
878 for pipes,
879 .B ~
880 for symbolic links to directories and
881 .B !
882 for stale symlinks (links that point nowhere).
884 .B mark
885 an asterisk if the file is tagged, a space if it's not.
887 .B mtime
888 file's last modification time.
890 .B atime
891 file's last access time.
893 .B ctime
894 file's status change time.
896 .B perm
897 a string representing the current permission bits of the file.
899 .B mode
900 an octal value with the current permission bits of the file.
902 .B nlink
903 the number of links to the file.
905 .B ngid
906 the GID (numeric).
908 .B nuid
909 the UID (numeric).
911 .B owner
912 the owner of the file.
914 .B group
915 the group of the file.
917 .B inode
918 the inode of the file.
920 Also you can use following keywords to define the panel layout:
922 .B space
923 a space in the display format.
925 .B |
926 add a vertical line to the display format.
928 To force one field to a fixed size (a size specifier), you just add
929 .B :
930 followed by the number of characters you want the field to have.  If the
931 number is followed by the symbol
932 .BR + ,
933 then the size specifies the minimal field size \- if the program finds
934 out that there is more space on the screen, it will then expand that
935 field.
937 For example, the
938 .B Full
939 display corresponds to this format:
941 half type name | size | mtime
943 And the
944 .B Long
945 display corresponds to this format:
947 full perm space nlink space owner space group space size space mtime
948 space name
950 This is a nice user display format:
952 half name | size:7 | type mode:3
954 Panels may also be set to the following modes:
956 .B "Info"
957 The info view display information related to the currently
958 selected file and if possible information about the current file
959 system.
961 .B "Tree"
962 The tree view is quite similar to the
963 .\"LINK2"
964 directory tree
965 .\"Directory Tree"
966 feature. See the section about it for more information.
968 .B "Quick View"
969 In this mode, the panel will switch to a reduced
970 .\"LINK2"
971 viewer
972 .\"Internal File Viewer"
973 that displays the contents of the currently selected file, if you
974 select the panel (with the tab key or the mouse), you will have access
975 to the usual viewer commands.
976 .\"NODE "    Sort Order..."
977 .SH "    Sort Order..."
978 The eight sort orders are by name, by extension, by modification time,
979 by access time, and by inode information modification time, by size,
980 by inode and unsorted.  In the Sort order dialog box you can choose
981 the sort order and you may also specify if you want to sort in reverse
982 order by checking the reverse box.
984 By default directories are sorted before files but this can be changed
985 from the
986 .\"LINK2"
987 Panel options
988 .\"Panel options"
989 menu (option
990 .BR "Mix all files" ).
991 .\"NODE "    Filter..."
992 .SH "    Filter..."
993 The filter command allows you to specify a shell pattern (for example
994 .BR "*.tar.gz" )
995 which the files must match to be shown. Regardless
996 of the filter pattern, the directories and the links to directories
997 are always shown in the directory panel.
998 .\"NODE "    Reread"
999 .SH "    Reread"
1000 The reread command reload the list of files in the directory. It is
1001 useful if other processes have created or removed files.
1002 .\"NODE "  File Menu"
1003 .SH "  File Menu"
1004 The Midnight Commander uses the F1 \- F10 keys as keyboard shortcuts
1005 for commands appearing in the file menu.  The escape sequences for the
1006 function keys are terminfo capabilities kf1 trough kf10.  On terminals
1007 without function key support, you can achieve the same functionality by
1008 pressing the ESC key and then a number in the range 1 through 9 and 0
1009 (corresponding to F1 to F9 and F10 respectively).
1011 The File menu has the following commands (keyboard shortcuts in parentheses):
1013 .B Help (F1)
1015 Invokes the built\-in hypertext help viewer. Inside the
1016 .\"LINK2"
1017 help viewer\&,
1018 .\"Contents"
1019 you can use the Tab key to select the next link and the Enter key to
1020 follow that link. The keys Space and Backspace are used to move
1021 forward and backward in a help page. Press F1 again to get the full
1022 list of accepted keys.
1024 .B Menu (F2)
1026 Invoke the
1027 .\"LINK2"
1028 user menu\&.
1029 .\"Edit Menu File"
1030 The user menu provides an easy way to provide users with a menu and
1031 add extra features to the Midnight Commander.
1033 .B View (F3, F13)
1035 View the currently selected file. By default this invokes the
1036 .\"LINK2"
1037 Internal File Viewer
1038 .\"Internal File Viewer"
1039 but if the option "Use internal view" is off, it invokes an external
1040 file viewer specified by the
1041 .B VIEWER
1042 environment variable.  If
1043 .B VIEWER
1044 is undefined, the
1045 .B PAGER
1046 environment variable is tried.  If
1047 .B PAGER
1048 is also undefined, the "view" command is invoked.  If you use F13
1049 instead, the viewer will be invoked without doing any formatting or
1050 preprocessing to the file.
1053 .\"LINK2"
1054 parameters for external viewer
1055 .\"Parameters for external editor or viewer"
1056 for explain how you may specify an extended command line options
1057 for external viewers.
1059 .B Filtered View (Alt\-!)
1061 This command prompts for a command
1062 and its arguments (the argument defaults to the currently selected
1063 file name), the output from such command is shown in the internal file
1064 viewer.
1066 .B Edit (F4, F14)
1068 Press F4 to edit the highlighted file.  Press F14 (usually F14)
1069 to start the editor with a new, empty file.
1070 Currently they invoke the
1071 .B vi
1072 editor, or the editor specified in the
1073 .B EDITOR
1074 environment variable, or the
1075 .\"LINK2"
1076 Internal File Editor
1077 .\"Internal File Editor"
1078 if the use_internal_edit option is on.
1081 .\"LINK2"
1082 parameters for external editor
1083 .\"Parameters for external editor or viewer"
1084 for explain how you may specify an extended command line options
1085 for external editors.
1087 .B Copy (F5, F15)
1089 Press F5 to pop up an input dialog to copy the currently selected file (or
1090 the tagged files, if there is at least one file tagged) to the
1091 directory/filename you specify in the input dialog. The destination
1092 defaults to the directory in the non\-selected panel. Space for destination
1093 file may be preallocated relative to preallocate_space configure option.
1094 During this process, you can press C\-c or ESC to abort the operation.
1095 For details about source mask (which will be usually either * or ^\\(.*\\)$
1096 depending on setting of Use shell patterns) and possible wildcards in the
1097 destination see
1098 .\"LINK2"
1099 Mask copy/rename\&.
1100 .\"Mask Copy/Rename"
1102 F15 (usually F15) is similar, but defaults to the directory in the
1103 selected panel. It always operates on the selected file, regardless of
1104 any tagged files.
1106 On some systems, it is possible to do the copy in the background by
1107 clicking on the background button (or pressing Alt\-b in the dialog
1108 box).  The
1109 .\"LINK2"
1110 Background Jobs
1111 .\"Background jobs"
1112 is used to control the background process.
1114 .B Link (C\-x l)
1116 Create a hard link to the current file.
1118 .B Absolute symlink (C\-x s)
1120 Create a absolute symbolic link to the current file.
1122 .B Relative symLink (C\-x v)
1124 Create a relative symbolic link to the current file.
1126 To those of you who don't know what links are: creating a link to a file
1127 is a bit like copying the file, but both the source filename and the destination
1128 filename represent the same file image. For example, if you edit one of these
1129 files, all changes you make will appear in both files. Some people call
1130 links aliases or shortcuts.
1132 A hard link appears as a real file. After making it, there is no way of
1133 telling which one is the original and which is the link. If you delete
1134 either one of them the other one is still intact. It is very difficult
1135 to notice that the files represent the same image. Use hard links when
1136 you don't even want to know.
1138 A symbolic link is a reference to the name of the original file. If
1139 the original file is deleted the symbolic link is useless. It is quite
1140 easy to notice that the files represent the same image. The Midnight
1141 Commander shows an "@"\-sign in front of the file name if it is a
1142 symbolic link to somewhere (except to directory, where it shows a tilde (~)).
1143 The original file which the link points to is shown on mini\-status line if the
1144 .I "Show mini\-status"
1145 option is enabled. Use symbolic links when you want to avoid the
1146 confusion that can be caused by hard links.
1148 When you press "C\-x s" Midnight Commander will automatically fill in the
1149 complete path+filename of the original file and suggest a name for the link.
1150 You can change either one.
1152 Sometimes you may want to change the absolute path of the original into
1153 a relative path. An absolute path starts from the root directory:
1155 .I /home/frodo/mc/mc \-> /home/frodo/new/mc
1157 A relative link describes the original file's location starting from the
1158 location of the link itself:
1160 .I /home/frodo/mc/mc \-> ../new/mc
1162 You can force Midnight Commander to suggest a relative path by pressing
1163 "C\-x v" instead of "C\-x s".
1165 .B Rename/Move (F6, F16)
1167 Press F6 to pop up an input dialog to copy the currently selected file (or
1168 the tagged files, if there is at least one file tagged) to the
1169 directory/filename you specify in the input dialog.  The destination
1170 defaults to the directory in the non\-selected panel. For more details
1171 look at Copy (F5) operation above, most of the things are quite similar.
1173 F16 (usually F16) is similar, but defaults to the directory in the
1174 selected panel. It always operates on the selected file, regardless of
1175 any tagged files.
1177 On some systems, it is possible to do the copy in the background by
1178 clicking on the background button (or pressing Alt\-b in the dialog
1179 box).  The
1180 .\"LINK2"
1181 Background Jobs
1182 .\"Background jobs"
1183 is used to control the background process.
1185 .B Mkdir (F7)
1187 Pop up an input dialog and creates the directory specified.
1189 .B Delete (F8)
1191 Delete the currently selected file or the tagged files in the
1192 currently selected panel. During the process, you can press C\-c or
1193 ESC to abort the operation.
1195 .B Quick cd (Alt\-c)
1196 Use the
1197 .\"LINK2"
1198 quick cd
1199 .\"Quick cd"
1200 command if you have full command line and want to cd somewhere.
1202 .B Select group (+)
1204 This is used to select (tag) a group of files. The Midnight Commander
1205 will prompt for a selection options. When
1206 .I Files only
1207 checkbox is on, only files will be selected.  If
1208 .I Files only
1209 is off, as files as directories will be selected.
1210 When
1211 .I Shell Patterns
1212 checkbox is on, the regular expression is much like the filename globbing
1213 in the shell (* standing for zero or more characters and ?  standing
1214 for one character). If
1215 .I Shell Patterns
1216 is off, then the tagging of files is done with normal regular
1217 expressions (see ed (1)). When
1218 .I Case sensitive
1219 checkbox is on, the selection will be case sensitive characters.
1221 .I Case sensitive
1222 is off, the case will be ignored.
1224 .B Unselect group (\\\\)
1226 Used to unselect a group of files. This is the opposite of the
1227 .I "Select group"
1228 command.
1230 .B Quit (F10, Shift\-F10)
1232 Terminate the Midnight Commander.  Shift\-F10 is used when you want to
1233 quit and you are using the shell wrapper.  Shift\-F10 will not take you
1234 to the last directory you visited with the Midnight Commander, instead
1235 it will stay at the directory where you started the Midnight Commander.
1236 .\"NODE "    Quick cd"
1237 .SH "    Quick cd"
1238 This command is useful if you have a full command line and want to
1239 .\"LINK2"
1241 .\"The cd internal command"
1242 somewhere without having to yank and paste the command line. This command
1243 pops up a small dialog, where you enter everything you would enter after
1244 .B cd
1245 on the command line and then you press enter. This features all the things
1246 that are already in the
1247 .\"LINK2"
1248 internal cd command\&.
1249 .\"The cd internal command"
1250 .\"NODE "  Command Menu"
1251 .SH "  Command Menu"
1253 .\"LINK2"
1254 Directory tree
1255 .\"Directory Tree"
1256 command shows a tree figure of the directories.
1259 .\"LINK2"
1260 "Find file"
1261 .\"Find File"
1262 command allows you to search for a specific file.
1264 The "Swap panels" command swaps the contents of the two directory panels.
1266 The "Switch panels on/off" command shows the output of the last shell command.
1267 This works only on xterm and on Linux and FreeBSD console.
1269 The "Compare directories" command compares the directory
1270 panels with each other. You can then use the Copy (F5) command to make
1271 the panels identical. There are three compare methods. The quick method
1272 compares only file size and file date. The thorough method makes a
1273 full byte\-by\-byte compare. The thorough method is not available if the
1274 machine does not support the mmap(2) system call.  The size\-only
1275 compare method just compares the file sizes and does not check the
1276 contents or the date times, it just checks the file size.
1279 .\"LINK2"
1280 "External panelize"
1281 .\"External panelize"
1282 allows you to execute an external program, and make the output of that
1283 program the contents of the current panel.
1285 The "Command history" command shows a list of typed commands. The
1286 selected command is copied to the command line. The command history
1287 can also be accessed by typing Alt\-p or Alt\-n.
1290 .\"LINK2"
1291 "Directory hotlist"
1292 .\"Hotlist"
1293 command makes changing of the current directory to often used directories
1294 faster.
1297 .\"LINK2"
1298 "Screen list"
1299 .\"Screen selector"
1300 command shows a dialog window with the list of currently running
1301 internal editors, viewers and other MC modules that support this mode.
1304 .\"LINK2"
1305 "Edit extension file"
1306 .\"Edit Extension File"
1307 command allows you to specify programs to executed when you try to
1308 execute, view, edit and do a bunch of other thing on files
1309 with certain extensions (filename endings).
1312 .\"LINK2"
1313 "Edit Menu File"
1314 .\"Edit Menu File"
1315 command may be used for editing the user menu (which appears by
1316 pressing F2).
1317 .\"NODE "    Directory Tree"
1318 .SH "    Directory Tree"
1319 The Directory Tree command shows a tree figure of the directories. You
1320 can select a directory from the figure and the Midnight Commander will
1321 change to that directory.
1323 There are two ways to invoke the tree. The real directory tree command
1324 is available from Commands menu. The other way is to select tree view
1325 from the Left or Right menu.
1327 To get rid of long delays the Midnight Commander creates the tree
1328 figure by scanning only a small subset of all the directories. If the
1329 directory which you want to see is missing, move to its parent
1330 directory and press C\-r (or F2).
1332 You can use the following keys:
1334 .\"LINK2"
1335 General movement keys
1336 .\"General Movement Keys"
1337 are accepted.
1339 .B Enter.
1340 In the directory tree, exits the directory tree and changes to this
1341 directory in the current panel. In the tree view, changes to this
1342 directory in the other panel and stays in tree view mode in the
1343 current panel.
1345 .B C\-r, F2 (Rescan).
1346 Rescan this directory. Use this when the tree figure is out of date:
1347 it is missing subdirectories or shows some subdirectories which don't
1348 exist any more.
1350 .B F3 (Forget).
1351 Delete this directory from the tree figure. Use this to remove clutter
1352 from the figure. If you want the directory back to the tree figure
1353 press F2 in its parent directory.
1355 .B F4 (Static/Dynamic).
1356 Toggle between the dynamic navigation mode (default) and the static
1357 navigation mode.
1359 In the static navigation mode you can use the Up and Down keys to
1360 select a directory. All known directories are shown.
1362 In the dynamic navigation mode you can use the Up and Down keys to
1363 select a sibling directory, the Left key to move to the parent
1364 directory, and the Right key to move to a child directory. Only the
1365 parent, sibling and children directories are shown, others are left
1366 out. The tree figure changes dynamically as you traverse.
1368 .B F5 (Copy).
1369 Copy the directory.
1371 .B F6 (RenMov).
1372 Move the directory.
1374 .B F7 (Mkdir).
1375 Make a new directory below this directory.
1377 .B F8 (Delete).
1378 Delete this directory from the file system.
1380 .B C\-s, Alt\-s.
1381 Search the next directory matching the search string. If there is
1382 no such directory these keys will move one line down.
1384 .B C\-h, Backspace.
1385 Delete the last character of the search string.
1387 .B Any other character.
1388 Add the character to the search string and move to the next directory
1389 which starts with these characters. In the tree view you must first
1390 activate the search mode by pressing C\-s. The search string is shown
1391 in the mini status line.
1393 The following actions are available only in the directory tree. They
1394 aren't supported in the tree view.
1396 .B F1 (Help).
1397 Invoke the help viewer and show this section.
1399 .B Esc, F10.
1400 Exit the directory tree. Do not change the directory.
1402 The mouse is supported. A double\-click behaves like Enter. See
1403 also the section on
1404 .\"LINK2"
1405 mouse support\&.
1406 .\"Mouse Support"
1407 .\"NODE "    Find File"
1408 .SH "    Find File"
1409 The Find File feature first asks for the start directory for the
1410 search and the filename to be searched for. By pressing the Tree
1411 button you can select the start directory from the
1412 .\"LINK2"
1413 directory tree
1414 .\"Directory Tree"
1415 figure.
1417 Option \"Whole words\" allows select only those files containing matches that
1418 form whole words. Like grep \-w.
1420 You can start the search by pressing the OK button.
1421 During the search you can stop from the Stop button and continue from
1422 the Start button.
1424 You can browse the filelist with the up and down arrow keys. The Chdir
1425 button will change to the directory of the currently selected
1426 file. The Again button will ask for the parameters for a new
1427 search. The Quit button quits the search operation. The Panelize
1428 button will place the found files to the current directory panel so
1429 that you can do additional operations on them (view, copy, move,
1430 delete and so on). After panelizing you can press C\-r to return to the
1431 normal file listing.
1433 The 'Enable ignore directories' checkbox and input field below it
1434 allow to set up the list of directories that should be skip during the search
1435 files (for example, you may want to avoid searches on a CD\-ROM or on a NFS
1436 directory that is mounted across a slow link). List components must be separated
1437 with a colon, here is an example:
1440 /cdrom:/nfs/wuarchive:/afs
1443 Relative paths are supported also. The following example shows how to skip special
1444 directories of version control systems:
1446 /cdrom:/nfs/wuarchive:/afs:.svn:.git:CVS
1449 Attention: input field can contain a dot (.), this means the current absolute path.
1451 You may consider using the
1452 .\"LINK2"
1453 External panelize
1454 .\"External panelize"
1455 command for some operations. Find file command is for simple queries
1456 only, while using External panelize you can do as mysterious searches
1457 as you would like.
1458 .\"NODE "    External panelize"
1459 .SH "    External panelize"
1460 The External panelize allows you to execute an external program, and
1461 make the output of that program the contents of the current panel.
1463 For example, if you want to manipulate in one of the panels all the
1464 symbolic links in the current directory, you can use external
1465 panelization to run the following command:
1468 find . \-type l \-print
1471 Upon command completion, the directory contents of the panel will no
1472 longer be the directory listing of the current directory, but all the
1473 files that are symbolic links.
1475 If you want to panelize all of the files that have been downloaded
1476 from your FTP server, you can use this awk command to extract the file
1477 name from the transfer log files:
1480 awk '$9 ~! /incoming/ { print $9 }' < /var/log/xferlog
1483 You may want to save often used panelize commands under a descriptive name,
1484 so that you can recall them quickly. You do this by typing the command on
1485 the input line and pressing Add new button. Then you enter a name under
1486 which you want the command to be saved. Next time, you just choose that
1487 command from the list and do not have to type it again.
1488 .\"NODE "    Hotlist"
1489 .SH "    Hotlist"
1490 The Directory hotlist command shows the labels of the directories
1491 in the directory hotlist.  The Midnight Commander will change to the
1492 directory corresponding to the selected label.  From the hotlist dialog,
1493 you can remove already created label/directory pairs and add new ones.
1494 To add new directories quickly, you can use the Add to hotlist command
1495 (C\-x h), which adds the current directory into the directory hotlist,
1496 asking just for the label for the directory.
1498 This makes cd to often used directories faster. You may consider using the
1499 CDPATH variable as described in
1500 .\"LINK2"
1501 internal cd command
1502 .\"The cd internal command"
1503 description.
1504 .\"NODE "    Edit Extension File"
1505 .SH "    Edit Extension File"
1506 This will invoke your editor on the file
1507 .IR ~/.config/mc/mc.ext .
1508 The format of this file following:
1510 All lines starting with # or empty lines are thrown away.
1512 Lines starting in the first column should have following format:
1514 .IR keyword/expr ,
1515 i.e. everything after the slash until new line is
1516 .IR expr .
1518 .I keyword
1519 can be:
1521 .I shell
1523 .I expr
1524 is an extension (no wildcards).  File matches it its name ends
1525 with
1526 .IR expr .
1527 Example:
1528 .I shell/.tar
1529 matches
1530 .IR *.tar .
1532 .I regex
1534 .I expr
1535 is a regular expression.  File matches if its name matches the regular
1536 expression.
1538 .I directory
1540 .I expr
1541 is a regular expression.  File matches if it is a directory and its name
1542 matches the regular expression.
1544 .I type
1546 .I expr
1547 is a regular expression.  File matches if the output of
1548 .I file %f
1549 without the initial "filename:" part matches regular expression
1550 .IR expr .
1552 .I default
1553 \- matches any file.
1554 .I expr
1555 is ignored.
1557 .I include
1558 \- denotes a common section.
1559 .I expr
1560 is the name of the section.
1562 Other lines should start with a space or tab and should be of the format:
1563 .I keyword=command
1564 (with no spaces around =), where
1565 .I keyword
1566 should be:
1567 .I Open
1568 (invoked on Enter or double click),
1569 .I View
1570 (F3),
1571 .I Edit
1572 (F4) or
1573 .I Include
1574 (to add rules from the common section).
1575 .I command
1576 is any one\-line shell command, with the simple
1577 .\"LINK2"
1578 macro substitution\&.
1579 .\"Macro Substitution"
1581 Rules are matched from top to bottom, thus the order is important.  If
1582 the appropriate action is missing, search continues as if this rule
1583 didn't match (i.e. if a file matches the first and second entry and View
1584 action is missing in the first one, then on pressing F3 the View action
1585 from the second entry will be used).
1586 .I default
1587 should match all the actions.
1588 .\"NODE "    Background jobs"
1589 .SH "    Background Jobs"
1590 This lets you control the state of any background Midnight Commander
1591 process (only copy and move files operations can be done in the
1592 background).  You can stop, restart and kill a background job from
1593 here.
1594 .\"NODE "    Edit Menu File"
1595 .SH "    Edit Menu File"
1596 The user menu is a menu of useful actions that can be customized by
1597 the user. When you access the user menu, the
1598 file .mc.menu from the current directory is used if it exists,
1599 but only if it is owned by user or root and is not world\-writable.
1600 If no such file found, ~/.config/mc/menu is tried in the same way,
1601 and otherwise mc uses the default system\-wide menu
1602 %prefix%/share/mc/mc.menu.
1604 The format of the menu file is very simple. Lines that start with
1605 anything but space or tab are considered entries for the menu (in
1606 order to be able to use it like a hot key, the first character should
1607 be a letter). All the lines that start with a space or a tab are the
1608 commands that will be executed when the entry is selected.
1610 When an option is selected all the command lines of the option are
1611 copied to a temporary file in the temporary directory (usually
1612 /usr/tmp) and then that file is executed. This allows the user to put
1613 normal shell constructs in the menus. Also simple macro substitution
1614 takes place before executing the menu code. For more information, see
1615 .\"LINK2"
1616 macro substitution\&.
1617 .\"Macro Substitution"
1619 Here is a sample mc.menu file:
1622 A       Dump the currently selected file
1623         od \-c %f
1625 B       Edit a bug report and send it to root
1626         I=`mktemp ${MC_TMPDIR:\-/tmp}/mail.XXXXXX` || exit 1
1627         vi $I
1628         mail \-s "Midnight Commander bug" root < $I
1629         rm \-f $I
1631 M       Read mail
1632         emacs \-f rmail
1634 N       Read Usenet news
1635         emacs \-f gnus
1637 H       Call the info hypertext browser
1638         info
1640 J       Copy current directory to other panel recursively
1641         tar cf \- . | (cd %D && tar xvpf \-)
1643 K       Make a release of the current subdirectory
1644         echo \-n "Name of distribution file: "
1645         read tar
1646         ln \-s %d `dirname %d`/$tar
1647         cd ..
1648         tar cvhf ${tar}.tar $tar
1650 = f *.tar.gz | f *.tgz & t n
1651 X       Extract the contents of a compressed tar file
1652         tar xzvf %f
1655 .B Default Conditions
1657 Each menu entry may be preceded by a condition. The condition must
1658 start from the first column with a '=' character. If the condition is
1659 true, the menu entry will be the default entry.
1662 Condition syntax:       = <sub\-cond>
1663   or:                   = <sub\-cond> | <sub\-cond> ...
1664   or:                   = <sub\-cond> & <sub\-cond> ...
1666 Sub\-condition is one of following:
1668   y <pattern>           syntax of current file matching pattern?
1669                         (for edit menu only)
1670   f <pattern>           current file matching pattern?
1671   F <pattern>           other file matching pattern?
1672   d <pattern>           current directory matching pattern?
1673   D <pattern>           other directory matching pattern?
1674   t <type>              current file of type?
1675   T <type>              other file of type?
1676   x <filename>          is it executable filename?
1677   ! <sub\-cond>         negate the result of sub\-condition
1680 Pattern is a normal shell pattern or a regular expression, according
1681 to the shell patterns option. You can override the global value of
1682 the shell patterns option by writing "shell_patterns=x" on the first
1683 line of the menu file (where "x" is either 0 or 1).
1685 Type is one or more of the following characters:
1688   n     not a directory
1689   r     regular file
1690   d     directory
1691   l     link
1692   c     character device
1693   b     block device
1694   f     FIFO (pipe)
1695   s     socket
1696   x     executable file
1697   t     tagged
1700 For example 'rlf' means either regular file, link or fifo. The 't'
1701 type is a little special because it acts on the panel instead of the
1702 file. The condition '=t t' is true if there are tagged files in the
1703 current panel and false if not.
1705 If the condition starts with '=?' instead of '=' a debug trace will be
1706 shown whenever the value of the condition is calculated.
1708 The conditions are calculated from left to right. This means
1710         = f *.tar.gz | f *.tgz & t n
1712 is calculated as
1714         ( (f *.tar.gz) | (f *.tgz) ) & (t n)
1717 Here is a sample of the use of conditions:
1720 = f *.tar.gz | f *.tgz & t n
1721 L       List the contents of a compressed tar\-archive
1722         gzip \-cd %f | tar xvf \-
1725 .B Addition Conditions
1727 If the condition begins with '+' (or '+?') instead of '=' (or '=?') it
1728 is an addition condition. If the condition is true the menu entry will
1729 be included in the menu. If the condition is false the menu entry will
1730 not be included in the menu.
1732 You can combine default and addition conditions by starting condition
1733 with '+=' or '=+' (or '+=?' or '=+?' if you want debug trace). If you
1734 want to use two different conditions, one for adding and another for
1735 defaulting, you can precede a menu entry with two condition lines, one
1736 starting with '+' and another starting with '='.
1738 Comments are started with '#'. The additional comment lines must start
1739 with '#', space or tab.
1740 .\"NODE "  Options Menu"
1741 .SH "  Options Menu"
1742 The Midnight Commander has some options that may be toggled on and
1743 off in several dialogs which are accessible from this menu. Options
1744 are enabled if they have an asterisk or "x" in front of them.
1747 .\"LINK2"
1748 Configuration
1749 .\"Configuration"
1750 command pops up a dialog from which you can change most of settings of
1751 the Midnight Commander.
1754 .\"LINK2"
1755 Layout
1756 .\"Layout"
1757 command pops up a dialog from which you specify a bunch of options how mc
1758 looks like on the screen.
1761 .\"LINK2"
1762 Panel options
1763 .\"Panel options"
1764 command pops up a dialog from which you specify options of file manager panels.
1767 .\"LINK2"
1768 Confirmation
1769 .\"Confirmation"
1770 command pops up a dialog from which you specify which actions you want to
1771 confirm.
1774 .\"LINK2"
1775 Appearance
1776 .\"Appearance"
1777 command pops up a dialog from which you specify the skin.
1780 .\"LINK2"
1781 Display bits
1782 .\"Display bits"
1783 command pops up a dialog from which you may select which characters is your
1784 terminal able to display.
1787 .\"LINK2"
1788 Learn keys
1789 .\"Learn keys"
1790 command pops up a dialog from which you test some keys which are not working
1791 on some terminals and you may fix them.
1794 .\"LINK2"
1795 Virtual FS
1796 .\"Virtual FS"
1797 command pops up a dialog from which you specify some VFS related options.
1800 .\"LINK2"
1801 Save setup
1802 .\"Save Setup"
1803 command saves the current settings of the Left, Right and Options
1804 menus. A small number of other settings is saved, too.
1805 .\"NODE "    Configuration"
1806 .SH "    Configuration"
1807 The options in this dialog are divided into several groups: "File
1808 operation options", "Esc key mode", "Pause after run" and "Other options".
1810 .B File operation options
1812 .I Verbose operation.
1813 This toggles whether the file Copy, Rename and Delete operations are
1814 verbose (i.e., display a dialog box for each operation). If you have a
1815 slow terminal, you may wish to disable the verbose operation. It is
1816 automatically turned off if the speed of your terminal is less than
1817 9600 bps.
1819 .I Compute totals.
1820 If this option is enabled, the Midnight Commander computes total byte
1821 sizes and total number of files prior to any Copy, Rename and Delete
1822 operations. This will provide you with a more accurate progress bar
1823 at the expense of some speed. This option has no effect, if
1824 .I Verbose  operation
1825 is disabled.
1827 .I Classic progressbar.
1828 If this option is enabled, the progressbar of Copy/Move/Delete operations
1829 is always grown form left to right. If disabled, the growing direction
1830 of progressbar follows to direction of Copy/Move/Delete operation:
1831 from left panel to right one and vice versa. Enabled by default.
1833 .I Mkdir autoname.
1834 When you press F7 to create a new directory, the input line in popup dialog
1835 will be filled by name of current file or directory in active panel.
1836 Disabled by default.
1838 .I Preallocate space.
1839 Preallocate space for whole target file, if possible, before copy operation.
1840 Disabled by default.
1842 .B Esc key mode.
1844 By default the Midnight Commander treats the ESC key as a key prefix.
1845 Therefore, you should press Esc code twice to exit a dialog. But there is
1846 a possibility to use a single press of ESC key for that action.
1848 .I Single press.
1849 By default this option is disabled. If you'll enable it, the ESC key
1850 will act as a prefix key for set up time interval (see
1851 .I Timeout
1852 option below), and if no extra keys have arrived, then the ESC key
1853 is interpreted as a cancel key (ESC ESC).
1855 .I Timeout.
1856 This options is used to setup the time interval (in microseconds)
1857 for single press of ESC key. By default, this inrerval is one second
1858 (1000000 microseconds). Also the timeout can be set via KEYBOARD_KEY_TIMEOUT_US
1859 environment variable (also in microseconds), which has higher priority
1860 than Timeout option value.
1862 .B Pause after run
1864 After executing your commands, the Midnight Commander can pause, so
1865 that you can examine the output of the command.  There are three
1866 possible settings for this variable:
1868 .I Never.
1869 Means that you do not want to see the output of your command.  If you
1870 are using the Linux or FreeBSD console or an xterm, you will be able to
1871 see the output of the command by typing C\-o.
1873 .I On dumb terminals.
1874 You will get the pause message on terminals that are not capable of
1875 showing the output of the last command executed (any terminal that is
1876 not an xterm or the Linux console).
1878 .I Always.
1879 The program will pause after executing all of your commands.
1881 .B Other options
1883 .I Use internal editor.
1884 If this option is enabled, the built\-in file editor is used to edit
1885 files. If the option is disabled, the editor specified in the
1886 .B EDITOR
1887 environment variable is used.
1888 If no editor is specified,
1889 .B vi
1890 is used.  See the section on the
1891 .\"LINK2"
1892 internal file editor\&.
1893 .\"Internal File Editor"
1895 .I Use internal viewer.
1896 If this option is enabled, the built\-in file viewer is used to view
1897 files. If the option is disabled, the pager specified in the
1898 .B PAGER
1899 environment variable is used.
1900 If no pager is specified, the
1901 .B view
1902 command is used.  See the section on the
1903 .\"LINK2"
1904 internal file viewer\&.
1905 .\"Internal File Viewer"
1907 .I Ask new file name.
1908 If this option is enabled, file name is asked before open new file in editor.
1910 .I Auto menus.
1911 If this option is enabled, the user menu will be invoked at startup.
1912 Useful for building menus for non\-unixers.
1914 .I Drop down menus.
1915 When this option is enabled, the pull down menus will be activated as
1916 soon as you press the F9 key. Otherwise, you will only get the menu title,
1917 and you will have to activate the menu either with the arrow keys or with
1918 the hotkeys. It is recommended if you are using hotkeys.
1920 .I Shell Patterns.
1921 By default the Select, Unselect and Filter commands will use shell\-like
1922 regular expressions. The following conversions are performed to achieve
1923 this: the '*' is replaced by '.*' (zero or more characters); the '?'
1924 is replaced by '.' (exactly one character) and '.' by the literal
1925 dot. If the option is disabled, then the regular expressions are the
1926 ones described in ed(1).
1928 .I Complete: show all.
1929 By default the Midnight Commander pops up all possible
1930 .\"LINK2"
1931 completions
1932 .\"Completion"
1933 if the completion is ambiguous only when you press
1934 .B Alt\-Tab
1935 for the second time.  For the first time, it just completes as much as
1936 possible and beeps in the case of ambiguity.  Enable this option if you
1937 want to see all possible completions even after pressing
1938 .B Alt\-Tab
1939 the first time.
1941 .I Rotating dash.
1942 If this option is enabled, the
1943 Midnight Commander shows a rotating dash in the upper right corner
1944 as a work in progress indicator.
1946 .I Cd follows links.
1947 This option, if set, causes the Midnight Commander to follow the
1948 logical chain of directories when changing current directory
1949 either in the panels, or using the cd command. This is the default
1950 behavior of bash. When unset, the Midnight Commander follows the
1951 real directory structure, so cd .. if you've entered that directory
1952 through a link will move you to the current directory's real parent
1953 and not to the directory where the link was present.
1955 .I Safe delete.
1956 If this option is enabled, deleting files and directory hotlist entries
1957 unintentionally becomes more difficult.  The default selection in the
1958 confirmation dialogs for deletion changes from "Yes" to "No".
1959 This option is disabled by default.
1961 .I Auto save setup.
1962 If this option is enabled, when you exit the Midnight Commander the
1963 configurable options of the Midnight Commander are saved in the
1964 ~/.config/mc/ini file.
1965 .\"NODE "    Layout"
1966 .SH "    Layout"
1967 The layout dialog gives you a possibility to change the general layout
1968 of screen. The options in this dialog are divided into several groups:
1969 "Panel split", "Console output" and "Other options".
1971 .B Panel split
1973 The rest of the screen area is used for the two directory panels. You
1974 can specify whether the area is split to the panels in
1975 .I Vertical
1977 .I Horizontal
1978 direction. Panel layout can be changed using Alt\-, (Alt\-comma) shortcut.
1980 .I Equal split.
1981 By default, panels have equal sizes. Using this option you can specify
1982 an unequal split.
1984 .B Console output
1986 On the Linux or FreeBSD console you can specify how many lines are shown
1987 in the output window. This option is available if Midnight Commander runs
1988 on native console only.
1990 .B Other options
1992 .I Menu bar visible.
1993 If enabled, main menu of Midnight Commander is always visible on the top row
1994 of screen above panels. Enabled by default.
1996 .I Command prompt.
1997 If enabled, command line is avalable. Enabled by default.
1999 .I Keybar visible.
2000 If enabled, 10 lables associated with F1\-F10 keys are located at the bottom
2001 row of screen. Enabled by default.
2003 .I Hintbar visible.
2004 If enabled, the one\-line hints are visible below panels. Enabled by default.
2006 .I XTerm window title.
2007 When run in a terminal emulator for X11, Midnight Commander sets the
2008 terminal window title to the current working directory and updates it
2009 when necessary.  If your terminal emulator is broken and you see some
2010 incorrect output on startup and directory change, turn off this option.
2011 Enabled by default.
2013 .I Show free space.
2014 If enabled, free space and total space of current file system is shown
2015 at the bottom frame of panel. Enabled by default.
2016 .\"NODE "    Panel options"
2017 .SH "    Panel options"
2018 .B Main panel options
2020 .I Show mini\-status.
2021 If enabled, one line of status information about the currently selected item
2022 is shown at the bottom of the panels. Enabled by default.
2024 .I Use SI size units.
2025 If this option is enabled, Midnight Commander will use SI units (powers of 1000)
2026 when displaying any byte sizes. The suffixes (k, m ...) are shown in lowercase.
2027 If disabled (default), Midnight Commander will use binary units (powers of 1024)
2028 and the suffixes are shown in upper case (K, M ...)
2030 .I Mix all files.
2031 If this option is enabled, all files and directories are shown mixed
2032 together.  If the option is disabled (default), directories (and links to
2033 directories) are shown at the beginning of the listing, and other files below.
2035 .I Show backup files.
2036 If enabled, the Midnight Commander will show files ending with a tilde.
2037 Otherwise, they won't be shown (like GNU's ls option \-B). Enabled by default.
2039 .I Show hidden files.
2040 If enabled, the Midnight Commander will show all files that start with
2041 a dot (like ls \-a). Disabled by default.
2043 .I Fast directory reload.
2044 If this option is enabled, the Midnight Commander will use a trick to
2045 determine if the directory contents have changed.  The trick is to reload
2046 the directory only if the i\-node of the directory has changed; this means
2047 that reloads only happen when files are created or deleted.  If what
2048 changes is the i\-node for a file in the directory (file size changes,
2049 mode or owner changes, etc) the display is not updated.  In these cases,
2050 if you have the option on, you have to rescan the directory manually
2051 (with C\-r). Disabled by default.
2053 .I Mark moves down.
2054 If enabled, the selection bar will move down when you mark a file (with
2055 Insert key). Enabled by default.
2057 .I Reverse files only.
2058 Allow revert selection of files only. Enabled by default.
2059 If enabled, the reverse selection is applied to files only, not to directories.
2060 The selection of directories is untouched. If off, the reverse selection
2061 is applied to files as well to directories: all unselected items become
2062 selected, and vice versa.
2064 .I Simple swap.
2065 If both panels contain file listing, simple swap means that panels exchange
2066 its screen positions: left panel become right one, and vice versa. If this
2067 option is unchecked, file listing panels exchange its content keeping listing
2068 format and sort options. Unchecked by default.
2070 .I Auto save panels setup.
2071 If this option is enabled, when you exit the Midnight Commander the
2072 current settings of panels are saved in the ~/.config/mc/panels.ini file.
2073 Disabled by default.
2075 .B Navigation
2077 .I Lynx\-like motion.
2078 If this option is enabled, you may use the arrows keys to automatically
2079 chdir if the current selection is a subdirectory and the shell command
2080 line is empty. By default, this setting is off.
2082 .I Page scrolling.
2083 If set (the default), panel will scroll by half the display when the
2084 cursor reaches the end or the beginning of the panel, otherwise it
2085 will just scroll a file at a time.
2087 .I Mouse page scrolling.
2088 Controls whenever scrolling with the mouse wheel is done by pages or
2089 line by line on the panels.
2091 .B File highlight
2093 You can specify whether
2094 .I permissions
2096 .I file types
2097 should be highlighted with distinctive
2098 .\"LINK2"
2099 Colors\&.
2100 .\"Colors"
2101 If the permission highlighting is enabled, the parts of the
2102 .I perm
2104 .I mode
2105 .\"LINK2"
2106 display fields
2107 .\"Listing Mode..."
2108 which apply to the user running Midnight Commander are highlighted with
2109 the color defined by the
2110 .I selected
2111 keyword.  If the file type highlighting is enabled, file names are colored
2112 according to rules described in
2113 %sysconfdir%/mc/filehighlight.ini
2114 file. See
2115 .\"LINK2"
2116 Filenames Highlight
2117 .\"Filenames Highlight"
2118 for more info.
2120 .B Quick search
2122 You can specify how the
2123 .\"LINK2"
2124 Quick search
2125 .\"Quick search"
2126 mode should work: case insensitively, case sensitively or be matched
2127 to the panel sort order: case sensitive or not.
2128 .\"NODE "    Confirmation"
2129 .SH "    Confirmation"
2130 In this dialog you configure the confirmation options for file deletion,
2131 overwriting files, execution by pressing enter, quitting the program,
2132 directory hotlist entries deletion and history cleanup.
2133 .\"NODE "    Appearance"
2134 .SH "    Appearance"
2135 In this dialog you can select the skin to be used.
2137 See the
2138 .\"LINK2"
2139 Skins
2140 .\"Skins"
2141 section for technical details about the skin definition files.
2142 .\"NODE "    Display bits"
2143 .SH "    Display bits"
2144 This is used to configure the range of visible characters on the
2145 screen.  This setting may be 7\-bits if your terminal/curses supports
2146 only seven output bits, ISO\-8859\-1 displays all the characters in the
2147 ISO\-8859\-1 map and full 8 bits is for those terminals that can display
2148 full 8 bit characters.
2149 .\"NODE "    Learn keys"
2150 .SH "    Learn keys"
2151 This dialog allows you to test and redefine functional keys, cursor
2152 arrows and some other keys to make them work properly on your terminal.
2153 They often don't, since many terminal databases are incomplete or broken.
2155 You can move around with the Tab key and with the vi moving keys ('h'
2156 left, 'j' down, 'k' up and 'l' right).  Once you press any cursor movement
2157 key and it is recognized, you can use that key as well.
2159 You can test keys just by pressing each of them.  When you press a
2160 key and it is recognized properly, OK should appear next to the name
2161 of that key.  Once a key is marked OK it starts working as usually,
2162 e.g. F1 pressed the first time will just check that the F1 key works,
2163 but after that it will show help.  The same applies to the arrow keys.
2164 The Tab key should be working always.
2166 If some keys do not work properly then you won't see OK appear after
2167 pressing one of these.  Then you may want to redefine it.  Do it by pressing
2168 the button with the name of that key (either by the mouse or by Enter
2169 or Space after selecting the button with Tab or arrows).  Then a message
2170 box will appear asking you to press that key.  Do it and wait until the
2171 message box disappears.  If you want to abort, just press Escape once
2172 and wait.
2174 When you finish with all the keys, you can Save them.  The definitions
2175 for the keys you have redefined will be written into the [terminal:TERM]
2176 section of your ~/.config/mc/ini file (where TERM is the name of your current
2177 terminal).  The definitions of the keys that were already working properly
2178 are not saved.
2179 .\"NODE "    Virtual FS"
2180 .SH "    Virtual FS"
2181 This option gives you control over the settings of the
2182 .\"LINK2"
2183 Virtual File System\&.
2184 .\"Virtual File System"
2186 The Midnight Commander keeps in memory the information related to some
2187 of the virtual file systems to speed up the access to the files in the
2188 file system (for example, directory listings fetched from FTP servers).
2190 Also, in order to access the contents of compressed files (for example,
2191 compressed tar files) the Midnight Commander needs to create temporary
2192 uncompressed files on your disk.
2194 Since both the information in memory and the temporary files on disk
2195 take up resources, you may want to tune the parameters of the cached
2196 information to decrease your resource usage or to maximize the speed of
2197 access to frequently used file systems.
2199 Because of the format of the tar archives, the
2200 .I Tar filesystem
2201 needs to read the whole file just to load the file entries.  Since most
2202 tar files are usually kept compressed (plain tar files are species in
2203 extinction), the tar file system has to uncompress the file on the disk
2204 in a temporary location and then access the uncompressed file as a
2205 regular tar file.
2207 Now, since we all love to browse files and tar files all over the disk,
2208 it's common that you will leave a tar file and then re\-enter it later.
2209 Since decompression is slow, the Midnight Commander will cache the
2210 information in memory for a limited time.  When the timeout expires, all
2211 the resources associated with the file system are released.  The default
2212 timeout is set to one minute.
2215 .\"LINK2"
2216 FTP File System
2217 .\"FTP File System"
2218 (ftpfs) allows you to browse directories on remote FTP servers.  It has
2219 several options.
2221 .I ftp anonymous password
2222 is the password used when you login as "anonymous".  Some sites require
2223 a valid e\-mail address.  On the other hand, you probably don't want to
2224 give your real e\-mail address to untrusted sites, especially if you are
2225 not using spam filtering.
2227 ftpfs keeps the directory listing it fetches from a FTP server in a cache.
2228 The cache expire time is configurable with the
2229 .I ftpfs directory cache timeout
2230 option.  A low value for this option may slow down every operation on
2231 the ftpfs because every operation would require sending a request to the
2232 FTP server.
2234 You can define an FTP proxy host for doing FTP.  Note that most modern
2235 firewalls are fully transparent at least for passive FTP (see below), so
2236 FTP proxies are considered obsolete.
2239 .I Always use ftp proxy
2240 is not set, you can use the exclamation sign to enable proxy for certain
2241 hosts.  See
2242 .\"LINK2"
2243 FTP File System
2244 .\"FTP File System"
2245 for examples.
2247 If this option is set, the program will do two things: consult the
2248 %prefix%/lib/mc/mc.no_proxy file for lines containing host names that
2249 are local (if the host name starts with a dot, it is assumed to be a
2250 domain) and to assume that any hostnames without dots in their names are
2251 directly accessible.  All other hosts will be accessed through the
2252 specified FTP proxy.
2254 You can enable using
2255 .I ~/.netrc
2256 file, which keeps login names and passwords for ftp servers.  See netrc
2257 (5) for the description of the .netrc format.
2259 .I Use passive mode
2260 enables using FTP passive mode, when the connection for data transfer is
2261 initiated by the client, not by the server.  This option is recommended
2262 and enabled by default.  If this option is turned off, the data
2263 connection is initiated by the server.  This may not work with some
2264 firewalls.
2265 .\"NODE "    Save Setup"
2266 .SH "    Save Setup"
2267 At startup the Midnight Commander will try to load initialization
2268 information from the ~/.config/mc/ini file. If this file
2269 doesn't exist, it will load the information from the system\-wide
2270 configuration file, located in %prefix%/share/mc/mc.ini. If the 
2271 system\-wide configuration file doesn't exist, MC uses the default settings.
2274 .I Save Setup
2275 command creates the ~/.config/mc/ini file by saving the
2276 current settings of the
2277 .\"LINK2"
2278 Left, Right
2279 .\"Left and Right Menus"
2281 .\"LINK2"
2282 Options
2283 .\"Options Menu"
2284 menus.
2286 If you activate the
2287 .I auto save setup
2288 option, MC will always save the current settings when exiting.
2290 There also exist settings which can't be changed from the menus. To
2291 change these settings you have to edit the setup file with your
2292 favorite editor. See the section on
2293 .\"LINK2"
2294 Special Settings
2295 .\"Special Settings"
2296 for more information.
2297 .SH ""
2298 .\"NODE "Executing operating system commands"
2299 .SH "Executing operating system commands"
2300 You may execute commands by typing them directly in the Midnight
2301 Commander's input line, or by selecting the program you want to
2302 execute with the selection bar in one of the panels and hitting Enter.
2304 If you press Enter over a file that is not executable, the Midnight
2305 Commander checks the extension of the selected file against the
2306 extensions in the
2307 .\"LINK2"
2308 Extensions File\&.
2309 .\"Edit Extension File"
2310 If a match is found then the code associated with that extension is
2311 executed. A very simple
2312 .\"LINK2"
2313 macro expansion
2314 .\"Macro Substitution"
2315 takes place before executing the command.
2316 .\"NODE "  The cd internal command"
2317 .SH "  The cd internal command"
2319 .I cd
2320 command is interpreted by the Midnight Commander, it is not passed to
2321 the command shell for execution.  Thus it may not handle all of the
2322 nice macro expansion and substitution that your shell does, although it
2323 does some of them:
2325 .I Tilde substitution.
2326 The (~) will be substituted with your home directory, if you append a
2327 username after the tilde, then it will be substituted with the login
2328 directory of the specified user.
2330 For example, ~guest is the home directory for the user guest, while
2331 ~/guest is the directory guest in your home directory.
2333 .I Previous directory.
2334 You can jump to the directory you were previously by using the special
2335 directory name '\-' like this:
2336 .B cd \-
2338 .I CDPATH directories.
2339 If the directory specified to the
2340 .B cd
2341 command is not in the current directory, then The Midnight Commander
2342 uses the value in the environment variable
2343 .B CDPATH
2344 to search for the directory in any of the named directories.
2346 For example you could set your
2347 .B CDPATH
2348 variable to ~/src:/usr/src, allowing you to change your directory to
2349 any of the directories inside the ~/src and /usr/src directories, from
2350 any place in the file system by using its relative name (for example
2351 cd linux could take you to /usr/src/linux).
2352 .\"NODE "  Macro Substitution"
2353 .SH "  Macro Substitution"
2354 When accessing a
2355 .\"LINK2"
2356 user menu\&,
2357 .\"Edit Menu File"
2358 or executing an
2359 .\"LINK2"
2360 extension dependent command\&,
2361 .\"Edit Extension File"
2362 or running a command from the command line input, a simple macro
2363 substitution takes place.
2365 The macros are:
2367 .I %i
2368 The indent of blank space, equal the cursor column position.  For edit
2369 menu only.
2371 .I %y
2372 The syntax type of current file. For edit menu only.
2374 .I %k
2375 The block file name.
2377 .I %e
2378 The error file name.
2380 .I %m
2381 The current menu name.
2383 .IR %f " and " %p
2384 The current file name.
2386 .I %x
2387 The extension of current file name.
2389 .I %b
2390 The current file name without extension.
2392 .I %d
2393 The current directory name.
2395 .I %F
2396 The current file in the unselected panel.
2398 .I %D
2399 The directory name of the unselected panel.
2401 .I %t
2402 The currently tagged files.
2404 .I %T
2405 The tagged files in the unselected panel.
2407 .IR %u " and " %U
2408 Similar to the %t and %T macros, but in addition the files are untagged.
2409 You can use this macro only once per menu file entry or extension file
2410 entry, because next time there will be no tagged files.
2412 .IR %s " and " %S
2413 The selected files: The tagged files if there are any. Otherwise the
2414 current file.
2416 .I %cd
2417 This is a special macro that is used to change the current directory
2418 to the directory specified in front of it.  This is used primarily as
2419 an interface to the
2420 .\"LINK2"
2421 Virtual File System\&.
2422 .\"Virtual File System"
2424 .I %view
2425 This macro is used to invoke the internal viewer.  This macro can be
2426 used alone, or with arguments.  If you pass any arguments to this
2427 macro, they should be enclosed in brackets.
2429 The arguments are:
2430 .I ascii
2431 to force the viewer into ascii mode;
2432 .I hex
2433 to force the viewer into hex mode;
2434 .I nroff
2435 to tell the viewer that it should interpret the bold and underline
2436 sequences of nroff;
2437 .I unformatted
2438 to tell the viewer to not interpret nroff commands for making the text
2439 bold or underlined.
2441 .I %%
2442 The % character
2444 .I %{some text}
2445 Prompt for the substitution. An input box is shown and the text inside
2446 the braces is used as a prompt. The macro is substituted by the text
2447 typed by the user. The user can press ESC or F10 to cancel. This macro
2448 doesn't work on the command line yet.
2450 .I %var{ENV:default}
2451 If environment variable
2452 .I ENV
2453 is unset, the
2454 .I default
2455 is substituted.  Otherwise, the value of
2456 .I ENV
2457 is substituted.
2458 .\"NODE "  The subshell support"
2459 .SH "  The subshell support"
2460 The subshell support is a compile time option, that works with the
2461 shells: bash, ash (BusyBox and Debian), tcsh, zsh and fish.
2463 When the subshell support is active, Midnight Commander will
2464 spawn a concurrent copy of your shell (the one defined in the
2465 .B SHELL
2466 variable and if it is not defined, then the one in the /etc/passwd
2467 file) and run it in a pseudo terminal, instead of invoking a new shell
2468 each time you execute a command, the command will be passed to the
2469 subshell as if you had typed it.  This also allows you to change the
2470 environment variables, use shell functions and define aliases that are
2471 valid until you quit the Midnight Commander.
2473 .B bash
2474 users may specify startup commands in ~/.local/share/mc/bashrc (fallback ~/.bashrc)
2475 and special keyboard maps in ~/.local/share/mc/inputrc (fallback ~/.inputrc).
2477 .B ash/dash
2478 users (BusyBox or Debian) may specify startup commands in ~/.local/share/mc/ashrc (fallback ~/.profile).
2480 .B tcsh, zsh, fish
2481 users cannot specify mc-specific startup commands at present. They have to rely on
2482 shell-specific startup files.
2484 The following paragraphs are relevant only when the subshell support is
2485 active:
2487 You can suspend applications at any
2488 time with the sequence C\-o and jump back to the Midnight Commander, if
2489 you interrupt an application, you will not be able to run other
2490 external commands until you quit the application you interrupted.
2492 The basic prompt displayed by Midnight Commander is of the form
2493 "user@host:current_path$ ". When using a capable shell, like Bash, the
2494 prompt displayed by Midnight Commander will be the same prompt that you
2495 are currently using in your shell.
2497 (There's a known problem when using fish: the prompt is displayed only in
2498 full screen mode (Ctrl-o), not when the panels are visible.)
2501 .\"LINK2"
2502 OPTIONS
2503 .\"OPTIONS"
2504 section has more information on how you can control subshell usage (-U/-u).
2505 Furthermore, to set a specific subshell different from your current SHELL variable or
2506 login shell defined in /etc/passwd, you may call MC like this:
2507 .B SHELL=/bin/myshell mc
2508 .\"NODE "Chmod"
2509 .SH "Chmod"
2510 The Chmod window is used to change the attribute bits in a group of
2511 files and directories.  It can be invoked with the C\-x c key combination.
2513 The Chmod window has two parts \-
2514 .I Permissions
2516 .IR File .
2518 In the File section are displayed the name of the file or directory
2519 and its permissions in octal form, as well as its owner and group.
2521 In the Permissions section there is a set of check buttons which
2522 correspond to the file attribute bits.  As you change the attribute
2523 bits, you can see the octal value change in the File section.
2525 To move between the widgets (buttons and check buttons) use the
2526 .I arrow keys
2527 or the
2528 .I Tab
2529 key.  To change the state of the check buttons or to select a button
2531 .I Space.
2532 You can also use the hotkeys on the buttons to quickly activate them.
2533 Hotkeys are shown as highlighted letters on the buttons.
2535 To set the attribute bits, use the Enter key.
2537 When working with a group of files or directories, you just click on
2538 the bits you want to set or clear.  Once you have selected the bits
2539 you want to change, you select one of the action buttons (Set marked
2540 or Clear marked).
2542 Finally, to set the attributes exactly to those specified, you can use
2544 .B [Set all]
2545 button, which will act on all the tagged files.
2547 .B [Marked all]
2548 set only marked attributes to all selected files
2550 .B [Set marked]
2551 set marked bits in attributes of all selected files
2553 .B [Clean marked]
2554 clear marked bits in attributes of all selected files
2556 .B [Set]
2557 set the attributes of one file
2559 .B [Cancel]
2560 cancel the Chmod command
2561 .\"NODE "Chown"
2562 .SH "Chown"
2563 The Chown command is used to change the owner/group of a file. The hot
2564 key for this command is C\-x o.
2565 .\"NODE "Advanced Chown"
2566 .SH "Advanced Chown"
2567 The Advanced Chown command is the
2568 .\"LINK2"
2569 Chmod
2570 .\"Chmod"
2572 .\"LINK2"
2573 Chown
2574 .\"Chown"
2575 command combined into one window. You can change the permissions and
2576 owner/group of files at once.
2577 .\"NODE "File Operations"
2578 .SH "File Operations"
2579 When you copy, move or delete files the Midnight Commander shows the
2580 file operations dialog.  It shows the files currently being processed
2581 and uses up to three progress bars.  The file bar indicates the
2582 percentage of the current file that has been processed so far.  The
2583 count bar shows how many of the tagged files have been handled.  The
2584 bytes bar indicates the percentage of the total size of the tagged files
2585 that has been handled.  If the verbose option is off, the file and bytes
2586 bars are not shown.
2588 There are two buttons at the bottom of the dialog. Pressing the Skip
2589 button will skip the rest of the current file. Pressing the Abort
2590 button will abort the whole operation, the rest of the files are
2591 skipped.
2593 There are three other dialogs which you can run into during the file
2594 operations.
2596 The error dialog informs about error conditions and has three choices.
2597 Normally you select either the Skip button to skip the file or the Abort
2598 button to abort the operation altogether.  You can also select the Retry
2599 button if you fixed the problem from another terminal.
2601 The replace dialog is shown when you attempt to copy or move a file on
2602 the top of an existing file.  The dialog shows the dates and sizes of
2603 the both files.  Press the Yes button to overwrite the file, the No
2604 button to skip the file, the All button to overwrite all the files, the
2605 None button to never overwrite and the Update button to overwrite if the
2606 source file is newer than the target file.  You can abort the whole
2607 operation by pressing the Abort button.
2609 The recursive delete dialog is shown when you try to delete a directory
2610 which is not empty.  Press the Yes button to delete the directory
2611 recursively, the No button to skip the directory, the All button to
2612 delete all the directories and the None button to skip all the non\-empty
2613 directories.  You can abort the whole operation by pressing the Abort
2614 button.  If you selected the Yes or All button you will be asked for a
2615 confirmation.  Type "yes" only if you are really sure you want to do the
2616 recursive delete.
2618 If you have tagged files and perform an operation on them only the files
2619 on which the operation succeeded are untagged. Failed and skipped files
2620 are left tagged.
2621 .\"NODE "Mask Copy/Rename"
2622 .SH "Mask Copy/Rename"
2623 The copy/move operations let you translate the names of files in an
2624 easy way.  To do it, you have to specify the correct source mask and
2625 usually in the trailing part of the destination specify some wildcards.
2626 All the files matching the source mask are copied/renamed according to
2627 the target mask.  If there are tagged files, only the tagged files
2628 matching the source mask are renamed.
2630 There are other options which you can set:
2632 .B Follow links
2634 determines whether make the symlinks and hardlinks in the source
2635 directory (recursively in subdirectories) new links in the target
2636 directory or whether would you like to copy their content.
2638 .B Dive into subdirs
2640 determines the behavior when the source directory is about to be copied,
2641 but the target directory already exists.  The default action is to copy
2642 the contents of the source directory into the target directory.
2643 Enabling this option causes copying the source directory itself into the
2644 target directory.
2646 For example, you want to copy directory
2647 .I /foo
2648 containing file
2649 .I bar
2651 .IR /bla/foo ,
2652 which is an already existing directory.  Normally (when
2653 .B Dive into subdirs
2654 is not set), mc would copy file
2655 .I /foo/bar
2656 into the file
2657 .IR /bla/foo/bar .
2658 By enabling this option the
2659 .I /bla/foo/foo
2660 directory will be created, and
2661 .I /foo/bar
2662 will be copied into
2663 .IR /bla/foo/foo/bar .
2665 .B Preserve attributes
2667 determines whether to preserve the permissions, timestamps and (if you
2668 are root) the ownership of the original files.  If this option is not
2669 set, the current value of the umask will be respected.
2671 .B Use shell patterns
2673 When this option is on you can use the '*' and '?' wildcards in the source
2674 mask. They work like they do in the shell. In the target mask only the '*'
2675 and '\\<digit>' wildcards are allowed. The first '*' wildcard in the target
2676 mask corresponds to the first wildcard group in the source mask,
2677 the second '*' corresponds to the second group and so on.  The '\\1' wildcard
2678 corresponds to the first wildcard group in the source mask, the '\\2' wildcard
2679 corresponds to the second group and so on all the way up to '\\9'.
2680 The '\\0' wildcard is the whole filename of the source file.
2682 Two examples:
2684 If the source mask is "*.tar.gz", the destination is "/bla/*.tgz" and the
2685 file to be copied is "foo.tar.gz", the copy will be "foo.tgz" in "/bla".
2687 Suppose you want to swap basename and extension so that "file.c" would
2688 become "c.file" and so on.  The source mask for this is "*.*" and the
2689 destination is "\\2.\\1".
2691 .B Use shell patterns off
2693 When the shell patterns option is off the MC doesn't do automatic
2694 grouping anymore. You must use '\\(...\\)' expressions in the source
2695 mask to specify meaning for the wildcards in the target mask. This is
2696 more flexible but also requires more typing. Otherwise target masks
2697 are similar to the situation when the shell patterns option is on.
2699 Two examples:
2701 If the source mask is "^\\(.*\\)\\.tar\\.gz$", the destination is
2702 "/bla/*.tgz" and the file to be copied is "foo.tar.gz", the copy
2703 will be "/bla/foo.tgz".
2705 Let's suppose you want to swap basename and extension so that "file.c"
2706 will become "c.file" and so on. The source mask for this is
2707 "^\\(.*\\)\\.\\(.*\\)$" and the destination is "\\2.\\1".
2709 .B Case Conversions
2711 You can also change the case of the filenames.  If you use '\\u'
2712 or '\\l' in the target mask, the next character will be converted to
2713 uppercase or lowercase correspondingly.
2715 If you use '\\U' or '\\L' in the target mask, the next characters will
2716 be converted to uppercase or lowercase correspondingly up to the
2717 next '\\E' or next '\\U', '\\L' or the end of the file name.
2719 The '\\u' and '\\l' are stronger than '\\U' and '\\L'.
2721 For example, if the source mask is '*' (
2722 .I Use shell patterns
2723 on) or '^\\(.*\\)$' (
2724 .I Use shell patterns
2725 off) and the target mask is '\\L\\u*' the file names will be converted
2726 to have initial upper case and otherwise lower case.
2728 You can also use '\\' as a quote character. For example, '\\\\' is
2729 a backslash and '\\*' is an asterisk.
2731 .B Stable symlinks
2733 commands Midnight Commander, that it should change symlinks in the target,
2734 so that they'll point to the same location as it did before. With absolute
2735 symbolic links this does nothing, but if you have a relative one, it will
2736 recompute its value, adding necessary ../ and other directory parts and making
2737 the value as short as possible (most modern filesystems keep short symlinks
2738 inside inodes and thus don't waste much disk space).
2740 .\"NODE "Select/Unselect Files"
2741 .SH "Select/Unselect Files"
2742 The dialog of group of files and directories selection or uselection.
2744 .\"LINK2"
2745 input line
2746 .\"Input Line Keys"
2747 allow enter the regular expression of filenames that will be
2748 selected/unselected.
2750 When
2751 .I Files only
2752 checkbox is on, only files will be selected.  If
2753 .I Files only
2754 is off, as files as directories will be selected.
2755 When
2756 .I Shell Patterns
2757 checkbox is on, the regular expression is much like the filename globbing
2758 in the shell (* standing for zero or more characters and ?  standing
2759 for one character). If
2760 .I Shell Patterns
2761 is off, then the tagging of files is done with normal regular
2762 expressions (see ed (1)). When
2763 .I Case sensitive
2764 checkbox is on, the selection will be case sensitive characters.
2766 .I Case sensitive
2767 is off, the case will be ignored.
2768 .\"NODE "Diff Viewer"
2769 .SH "Internal Diff Viewer"
2770 The mcdiff is a visual diff tool. You can compare two files and edit them
2771 in\-place (diffs are updated dynamically). You can browse and view a working
2772 copy from popular version control systems (GIT, Subversion, etc).
2774 Following shortcuts are available in internal diff viewer of Midnight
2775 Commander.
2777 .B F1
2778 Invoke the built\-in hypertext help viewer.
2780 .B F2
2781 Save modified files.
2783 .B F4
2784 Edit file of the left panel in the internal editor.
2786 .B F14
2787 Edit file of the right panel in the internal editor.
2789 .B F5
2790 Merge the current hunk. Only the current hunk will be merged.
2792 .B F7
2793 Start search.
2795 .B F17
2796 Continue search.
2798 .B F10, Esc, q
2799 Exit from diff viewer.
2801 .B Alt\-s, s
2802 Toggle show of hunk status.
2804 .B Alt\-n, l
2805 Toggle show of line numbers.
2807 .B f
2808 Maximize left panel.
2810 .B =
2811 Make panels equal in width.
2813 .B >
2814 Reduce the size of the right panel.
2816 .B <
2817 Reduce the size of the left panel.
2819 .B c
2820 Toggle show of trailing carriage return (CR) symbol as ^M.
2822 .B 2, 3, 4, 8
2823 Set tabulation size
2825 .B C\-u
2826 Swap contents of diff panels.
2828 .B C\-r
2829 Refresh the screen.
2831 .B C\-o
2832 Switch to the subshell and show the command screen.
2834 .B Enter, Space, n
2835 Find next diff hunk.
2837 .B Backspace, p
2838 Find previous diff hunk.
2840 .B g
2841 Go to line.
2843 .B Down
2844 Scroll one line forward.
2846 .B Up
2847 Scroll one line backward.
2849 .B PageUp
2850 Move one page up.
2852 .B PageDown
2853 Mves one page down.
2855 .B Home, A1
2856 Moves to the line beginning.
2858 .B End
2859 Moves to the line end.
2861 .B C\-Home
2862 Move to the file beginning.
2864 .B C\-End, C1
2865 Move to the file end.
2866 .\"NODE "Internal File Viewer"
2867 .SH "Internal File Viewer"
2868 The internal file viewer provides two display modes: ASCII and hex.
2869 To toggle between modes, use the F4 key.
2871 The viewer will try to use the best method provided by your system or
2872 the file type to display the information.
2873 Some character sequences, which appear most often in preformatted manual
2874 pages, are displayed bold and underlined, thus making a pretty display
2875 of your files.
2877 When in hex mode, the search function accepts text in quotes and
2878 constant numbers.  Text in quotes is matched exactly after removing
2879 the quotes.  Each number matches one byte.  You can mix quoted text
2880 with constants like this:
2883 "String" \-1 0xBB 012 "more text"
2886 Note that 012 is an octal number.  \-1 is converted to 0xFF.
2888 Here is a listing of the actions associated with each key that the
2889 Midnight Commander handles in the internal file viewer.
2891 .B F1
2892 Invoke the built\-in hypertext help viewer.
2894 .B F2
2895 Toggle the wrap mode.
2897 .B F4
2898 Toggle the hex mode.
2900 .B F5
2901 Goto line.  This will prompt you for a line number and will display
2902 that line.
2904 .B F6, /.
2905 Regular expression search.
2907 .B ?,
2908 Reverse regular expression search.
2910 .B F7
2911 Normal search / hex mode search.
2913 .B C\-s, F17, n.
2914 Start normal search if there was no previous search expression else
2915 find next match.
2917 .B C\-r.
2918 Start reverse search if there was no previous search expression else
2919 find next match.
2921 .B F8
2922 Toggle Raw/Parsed mode: This will show the file as found on disk or if
2923 a processing filter has been specified in the mc.ext file, then the
2924 output from the filter. Current mode is always the other than written
2925 on the button label, since on the button is the mode which you enter
2926 by that key.
2928 .B F9
2929 Toggle the format/unformat mode: when format mode is on the viewer
2930 will interpret some string sequences to show bold and underline with
2931 different colors. Also, on button label is the other mode than current.
2933 .B F10, Esc.
2934 Exit the internal file viewer.
2936 .B next\-page, space, C\-v.
2937 Scroll one page forward.
2939 .B prev\-page, Alt\-v, C\-b, Backspace.
2940 Scroll one page backward.
2942 .B down\-key
2943 Scroll one line forward.
2945 .B up\-key
2946 Scroll one line backward.
2948 .B C\-l
2949 Refresh the screen.
2951 .B C\-o
2952 Switch to the subshell and show the command screen.
2954 .B "[n] m"
2955 Set the mark n.
2957 .B "[n] r"
2958 Jump to the mark n.
2960 .B C\-f
2961 Jump to the next file.
2963 .B C\-b
2964 Jump to the previous file.
2966 .B Alt\-r
2967 Toggle the ruler.
2969 .B Alt\-e
2970 to change charset of displayed text may use M\-e (Alt\-e).
2971 Recoding is made from selected codepage into system codepage. To
2972 cancel the recoding you may select "<No translation>" in charset
2973 selection dialog.
2975 It's possible to instruct the file viewer how to display a file, look
2976 at the
2977 .\"LINK2"
2978 Edit Extension File section
2979 .\"Edit Extension File"
2981 .\"NODE "Internal File Editor"
2982 .SH "Internal File Editor"
2983 The internal file editor is a full\-featured full screen editor.  It can
2984 edit files up to 64 megabytes.  It is possible to edit binary files.
2985 The internal file editor is invoked using
2986 .B F4
2987 if the
2988 .I use_internal_edit
2989 option is set in the initialization file.
2991 The features it presently supports are: block copy, move, delete, cut,
2992 paste; key for key undo; pull\-down menus; file insertion; macro
2993 commands; regular expression search and replace; shift\-arrow text highlighting
2994 (if supported by the terminal); insert\-overwrite toggle; word wrap;
2995 autoindent; tunable tab size; syntax highlighting for various file
2996 types; and an option to pipe text blocks through shell commands like
2997 indent and ispell.
2999 Sections:
3001 .\"LINK2"
3002 Options of editor in ini\-file
3003 .\"Internal File Editor / options"
3005 The editor is very easy to use and requires no tutoring. To see what
3006 keys do what, just consult the appropriate pull\-down menu. Other keys
3007 are: Shift movement keys do text highlighting.
3008 .B Ctrl\-Ins
3009 copies to the file
3010 .B mcedit.clip
3012 .B Shift\-Ins
3013 pastes from mcedit.clip.
3014 .B Shift\-Del
3015 cuts to
3016 .BR mcedit.clip ,
3018 .B Ctrl\-Del
3019 deletes highlighted text. Mouse highlighting also works, and you
3020 can override the mouse as usual by holding down the shift key
3021 while dragging the mouse to let normal terminal mouse highlighting
3022 work.
3024 To define a macro, press
3025 .B Ctrl\-R
3026 and then type out the key
3027 strokes you want to be executed. Press
3028 .B Ctrl\-R
3029 again when finished. You can then assign the macro to any key you
3030 like by pressing that key. The macro is executed when you press
3031 .B Ctrl\-A
3032 and then the assigned key. The macro is also executed if
3033 you press Meta, Ctrl, or Esc and the assigned key, provided that the
3034 key is not used for any other function. Once defined, the macro
3035 commands go into the file
3036 .B ~/.local/share/mc/mcedit/mcedit.macros
3037 You can delete a macro by deleting the
3038 appropriate line in this file.
3040 To change charset of displayed text may use M\-e (Alt\-e).
3041 Recoding is made from selected codepage into system codepage. To
3042 cancel the recoding you may select "<No translation>" in charset
3043 selection dialog.
3045 .B F19
3046 will format the currently highlighted block (plain text or
3047 .B C
3049 .B C++
3050 code or another). This is controlled by the
3051 file
3052 .B %prefix%/share/mc/edit.indent.rc
3053 which is copied to
3054 .B ~/.local/share/mc/mcedit/edit.indent.rc
3055 in your home directory the first time you use it.
3057 The editor also displays non\-us characters (160+). When editing
3058 binary files, you should set
3059 .B display bits
3060 to 7 bits in the options menu to keep the spacing clean.
3062 .\"NODE "Internal File Editor / options"
3063 .SH "Options of editor in ini\-file"
3065 Some editor options of ini\-file are described in this section.
3066 Options are placed in [Midnight\-Commander] section
3068 .I editor_wordcompletion_collect_entire_file
3069 Search autocomplete candidates in entire of file or just from
3070 begin of file to cursor position (0)
3072 .\"NODE "Screen selector"
3073 .SH "Screen selector"
3074 Midnight Commander supports running many internal modules (such as
3075 editor, viewer and diff viewer) simultaneously and switching between
3076 them without closing open files. Using several file managers at a time,
3077 however, is not currently supported.
3079 Let's call each of these modules a screen. There are three ways to
3080 switch between screens, using one of these global shortcuts:
3082 .B Alt\-}
3083 switch to the next screen;
3085 .B Alt\-{
3086 switch to the previous screen;
3088 .B Alt\-`
3089 open a dialog window with the list of currently open screens (or use the
3090 "Screen list" menu item).
3091 .\"NODE "Completion"
3092 .SH "Completion"
3093 Let the Midnight Commander type for you.
3095 Attempt to perform completion on the text before current position.  MC
3096 attempts completion treating the text as variable (if the text begins
3097 with
3098 .BR $ ),
3099 username (if the text begins with
3100 .BR ~ ),
3101 hostname (if the text begins with
3102 .BR @ )
3103 or command (if you are on the command line in the position where you
3104 might type a command, possible completions then include shell reserved
3105 words and shell built\-in commands as well) in turn.  If none of these
3106 matches, filename completion is attempted.
3108 Filename, username, variable and hostname completion works on all input
3109 lines, command completion is command line specific.  If the completion
3110 is ambiguous (there are more different possibilities), MC beeps and the
3111 following action depends on the setting of the
3112 .\"LINK2"
3113 Complete: show all
3114 .\"Configuration"
3115 option in the
3116 .\"LINK2"
3117 Configuration
3118 .\"Configuration"
3119 dialog.  If it is enabled, a list of all possibilities pops up next to
3120 the current position and you can select with the arrow keys and
3121 .B Enter
3122 the correct entry.  You can also type the first letters in which the
3123 possibilities differ to move to a subset of all possibilities and
3124 complete as much as possible.  If you press
3125 .B Alt\-Tab
3126 again, only the subset will be shown in the listbox, otherwise the first
3127 item which matches all the previous characters will be highlighted.  As
3128 soon as there is no ambiguity, dialog disappears, but you can hide it by
3129 canceling keys
3130 .BR Esc ,
3131 .B F10
3132 and left and right arrow keys. If
3133 .\"LINK2"
3134 Complete: show all
3135 .\"Configuration"
3136 is disabled, the dialog pops up only if you press
3137 .B Alt\-Tab
3138 for the second time, for the first time MC just beeps.
3140 Apply escaping of
3141 .BR ? ", " * " and " &
3142 symbols (as \fB\\?\fR, \fB\\*\fR, \fB\\&\fR )
3143 in filenames to disallow use them as metasymbols in regular expressions
3144 when substitution is performed in the input line.
3146 .\"NODE "Virtual File System"
3147 .SH "Virtual File System"
3148 The Midnight Commander is provided with a code layer to access the file
3149 system; this code layer is known as the virtual file system switch.  The
3150 virtual file system switch allows the Midnight Commander to manipulate
3151 files not located on the Unix file system.
3153 Currently the Midnight Commander is packaged with some Virtual File
3154 Systems (VFS): the
3155 .I local
3156 file system, used for accessing the regular Unix file system; the
3157 .IR ftpfs ,
3158 used to manipulate files on remote systems with the FTP protocol; the
3159 .IR tarfs ,
3160 used to manipulate tar and compressed tar files; the
3161 .IR undelfs ,
3162 used to recover deleted files on ext2 file systems (the default file
3163 system for Linux systems),
3164 .I fish
3165 (for manipulating files over shell connections such as rsh and ssh).
3166 If the code was compiled with
3167 .I sftpfs
3168 (for manipulating files over SFTP connections).
3169 If the code was compiled with
3170 .I smbfs
3171 support, you can manipulate files on remote systems with the SMB (CIFS)
3172 protocol.
3174 A generic
3175 .I extfs
3176 (EXTernal virtual File System) is provided in order to easily expand
3177 VFS capabilities using scripts and external software.
3179 The VFS switch code will interpret all of the path names used and will
3180 forward them to the correct file system, the formats used for each one
3181 of the file systems is described later in their own section.
3182 .\"NODE "  FTP File System"
3183 .SH "  FTP File System"
3184 The FTP File System (ftpfs) allows you to manipulate files on remote
3185 machines.  To actually use it, you can use the
3186 .I FTP link
3187 item in the menu or directly change your current directory using the
3188 .I cd
3189 command to a path name that looks like this:
3191 .I ftp://[!][user[:pass]@]machine[:port][remote\-dir]
3194 .IR user ,
3195 .I port
3197 .I remote\-dir
3198 elements are optional.  If you specify the
3199 .I user
3200 element, the Midnight Commander will login to the remote machine as that
3201 user, otherwise it will use anonymous login or the login name from the
3202 .I ~/.netrc
3203 file.  The optional
3204 .I pass
3205 element is the password used for the connection.  Using the password in
3206 the VFS directory name is not recommended, because it can appear on the
3207 screen in clear text and can be saved to the directory history.
3209 To enable using FTP proxy, prepend
3210 .B !
3211 (an exclamation sign) to the hostname.
3213 Examples:
3216     ftp://ftp.nuclecu.unam.mx/linux/local
3217     ftp://tsx\-11.mit.edu/pub/linux/packages
3218     ftp://!behind.firewall.edu/pub
3219     ftp://guest@remote\-host.com:40/pub
3220     ftp://miguel:xxx@server/pub
3223 Please check the
3224 .\"LINK2"
3225 Virtual File System
3226 .\"Virtual FS"
3227 dialog box for ftpfs options.
3228 .\"NODE "  Tar File System"
3229 .SH "  Tar File System"
3230 The tar file system provides you with read\-only access to your tar
3231 files and compressed tar files by using the chdir command.  To change
3232 your directory to a tar file, you change your current directory to the
3233 tar file by using the following syntax:
3235 .I /filename.tar/utar://[dir\-inside\-tar]
3237 The mc.ext file already provides a shortcut for tar files, this means
3238 that usually you just point to a tar file and press return to enter
3239 into the tar file, see the
3240 .\"LINK2"
3241 Edit Extension File
3242 .\"Edit Extension File"
3243 section for details on how this is done.
3245 Examples:
3248     mc\-3.0.tar.gz/utar://mc\-3.0/vfs
3249     /ftp/GCC/gcc\-2.7.0.tar/utar://
3252 The latter specifies the full path of the tar archive.
3253 .\"NODE "  FIle transfer over SHell filesystem"
3254 .SH "  FIle transfer over SHell filesystem"
3255 The fish file system is a network based file system that allows you to
3256 manipulate the files in a remote machine as if they were local. To use
3257 this, the other side has to either run fish server, or has to have
3258 bash\-compatible shell.
3260 To connect to a remote machine, you just need to chdir
3261 into a special directory which name is in the following
3262 format:
3264 .I sh://[user@]machine[:options]/[remote\-dir]
3267 .I user,
3268 .I options
3270 .I remote\-dir
3271 elements are optional.  If you specify the
3272 .I user
3273 element, the Midnight Commander will try to login on the remote
3274 machine as that user, otherwise it will use your login name.
3276 The available
3277 .I options
3278 are:
3280   'C' \- use compression;
3281   'r' \- use rsh instead of ssh;
3282   port \- specify the port used by remote server.
3284 If the
3285 .I remote\-dir
3286 element is present, your current directory on the remote machine will be
3287 set to this one.
3289 Examples:
3292     sh://onlyrsh.mx:r/linux/local
3293     sh://joe@want.compression.edu:C/private
3294     sh://joe@noncompressed.ssh.edu/private
3295     sh://joe@somehost.ssh.edu:2222/private
3297 .\"NODE "  SFTP (SSH File Transfer Protocol) filesystem"
3298 .SH "  SFTP (SSH File Transfer Protocol) filesystem"
3299 The SFTP file system is a network based file system that allows you to
3300 manipulate the files in a remote machine as if they were local.
3302 To connect to a remote machine, you just need to chdir
3303 into a special directory which name is in the following
3304 format:
3306 .I sftp://[user@]machine:[port]/[remote\-dir]
3309 .I user,
3310 .I port
3312 .I remote\-dir
3313 elements are optional.  If you specify the
3314 .I user
3315 element, the Midnight Commander will try to login on the remote
3316 machine as that user, otherwise it will use your login name.
3317 .I port
3318 \- specify the port used by remote server (22 by default).
3319 If the
3320 .I remote\-dir
3321 element is present, your current directory on the remote machine will be
3322 set to this one.
3324 Examples:
3327     sftp://onlyrsh.mx/linux/local
3328     sftp://joe:password@want.compression.edu/private
3329     sftp://joe@noncompressed.ssh.edu/private
3330     sftp://joe@somehost.ssh.edu:2222/private
3332 .\"NODE "  Undelete File System"
3333 .SH "  Undelete File System"
3334 On Linux systems, if you asked configure to use the ext2fs undelete
3335 facilities, you will have the undelete file system available.
3336 Recovery of deleted files is only available on ext2 file systems.  The
3337 undelete file system is just an interface to the ext2fs library to
3338 retrieve all of the deleted files names on an ext2fs and provides and
3339 to extract the selected files into a regular partition.
3341 To use this file system, you have to chdir into the special file name
3342 formed by the "undel://" prefix and the file name where the actual
3343 file system resides.
3345 For example, to recover deleted files on the second partition of the
3346 first SCSI disk on Linux, you would use the following path name:
3349     undel://sda2
3352 It may take a while for the undelfs to load the required information
3353 before you start browsing files there.
3354 .\"NODE "  SMB File System"
3355 .SH "  SMB File System"
3356 The smbfs allows you to manipulate files on remote machines with SMB
3357 (or CIFS) protocol.  These include Windows for Workgroups,
3358 Windows 9x/ME/XP, Windows NT, Windows 2000 and Samba.
3359 To actually use it, you may try to use the panel command "SMB link..."
3360 (accessible from the menubar) or you may directly change your current
3361 directory to it using the cd command to a path name that looks like this:
3363 .I smb://[user@]machine[/service][/remote\-dir]
3366 .IR user ,
3367 .I service
3369 .I remote\-dir
3370 elements are optional.
3372 .IR user ,
3373 .I domain
3375 .I password
3376 can be specified in an input dialog.
3378 Examples:
3381     smb://machine/Share
3382     smb://other_machine
3383     smb://guest@machine/Public/Irlex
3385 .\"NODE "  EXTernal File System"
3386 .SH "  EXTernal File System"
3387 .B extfs
3388 allows you to integrate numerous features and file types into GNU Midnight
3389 Commander in an easy way, by writing scripts.
3391 Extfs filesystems can be divided into two categories:
3393 1. Stand\-alone filesystems, which are not associated with any existing
3394 file.  They represent certain system\-wide data as a directory tree.
3395 You can invoke them by typing
3396 .RI ' "cd fsname://" '
3397 where fsname is an extfs short name (see below).  Examples of such
3398 filesystems include audio (list audio tracks on the CD) or apt (list of
3399 all Debian packages in the system).
3401 For example, to list CD\-Audio tracks on your CD\-ROM drive, type
3404   cd audio://
3407 2. 'Archive' filesystems (like rpm, patchfs and more), which represent
3408 contents of a file as a directory tree.  It can consist of 'real' files
3409 compressed in an archive (urar, rpm) or virtual files, like messages
3410 in a mailbox (mailfs) or parts of a patch (patchfs).  To access such
3411 filesystems
3412 .RI ' fsname:// '
3413 should be appended to the archive name.  Note that the archive itself
3414 can be on another vfs.
3416 For example, to list contents of a zip archive documents.zip type
3419   cd documents.zip/uzip://
3422 In many aspects, you could treat extfs like any other directory.  For
3423 instance, you can add it to the hotlist or change to it from directory
3424 history.  An important limitation is that you cannot invoke shell
3425 commands inside extfs, just like any other non\-local VFS.
3427 Common extfs scripts included with Midnight Commander are:
3429 .B a
3430 access 'A:' DOS/Windows diskette
3431 .RI ( "cd a://" ).
3433 .B apt
3434 front end to Debian's APT package management system
3435 .RI ( "cd apt://" ).
3437 .B audio
3438 audio CD ripping and playing
3439 .RI ( "cd audio://"
3441 .IR "cd device/audio://" ).
3443 .B bpp
3444 package of Bad Penguin GNU/Linux distribution
3445 .RI ( "cd file.bpp/bpp://" ).
3447 .B deb
3448 package of Debian GNU/Linux distribution
3449 .RI ( "cd file.deb/deb://" ).
3451 .B dpkg
3452 Debian GNU/Linux installed packages
3453 .RI ( "cd deb://" ).
3455 .B hp48
3456 view and copy files to/from a HP48 calculator
3457 .RI ( "cd hp48://" ).
3459 .B lslR
3460 browsing of lslR listings as found on many FTPs
3461 .RI ( "cd filename/lslR://" ).
3463 .B mailfs
3464 mbox\-style mailbox files support
3465 .RI ( "cd mailbox/mailfs://" ).
3467 .B patchfs
3468 extfs to handle unified and context diffs
3469 .RI ( "cd filename/patchfs://" ).
3471 .B rpm
3472 RPM package
3473 .RI ( "cd filename/rpm://" ).
3475 .B rpms
3476 RPM database management
3477 .RI ( "cd rpms://" ).
3479 .B ulha, urar, uzip, uzoo, uar, uha
3480 archivers
3481 .RI ( "cd archive/xxxx://"
3482 where xxxx is one of:
3483 .IR ulha ,
3484 .IR urar ,
3485 .IR uzip ,
3486 .IR uzoo ,
3487 .IR uar ,
3488 .IR uha ).
3490 You could bind file type/extension to specified extfs as described in the
3491 .\"LINK2"
3492 Edit Extension File
3493 .\"Edit Extension File"
3494 section.  Here is an example entry for Debian packages:
3497   regex/\.deb$
3498           Open=%cd %p/deb://
3500 .\"NODE "Colors"
3501 .SH "Colors"
3502 The Midnight Commander will try to detect if your terminal supports
3503 color using the terminal database and your terminal name.  Sometimes
3504 it gets confused, so you may force color mode or disable color mode
3505 using the \-c and \-b flag respectively.
3507 If the program is compiled with the Slang screen manager instead of
3508 ncurses, it will also check the variable
3509 .B COLORTERM,
3510 if it is set, it has the same effect as the \-c flag.
3512 You may specify terminals that always force color mode
3513 by adding the
3514 .I color_terminals
3515 variable to the Colors section of the initialization file.  This will
3516 prevent the Midnight Commander from trying to detect if your terminal
3517 supports color.  Example:
3520 [Colors]
3521 color_terminals=linux,xterm
3522 color_terminals=terminal\-name1,terminal\-name2...
3525 The program can be compiled with both ncurses and slang, ncurses does
3526 not provide a way to force color mode: ncurses uses just the
3527 information in the terminal database.
3529 The Midnight Commander provides a way to change the default colors.
3530 Currently the colors are configured using the environment variable
3531 .B MC_COLOR_TABLE
3532 or the Colors section in the initialization file.
3534 In the Colors section, the default color map is loaded from the
3535 .I base_color
3536 variable.  You can specify an alternate color map for a terminal by
3537 using the terminal name as the key in this section.  Example:
3540 [Colors]
3541 base_color=
3542 xterm=menu=magenta:marked=,magenta:markselect=,red
3545 The format for the color definition is:
3548   <keyword>=<fgcolor>,<bgcolor>,<attributes>:<keyword>=...
3551 The colors are optional, and the keywords are: normal, selected, disabled, marked,
3552 markselect, errors, input, inputmark, inputunchanged, commandlinemark,
3553 reverse, gauge, header, inputhistory, commandhistory. Button bar colors are:
3554 bbarhotkey, bbarbutton. Status bar color: statusbar. Menu colors are: menunormal,
3555 menusel, menuhot, menuhotsel, menuinactive. Dialog colors are: dnormal, dfocus,
3556 dhotnormal, dhotfocus, dtitle. Error dialog colors are: errdfocus, errdhotnormal,
3557 errdhotfocus, errdtitle.  Help colors are: helpnormal, helpitalic, helpbold,
3558 helplink, helpslink, helptitle.  Viewer colors are: viewnormal, viewbold,
3559 viewunderline, viewselected. Editor colors are: editnormal, editbold, editmarked,
3560 editwhitespace, editlinestate. Popup menu colors are: pmenunormal, pmenusel,
3561 pmenutitle.
3563 .I header
3564 determines the color of panel header, the line that contains column titles
3565 and sort mode indicator.
3567 .I input
3568 determines the color of input lines used in query dialogs.
3570 .I gauge
3571 determines the color of the filled part of the progress bar (gauge),
3572 which is used to show the user the progress of file operations, such as
3573 copying.
3575 .I disabled
3576 determines the color of the widget that cannot be selected.
3578 The dialog boxes use the following colors:
3579 .I dnormal
3580 is used for the normal text,
3581 .I dfocus
3582 is the color used for the currently selected component,
3583 .I dhotnormal
3584 is the color used to differentiate the hotkey color in normal
3585 components, whereas the
3586 .I dhotfocus
3587 color is used for the highlighted color in the currently selected
3588 component.
3590 Menus use the same scheme but uses the menunormal, menusel, menuhot, menuhotsel
3591 and menuinactive tags instead.
3593 Help uses the following colors:
3594 .I helpnormal
3595 is used for normal text,
3596 .I helpitalic
3597 is used for text which is emphasized in italic in the manual page,
3598 .I helpbold
3599 is used for text which is emphasized in bold in the manual page,
3600 .I helplink
3601 is used for not selected hyperlinks and
3602 .I helpslink
3603 is used for selected hyperlink.
3605 Popup menu uses following colors:
3606 .I pmenunormal
3607 is used for non\-selected menu items and as a main color of popup menu window,
3608 .I pmenusel
3609 is used for selected menu item,
3610 .I pmenutitle
3611 is used for popup menu title.
3613 The possible colors are: black, gray, red, brightred, green,
3614 brightgreen, brown, yellow, blue, brightblue, magenta, brightmagenta,
3615 cyan, brightcyan, lightgray and white. And there is a special keyword
3616 for transparent background. It is 'default'. The 'default' can only be
3617 used for background color. Another special keyword "base" means mc's main
3618 colors.  When 256 colors are available, they can be specified either as
3619 color16 to color255, or as rgb000 to rgb555 and gray0 to gray23. Example:
3622 [Colors]
3623 base_color=normal=white,default:marked=magenta,default
3626 Attributes can be any of bold, italic, underline, reverse and blink, appended by a
3627 plus sign if more than one are desired.  The special word "none" means no
3628 attributes, without attempting to fall back to base_color.  Example:
3631 menuhotsel=yellow;black;bold+underline
3634 .\"NODE "Skins"
3635 .SH "Skins"
3636 You can change the appearance of Midnight Commander.
3637 To do this, you must specify a file that contain descriptions of colors
3638 and lines to draw boxes. Redefining of the colors is entirely compatible
3639 with the assignment of colors, as described in Section
3640 .\"LINK2"
3641 Colors\&.
3642 .\"Colors"
3644 If your skin contains any of 256\-color definitions, you should define
3645 the '256colors' key set to TRUE value in [skin] section.
3648 A skin\-file is searched on the following algorithm (to the first one found):
3651 1) command line option
3652 .B \-S <skin>
3654 .B \-\-skin=<skin>
3656 2) Environment variable
3657 .B MC_SKIN
3659 3) Parameter
3660 .B skin
3661 in section
3662 .B [Midnight\-Commander]
3663 in config file.
3665 4) File
3666 .B %sysconfdir%/mc/skins/default.ini
3668 5) File
3669 .B %prefix%/share/mc/skins/default.ini
3672 Command line option, environment variable and parameter in config file may
3673 contain the absolute path to the skin\-file (with the extension \.ini
3674 or without it). Search of skin\-file will occur in (to the first one found):
3677 .B ~/.local/share/mc/skins/
3680 .B @sysconfdir@/mc/skins/
3683 .B %prefix%/share/mc/skins/
3687 For getting extended info, refer to:
3689 .\"LINK2"
3690 Description of section and parameters
3691 .\"Skins sections"
3693 .\"LINK2"
3694 Color pair definitions
3695 .\"Skins colors"
3697 .\"LINK2"
3698 Draw lines
3699 .\"Skins lines"
3701 .\"LINK2"
3702 Compatibility
3703 .\"Skins oldcolors"
3706 .\"NODE "  Skins sections"
3707 .SH "  Description of section and parameters"
3709 Section
3710 .B [skin]
3711 contain metainfo for skin\-file. Parameter
3712 .I description
3713 contain short text about skin.
3716 Section
3717 .B [filehighlight]
3718 contain descriptions of color pairs for filenames highlighting.
3719 Name of parameters must be equal to names of sections into
3720 filehighlight.ini file.
3722 .\"LINK2"
3723 Filenames Highlight
3724 .\"Filenames Highlight"
3725 for getting more info.
3728 Section
3729 .B [core]
3730 describes the elements that are used everywhere.
3732 .I _default_
3733 Default color pair. Used in all other sections if they not contain
3734 color definitions
3736 .I selected
3737 cursor
3739 .I marked
3740 selected data
3742 .I markselect
3743 cursor on selected data
3745 .I gauge
3746 color of the filled part of the progress bar
3748 .I input
3749 color of input lines used in query dialogs
3751 .I inputmark
3752 color of input selected text
3754 .I inputunchanged
3755 color of input text before first modification or cursor movement
3757 .I commandlinemark
3758 color of selected text in command line
3760 .I reverse
3761 reverse color
3763 Section
3764 .B [dialog]
3765 describes the elements that are placed on dialog windows (except error dialogs).
3767 .I _default_
3768 Default color for this section. Used [core]._default_ if not specified
3770 .I dfocus
3771 Color of active element (in focus)
3773 .I dhotnormal
3774 Color of hotkeys
3776 .I dhotfocus
3777 Color of hotkeys in focused element
3780 Section
3781 .B [error]
3782 describes the elements that are placed on error dialog windows
3784 .I _default_
3785 Default color for this section. Used [core]._default_ if not specified
3787 .I errdhotnormal
3788 Color of hotkeys
3790 .I errdhotfocus
3791 Color of hotkeys in focused element
3794 Section
3795 .B [menu]
3796 describes the elements that are placed in menu. This section describes
3797 system menu (called by F9) and user\-defined menus (called by F2 in panels
3798 and by F11 in editor).
3800 .I _default_
3801 Default color for this section. Used [core]._default_ if not specified
3803 .I entry
3804 Color of menu items
3806 .I menuhot
3807 Color of menu hotkeys
3809 .I menusel
3810 Color of active menu item (in focus)
3812 .I menuhotsel
3813 Color of menu hotkeys in focused menu item
3815 .I menuinactive
3816 Color of inactive menu
3819 Section
3820 .B [help]
3821 describes the elements that are placed on help window.
3823 .I _default_
3824 Default color for this section. Used [core]._default_ if not specified
3826 .I helpitalic
3827 Color pair for element with
3828 .B italic
3829 attribute
3831 .I helpbold
3832 Color pair for element with
3833 .B bold
3834 attribute
3836 .I helplink
3837 Color of links
3839 .I helpslink
3840 Color of active link (on focus)
3843 Section
3844 .B [editor]
3845 describes the colors of elements placed in editor.
3847 .I _default_
3848 Default color for this section. Used [core]._default_ if not specified
3850 .I editbold
3851 Color pair for element with
3852 .B bold
3853 attribute
3855 .I editmarked
3856 Color of selected text
3858 .I editwhitespace
3859 Color of tabs and trailing spaces highlighting
3861 .I editlinestate
3862 Color for line state area
3865 Section
3866 .B [viewer]
3867 describes the colors of elements placed in viewer.
3869 .I viewunderline
3870 Color pair for element with
3871 .B underline
3872 attribute
3874 .\"NODE "  Skins colors"
3875 .SH "  Color pair definitions"
3876 Any parameter in skin\-file contain definition of color pair.
3878 Color pairs described as two colors and the optional attributes
3879 separated by ';'. First field sets the foreground color, second
3880 field sets background color, third field sets the attributes.
3881 Any of the fields may be omitted, in this case value will be
3882 taken from default color pair (global color pair or from default
3883 color pair of this section).
3885 Example:
3888 [core]
3889     # green on black
3890     _default_=green;black
3891     # green (default) on blue
3892     selected=;blue
3893     # yellow on black (default)
3894     # underlined yellow on black (default)
3895     marked=yellow;;underline
3899 Possible colors (names) and attributes are described in
3900 .\"LINK2"
3901 Colors\&.
3902 .\"Colors"
3903 section.
3905 .\"NODE "  Skins lines"
3906 .SH "  Draw lines"
3907 Lines sets in section
3908 .B [Lines]
3909 into skin\-file. By default single lines are used, but you may redefine
3910 to usage of any utf\-8 symbols (like to lines, for example).
3912 .I WARNING!!!
3913 When you build Midnight Commander with the Ncurses screen library
3914 usage of drawing lines is limited!
3915 Possible only drawing a single lines.
3916 For all questions and comments please contact the developers of Ncurses.
3919 Descriptions of parameters
3920 .BR [Lines] :
3922 .I lefttop
3923 left\-top line fragment.
3925 .I righttop
3926 right\-top line fragment.
3928 .I centertop
3929 down branch of horizontal line
3931 .I centerbottom
3932 up branch of horizontal line
3934 .I leftbottom
3935 left\-bottom line fragment
3937 .I rightbottom
3938 right\-bottom line fragment
3940 .I leftmiddle
3941 right branch of vertical line
3943 .I rightmiddle
3944 left branch of vertical line
3946 .I centermiddle
3947 cross of lines
3949 .I horiz
3950 horizontal line
3952 .I vert
3953 vertical line
3955 .I thinhoriz
3956 thin horizontal line
3958 .I thinvert
3959 thin vertical line
3962 .\"NODE "  Skins oldcolors"
3963 .SH "  Compatibility"
3965 Appointment of color  by skin\-files fully compatible with
3966 the appointment of the colors described in
3967 .\"LINK2"
3968 Colors\&.
3969 .\"Colors"
3970 section.
3972 In this case, reassignment of colors has priority over the skin file and is
3973 complementary.
3975 .\"NODE "Filenames Highlight"
3976 .SH "Filenames Highlight"
3977 Section [filehighlight] in current skin\-file contains key names as
3978 highlight groups and values as color pairs. Color pairs is documented
3980 .\"LINK2"
3981 Skins
3982 .\"Skins"
3983 section.
3985 Rules of filenames highlight are placed in %prefix%/share/mc/filehighlight.ini file
3986 (~/.config/mc/filehighlight.ini).
3987 Name of section in this file must be equal to parameters names in
3988 [filehighlight] section (in current skin\-file).
3990 Keys in these groups are:
3992 .I type
3993 file type. If present, all other options are ignored.
3995 .I regexp
3996 regular expression. If present, 'extensions' option is ignored.
3998 .I extensions
3999 list of extensions of files. Separated by ';' sign.
4001 .I extensions_case
4002 (make sense only with 'extensions' parameter) make 'extensions'
4003 rule case sensitive (true) or not (false).
4005 `type' key may have values:
4007 \- FILE (all files)
4008   \- FILE_EXE
4009 \- DIR (all directories)
4010   \- LINK_DIR
4011 \- LINK (all links except stale link)
4012   \- HARDLINK
4013   \- SYMLINK
4014 \- STALE_LINK
4015 \- DEVICE (all device files)
4016   \- DEVICE_BLOCK
4017   \- DEVICE_CHAR
4018 \- SPECIAL (all special files)
4019   \- SPECIAL_SOCKET
4020   \- SPECIAL_FIFO
4021   \- SPECIAL_DOOR
4025 .\"NODE "Special Settings"
4026 .SH "Special Settings"
4027 Most of the Midnight Commander settings can be changed from the
4028 menus. However, there are a small number of settings which can only be
4029 changed by editing the setup file.
4031 These variables may be set in your ~/.config/mc/ini file:
4033 .I clear_before_exec
4034 By default the Midnight Commander clears the screen before executing a
4035 command.  If you would prefer to see the output of the command at the
4036 bottom of the screen, edit your ~/.config/mc/ini file and change the value of
4037 the field clear_before_exec to 0.
4039 .I confirm_view_dir
4040 If you press F3 on a directory, normally MC enters that directory.  If
4041 this flag is set to 1, then MC will ask for confirmation before changing
4042 the directory if you have files tagged.
4044 .I ftpfs_retry_seconds
4045 This value is the number of seconds the Midnight Commander will wait
4046 before attempting to reconnect to an FTP server that has denied the
4047 login.  If the value is zero, the login will no be retried.
4049 .I max_dirt_limit
4050 Specifies how many screen updates can be skipped at most in the internal
4051 file viewer.  Normally this value is not significant, because the code
4052 automatically adjusts the number of updates to skip according to the
4053 rate of incoming keystrokes.  However, on very slow machines or
4054 terminals with a fast keyboard auto repeat, a big value can make screen
4055 updates too jumpy.
4057 It seems that setting max_dirt_limit to 10 causes the best behavior,
4058 and that is the default value.
4060 .I mouse_move_pages_viewer
4061 Controls if scrolling with the mouse is done by pages or line by line
4062 on the internal file viewer.
4064 .I only_leading_plus_minus
4065 Allow special treatment for '+', '\-', '*' in the command line (select,
4066 unselect, reverse selection) only if the command line is empty.  You
4067 don't need to quote those characters in the middle of the command line.
4068 On the other hand, you cannot use them to change selection when the
4069 command line is not empty.
4071 .I show_output_starts_shell
4072 This variable only works if you are not using the subshell support.
4073 When you use the C\-o keystroke to go back to the user screen, if this
4074 one is set, you will get a fresh shell.  Otherwise, pressing any key
4075 will bring you back to the Midnight Commander.
4077 .I timeformat_recent
4078 Change the time format used to display dates less than 6 months from
4079 now.
4080 See strftime or date man page for the format specification. If this
4081 option is absent, default timeformat is used.
4083 .I timeformat_old
4084 Change the time format used to display  dates older than 6 months from
4085 now or for dates in the future.
4086 See strftime or date man page for the format specification. If this
4087 option is absent, default timeformat is used.
4089 .I torben_fj_mode
4090 If this flag is set, then the home and end keys will work slightly
4091 different on the panels, instead of moving the selection to the first
4092 and last files in the panels, they will act as follows:
4094 The home key will: Go up to the middle line, if below it; else go to the
4095 top line unless it is already on the top line, in this case it will go
4096 to the first file in the panel.
4098 The end key has a similar behavior: Go down to the middle line, if over
4099 it; else go to the bottom line unless you already are at the bottom
4100 line, in such case it will move the selection to the last file name in
4101 the panel.
4103 .I use_file_to_guess_type
4104 If this variable is on (the default) it will spawn the file command to
4105 match the file types listed on the
4106 .\"LINK2"
4107 mc.ext file\&.
4108 .\"Edit Extension File"
4110 .I xtree_mode
4111 If this variable is on (default is off) when you browse the file system
4112 on a Tree panel, it will automatically reload the other panel with the
4113 contents of the selected directory.
4115 .I fish_directory_timeout
4116 This variable holds the lifetime of a directory cache entry in seconds. The
4117 default value is 900 seconds.
4119 .I clipboard_store
4120 This variable contains path (with options) to the external clipboard
4121 utility like 'xclip' to read text into X selection from file.
4122 For example:
4125 clipboard_store=xclip \-i
4128 .I clipboard_paste
4129 This variable contains path (with options) to the external clipboard
4130 utility like 'xclip' to print the selection to standard out.
4131 For example:
4134 clipboard_paste=xclip \-o
4137 .I autodetect_codeset
4138 This option allows use the `enca' command to autodetect codeset of text files
4139 in internal viewer and editor. List of valid values can be obtain by the
4140 `enca \-\-list languages | cut \-d : \-f1' command. Option must be located
4141 in the [Misc] section.
4143 For example:
4146 autodetect_codeset=russian
4148 .\"NODE "Parameters for external editor or viewer"
4149 .SH "Parameters for external editor or viewer"
4150 The Midnight Commander provides a way for specify an options for external editors
4151 and viewers. The Midnight Commander tries to search the
4152 "[External editor or viewer parameters]" section in the system initialization file
4153 (the mc.lib file located in the Midnight Commander library directory)
4154 and then in the ~/.config/mc/ini file. The option name should be equal to the name
4155 (full pathname) of external editor or viewer. The option value can contain following
4156 variables:
4158 .I %filename
4159 The filename to edit/view.
4161 .I %lineno
4162 The start line in the opening file.
4164 For example:
4167 [External editor or viewer parameters]
4168     vi=%filename +%lineno
4169     joe=%filename +%lineno
4170     more=%filename +%lineno
4173 Start line is passed to the external editor/viewer only if it is called from the
4174 .\"LINK2"
4175 Find file
4176 .\"Find File"
4177 results window.
4179 If external editor/viewer is launched via F4/F3 keys, MC hopes that program
4180 (at least "joe", but probably others too) has an own feature that by default
4181 opens the file where it was last open. MC doesn't prevent external editor/viewer
4182 to save and restore position in opened files.
4183 .\"NODE "Terminal databases"
4184 .SH "Terminal databases"
4185 The Midnight Commander provides a way to fix your system terminal
4186 database without requiring root privileges.  The Midnight Commander
4187 searches in the system initialization file (the mc.lib file located in
4188 the Midnight Commander library directory) and in the 
4189 ~/.config/mc/ini file for the section 
4190 "terminal:your\-terminal\-name" and then for the section
4191 "terminal:general", each line of the section contains a key symbol that
4192 you want to define, followed by an equal sign and the definition for the
4193 key.  You can use the special \\e form to represent the escape character
4194 and the ^x to represent the control\-x character.
4196 The possible key symbols are:
4199 f0 to f20     Function keys f0\-f20
4200 bs            backspace
4201 home          home key
4202 end           end key
4203 up            up arrow key
4204 down          down arrow key
4205 left          left arrow key
4206 right         right arrow key
4207 pgdn          page down key
4208 pgup          page up key
4209 insert        the insert character
4210 delete        the delete character
4211 complete      to do completion
4214 For example, to define the key insert to be the Escape + [ + O + p, you
4215 set this in the ini file:
4218 insert=\\e[Op
4222 Also now you can use
4223 .I extended learn keys.
4224 For example:
4227     ctrl\-alt\-right=\\e[[1;6C
4228     ctrl\-alt\-left=\\e[[1;6D
4232 This means that ctrl+alt+left sends a \\e[[1;6D escape sequence
4233 and therefore Midnight Commander interprets "\\e[[1;6D" as Ctrl\-Alt\-Left.
4237 .I complete
4238 key symbol represents the escape sequences used to invoke the completion
4239 process, this is invoked with Alt\-tab, but you can define other keys to do
4240 the same work (on those keyboard with tons of nice and unused keys
4241 everywhere).
4242 .SH ""
4243 .\"NODE "FILES"
4244 .SH "FILES"
4245 Full paths below may vary between installations.  They are also affected
4246 by the
4247 .BR MC_DATADIR
4248 environment variable. If it's set, its value is used instead of
4249 %prefix%/share/mc in the paths below.
4251 .I %prefix%/share/mc/mc.hlp
4253 The help file for the program.
4255 .I %prefix%/share/mc/mc.ext
4257 The default system\-wide extensions file.
4259 .I ~/.config/mc/mc.ext
4261 User's own extension, view configuration and edit configuration
4262 file.  They override the contents of the system wide files if present.
4264 .I %prefix%/share/mc/mc.ini
4266 The default system\-wide setup for the Midnight Commander, used only if
4267 the user doesn't have his own ~/.config/mc/ini file.
4269 .I %prefix%/share/mc/mc.lib
4271 Global settings for the Midnight Commander.  Settings in this file
4272 affect all users, whether they have ~/.config/mc/ini or not.  Currently, only
4273 .\"LINK2"
4274 terminal settings
4275 .\"Terminal databases"
4276 are loaded from mc.lib.
4278 .I ~/.config/mc/ini
4280 User's own setup. If this file is present then the setup is loaded
4281 from here instead of the system\-wide startup file.
4283 .I %prefix%/share/mc/mc.hint
4285 This file contains the hints displayed by the program.
4287 .I %prefix%/share/mc/mc.menu
4289 This file contains the default system\-wide applications menu.
4291 .I ~/.config/mc/menu
4293 User's own application menu. If this file is present it is used instead
4294 of the system\-wide applications menu.
4296 .I ~/.cache/mc/Tree
4298 The directory list for the directory tree and tree view features.
4300 .I ~/.local/share/mc.menu
4302 Local user\-defined menu. If this file is present, it is used instead of
4303 the home or system\-wide applications menu.
4305 To change default root directory of MC, you can use
4306 .BR MC_HOME
4307 environment variable. The value of MC_HOME must be an absolute path. If MC_HOME
4308 is unset or empty, HOME variable is used. If HOME is unset or empty, MC
4309 directories are get from GLib library.
4310 .\"SKIP_SECTION"
4311 .SH "LICENSE"
4312 This program is distributed under the terms of the GNU General Public
4313 License as published by the Free Software Foundation. See the built\-in
4314 help for details on the License and the lack of warranty.
4315 .\"NODE "AVAILABILITY"
4316 .SH "AVAILABILITY"
4317 The latest version of this program can be found at
4318 http://ftp.midnight\-commander.org/.
4319 .\"NODE "SEE ALSO"
4320 .SH "SEE ALSO"
4321 ed(1), gpm(1), terminfo(1), view(1), sh(1), bash(1),
4322 tcsh(1), zsh(1).
4325 The Midnight Commander page on the World Wide Web:
4326         http://www.midnight\-commander.org/
4328 .\"NODE "AUTHORS"
4329 .SH "AUTHORS"
4330 Authors and contributors are listed in the AUTHORS file in the source
4331 distribution.
4332 .\"NODE "BUGS"
4333 .SH "BUGS"
4334 See the file TODO in the distribution for information on what remains to
4335 be done.
4337 If you want to report a problem with the program, please create bugreport
4338 at http://www.midnight\-commander.org/.
4340 Provide a detailed description of the bug, the version of the program
4341 you are running
4342 .RI ( "mc \-V"
4343 displays this information), the operating system you are running the
4344 program on.  If the program crashes, we would appreciate a stack trace.