Merge branch '2134_am_silent_rules'
[kaloumi3.git] / doc / man / mc.1.in
blobdfdd898611c553435dbf33c03e9f798f312bca36
1 .\"TOPICS "Topics:"
2 .TH MC 1 "August 2009" "MC Version 4.7.0\-pre1" "GNU Midnight Commander"
3 .\"SKIP_SECTION"
4 .SH "NAME"
5 mc \- Visual shell for Unix\-like systems.
6 .\"SKIP_SECTION"
7 .SH "USAGE"
8 .B mc
9 [\-abcCdfhPstuUVx] [\-l log] [dir1 [dir2]] [\-e [file]] [\-v file]
10 .\"NODE "DESCRIPTION"
11 .SH "DESCRIPTION"
12 GNU Midnight Commander is a directory browser/file manager for
13 Unix\-like operating systems.
14 .\"NODE "OPTIONS"
15 .\".\"DONT_SPLIT"
16 .SH "OPTIONS"
17 .TP
18 .I \-a, \-\-stickchars
19 Disable usage of graphic characters for line drawing.
20 .TP
21 .I \-b, \-\-nocolor
22 Force black and white display.
23 .TP
24 .I \-c, \-\-color
25 Force color mode, please check the section
26 .\"LINK2"
27 Colors
28 .\"Colors"
29 for more information.
30 .TP
31 .I \-C arg, \-\-colors=arg
32 Specify a different color set in the command line.  The format of arg is
33 documented in the
34 .\"LINK2"
35 Colors
36 .\"Colors"
37 section.
38 .TP
39 .I \-S arg
40 Specify a name of skin in the command line. Technology of skins is
41 documented in the
42 .\"LINK2"
43 Skins\&.
44 .\"Skins"
45 section.
46 .TP
47 .I \-d, \-\-nomouse
48 Disable mouse support.
49 .TP
50 .I \-e [file], \-\-edit[=file]
51 Start the internal editor.  If the file is specified, open it on
52 startup.  See also
53 .BR "mcedit (1)" .
54 .TP
55 .I \-f, \-\-datadir
56 Display the compiled\-in search paths for Midnight Commander files.
57 .TP
58 .I \-k, \-\-resetsoft
59 Reset softkeys to their default from the termcap/terminfo
60 database. Only useful on HP terminals when the function keys don't work.
61 .TP
62 .I \-K file
63 Specify a name of keymap file in the command line.
64 .TP
65 .I \-l file, \-\-ftplog=file
66 Save the ftpfs dialog with the server in file.
67 .TP
68 .I \-P file, \-\-printwd=file
69 Print the last working directory to the specified file.  This option is
70 not meant to be used directly.  Instead, it's used from a special shell
71 script that automatically changes the current directory of the shell to
72 the last directory the Midnight Commander was in.  Source the file
73 .B @prefix@/share/mc/bin/mc.sh
74 (bash and zsh users) or
75 .B @prefix@/share/mc/bin/mc.csh
76 (tcsh users) respectively to define
77 .B mc
78 as an alias to the appropriate shell script.
79 .TP
80 .I \-s
81 Set alternative mode drawing of frameworks.
82 If the section [Lines] is not filled, the symbol for the pseudographics
83 frame is a space, otherwise the frame characters are taken from follow params.
85 .B You can redefine the following variables:
86 .TP
87 .B lefttop
88 left\-top corner
89 .TP
90 .B righttop
91 right\-top corner
92 .TP
93 .B centertop
94 center-top cross
95 .TP
96 .B centerbottom
97 center\-bottom cross
98 .TP
99 .B leftbottom
100 left\-bottom corner
102 .B rightbottom
103 right\-bottom corner
105 .B leftmiddle
106 left\-middle cross
108 .B rightmiddle
109 right\-middle cross
111 .B centermiddle
112 center cross
114 .B horiz
115 default horizontal line
117 .B vert
118 default vertical line
120 .B thinhoriz
121 thin horizontal line
123 .B thinvert
124 thin vertical line
126 .I \-t, \-\-termcap
127 Used only if the code was compiled with Slang and terminfo: it makes
128 the Midnight Commander use the value of the
129 .B TERMCAP
130 variable for the terminal information instead of the information on
131 the system wide terminal database
133 .I \-u, \-\-nosubshell
134 Disable use of the concurrent shell (only makes sense if the Midnight
135 Commander has been built with concurrent shell support).
137 .I \-U, \-\-subshell
138 Enable use of the concurrent shell support (only makes sense if the
139 Midnight Commander was built with the subshell support set as an
140 optional feature).
142 .I \-v file, \-\-view=file
143 Start the internal viewer to view the specified file.  See also
144 .BR "mcview (1)" .
146 .I \-V, \-\-version
147 Display the version of the program.
149 .I \-x, \-\-xterm
150 Force xterm mode.  Used when running on xterm\-capable terminals (two
151 screen modes, and able to send mouse escape sequences).
153 If specified, the first path name is the directory to show in the
154 selected panel; the second path name is the directory to be shown in
155 the other panel.
156 .\"NODE "Overview"
157 .SH "Overview"
158 The screen of the Midnight Commander is divided into four parts.
159 Almost all of the screen space is taken up by two directory panels.
160 By default, the second line from the bottom of the screen is the
161 shell command line, and the bottom line shows the function key labels.
162 The topmost line is the
163 .\"LINK2"
164 menu bar line\&.
165 .\"Menu Bar"
166 The menu bar line may not be visible, but appears if you click the
167 topmost line with the mouse or press the F9 key.
169 The Midnight Commander provides a view of two directories at the same
170 time. One of the panels is the current panel (a selection bar is in
171 the current panel). Almost all operations take place on the current
172 panel. Some file operations like Rename and Copy by default use the
173 directory of the unselected panel as a destination (don't worry, they
174 always ask you for confirmation first). For more information, see the
175 sections on the
176 .\"LINK2"
177 Directory Panels\&,
178 .\"Directory Panels"
180 .\"LINK2"
181 Left and Right Menus
182 .\"Left and Right Menus"
183 and the
184 .\"LINK2"
185 File Menu\&.
186 .\"File Menu"
188 You can execute system commands from the Midnight Commander by simply
189 typing them. Everything you type will appear on the shell command line,
190 and when you press Enter the Midnight Commander will execute the
191 command line you typed; read the
192 .\"LINK2"
193 Shell Command Line
194 .\"Shell Command Line"
196 .\"LINK2"
197 Input Line Keys
198 .\"Input Line Keys"
199 sections to learn more about the command line.
200 .\"NODE "Mouse Support"
201 .SH "Mouse Support"
202 The Midnight Commander comes with mouse support.  It is activated
203 whenever you are running on an
204 .B xterm(1)
205 terminal (it even works if you take a telnet, ssh or rlogin connection to
206 another machine from the xterm) or if you are running on a Linux
207 console and have the
208 .B gpm
209 mouse server running.
211 When you left click on a file in the directory panels, that file is
212 selected; if you click with the right button, the file is marked (or
213 unmarked, depending on the previous state).
215 Double\-clicking on a file will try to execute the command if it is
216 an executable program; and if the
217 .\"LINK2"
218 extension file
219 .\"Extension File Edit"
220 has a program specified for the file's extension, the specified
221 program is executed.
223 Also, it is possible to execute the commands assigned to the function
224 key labels by clicking on them.
226 If a mouse button is clicked on the top frame line of the directory panel,
227 it is scrolled one page up.  Likewise, a click on the bottom frame line
228 will cause scrolling one page down.  This frame line method works also
229 in the
230 .\"LINK2"
231 Help Viewer
232 .\"Contents"
233 and the
234 .\"LINK2"
235 Directory Tree\&.
236 .\"Directory Tree"
238 The default auto repeat rate for the mouse buttons is 400
239 milliseconds. This may be changed to other values by editing the
240 .\"LINK2"
241 \&~/.mc/ini
242 .\"Save Setup"
243 file and changing the
244 .I mouse_repeat_rate
245 parameter.
247 If you are running the Midnight Commander with the mouse support, you
248 can get the default mouse behavior (cutting and pasting text) by holding
249 down the Shift key.
250 .SH ""
251 .\"NODE "Keys"
252 .SH "Keys"
253 Some commands in the Midnight Commander involve the use of the
254 .I Control
255 (sometimes labeled CTRL or CTL) and the
256 .I Meta
257 (sometimes labeled ALT or even Compose) keys. In this manual we will
258 use the following abbreviations:
260 .B C\-<chr>
261 means hold the Control key while typing the character <chr>.
262 Thus C\-f would be: hold the Control key and type f.
264 .B Alt\-<chr>
265 means hold the Meta or Alt key down while typing <chr>.
266 If there is no Meta or Alt key, type
267 .IR ESC ,
268 release it, then type the character <chr>.
270 .B S\-<chr>
271 means hold the Shift key down while typing <chr>.
273 All input lines in the Midnight Commander use an approximation to
274 the GNU Emacs editor's key bindings (default).
276 You may redefine key bindings. See
277 .\"LINK2"
278 .I redefine hotkey bindings
279 .\"Keys_redefine"
281 for more info. All other key bindings (described in this manual) relative
282 to default behavior.
285 There are many sections which tell about the keys. The following are
286 the most important.
289 .\"LINK2"
290 File Menu
291 .\"File Menu"
292 section documents the keyboard shortcuts for the commands appearing in
293 the File menu. This section includes the function keys. Most of these
294 commands perform some action, usually on the selected file or the
295 tagged files.
298 .\"LINK2"
299 Directory Panels
300 .\"Directory Panels"
301 section documents the keys which select a file or tag files as a
302 target for a later action (the action is usually one from the file
303 menu).
306 .\"LINK2"
307 Shell Command Line
308 .\"Shell Command Line"
309 section list the keys which are used for entering and editing command
310 lines. Most of these copy file names and such from the directory
311 panels to the command line (to avoid excessive typing) or access the
312 command line history.
314 .\"LINK2"
315 Input Line Keys
316 .\"Input Line Keys"
317 are used for editing input lines. This means both the command line and
318 the input lines in the query dialogs.
320 .\"NODE "  Keys_redefine"
321 .SH "  Redefine hotkey bindings"
322 Hotkey bindings may be readed from external file (keymap\-file).
323 A keymap\-file is searched on the following algorithm (to the first one found):
326 1) command line option
327 .BR \-K
328 .BR \<keymap\>
330 .BR \-\-keymap=\<keymap\>
332 2) Environment variable
333 .BR MC_KEYMAP
335 3) In config file parameter
336 .BR keymap
337 in section
338 .BR [Midhight Commander]
340 4) File
341 .BR ~/.mc/mc.keymap
343 5) File
344 .BR @sysconfdir@/mc/mc.keymap
346 6) File
347 .BR @prefix@/share/mc/mc.keymap
350 Command line option, environment variable and parameter in config file may
351 contain the absolute path to the keymap\-file (with the extension \.keymap
352 or without it). Search of keymap\-file will occur in (to the first one found):
355 .BR ~/.mc/
358 .BR @sysconfdir@/mc/
361 .BR @prefix@/share/mc/
364 .\"NODE "  Miscellaneous Keys"
365 .SH "  Miscellaneous Keys"
366 Here are some keys which don't fall into any of the other categories:
368 .B Enter
369 if there is some text in the command line (the one at the bottom of
370 the panels), then that command is executed. If there is no text in the
371 command line then if the selection bar is over a directory the
372 Midnight Commander does a
373 .B chdir(2)
374 to the selected directory and reloads the information on the panel;
375 if the selection is an executable file then it is executed. Finally,
376 if the extension of the selected file name matches one of the
377 extensions in the
378 .\"LINK2"
379 extensions file
380 .\"Extension File Edit"
381 then the corresponding command is executed.
383 .B C\-l
384 repaint all the information in the Midnight Commander.
386 .B C\-x c
387 run the
388 .\"LINK2"
389 Chmod
390 .\"Chmod"
391 command on a file or on the tagged files.
393 .B C\-x o
394 run the
395 .\"LINK2"
396 Chown
397 .\"Chown"
398 command on the current file or on the tagged files.
400 .B C\-x l
401 run the link command.
403 .B C\-x s
404 run the symbolic link command.
406 .B C\-x i
407 set the other panel display mode to information.
409 .B C\-x q
410 set the other panel display mode to quick view.
412 .B C\-x !
413 execute the
414 .\"LINK2"
415 External panelize
416 .\"External panelize"
417 command.
419 .B C\-x h
420 run the
421 .\"LINK2"
422 add directory to hotlist
423 .\"Hotlist"
424 command.
426 .B Alt\-!
427 executes the Filtered view command, described in the
428 .\"LINK2"
429 view command\&.
430 .\"Internal File Viewer"
432 .B Alt\-?
433 executes the
434 .\"LINK2"
435 Find file
436 .\"Find File"
437 command.
439 .B Alt\-c
440 pops up the
441 .\"LINK2"
442 quick cd
443 .\"Quick cd"
444 dialog.
446 .B C\-o
447 when the program is being run in the Linux or FreeBSD console or under
448 an xterm, it will show you the output of the previous command.  When ran
449 on the Linux console, the Midnight Commander uses an external program
450 (cons.saver) to handle saving and restoring of information on the
451 screen.
453 When the subshell support is compiled in, you can type C\-o at any time
454 and you will be taken back to the Midnight Commander main screen, to
455 return to your application just type C\-o.  If you have an application
456 suspended by using this trick, you won't be able to execute other
457 programs from the Midnight Commander until you terminate the suspended
458 application.
459 .\"NODE "  Directory Panels"
460 .SH "  Directory Panels"
461 This section lists the keys which operate on the directory panels. If
462 you want to know how to change the appearance of the panels take a
463 look at the section on
464 .\"LINK2"
465 Left and Right Menus\&.
466 .\"Left and Right Menus"
468 .B Tab, C\-i
469 change the current panel. The old other panel becomes the new current
470 panel and the old current panel becomes the new other panel. The
471 selection bar moves from the old current panel to the new current
472 panel.
474 .B Insert, C\-t
475 to tag files you may use the Insert key (the kich1 terminfo sequence).
476 To untag files, just retag a tagged file.
478 .B M\-e
479 to change charset of panel you may use M\-e (Alt\-e).
480 Recoding is made from selected codepage into system codepage. To
481 cancel the recoding you may select "directory up" (..) in active panel.
482 To cancel the charsets in all directories, select "No translation " in
483 the dialog of encodings.
485 .B Alt\-g, Alt\-r, Alt\-j
486 used to select the top file in a panel, the middle file and the bottom one,
487 respectively.
489 .B Alt\-t
490 toggle the current display listing to show the next display listing
491 mode.
492 With this it is possible to quickly switch to brief listing, long
493 listing, user defined listing mode, and back to the default.
495 .B C\-\\\\ (control\-backslash)
496 show the
497 .\"LINK2"
498 directory hotlist
499 .\"Hotlist"
500 and change to the selected directory.
502 .B + \ (plus)
503 this is used to select (tag) a group of files.  The Midnight Commander
504 will prompt for a selection options. When
505 .I Files only
506 checkbox is on, only files will be selected.  If
507 .I Files only
508 is off, as files as directories will be selected.
509 When
510 .I Shell Patterns
511 checkbox is on, the regular expression is much like the filename globbing
512 in the shell (* standing for zero or more characters and ? standing
513 for one character). If
514 .I Shell Patterns
515 is off, then the tagging of files is done with normal regular
516 expressions (see ed (1)). When
517 .I Case sensitive
518 checkbox is on, the selection will be case sensitive characters.
520 .I Case sensitive
521 is off, the case will be ignored.
523 .B \\\\ (backslash)
524 use the "\\" key to unselect a group of files. This is the opposite of
525 the Plus key.
527 .B up\-key, C\-p
528 move the selection bar to the previous entry in the panel.
530 .B down\-key, C\-n
531 move the selection bar to the next entry in the panel.
533 .B home, a1, Alt\-<
534 move the selection bar to the first entry in the panel.
536 .B end, c1, Alt\->
537 move the selection bar to the last entry in the panel.
539 .B next\-page, C\-v
540 move the selection bar one page down.
542 .B prev\-page, Alt\-v
543 move the selection bar one page up.
545 .B Alt\-o
546 If the currently selected file is a directory, load that directory on
547 the other panel and moves the selection to the next file. If the
548 currently selected file is not a directory, load the parent directory
549 on the other panel and moves the selection to the next file.
551 .B Alt\-i
552 make the current directory of the current panel also the current
553 directory of the other panel.  Put the other panel to the listing mode
554 if needed.  If the current panel is panelized, the other panel doesn't
555 become panelized.
557 .B C\-PageUp, C\-PageDown
558 only when supported by the terminal: change to ".." and to the currently
559 selected directory respectively.
561 .B Alt\-y
562 moves to the previous directory in the history, equivalent to clicking
564 .I <
565 with the mouse.
567 .B Alt\-u
568 moves to the next directory in the history, equivalent to clicking the
569 .I >
570 with the mouse.
572 .B Alt\-Shift\-h, Alt\-H
573 displays the directory history, equivalent to depressing the 'v' with
574 the mouse.
575 .\"NODE "  Quick search"
576 .SH "  Quick search"
577 The Quick search mode allows to perform fast file search in file panel.
578 Press
579 .I C\-s
581 .I Alt\-s
582 to start a filename search in the directory listing.
584 When the search is active, the user input will be added to the search string
585 instead of the command line. If the
586 .I Show mini\-status
587 option is enabled the search string is shown on the mini\-status
588 line. When typing, the selection bar will move to the next file
589 starting with the typed letters. The
590 .I backspace
592 .I DEL
593 keys can be used to correct typing mistakes. If C\-s is pressed
594 again, the next match is searched for.
596 Besides the filename characters, you can also use wildcard
597 characters '*' and '?'.
599 Quick search mode is defined by
600 .I quick_search_case_sensitive
601 option located in [Midnight-Commander] section in configuration file.
602 This option can have one of the following values: 0, 1 or 2.
603 If quick_search_case_sensitive=0, quick search is case insensitive.
604 If quick_search_case_sensitive=1, quick search is case sensitive.
605 If quick_search_case_sensitive=2 (default value), quick search mode
606 is matched to the the panel sort order: case sensitive or not.
607 .\"NODE "  Shell Command Line"
608 .SH "  Shell Command Line"
609 This section lists keys which are useful to avoid excessive typing when
610 entering shell commands.
612 .B Alt\-Enter
613 copy the currently selected file name to the command line.
615 .B C\-Enter
616 same a Alt\-Enter.  May not work on remote systems and some terminals.
618 .B C\-Shift\-Enter
619 copy the full path name of the currently selected file to the command
620 line.  May not work on remote systems and some terminals.
622 .B Alt\-Tab
623 does the filename, command, variable, username and hostname
624 .\"LINK2"
625 completion
626 .\"Completion"
627 for you.
629 .B C\-x t, C\-x C\-t
630 copy the tagged files (or if there are no tagged files, the selected
631 file) of the current panel (C\-x t) or of the other panel (C\-x C\-t) to
632 the command line.
634 .B C\-x p, C\-x C\-p
635 the first key sequence copies the current path name to the command
636 line, and the second one copies the unselected panel's path name to
637 the command line.
639 .B C\-q
640 the quote command can be used to insert characters that are otherwise
641 interpreted by the Midnight Commander (like the '+' symbol)
643 .B Alt\-p, Alt\-n
644 use these keys to browse through the command history. Alt\-p takes you
645 to the last entry, Alt\-n takes you to the next one.
647 .B Alt\-h
648 displays the history for the current input line.
649 .\"NODE "  General Movement Keys"
650 .SH "  General Movement Keys"
651 The help viewer, the file viewer and the directory tree use common
652 code to handle moving. Therefore they accept exactly the same
653 keys. Each of them also accepts some keys of its own.
655 Other parts of the Midnight Commander use some of the same movement
656 keys, so this section may be of use for those parts too.
658 .B Up, C\-p
659 moves one line backward.
661 .B Down, C\-n
662 moves one line forward.
664 .B Prev Page, Page Up, Alt\-v
665 moves one page up.
667 .B Next Page, Page Down, C\-v
668 moves one page down.
670 .B Home, A1
671 moves to the beginning.
673 .B End, C1
674 move to the end.
676 The help viewer and the file viewer accept the following keys in
677 addition the to ones mentioned above:
679 .B b, C\-b, C\-h, Backspace, Delete
680 moves one page up.
682 .B Space bar
683 moves one page down.
685 .B u, d
686 moves one half of a page up or down.
688 .B g, G
689 moves to the beginning or to the end.
690 .\"NODE "  Input Line Keys"
691 .SH "  Input Line Keys"
692 The input lines (they are used for the
693 .\"LINK2"
694 command line
695 .\"Shell Command Line"
696 and for the query dialogs in the program) accept these keys:
698 .B C\-a
699 puts the cursor at the beginning of line.
701 .B C\-e
702 puts the cursor at the end of the line.
704 .B C\-b, move\-left
705 move the cursor one position left.
707 .B C\-f, move\-right
708 move the cursor one position right.
710 .B Alt\-f
711 moves one word forward.
713 .B Alt\-b
714 moves one word backward.
716 .B C\-h, backspace
717 delete the previous character.
719 .B C\-d, Delete
720 delete the character in the point (over the cursor).
722 .B C\-@
723 sets the mark for cutting.
725 .B C\-w
726 copies the text between the cursor and the mark to a kill buffer and
727 removes the text from the input line.
729 .B Alt\-w
730 copies the text between the cursor and the mark to a kill buffer.
732 .B C\-y
733 yanks back the contents of the kill buffer.
735 .B C\-k
736 kills the text from the cursor to the end of the line.
738 .B Alt\-p, Alt\-n
739 Use these keys to browse through the command history. Alt\-p takes you
740 to the last entry, Alt\-n takes you to the next one.
742 .B Alt\-C\-h, Alt\-Backspace
743 delete one word backward.
745 .B Alt\-Tab
746 does the filename, command, variable, username and hostname
747 .\"LINK2"
748 completion
749 .\"Completion"
750 for you.
751 .SH ""
752 .\"NODE "Menu Bar"
753 .SH "Menu Bar"
754 The menu bar pops up when you press F9 or click the mouse on the top
755 row of the screen. The menu bar has five menus: "Left", "File",
756 "Command", "Options" and "Right".
759 .\"LINK2"
760 Left and Right Menus
761 .\"Left and Right Menus"
762 allow you to modify the appearance of the left and right directory
763 panels.
766 .\"LINK2"
767 File Menu
768 .\"File Menu"
769 lists the actions you can perform on the currently selected file or
770 the tagged files.
773 .\"LINK2"
774 Command Menu
775 .\"Command Menu"
776 lists the actions which are more general and bear no relation to the
777 currently selected file or the tagged files.
780 .\"LINK2"
781 Options Menu
782 .\"Options Menu"
783 lists the actions which allow you to customize the Midnight Commander.
784 .\"NODE "  Left and Right Menus"
785 .SH "  Left and Right (Above and Below) Menus"
786 The outlook of the directory panels can be changed from the
787 .B Left
789 .B Right
790 menus (they are named
791 .B Above
793 .B Below
794 when the horizontal panel split is chosen from the
795 .\"LINK2"
796 Layout
797 .\"Layout"
798 options dialog).
799 .\"NODE "    Listing Mode..."
800 .SH "    Listing Mode..."
801 The listing mode view is used to display a listing of files, there are
802 four different listing modes available:
803 .BR Full ,
804 .BR Brief ,
805 .B Long
807 .BR User .
808 The full directory view shows the file name, the size of the file and
809 the modification time.
811 The brief view shows only the file name and it has two columns
812 (therefore showing twice as many files as other views). The long view
813 is similar to the output of
814 .B "ls \-l"
815 command. The long view takes the whole screen width.
817 If you choose the "User" display format, then you have to specify
818 the display format.
820 The user display format must start with a panel size specifier.  This
821 may be "half" or "full", and they specify a half screen panel and a
822 full screen panel respectively.
824 After the panel size, you may specify the two columns mode on the
825 panel, this is done by adding the number "2" to the user format
826 string.
828 After this you add the name of the fields with an optional size
829 specifier.  This are the available fields you may display:
831 .B name
832 displays the file name.
834 .B size
835 displays the file size.
837 .B bsize
838 is an alternative form of the
839 .B size
840 format. It displays the size of the files and for directories it just
841 shows SUB\-DIR or UP\-\-DIR.
843 .B type
844 displays a one character wide type field.  This character is similar to
845 what is displayed by ls with the \-F flag \-
846 .B *
847 for executable files,
848 .B /
849 for directories,
850 .B @
851 for links,
852 .B =
853 for sockets,
854 .B \-
855 for character devices,
856 .B +
857 for block devices,
858 .B |
859 for pipes,
860 .B ~
861 for symbolic links to directories and
862 .B !
863 for stale symlinks (links that point nowhere).
865 .B mark
866 an asterisk if the file is tagged, a space if it's not.
868 .B mtime
869 file's last modification time.
871 .B atime
872 file's last access time.
874 .B ctime
875 file's status change time.
877 .B perm
878 a string representing the current permission bits of the file.
880 .B mode
881 an octal value with the current permission bits of the file.
883 .B nlink
884 the number of links to the file.
886 .B ngid
887 the GID (numeric).
889 .B nuid
890 the UID (numeric).
892 .B owner
893 the owner of the file.
895 .B group
896 the group of the file.
898 .B inode
899 the inode of the file.
901 Also you can use following keywords to define the panel layout:
903 .B space
904 a space in the display format.
906 .B |
907 add a vertical line to the display format.
909 To force one field to a fixed size (a size specifier), you just add
910 .B :
911 followed by the number of characters you want the field to have.  If the
912 number is followed by the symbol
913 .BR + ,
914 then the size specifies the minimal field size \- if the program finds
915 out that there is more space on the screen, it will then expand that
916 field.
918 For example, the
919 .B Full
920 display corresponds to this format:
922 half type name | size | mtime
924 And the
925 .B Long
926 display corresponds to this format:
928 full perm space nlink space owner space group space size space mtime
929 space name
931 This is a nice user display format:
933 half name | size:7 | type mode:3
935 Panels may also be set to the following modes:
937 .B "Info"
938 The info view display information related to the currently
939 selected file and if possible information about the current file
940 system.
942 .B "Tree"
943 The tree view is quite similar to the
944 .\"LINK2"
945 directory tree
946 .\"Directory Tree"
947 feature. See the section about it for more information.
949 .B "Quick View"
950 In this mode, the panel will switch to a reduced
951 .\"LINK2"
952 viewer
953 .\"Internal File Viewer"
954 that displays the contents of the currently selected file, if you
955 select the panel (with the tab key or the mouse), you will have access
956 to the usual viewer commands.
957 .\"NODE "    Sort Order..."
958 .SH "    Sort Order..."
959 The eight sort orders are by name, by extension, by modification time,
960 by access time, and by inode information modification time, by size,
961 by inode and unsorted.  In the Sort order dialog box you can choose
962 the sort order and you may also specify if you want to sort in reverse
963 order by checking the reverse box.
965 By default directories are sorted before files but this can be changed
966 from the
967 .\"LINK2"
968 Options menu
969 .\"Options Menu"
970 (option
971 .BR "Mix all files" ).
972 .\"NODE "    Filter..."
973 .SH "    Filter..."
974 The filter command allows you to specify a shell pattern (for example
975 .BR "*.tar.gz" )
976 which the files must match to be shown. Regardless
977 of the filter pattern, the directories and the links to directories
978 are always shown in the directory panel.
979 .\"NODE "    Reread"
980 .SH "    Reread"
981 The reread command reload the list of files in the directory. It is
982 useful if other processes have created or removed files.  If you
983 have panelized file names in a panel this will reload the directory
984 contents and remove the panelized information (See the section
985 .\"LINK2"
986 External panelize
987 .\"External panelize"
988 for more information).
989 .\"NODE "  File Menu"
990 .SH "  File Menu"
991 The Midnight Commander uses the F1 \- F10 keys as keyboard shortcuts
992 for commands appearing in the file menu.  The escape sequences for the
993 function keys are terminfo capabilities kf1 trough kf10.  On terminals
994 without function key support, you can achieve the same functionality by
995 pressing the ESC key and then a number in the range 1 through 9 and 0
996 (corresponding to F1 to F9 and F10 respectively).
998 The File menu has the following commands (keyboard shortcuts in parentheses):
1000 .B Help (F1)
1002 Invokes the built\-in hypertext help viewer. Inside the
1003 .\"LINK2"
1004 help viewer\&,
1005 .\"Contents"
1006 you can use the Tab key to select the next link and the Enter key to
1007 follow that link. The keys Space and Backspace are used to move
1008 forward and backward in a help page. Press F1 again to get the full
1009 list of accepted keys.
1011 .B Menu (F2)
1013 Invoke the
1014 .\"LINK2"
1015 user menu\&.
1016 .\"Menu File Edit"
1017 The user menu provides an easy way to provide users with a menu and
1018 add extra features to the Midnight Commander.
1020 .B View (F3, Shift\-F3)
1022 View the currently selected file. By default this invokes the
1023 .\"LINK2"
1024 Internal File Viewer
1025 .\"Internal File Viewer"
1026 but if the option "Use internal view" is off, it invokes an external
1027 file viewer specified by the
1028 .B VIEWER
1029 environment variable.  If
1030 .B VIEWER
1031 is undefined, the
1032 .B PAGER
1033 environment variable is tried.  If
1034 .B PAGER
1035 is also undefined, the "view" command is invoked.  If you use Shift\-F3
1036 instead, the viewer will be invoked without doing any formatting or
1037 preprocessing to the file.
1039 .B Filtered View (Alt\-!)
1041 This command prompts for a command
1042 and its arguments (the argument defaults to the currently selected
1043 file name), the output from such command is shown in the internal file
1044 viewer.
1046 .B Edit (F4, F14)
1048 Press F4 to edit the highlighted file.  Press F14 (usually Shift\-F4)
1049 to start the editor with a new, empty file.
1050 Currently they invoke the
1051 .B vi
1052 editor, or the editor specified in the
1053 .B EDITOR
1054 environment variable, or the
1055 .\"LINK2"
1056 Internal File Editor
1057 .\"Internal File Editor"
1058 if the use_internal_edit option is on.
1060 .B Copy (F5, F15)
1062 Press F5 to pop up an input dialog to copy the currently selected file (or
1063 the tagged files, if there is at least one file tagged) to the
1064 directory/filename you specify in the input dialog.  The destination
1065 defaults to the directory in the non\-selected panel. During this
1066 process, you can press C\-c or ESC to abort the operation. For details
1067 about source mask (which will be usually either * or ^\\(.*\\)$ depending
1068 on setting of Use shell patterns) and possible wildcards in the destination
1070 .\"LINK2"
1071 Mask copy/rename\&.
1072 .\"Mask Copy/Rename"
1074 F15 (usually Shift\-F5) is similar, but defaults to the directory in the
1075 selected panel. It always operates on the selected file, regardless of
1076 any tagged files.
1078 On some systems, it is possible to do the copy in the background by
1079 clicking on the background button (or pressing Alt\-b in the dialog
1080 box).  The
1081 .\"LINK2"
1082 Background Jobs
1083 .\"Background jobs"
1084 is used to control the background process.
1086 .B Link (C\-x l)
1088 Create a hard link to the current file.
1090 .B SymLink (C\-x s)
1092 Create a symbolic link to the current file. To those of you who don't
1093 know what links are: creating a link to a file is a bit like copying
1094 the file, but both the source filename and the destination filename
1095 represent the same file image. For example, if you edit one of these
1096 files, all changes you make will appear in both files. Some people call
1097 links aliases or shortcuts.
1099 A hard link appears as a real file. After making it, there is no way of
1100 telling which one is the original and which is the link. If you delete
1101 either one of them the other one is still intact. It is very difficult
1102 to notice that the files represent the same image. Use hard links when
1103 you don't even want to know.
1105 A symbolic link is a reference to the name of the original file. If
1106 the original file is deleted the symbolic link is useless. It is quite
1107 easy to notice that the files represent the same image. The Midnight
1108 Commander shows an "@"\-sign in front of the file name if it is a
1109 symbolic link to somewhere (except to directory, where it shows a tilde (~)).
1110 The original file which the link points to is shown on mini\-status line if the
1111 .I "Show mini\-status"
1112 option is enabled. Use symbolic links when you want to avoid the
1113 confusion that can be caused by hard links.
1115 .B Rename/Move (F6, F16)
1117 Press F6 to pop up an input dialog to copy the currently selected file (or
1118 the tagged files, if there is at least one file tagged) to the
1119 directory/filename you specify in the input dialog.  The destination
1120 defaults to the directory in the non\-selected panel. For more details
1121 look at Copy (F5) operation above, most of the things are quite similar.
1123 F16 (usually Shift\-F6) is similar, but defaults to the directory in the
1124 selected panel. It always operates on the selected file, regardless of
1125 any tagged files.
1127 On some systems, it is possible to do the copy in the background by
1128 clicking on the background button (or pressing Alt\-b in the dialog
1129 box).  The
1130 .\"LINK2"
1131 Background Jobs
1132 .\"Background jobs"
1133 is used to control the background process.
1135 .B Mkdir (F7)
1137 Pop up an input dialog and creates the directory specified.
1139 .B Delete (F8)
1141 Delete the currently selected file or the tagged files in the
1142 currently selected panel. During the process, you can press C\-c or
1143 ESC to abort the operation.
1145 .B Quick cd (Alt\-c)
1146 Use the
1147 .\"LINK2"
1148 quick cd
1149 .\"Quick cd"
1150 command if you have full command line and want to cd somewhere.
1152 .B Select group (+)
1154 This is used to select (tag) a group of files. The Midnight Commander
1155 will prompt for a selection options. When
1156 .I Files only
1157 checkbox is on, only files will be selected.  If
1158 .I Files only
1159 is off, as files as directories will be selected.
1160 When
1161 .I Shell Patterns
1162 checkbox is on, the regular expression is much like the filename globbing
1163 in the shell (* standing for zero or more characters and ?  standing
1164 for one character). If
1165 .I Shell Patterns
1166 is off, then the tagging of files is done with normal regular
1167 expressions (see ed (1)). When
1168 .I Case sensitive
1169 checkbox is on, the selection will be case sensitive characters.
1171 .I Case sensitive
1172 is off, the case will be ignored.
1174 .B Unselect group (\\\\)
1176 Used to unselect a group of files. This is the opposite of the
1177 .I "Select group"
1178 command.
1180 .B Quit (F10, Shift\-F10)
1182 Terminate the Midnight Commander.  Shift\-F10 is used when you want to
1183 quit and you are using the shell wrapper.  Shift\-F10 will not take you
1184 to the last directory you visited with the Midnight Commander, instead
1185 it will stay at the directory where you started the Midnight Commander.
1186 .\"NODE "    Quick cd"
1187 .SH "    Quick cd"
1188 This command is useful if you have a full command line and want to
1189 .\"LINK2"
1191 .\"The cd internal command"
1192 somewhere without having to yank and paste the command line. This command
1193 pops up a small dialog, where you enter everything you would enter after
1194 .B cd
1195 on the command line and then you press enter. This features all the things
1196 that are already in the
1197 .\"LINK2"
1198 internal cd command\&.
1199 .\"The cd internal command"
1200 .\"NODE "  Command Menu"
1201 .SH "  Command Menu"
1203 .\"LINK2"
1204 Directory tree
1205 .\"Directory Tree"
1206 command shows a tree figure of the directories.
1209 .\"LINK2"
1210 Find file
1211 .\"Find File"
1212 command allows you to search for a specific file.
1214 The "Swap panels" command swaps the contents of the two directory panels.
1216 The "Panels on/off" command shows the output of the last shell command.
1217 This works only on xterm and on Linux and FreeBSD console.
1219 The Compare directories (C\-x d) command compares the directory
1220 panels with each other. You can then use the Copy (F5) command to make
1221 the panels identical. There are three compare methods. The quick method
1222 compares only file size and file date. The thorough method makes a
1223 full byte\-by\-byte compare. The thorough method is not available if the
1224 machine does not support the mmap(2) system call.  The size\-only
1225 compare method just compares the file sizes and does not check the
1226 contents or the date times, it just checks the file size.
1228 The Command history command shows a list of typed commands. The
1229 selected command is copied to the command line. The command history
1230 can also be accessed by typing Alt\-p or Alt\-n.
1233 .\"LINK2"
1234 Directory hotlist (C\-\\)
1235 .\"Hotlist"
1236 command makes changing of the current directory to often used directories
1237 faster.
1240 .\"LINK2"
1241 External panelize
1242 .\"External panelize"
1243 allows you to execute an external program, and make the output of that
1244 program the contents of the current panel.
1246 .\"LINK2"
1247 Extension file edit
1248 .\"Extension File Edit"
1249 command allows you to specify programs to executed when you try to
1250 execute, view, edit and do a bunch of other thing on files
1251 with certain extensions (filename endings). The
1252 .\"LINK2"
1253 Menu file edit
1254 .\"Menu File Edit"
1255 command may be used for editing the user menu (which appears by
1256 pressing F2).
1257 .\"NODE "    Directory Tree"
1258 .SH "    Directory Tree"
1259 The Directory Tree command shows a tree figure of the directories. You
1260 can select a directory from the figure and the Midnight Commander will
1261 change to that directory.
1263 There are two ways to invoke the tree. The real directory tree command
1264 is available from Commands menu. The other way is to select tree view
1265 from the Left or Right menu.
1267 To get rid of long delays the Midnight Commander creates the tree
1268 figure by scanning only a small subset of all the directories. If the
1269 directory which you want to see is missing, move to its parent
1270 directory and press C\-r (or F2).
1272 You can use the following keys:
1274 .\"LINK2"
1275 General movement keys
1276 .\"General Movement Keys"
1277 are accepted.
1279 .B Enter.
1280 In the directory tree, exits the directory tree and changes to this
1281 directory in the current panel. In the tree view, changes to this
1282 directory in the other panel and stays in tree view mode in the
1283 current panel.
1285 .B C\-r, F2 (Rescan).
1286 Rescan this directory. Use this when the tree figure is out of date:
1287 it is missing subdirectories or shows some subdirectories which don't
1288 exist any more.
1290 .B F3 (Forget).
1291 Delete this directory from the tree figure. Use this to remove clutter
1292 from the figure. If you want the directory back to the tree figure
1293 press F2 in its parent directory.
1295 .B F4 (Static/Dynamic).
1296 Toggle between the dynamic navigation mode (default) and the static
1297 navigation mode.
1299 In the static navigation mode you can use the Up and Down keys to
1300 select a directory. All known directories are shown.
1302 In the dynamic navigation mode you can use the Up and Down keys to
1303 select a sibling directory, the Left key to move to the parent
1304 directory, and the Right key to move to a child directory. Only the
1305 parent, sibling and children directories are shown, others are left
1306 out. The tree figure changes dynamically as you traverse.
1308 .B F5 (Copy).
1309 Copy the directory.
1311 .B F6 (RenMov).
1312 Move the directory.
1314 .B F7 (Mkdir).
1315 Make a new directory below this directory.
1317 .B F8 (Delete).
1318 Delete this directory from the file system.
1320 .B C\-s, Alt\-s.
1321 Search the next directory matching the search string. If there is
1322 no such directory these keys will move one line down.
1324 .B C\-h, Backspace.
1325 Delete the last character of the search string.
1327 .B Any other character.
1328 Add the character to the search string and move to the next directory
1329 which starts with these characters. In the tree view you must first
1330 activate the search mode by pressing C\-s. The search string is shown
1331 in the mini status line.
1333 The following actions are available only in the directory tree. They
1334 aren't supported in the tree view.
1336 .B F1 (Help).
1337 Invoke the help viewer and show this section.
1339 .B Esc, F10.
1340 Exit the directory tree. Do not change the directory.
1342 The mouse is supported. A double\-click behaves like Enter. See
1343 also the section on
1344 .\"LINK2"
1345 mouse support\&.
1346 .\"Mouse Support"
1347 .\"NODE "    Find File"
1348 .SH "    Find File"
1349 The Find File feature first asks for the start directory for the
1350 search and the filename to be searched for. By pressing the Tree
1351 button you can select the start directory from the
1352 .\"LINK2"
1353 directory tree
1354 .\"Directory Tree"
1355 figure.
1357 The contents field accepts regular expressions similar to egrep(1). That
1358 means you have to escape characters with a special meaning to egrep with "\\",
1359 e.g. if you search for "strcmp (" you will have to input "strcmp \\("
1360 (without the double quotes).
1362 Option \"Whole words\" Allow select only those files containing matches that
1363 form whole words. Like grep \-w
1365 You can start the search by pressing the OK button.
1366 During the search you can stop from the Stop button and continue from
1367 the Start button.
1369 You can browse the filelist with the up and down arrow keys. The Chdir
1370 button will change to the directory of the currently selected
1371 file. The Again button will ask for the parameters for a new
1372 search. The Quit button quits the search operation. The Panelize
1373 button will place the found files to the current directory panel so
1374 that you can do additional operations on them (view, copy, move,
1375 delete and so on). After panelizing you can press C\-r to return to the
1376 normal file listing.
1378 It is possible to have a list of directories that the Find File command
1379 should skip during the search (for example, you may want to avoid
1380 searches on a CD\-ROM or on a NFS directory that is mounted across a slow
1381 link).
1383 Directories to be skipped should be set on the variable
1384 .B ignore_dirs
1385 in the
1386 .B FindFile
1387 section of your ~/.mc/ini file.
1389 Directory components should be separated with a colon, here is an
1390 example:
1393 [FindFile]
1394 ignore_dirs=/cdrom:/nfs/wuarchive:/afs
1397 You may consider using the
1398 .\"LINK2"
1399 External panelize
1400 .\"External panelize"
1401 command for some operations. Find file command is for simple queries
1402 only, while using External panelize you can do as mysterious searches
1403 as you would like.
1404 .\"NODE "    External panelize"
1405 .SH "    External panelize"
1406 The External panelize allows you to execute an external program, and
1407 make the output of that program the contents of the current panel.
1409 For example, if you want to manipulate in one of the panels all the
1410 symbolic links in the current directory, you can use external
1411 panelization to run the following command:
1414 find . \-type l \-print
1417 Upon command completion, the directory contents of the panel will no
1418 longer be the directory listing of the current directory, but all the
1419 files that are symbolic links.
1421 If you want to panelize all of the files that have been downloaded
1422 from your FTP server, you can use this awk command to extract the file
1423 name from the transfer log files:
1426 awk '$9 ~! /incoming/ { print $9 }' < /var/log/xferlog
1429 You may want to save often used panelize commands under a descriptive name,
1430 so that you can recall them quickly. You do this by typing the command on
1431 the input line and pressing Add new button. Then you enter a name under
1432 which you want the command to be saved. Next time, you just choose that
1433 command from the list and do not have to type it again.
1434 .\"NODE "    Hotlist"
1435 .SH "    Hotlist"
1436 The Directory hotlist command shows the labels of the directories
1437 in the directory hotlist.  The Midnight Commander will change to the
1438 directory corresponding to the selected label.  From the hotlist dialog,
1439 you can remove already created label/directory pairs and add new ones.
1440 To add new directories quickly, you can use the Add to hotlist command
1441 (C\-x h), which adds the current directory into the directory hotlist,
1442 asking just for the label for the directory.
1444 This makes cd to often used directories faster. You may consider using the
1445 CDPATH variable as described in
1446 .\"LINK2"
1447 internal cd command
1448 .\"The cd internal command"
1449 description.
1450 .\"NODE "    Extension File Edit"
1451 .SH "    Extension File Edit"
1452 This will invoke your editor on the file
1453 .IR ~/.mc/bindings .
1454 The format of this file following:
1456 All lines starting with # or empty lines are thrown away.
1458 Lines starting in the first column should have following format:
1460 .IR keyword/expr ,
1461 i.e. everything after the slash until new line is
1462 .IR expr .
1464 .I keyword
1465 can be:
1467 .I shell
1469 .I expr
1470 is an extension (no wildcards).  File matches it its name ends
1471 with
1472 .IR expr .
1473 Example:
1474 .I shell/.tar
1475 matches
1476 .IR *.tar .
1478 .I regex
1480 .I expr
1481 is a regular expression.  File matches if its name matches the regular
1482 expression.
1484 .I directory
1486 .I expr
1487 is a regular expression.  File matches if it is a directory and its name
1488 matches the regular expression.
1490 .I type
1492 .I expr
1493 is a regular expression.  File matches if the output of
1494 .I file %f
1495 without the initial "filename:" part matches regular expression
1496 .IR expr .
1498 .I default
1499 \- matches any file.
1500 .I expr
1501 is ignored.
1503 .I include
1504 \- denotes a common section.
1505 .I expr
1506 is the name of the section.
1508 Other lines should start with a space or tab and should be of the format:
1509 .I keyword=command
1510 (with no spaces around =), where
1511 .I keyword
1512 should be:
1513 .I Open
1514 (invoked on Enter or double click),
1515 .I View
1516 (F3),
1517 .I Edit
1518 (F4) or
1519 .I Include
1520 (to add rules from the common section).
1521 .I command
1522 is any one\-line shell command, with the simple
1523 .\"LINK2"
1524 macro substitution\&.
1525 .\"Macro Substitution"
1527 Rules are matched from top to bottom, thus the order is important.  If
1528 the appropriate action is missing, search continues as if this rule
1529 didn't match (i.e. if a file matches the first and second entry and View
1530 action is missing in the first one, then on pressing F3 the View action
1531 from the second entry will be used).
1532 .I default
1533 should match all the actions.
1534 .\"NODE "    Background jobs"
1535 .SH "    Background Jobs"
1536 This lets you control the state of any background Midnight Commander
1537 process (only copy and move files operations can be done in the
1538 background).  You can stop, restart and kill a background job from
1539 here.
1540 .\"NODE "    Menu File Edit"
1541 .SH "    Menu File Edit"
1542 The user menu is a menu of useful actions that can be customized by
1543 the user. When you access the user menu, the
1544 file .mc.menu from the current directory is used if it exists,
1545 but only if it is owned by user or root and is not world\-writable.
1546 If no such file found, ~/.mc/menu is tried in the same way,
1547 and otherwise mc uses the default system\-wide menu
1548 @prefix@/share/mc/mc.menu.
1550 The format of the menu file is very simple. Lines that start with
1551 anything but space or tab are considered entries for the menu (in
1552 order to be able to use it like a hot key, the first character should
1553 be a letter). All the lines that start with a space or a tab are the
1554 commands that will be executed when the entry is selected.
1556 When an option is selected all the command lines of the option are
1557 copied to a temporary file in the temporary directory (usually
1558 /usr/tmp) and then that file is executed. This allows the user to put
1559 normal shell constructs in the menus. Also simple macro substitution
1560 takes place before executing the menu code. For more information, see
1561 .\"LINK2"
1562 macro substitution\&.
1563 .\"Macro Substitution"
1565 Here is a sample mc.menu file:
1568 A       Dump the currently selected file
1569         od \-c %f
1571 B       Edit a bug report and send it to root
1572         I=`mktemp ${MC_TMPDIR:\-/tmp}/mail.XXXXXX` || exit 1
1573         vi $I
1574         mail \-s "Midnight Commander bug" root < $I
1575         rm \-f $I
1577 M       Read mail
1578         emacs \-f rmail
1580 N       Read Usenet news
1581         emacs \-f gnus
1583 H       Call the info hypertext browser
1584         info
1586 J       Copy current directory to other panel recursively
1587         tar cf \- . | (cd %D && tar xvpf \-)
1589 K       Make a release of the current subdirectory
1590         echo \-n "Name of distribution file: "
1591         read tar
1592         ln \-s %d `dirname %d`/$tar
1593         cd ..
1594         tar cvhf ${tar}.tar $tar
1596 = f *.tar.gz | f *.tgz & t n
1597 X       Extract the contents of a compressed tar file
1598         tar xzvf %f
1601 .B Default Conditions
1603 Each menu entry may be preceded by a condition. The condition must
1604 start from the first column with a '=' character. If the condition is
1605 true, the menu entry will be the default entry.
1608 Condition syntax:       = <sub\-cond>
1609   or:                   = <sub\-cond> | <sub\-cond> ...
1610   or:                   = <sub\-cond> & <sub\-cond> ...
1612 Sub\-condition is one of following:
1614   y <pattern>           syntax of current file matching pattern?
1615                         (for edit menu only)
1616   f <pattern>           current file matching pattern?
1617   F <pattern>           other file matching pattern?
1618   d <pattern>           current directory matching pattern?
1619   D <pattern>           other directory matching pattern?
1620   t <type>              current file of type?
1621   T <type>              other file of type?
1622   x <filename>          is it executable filename?
1623   ! <sub\-cond>         negate the result of sub\-condition
1626 Pattern is a normal shell pattern or a regular expression, according
1627 to the shell patterns option. You can override the global value of
1628 the shell patterns option by writing "shell_patterns=x" on the first
1629 line of the menu file (where "x" is either 0 or 1).
1631 Type is one or more of the following characters:
1634   n     not a directory
1635   r     regular file
1636   d     directory
1637   l     link
1638   c     character device
1639   b     block device
1640   f     FIFO (pipe)
1641   s     socket
1642   x     executable file
1643   t     tagged
1646 For example 'rlf' means either regular file, link or fifo. The 't'
1647 type is a little special because it acts on the panel instead of the
1648 file. The condition '=t t' is true if there are tagged files in the
1649 current panel and false if not.
1651 If the condition starts with '=?' instead of '=' a debug trace will be
1652 shown whenever the value of the condition is calculated.
1654 The conditions are calculated from left to right. This means
1656         = f *.tar.gz | f *.tgz & t n
1658 is calculated as
1660         ( (f *.tar.gz) | (f *.tgz) ) & (t n)
1663 Here is a sample of the use of conditions:
1666 = f *.tar.gz | f *.tgz & t n
1667 L       List the contents of a compressed tar\-archive
1668         gzip \-cd %f | tar xvf \-
1671 .B Addition Conditions
1673 If the condition begins with '+' (or '+?') instead of '=' (or '=?') it
1674 is an addition condition. If the condition is true the menu entry will
1675 be included in the menu. If the condition is false the menu entry will
1676 not be included in the menu.
1678 You can combine default and addition conditions by starting condition
1679 with '+=' or '=+' (or '+=?' or '=+?' if you want debug trace). If you
1680 want to use two different conditions, one for adding and another for
1681 defaulting, you can precede a menu entry with two condition lines, one
1682 starting with '+' and another starting with '='.
1684 Comments are started with '#'. The additional comment lines must start
1685 with '#', space or tab.
1686 .\"NODE "  Options Menu"
1687 .SH "  Options Menu"
1688 The Midnight Commander has some options that may be toggled on and
1689 off in several dialogs which are accessible from this menu. Options
1690 are enabled if they have an asterisk or "x" in front of them.
1693 .\"LINK2"
1694 Configuration
1695 .\"Configuration"
1696 command pops up a dialog from which you can change most of settings of
1697 the Midnight Commander.
1700 .\"LINK2"
1701 Layout
1702 .\"Layout"
1703 command pops up a dialog from which you specify a bunch of options how mc
1704 looks like on the screen.
1707 .\"LINK2"
1708 Confirmation
1709 .\"Confirmation"
1710 command pops up a dialog from which you specify which actions you want to
1711 confirm.
1714 .\"LINK2"
1715 Display bits
1716 .\"Display bits"
1717 command pops up a dialog from which you may select which characters is your
1718 terminal able to display.
1721 .\"LINK2"
1722 Learn keys
1723 .\"Learn keys"
1724 command pops up a dialog from which you test some keys which are not working
1725 on some terminals and you may fix them.
1728 .\"LINK2"
1729 Virtual FS
1730 .\"Virtual FS"
1731 command pops up a dialog from which you specify some VFS related options.
1734 .\"LINK2"
1735 Save setup
1736 .\"Save Setup"
1737 command saves the current settings of the Left, Right and Options
1738 menus. A small number of other settings is saved, too.
1739 .\"NODE "    Configuration"
1740 .SH "    Configuration"
1741 The options in this dialog are divided into three groups:
1742 Panel Options, Pause after run and Other Options.
1744 .B Panel Options
1746 .I Use SI size units.
1747 If this option is set, Midnight Commander will use SI units (powers of 1000)
1748 when displaying any byte sizes. The suffixes (k, m ...) are shown in lowercase.
1749 If unset (default), Midnight Commander will use binary units (powers of 1024)
1750 and the suffixes are shown in upper case (K, M ...)
1752 .I Show Backup Files.
1753 If enabled, the Midnight Commander will show files ending with a tilde.
1754 Otherwise, they won't be shown (like GNU's ls option \-B).
1756 .I Show Hidden Files.
1757 If enabled, the Midnight Commander will show all files that start with
1758 a dot (like ls \-a).
1760 .I Mark moves down.
1761 If enabled, the selection bar will move down when you mark a file (with
1762 Insert key).
1764 .I Drop down menus.
1765 When this option is enabled, the pull down menus will be activated as
1766 soon as you press the
1767 .B F9
1768 key.  Otherwise, you will only get the menu title, and you will have
1769 to activate the menu either with the arrow keys or with the hotkeys.
1770 It is recommended if you are using hotkeys.
1772 .I Mix all files.
1773 If this option is enabled, all files and directories are shown mixed
1774 together.  If the option is off, directories (and links to directories)
1775 are shown at the beginning of the listing, and other files below.
1777 .I Fast directory reload.
1778 If this option is enabled, the Midnight Commander will use a trick to
1779 determine if the directory contents have changed.  The trick is to reload
1780 the directory only if the i\-node of the directory has changed; this means
1781 that reloads only happen when files are created or deleted.  If what
1782 changes is the i\-node for a file in the directory (file size changes,
1783 mode or owner changes, etc) the display is not updated.  In these cases,
1784 if you have the option on, you have to rescan the directory manually
1785 (with C\-r).
1787 .B Pause after run
1789 After executing your commands, the Midnight Commander can pause, so
1790 that you can examine the output of the command.  There are three
1791 possible settings for this variable:
1793 .I Never.
1794 Means that you do not want to see the output of your command.  If you
1795 are using the Linux or FreeBSD console or an xterm, you will be able to
1796 see the output of the command by typing C\-o.
1798 .I On dumb terminals.
1799 You will get the pause message on terminals that are not capable of
1800 showing the output of the last command executed (any terminal that is
1801 not an xterm or the Linux console).
1803 .I Always.
1804 The program will pause after executing all of your commands.
1806 .B Other Options
1808 .I Verbose operation.
1809 This toggles whether the file Copy, Rename and Delete operations are
1810 verbose (i.e., display a dialog box for each operation). If you have a
1811 slow terminal, you may wish to disable the verbose operation. It is
1812 automatically turned off if the speed of your terminal is less than
1813 9600 bps.
1815 .I Compute totals.
1816 If this option is enabled, the Midnight
1817 Commander computes total byte sizes and total number of files
1818 prior to any Copy, Rename and Delete operations. This will
1819 provide you with a more accurate progress bar at the expense
1820 of some speed. This option has no effect, if
1821 .I Verbose operation
1822 is disabled.
1824 .I Shell Patterns.
1825 By default the Select, Unselect and Filter commands will use shell\-like
1826 regular expressions. The following conversions are performed to achieve
1827 this: the '*' is replaced by '.*' (zero or more characters); the '?'
1828 is replaced by '.' (exactly one character) and '.' by the literal
1829 dot. If the option is disabled, then the regular expressions are the
1830 ones described in ed(1).
1832 .I Auto Save Setup.
1833 If this option is enabled, when you exit the Midnight Commander the
1834 configurable options of the Midnight Commander are saved in the
1835 ~/.mc/ini file.
1837 .I Auto menus.
1838 If this option is enabled, the user menu will be invoked at startup.
1839 Useful for building menus for non\-unixers.
1841 .I Use internal editor.
1842 If this option is enabled, the built\-in file editor is used to edit
1843 files. If the option is disabled, the editor specified in the
1844 .B EDITOR
1845 environment variable is used.
1846 If no editor is specified,
1847 .B vi
1848 is used.  See the section on the
1849 .\"LINK2"
1850 internal file editor\&.
1851 .\"Internal File Editor"
1853 .I Use internal viewer.
1854 If this option is enabled, the built\-in file viewer is used to view
1855 files. If the option is disabled, the pager specified in the
1856 .B PAGER
1857 environment variable is used.
1858 If no pager is specified, the
1859 .B view
1860 command is used.  See the section on the
1861 .\"LINK2"
1862 internal file viewer\&.
1863 .\"Internal File Viewer"
1865 .I Complete: show all.
1866 By default the Midnight Commander pops up all possible
1867 .\"LINK2"
1868 completions
1869 .\"Completion"
1870 if the completion is ambiguous only when you press
1871 .B Alt\-Tab
1872 for the second time.  For the first time, it just completes as much as
1873 possible and beeps in the case of ambiguity.  Enable this option if you
1874 want to see all possible completions even after pressing
1875 .B Alt\-Tab
1876 the first time.
1878 .I Rotating dash.
1879 If this option is enabled, the
1880 Midnight Commander shows a rotating dash in the upper right corner
1881 as a work in progress indicator.
1883 .I Lynx\-like motion.
1884 If this option is enabled,
1885 you may use the arrows keys to automatically chdir if the
1886 current selection is a subdirectory and the shell command
1887 line is empty. By default, this setting is off.
1889 .I Cd follows links.
1890 This option, if set, causes the Midnight Commander to follow the
1891 logical chain of directories when changing current directory
1892 either in the panels, or using the cd command. This is the default
1893 behavior of bash. When unset, the Midnight Commander follows the
1894 real directory structure, so cd .. if you've entered that directory
1895 through a link will move you to the current directory's real parent
1896 and not to the directory where the link was present.
1898 .I Safe delete.
1899 If this option is enabled, deleting files and directory hotlist entries
1900 unintentionally becomes more difficult.  The default selection in the
1901 confirmation dialogs for deletion changes from "Yes" to "No".
1902 This option is disabled by default.
1903 .\"NODE "    Layout"
1904 .SH "    Layout"
1905 The layout dialog gives you a possibility to change the general layout
1906 of screen. You can specify whether the menubar, the command prompt, the
1907 hintbar and the function keybar are visible. On the Linux or FreeBSD
1908 console you can specify how many lines are shown in the output window.
1910 The rest of the screen area is used for the two directory panels. You
1911 can specify whether the area is split to the panels in vertical or
1912 horizontal direction. The split can be equal or you can specify an
1913 unequal split.
1915 You can specify whether
1916 .I permissions
1918 .I file types
1919 should be highlighted with distinctive
1920 .\"LINK2"
1921 Colors\&.
1922 .\"Colors"
1923 If the permission highlighting is enabled, the parts of the
1924 .I perm
1926 .I mode
1927 .\"LINK2"
1928 display fields
1929 .\"Listing Mode..."
1930 which apply to the user running Midnight Commander are highlighted with
1931 the color defined by the
1932 .I selected
1933 keyword.  If the file type highlighting is enabled, file names are colored
1934 according to rules described in @sysconfdir@/mc/filehighlight.ini file. See
1935 .\"LINK2"
1936 Filenames Highlight
1937 .\"Filenames Highlight"
1938 for more info.
1940 If the
1941 .I Show Mini\-Status
1942 option is enabled, one line of status information about the currently
1943 selected item is shown at the bottom of the panels.
1945 When run in a terminal emulator for X11, Midnight Commander sets the
1946 terminal window title to the current working directory and updates it
1947 when necessary.  If your terminal emulator is broken and you see some
1948 incorrect output on startup and directory change, turn off the
1949 .I Xterm Window Title
1950 option.
1951 .\"NODE "    Confirmation"
1952 .SH "    Confirmation"
1953 In this dialog you configure the confirmation options for file deletion,
1954 overwriting files, execution by pressing enter, quitting the program,
1955 directory hotlist entries deletion and history cleanup.
1956  and.
1957 .\"NODE "    Display bits"
1958 .SH "    Display bits"
1959 This is used to configure the range of visible characters on the
1960 screen.  This setting may be 7\-bits if your terminal/curses supports
1961 only seven output bits, ISO\-8859\-1 displays all the characters in the
1962 ISO\-8859\-1 map and full 8 bits is for those terminals that can display
1963 full 8 bit characters.
1964 .\"NODE "    Learn keys"
1965 .SH "    Learn keys"
1966 This dialog allows you to test and redefine functional keys, cursor
1967 arrows and some other keys to make them work properly on your terminal.
1968 They often don't, since many terminal databases are incomplete or broken.
1970 You can move around with the Tab key and with the vi moving keys ('h'
1971 left, 'j' down, 'k' up and 'l' right).  Once you press any cursor movement
1972 key and it is recognized, you can use that key as well.
1974 You can test keys just by pressing each of them.  When you press a
1975 key and it is recognized properly, OK should appear next to the name
1976 of that key.  Once a key is marked OK it starts working as usually,
1977 e.g. F1 pressed the first time will just check that the F1 key works,
1978 but after that it will show help.  The same applies to the arrow keys.
1979 The Tab key should be working always.
1981 If some keys do not work properly then you won't see OK appear after
1982 pressing one of these.  Then you may want to redefine it.  Do it by pressing
1983 the button with the name of that key (either by the mouse or by Enter
1984 or Space after selecting the button with Tab or arrows).  Then a message
1985 box will appear asking you to press that key.  Do it and wait until the
1986 message box disappears.  If you want to abort, just press Escape once
1987 and wait.
1989 When you finish with all the keys, you can Save them.  The definitions
1990 for the keys you have redefined will be written into the [terminal:TERM]
1991 section of your ~/.mc/ini file (where TERM is the name of your current
1992 terminal).  The definitions of the keys that were already working properly
1993 are not saved.
1994 .\"NODE "    Virtual FS"
1995 .SH "    Virtual FS"
1996 This option gives you control over the settings of the
1997 .\"LINK2"
1998 Virtual File System\&.
1999 .\"Virtual File System"
2001 The Midnight Commander keeps in memory the information related to some
2002 of the virtual file systems to speed up the access to the files in the
2003 file system (for example, directory listings fetched from FTP servers).
2005 Also, in order to access the contents of compressed files (for example,
2006 compressed tar files) the Midnight Commander needs to create temporary
2007 uncompressed files on your disk.
2009 Since both the information in memory and the temporary files on disk
2010 take up resources, you may want to tune the parameters of the cached
2011 information to decrease your resource usage or to maximize the speed of
2012 access to frequently used file systems.
2014 Because of the format of the tar archives, the
2015 .I Tar filesystem
2016 needs to read the whole file just to load the file entries.  Since most
2017 tar files are usually kept compressed (plain tar files are species in
2018 extinction), the tar file system has to uncompress the file on the disk
2019 in a temporary location and then access the uncompressed file as a
2020 regular tar file.
2022 Now, since we all love to browse files and tar files all over the disk,
2023 it's common that you will leave a tar file and the re\-enter it later.
2024 Since decompression is slow, the Midnight Commander will cache the
2025 information in memory for a limited time.  When the timeout expires, all
2026 the resources associated with the file system are released.  The default
2027 timeout is set to one minute.
2030 .\"LINK2"
2031 FTP File System
2032 .\"FTP File System"
2033 (ftpfs) allows you to browse directories on remote FTP servers.  It has
2034 several options.
2036 .I ftp anonymous password
2037 is the password used when you login as "anonymous".  Some sites require
2038 a valid e\-mail address.  On the other hand, you probably don't want to
2039 give your real e\-mail address to untrusted sites, especially if you are
2040 not using spam filtering.
2042 ftpfs keeps the directory listing it fetches from a FTP server in a cache.
2043 The cache expire time is configurable with the
2044 .I ftpfs directory cache timeout
2045 option.  A low value for this option may slow down every operation on
2046 the ftpfs because every operation would require sending a request to the
2047 FTP server.
2049 You can define an FTP proxy host for doing FTP.  Note that most modern
2050 firewalls are fully transparent at least for passive FTP (see below), so
2051 FTP proxies are considered obsolete.
2054 .I Always use ftp proxy
2055 is not set, you can use the exclamation sign to enable proxy for certain
2056 hosts.  See
2057 .\"LINK2"
2058 FTP File System
2059 .\"FTP File System"
2060 for examples.
2062 If this option is set, the program will do two things: consult the
2063 @prefix@/lib/mc/mc.no_proxy file for lines containing host names that
2064 are local (if the host name starts with a dot, it is assumed to be a
2065 domain) and to assume that any hostnames without dots in their names are
2066 directly accessible.  All other hosts will be accessed through the
2067 specified FTP proxy.
2069 You can enable using
2070 .I ~/.netrc
2071 file, which keeps login names and passwords for ftp servers.  See netrc
2072 (5) for the description of the .netrc format.
2074 .I Use passive mode
2075 enables using FTP passive mode, when the connection for data transfer is
2076 initiated by the client, not by the server.  This option is recommended
2077 and enabled by default.  If this option is turned off, the data
2078 connection is initiated by the server.  This may not work with some
2079 firewalls.
2080 .\"NODE "    Save Setup"
2081 .SH "    Save Setup"
2082 At startup the Midnight Commander will try to load initialization
2083 information from the ~/.mc/ini file. If this file doesn't exist, it will
2084 load the information from the system\-wide configuration file, located in
2085 @prefix@/share/mc/mc.ini. If the system\-wide configuration file doesn't
2086 exist, MC uses the default settings.
2089 .I Save Setup
2090 command creates the ~/.mc/ini file by saving the current settings
2091 of the
2092 .\"LINK2"
2093 Left, Right
2094 .\"Left and Right Menus"
2096 .\"LINK2"
2097 Options
2098 .\"Options Menu"
2099 menus.
2101 If you activate the
2102 .I auto save setup
2103 option, MC will always save the current settings when exiting.
2105 There also exist settings which can't be changed from the menus. To
2106 change these settings you have to edit the setup file with your
2107 favorite editor. See the section on
2108 .\"LINK2"
2109 Special Settings
2110 .\"Special Settings"
2111 for more information.
2112 .SH ""
2113 .\"NODE "Executing operating system commands"
2114 .SH "Executing operating system commands"
2115 You may execute commands by typing them directly in the Midnight
2116 Commander's input line, or by selecting the program you want to
2117 execute with the selection bar in one of the panels and hitting Enter.
2119 If you press Enter over a file that is not executable, the Midnight
2120 Commander checks the extension of the selected file against the
2121 extensions in the
2122 .\"LINK2"
2123 Extensions File\&.
2124 .\"Extension File Edit"
2125 If a match is found then the code associated with that extension is
2126 executed. A very simple
2127 .\"LINK2"
2128 macro expansion
2129 .\"Macro Substitution"
2130 takes place before executing the command.
2131 .\"NODE "  The cd internal command"
2132 .SH "  The cd internal command"
2134 .I cd
2135 command is interpreted by the Midnight Commander, it is not passed to
2136 the command shell for execution.  Thus it may not handle all of the
2137 nice macro expansion and substitution that your shell does, although it
2138 does some of them:
2140 .I Tilde substitution.
2141 The (~) will be substituted with your home directory, if you append a
2142 username after the tilde, then it will be substituted with the login
2143 directory of the specified user.
2145 For example, ~guest is the home directory for the user guest, while
2146 ~/guest is the directory guest in your home directory.
2148 .I Previous directory.
2149 You can jump to the directory you were previously by using the special
2150 directory name '\-' like this:
2151 .B cd \-
2153 .I CDPATH directories.
2154 If the directory specified to the
2155 .B cd
2156 command is not in the current directory, then The Midnight Commander
2157 uses the value in the environment variable
2158 .B CDPATH
2159 to search for the directory in any of the named directories.
2161 For example you could set your
2162 .B CDPATH
2163 variable to ~/src:/usr/src, allowing you to change your directory to
2164 any of the directories inside the ~/src and /usr/src directories, from
2165 any place in the file system by using its relative name (for example
2166 cd linux could take you to /usr/src/linux).
2167 .\"NODE "  Macro Substitution"
2168 .SH "  Macro Substitution"
2169 When accessing a
2170 .\"LINK2"
2171 user menu\&,
2172 .\"Menu File Edit"
2173 or executing an
2174 .\"LINK2"
2175 extension dependent command\&,
2176 .\"Extension File Edit"
2177 or running a command from the command line input, a simple macro
2178 substitution takes place.
2180 The macros are:
2182 .I %i
2183 The indent of blank space, equal the cursor column position.  For edit
2184 menu only.
2186 .I %y
2187 The syntax type of current file. For edit menu only.
2189 .I %k
2190 The block file name.
2192 .I %e
2193 The error file name.
2195 .I %m
2196 The current menu name.
2198 .IR %f " and " %p
2199 The current file name.
2201 .I %x
2202 The extension of current file name.
2204 .I %b
2205 The current file name without extension.
2207 .I %d
2208 The current directory name.
2210 .I %F
2211 The current file in the unselected panel.
2213 .I %D
2214 The directory name of the unselected panel.
2216 .I %t
2217 The currently tagged files.
2219 .I %T
2220 The tagged files in the unselected panel.
2222 .IR %u " and " %U
2223 Similar to the %t and %T macros, but in addition the files are untagged.
2224 You can use this macro only once per menu file entry or extension file
2225 entry, because next time there will be no tagged files.
2227 .IR %s " and " %S
2228 The selected files: The tagged files if there are any. Otherwise the
2229 current file.
2231 .I %cd
2232 This is a special macro that is used to change the current directory
2233 to the directory specified in front of it.  This is used primarily as
2234 an interface to the
2235 .\"LINK2"
2236 Virtual File System\&.
2237 .\"Virtual File System"
2239 .I %view
2240 This macro is used to invoke the internal viewer.  This macro can be
2241 used alone, or with arguments.  If you pass any arguments to this
2242 macro, they should be enclosed in brackets.
2244 The arguments are:
2245 .I ascii
2246 to force the viewer into ascii mode;
2247 .I hex
2248 to force the viewer into hex mode;
2249 .I nroff
2250 to tell the viewer that it should interpret the bold and underline
2251 sequences of nroff;
2252 .I unformatted
2253 to tell the viewer to not interpret nroff commands for making the text
2254 bold or underlined.
2256 .I %%
2257 The % character
2259 .I %{some text}
2260 Prompt for the substitution. An input box is shown and the text inside
2261 the braces is used as a prompt. The macro is substituted by the text
2262 typed by the user. The user can press ESC or F10 to cancel. This macro
2263 doesn't work on the command line yet.
2265 .I %var{ENV:default}
2266 If environment variable
2267 .I ENV
2268 is unset, the
2269 .I default
2270 is substituted.  Otherwise, the value of
2271 .I ENV
2272 is substituted.
2273 .\"NODE "  The subshell support"
2274 .SH "  The subshell support"
2275 The subshell support is a compile time option, that works with the
2276 shells: bash, tcsh and zsh.
2278 When the subshell code is activated the Midnight Commander will
2279 spawn a concurrent copy of your shell (the one defined in the
2280 .B SHELL
2281 variable and if it is not defined, then the one in the /etc/passwd
2282 file) and run it in a pseudo terminal, instead of invoking a new shell
2283 each time you execute a command, the command will be passed to the
2284 subshell as if you had typed it.  This also allows you to change the
2285 environment variables, use shell functions and define aliases that are
2286 valid until you quit the Midnight Commander.
2288 If you are using
2289 .B bash
2290 you can specify startup
2291 commands for the subshell in your ~/.mc/bashrc file and
2292 special keyboard maps in the ~/.mc/inputrc file.
2293 .B tcsh
2294 users may specify startup commands in the ~/.mc/tcshrc file.
2296 When the subshell code is used, you can suspend applications at any
2297 time with the sequence C\-o and jump back to the Midnight Commander, if
2298 you interrupt an application, you will not be able to run other
2299 external commands until you quit the application you interrupted.
2301 An extra added feature of using the subshell is that the prompt
2302 displayed by the Midnight Commander is the same prompt that you are
2303 currently using in your shell.
2306 .\"LINK2"
2307 OPTIONS
2308 .\"OPTIONS"
2309 section has more information on how you can control the subshell code.
2310 .\"NODE "Chmod"
2311 .SH "Chmod"
2312 The Chmod window is used to change the attribute bits in a group of
2313 files and directories.  It can be invoked with the C\-x c key combination.
2315 The Chmod window has two parts \-
2316 .I Permissions
2318 .IR File .
2320 In the File section are displayed the name of the file or directory
2321 and its permissions in octal form, as well as its owner and group.
2323 In the Permissions section there is a set of check buttons which
2324 correspond to the file attribute bits.  As you change the attribute
2325 bits, you can see the octal value change in the File section.
2327 To move between the widgets (buttons and check buttons) use the
2328 .I arrow keys
2329 or the
2330 .I Tab
2331 key.  To change the state of the check buttons or to select a button
2333 .I Space.
2334 You can also use the hotkeys on the buttons to quickly activate them.
2335 Hotkeys are shown as highlighted letters on the buttons.
2337 To set the attribute bits, use the Enter key.
2339 When working with a group of files or directories, you just click on
2340 the bits you want to set or clear.  Once you have selected the bits
2341 you want to change, you select one of the action buttons (Set marked
2342 or Clear marked).
2344 Finally, to set the attributes exactly to those specified, you can use
2346 .B [Set all]
2347 button, which will act on all the tagged files.
2349 .B [Marked all]
2350 set only marked attributes to all selected files
2352 .B [Set marked]
2353 set marked bits in attributes of all selected files
2355 .B [Clean marked]
2356 clear marked bits in attributes of all selected files
2358 .B [Set]
2359 set the attributes of one file
2361 .B [Cancel]
2362 cancel the Chmod command
2363 .\"NODE "Chown"
2364 .SH "Chown"
2365 The Chown command is used to change the owner/group of a file. The hot
2366 key for this command is C\-x o.
2367 .\"NODE "Advanced Chown"
2368 .SH "Advanced Chown"
2369 The Advanced Chown command is the
2370 .\"LINK2"
2371 Chmod
2372 .\"Chmod"
2374 .\"LINK2"
2375 Chown
2376 .\"Chown"
2377 command combined into one window. You can change the permissions and
2378 owner/group of files at once.
2379 .\"NODE "File Operations"
2380 .SH "File Operations"
2381 When you copy, move or delete files the Midnight Commander shows the
2382 file operations dialog.  It shows the files currently being processed
2383 and uses up to three progress bars.  The file bar indicates the
2384 percentage of the current file that has been processed so far.  The
2385 count bar shows how many of the tagged files have been handled.  The
2386 bytes bar indicates the percentage of the total size of the tagged files
2387 that has been handled.  If the verbose option is off, the file and bytes
2388 bars are not shown.
2390 There are two buttons at the bottom of the dialog. Pressing the Skip
2391 button will skip the rest of the current file. Pressing the Abort
2392 button will abort the whole operation, the rest of the files are
2393 skipped.
2395 There are three other dialogs which you can run into during the file
2396 operations.
2398 The error dialog informs about error conditions and has three choices.
2399 Normally you select either the Skip button to skip the file or the Abort
2400 button to abort the operation altogether.  You can also select the Retry
2401 button if you fixed the problem from another terminal.
2403 The replace dialog is shown when you attempt to copy or move a file on
2404 the top of an existing file.  The dialog shows the dates and sizes of
2405 the both files.  Press the Yes button to overwrite the file, the No
2406 button to skip the file, the All button to overwrite all the files, the
2407 None button to never overwrite and the Update button to overwrite if the
2408 source file is newer than the target file.  You can abort the whole
2409 operation by pressing the Abort button.
2411 The recursive delete dialog is shown when you try to delete a directory
2412 which is not empty.  Press the Yes button to delete the directory
2413 recursively, the No button to skip the directory, the All button to
2414 delete all the directories and the None button to skip all the non\-empty
2415 directories.  You can abort the whole operation by pressing the Abort
2416 button.  If you selected the Yes or All button you will be asked for a
2417 confirmation.  Type "yes" only if you are really sure you want to do the
2418 recursive delete.
2420 If you have tagged files and perform an operation on them only the files
2421 on which the operation succeeded are untagged. Failed and skipped files
2422 are left tagged.
2423 .\"NODE "Mask Copy/Rename"
2424 .SH "Mask Copy/Rename"
2425 The copy/move operations let you translate the names of files in an
2426 easy way.  To do it, you have to specify the correct source mask and
2427 usually in the trailing part of the destination specify some wildcards.
2428 All the files matching the source mask are copied/renamed according to
2429 the target mask.  If there are tagged files, only the tagged files
2430 matching the source mask are renamed.
2432 There are other options which you can set:
2434 .B Follow links
2436 determines whether make the symlinks and hardlinks in the source
2437 directory (recursively in subdirectories) new links in the target
2438 directory or whether would you like to copy their content.
2440 .B Dive into subdirs
2442 determines the behavior when the source directory is about to be copied,
2443 but the target directory already exists.  The default action is to copy
2444 the contents of the source directory into the target directory.
2445 Enabling this option causes copying the source directory itself into the
2446 target directory.
2448 For example, you want to copy directory
2449 .I /foo
2450 containing file
2451 .I bar
2453 .IR /bla/foo ,
2454 which is an already existing directory.  Normally (when
2455 .B Dive into subdirs
2456 is not set), mc would copy file
2457 .I /foo/bar
2458 into the file
2459 .IR /bla/foo/bar .
2460 By enabling this option the
2461 .I /bla/foo/foo
2462 directory will be created, and
2463 .I /foo/bar
2464 will be copied into
2465 .IR /bla/foo/foo/bar .
2467 .B Preserve attributes
2469 determines whether to preserve the permissions, timestamps and (if you
2470 are root) the ownership of the original files.  If this option is not
2471 set, the current value of the umask will be respected.
2473 .B Use shell patterns on
2475 When the shell patterns option is on you can use the '*' and '?'
2476 wildcards in the source mask.  They work like they do in the shell.  In
2477 the target mask only the '*' and '\\<digit>' wildcards are allowed.  The
2478 first '*' wildcard in the target mask corresponds to the first wildcard
2479 group in the source mask, the second '*' corresponds to the second group
2480 and so on.  The '\\1' wildcard corresponds to the first wildcard group
2481 in the source mask, the '\\2' wildcard corresponds to the second group
2482 and so on all the way up to '\\9'.  The '\\0' wildcard is the whole
2483 filename of the source file.
2485 Two examples:
2487 If the source mask is "*.tar.gz", the destination is "/bla/*.tgz" and the
2488 file to be copied is "foo.tar.gz", the copy will be "foo.tgz" in "/bla".
2490 Suppose you want to swap basename and extension so that "file.c" would
2491 become "c.file" and so on.  The source mask for this is "*.*" and the
2492 destination is "\\2.\\1".
2494 .B Use shell patterns off
2496 When the shell patterns option is off the MC doesn't do automatic
2497 grouping anymore. You must use '\\(...\\)' expressions in the source
2498 mask to specify meaning for the wildcards in the target mask. This is
2499 more flexible but also requires more typing. Otherwise target masks
2500 are similar to the situation when the shell patterns option is on.
2502 Two examples:
2504 If the source mask is "^\\(.*\\)\\.tar\\.gz$", the destination is
2505 "/bla/*.tgz" and the file to be copied is "foo.tar.gz", the copy
2506 will be "/bla/foo.tgz".
2508 Let's suppose you want to swap basename and extension so that "file.c"
2509 will become "c.file" and so on. The source mask for this is
2510 "^\\(.*\\)\\.\\(.*\\)$" and the destination is "\\2.\\1".
2512 .B Case Conversions
2514 You can also change the case of the filenames.  If you use '\\u'
2515 or '\\l' in the target mask, the next character will be converted to
2516 uppercase or lowercase correspondingly.
2518 If you use '\\U' or '\\L' in the target mask, the next characters will
2519 be converted to uppercase or lowercase correspondingly up to the
2520 next '\\E' or next '\\U', '\\L' or the end of the file name.
2522 The '\\u' and '\\l' are stronger than '\\U' and '\\L'.
2524 For example, if the source mask is '*' (shell patterns on) or '^\\(.*\\)$'
2525 (shell patterns off) and the target mask is '\\L\\u*' the file names
2526 will be converted to have initial upper case and otherwise lower case.
2528 You can also use '\\' as a quote character. For example, '\\\\' is
2529 a backslash and '\\*' is an asterisk.
2531 .B Stable symlinks
2533 commands Midnight Commander, that it should change symlinks in the target,
2534 so that they'll point to the same location as it did before. With absolute
2535 symbolic links this does nothing, but if you have a relative one, it will
2536 recompute its value, adding necessary ../ and other directory parts and making
2537 the value as short as possible (most modern filesystems keep short symlinks
2538 inside inodes and thus don't waste much disk space).
2540 .\"NODE "Select/Unselect Files"
2541 .SH "Select/Unselect Files"
2542 The dialog of group of files and directories selection or uselection.
2544 .\"LINK2"
2545 input line
2546 .\"Input Line Keys"
2547 allow enter the regular expression of filenames that will be
2548 selected/unselected.
2550 When
2551 .I Files only
2552 checkbox is on, only files will be selected.  If
2553 .I Files only
2554 is off, as files as directories will be selected.
2555 When
2556 .I Shell Patterns
2557 checkbox is on, the regular expression is much like the filename globbing
2558 in the shell (* standing for zero or more characters and ?  standing
2559 for one character). If
2560 .I Shell Patterns
2561 is off, then the tagging of files is done with normal regular
2562 expressions (see ed (1)). When
2563 .I Case sensitive
2564 checkbox is on, the selection will be case sensitive characters.
2566 .I Case sensitive
2567 is off, the case will be ignored.
2568 .\"NODE "Internal File Viewer"
2569 .SH "Internal File Viewer"
2570 The internal file viewer provides two display modes: ASCII and hex.
2571 To toggle between modes, use the F4 key.
2573 The viewer will try to use the best method provided by your system or
2574 the file type to display the information.
2575 Some character sequences, which appear most often in preformatted manual
2576 pages, are displayed bold and underlined, thus making a pretty display
2577 of your files.
2579 When in hex mode, the search function accepts text in quotes and
2580 constant numbers.  Text in quotes is matched exactly after removing
2581 the quotes.  Each number matches one byte.  You can mix quoted text
2582 with constants like this:
2585 "String" \-1 0xBB 012 "more text"
2588 Note that 012 is an octal number.  \-1 is converted to 0xFF.
2590 Here is a listing of the actions associated with each key that the
2591 Midnight Commander handles in the internal file viewer.
2593 .B F1
2594 Invoke the built\-in hypertext help viewer.
2596 .B F2
2597 Toggle the wrap mode.
2599 .B F4
2600 Toggle the hex mode.
2602 .B F5
2603 Goto line.  This will prompt you for a line number and will display
2604 that line.
2606 .B F6, /.
2607 Regular expression search.
2609 .B ?,
2610 Reverse regular expression search.
2612 .B F7
2613 Normal search / hex mode search.
2615 .B C\-s, F17, n.
2616 Start normal search if there was no previous search expression else
2617 find next match.
2619 .B C\-r.
2620 Start reverse search if there was no previous search expression else
2621 find next match.
2623 .B F8
2624 Toggle Raw/Parsed mode: This will show the file as found on disk or if
2625 a processing filter has been specified in the mc.ext file, then the
2626 output from the filter. Current mode is always the other than written
2627 on the button label, since on the button is the mode which you enter
2628 by that key.
2630 .B F9
2631 Toggle the format/unformat mode: when format mode is on the viewer
2632 will interpret some string sequences to show bold and underline with
2633 different colors. Also, on button label is the other mode than current.
2635 .B F10, Esc.
2636 Exit the internal file viewer.
2638 .B next\-page, space, C\-v.
2639 Scroll one page forward.
2641 .B prev\-page, Alt\-v, C\-b, backspace.
2642 Scroll one page backward.
2644 .B down\-key
2645 Scroll one line forward.
2647 .B up\-key
2648 Scroll one line backward.
2650 .B C\-l
2651 Refresh the screen.
2653 .B C\-o
2654 Switch to the subshell and show the command screen.
2656 .B !
2657 Like C\-o, but run a new shell if the subshell is not running.
2659 .B "[n] m"
2660 Set the mark n.
2662 .B "[n] r"
2663 Jump to the mark n.
2665 .B C\-f
2666 Jump to the next file.
2668 .B C\-b
2669 Jump to the previous file.
2671 .B Alt\-r
2672 Toggle the ruler.
2674 .B Alt\-e
2675 to change charset of displayed text may use M\-e (Alt\-e).
2676 Recoding is made from selected codepage into system codepage. To
2677 cancel the recoding you may select "<No translation>" in charset
2678 selection dialog.
2680 It's possible to instruct the file viewer how to display a file, look
2681 at the
2682 .\"LINK2"
2683 Extension File Edit section
2684 .\"Extension File Edit"
2686 .\"NODE "Internal File Editor"
2687 .SH "Internal File Editor"
2688 The internal file editor is a full\-featured full screen editor.  It can
2689 edit files up to 64 megabytes.  It is possible to edit binary files.
2690 The internal file editor is invoked using
2691 .B F4
2692 if the
2693 .I use_internal_edit
2694 option is set in the initialization file.
2696 The features it presently supports are: block copy, move, delete, cut,
2697 paste; key for key undo; pull\-down menus; file insertion; macro
2698 commands; regular expression search and replace; shift\-arrow text highlighting
2699 (if supported by the terminal); insert\-overwrite toggle; word wrap;
2700 autoindent; tunable tab size; syntax highlighting for various file
2701 types; and an option to pipe text blocks through shell commands like
2702 indent and ispell.
2704 Sections:
2707 .\"LINK2"
2708 Options of editor in ini-file
2709 .\"Internal File Editor / options"
2712 The editor is very easy to use and requires no tutoring. To see what
2713 keys do what, just consult the appropriate pull\-down menu. Other keys
2714 are: Shift movement keys do text highlighting.
2715 .B Ctrl\-Ins
2716 copies to the file
2717 .B cooledit.clip
2719 .B Shift\-Ins
2720 pastes from cooledit.clip.
2721 .B Shift\-Del
2722 cuts to
2723 .BR cooledit.clip ,
2725 .B Ctrl\-Del
2726 deletes highlighted text. Mouse highlighting also works, and you
2727 can override the mouse as usual by holding down the shift key
2728 while dragging the mouse to let normal terminal mouse highlighting
2729 work.
2731 To define a macro, press
2732 .B Ctrl\-R
2733 and then type out the key
2734 strokes you want to be executed. Press
2735 .B Ctrl\-R
2736 again when finished. You can then assign the macro to any key you
2737 like by pressing that key. The macro is executed when you press
2738 .B Ctrl\-A
2739 and then the assigned key. The macro is also executed if
2740 you press Meta, Ctrl, or Esc and the assigned key, provided that the
2741 key is not used for any other function. Once defined, the macro
2742 commands go into the file
2743 .B .mc/cedit/cooledit.macros
2744 in your home directory. You can delete a macro by deleting the
2745 appropriate line in this file.
2748 To change charset of displayed text may use M\-e (Alt\-e).
2749 Recoding is made from selected codepage into system codepage. To
2750 cancel the recoding you may select "<No translation>" in charset
2751 selection dialog.
2754 .B F19
2755 will format the currently highlighted block (plain text or
2756 .B C
2758 .B C++
2759 code or another). This is controlled by the
2760 file
2761 .B @prefix@/share/mc/edit.indent.rc
2762 which is copied to
2763 .B .mc/cedit/edit.indent.rc
2764 in your home directory the first time you use it.
2766 The editor also displays non\-us characters (160+). When editing
2767 binary files, you should set
2768 .B display bits
2769 to 7 bits in the options menu to keep the spacing clean.
2771 .\"NODE "Internal File Editor / options"
2772 .SH "Options of editor in ini-file"
2774 In this section described some options in ini-file.
2775 Options placed in '[Midnight Commander]' section
2778 .I editor_wordcompletion_collect_entire_file
2779 Search autocomplete candidates in entire of file or just from
2780 begin of file to cursor position (0)
2783 .\"NODE "Completion"
2784 .SH "Completion"
2785 Let the Midnight Commander type for you.
2787 Attempt to perform completion on the text before current position.  MC
2788 attempts completion treating the text as variable (if the text begins
2789 with
2790 .BR $ ),
2791 username (if the text begins with
2792 .BR ~ ),
2793 hostname (if the text begins with
2794 .BR @ )
2795 or command (if you are on the command line in the position where you
2796 might type a command, possible completions then include shell reserved
2797 words and shell built\-in commands as well) in turn.  If none of these
2798 matches, filename completion is attempted.
2800 Filename, username, variable and hostname completion works on all input
2801 lines, command completion is command line specific.  If the completion
2802 is ambiguous (there are more different possibilities), MC beeps and the
2803 following action depends on the setting of the
2804 .I Complete: show all
2805 option in the
2806 .\"LINK2"
2807 Configuration
2808 .\"Configuration"
2809 dialog.  If it is enabled, a list of all possibilities pops up next to
2810 the current position and you can select with the arrow keys and
2811 .B Enter
2812 the correct entry.  You can also type the first letters in which the
2813 possibilities differ to move to a subset of all possibilities and
2814 complete as much as possible.  If you press
2815 .B Alt\-Tab
2816 again, only the subset will be shown in the listbox, otherwise the first
2817 item which matches all the previous characters will be highlighted.  As
2818 soon as there is no ambiguity, dialog disappears, but you can hide it by
2819 canceling keys
2820 .BR Esc ,
2821 .B F10
2822 and left and right arrow keys. If
2823 .\"LINK2"
2824 Complete: show all
2825 .\"Configuration"
2826 is disabled, the dialog pops up only if you press
2827 .B Alt\-Tab
2828 for the second time, for the first time MC just beeps.
2829 .\"NODE "Virtual File System"
2830 .SH "Virtual File System"
2831 The Midnight Commander is provided with a code layer to access the file
2832 system; this code layer is known as the virtual file system switch.  The
2833 virtual file system switch allows the Midnight Commander to manipulate
2834 files not located on the Unix file system.
2836 Currently the Midnight Commander is packaged with some Virtual File
2837 Systems (VFS): the
2838 .I local
2839 file system, used for accessing the regular Unix file system; the
2840 .IR ftpfs ,
2841 used to manipulate files on remote systems with the FTP protocol; the
2842 .IR tarfs ,
2843 used to manipulate tar and compressed tar files; the
2844 .IR undelfs ,
2845 used to recover deleted files on ext2 file systems (the default file
2846 system for Linux systems),
2847 .I fish
2848 (for manipulating files over shell connections such as rsh and ssh) and
2849 finally the
2850 .I mcfs
2851 (Midnight Commander file system), a network based file system.  If the
2852 code was compiled with
2853 .I smbfs
2854 support, you can manipulate files on remote systems with the SMB (CIFS)
2855 protocol.
2857 A generic
2858 .I extfs
2859 (EXTernal virtual File System) is provided in order to easily expand
2860 VFS capabilities using scripts and external software.
2862 The VFS switch code will interpret all of the path names used and will
2863 forward them to the correct file system, the formats used for each one
2864 of the file systems is described later in their own section.
2865 .\"NODE "  FTP File System"
2866 .SH "  FTP File System"
2867 The FTP File System (ftpfs) allows you to manipulate files on remote
2868 machines.  To actually use it, you can use the
2869 .I FTP link
2870 item in the menu or directly change your current directory using the
2871 .I cd
2872 command to a path name that looks like this:
2874 .I /#ftp:[!][user[:pass]@]machine[:port][remote\-dir]
2877 .IR user ,
2878 .I port
2880 .I remote\-dir
2881 elements are optional.  If you specify the
2882 .I user
2883 element, the Midnight Commander will login to the remote machine as that
2884 user, otherwise it will use anonymous login or the login name from the
2885 .I ~/.netrc
2886 file.  The optional
2887 .I pass
2888 element is the password used for the connection.  Using the password in
2889 the VFS directory name is not recommended, because it can appear on the
2890 screen in clear text and can be saved to the directory history.
2892 To enable using FTP proxy, prepend
2893 .B !
2894 (an exclamation sign) to the hostname.
2896 Examples:
2899     /#ftp:ftp.nuclecu.unam.mx/linux/local
2900     /#ftp:tsx\-11.mit.edu/pub/linux/packages
2901     /#ftp:!behind.firewall.edu/pub
2902     /#ftp:guest@remote\-host.com:40/pub
2903     /#ftp:miguel:xxx@server/pub
2906 Please check the
2907 .\"LINK2"
2908 Virtual File System
2909 .\"Virtual FS"
2910 dialog box for ftpfs options.
2911 .\"NODE "  Tar File System"
2912 .SH "  Tar File System"
2913 The tar file system provides you with read\-only access to your tar
2914 files and compressed tar files by using the chdir command.  To change
2915 your directory to a tar file, you change your current directory to the
2916 tar file by using the following syntax:
2918 .I /filename.tar#utar/[dir\-inside\-tar]
2920 The mc.ext file already provides a shortcut for tar files, this means
2921 that usually you just point to a tar file and press return to enter
2922 into the tar file, see the
2923 .\"LINK2"
2924 Extension File Edit
2925 .\"Extension File Edit"
2926 section for details on how this is done.
2928 Examples:
2931     mc\-3.0.tar.gz#utar/mc\-3.0/vfs
2932     /ftp/GCC/gcc\-2.7.0.tar#utar
2935 The latter specifies the full path of the tar archive.
2936 .\"NODE "  FIle transfer over SHell filesystem"
2937 .SH "  FIle transfer over SHell filesystem"
2938 The fish file system is a network based file system that allows you to
2939 manipulate the files in a remote machine as if they were local. To use
2940 this, the other side has to either run fish server, or has to have
2941 bash\-compatible shell.
2943 To connect to a remote machine, you just need to chdir
2944 into a special directory which name is in the following
2945 format:
2947 .I /#sh:[user@]machine[:options]/[remote\-dir]
2950 .I user,
2951 .I options
2953 .I remote\-dir
2954 elements are optional.  If you specify the
2955 .I user
2956 element, the Midnight Commander will try to login on the remote
2957 machine as that user, otherwise it will use your login name.
2959 The available
2960 .I options
2961 are:
2963   'C' \- use compression;
2964   'r' \- use rsh instead of ssh;
2965   port \- specify the port used by remote server.
2967 If the
2968 .I remote\-dir
2969 element is present, your current directory on the remote machine will be
2970 set to this one.
2972 Examples:
2975     /#sh:onlyrsh.mx:r/linux/local
2976     /#sh:joe@want.compression.edu:C/private
2977     /#sh:joe@noncompressed.ssh.edu/private
2978     /#sh:joe@somehost.ssh.edu:2222/private
2980 .\"NODE "  Network File System"
2981 .SH "  Network File System"
2982 The Midnight Commander file system is a network base file system that
2983 allows you to manipulate the files in a remote machine as if they were
2984 local.  To use this, the remote machine must be running the mcserv(8)
2985 server program.
2987 To connect to a remote machine, you just need to chdir into a special
2988 directory which name is in the following format:
2990 .I /#mc:[user@]machine[:port][remote\-dir]
2993 .I user, port
2995 .I remote\-dir
2996 elements are optional.  If you specify the
2997 .I user
2998 element then the Midnight Commander will try to logon on the remote
2999 machine as that user, otherwise it will use your login name.
3002 .I port
3003 element is used when the remote server is running on a special port
3004 (see the mcserv(8) manual page for more information about ports);
3005 finally, if the
3006 .I remote\-dir
3007 element is present, your current directory on the remote machine will
3008 be set to this one.
3010 Examples:
3013     /#mc:ftp.nuclecu.unam.mx/linux/local
3014     /#mc:joe@foo.edu:11321/private
3016 .\"NODE "  Undelete File System"
3017 .SH "  Undelete File System"
3018 On Linux systems, if you asked configure to use the ext2fs undelete
3019 facilities, you will have the undelete file system available.
3020 Recovery of deleted files is only available on ext2 file systems.  The
3021 undelete file system is just an interface to the ext2fs library to
3022 retrieve all of the deleted files names on an ext2fs and provides and
3023 to extract the selected files into a regular partition.
3025 To use this file system, you have to chdir into the special file name
3026 formed by the "/#undel" prefix and the file name where the actual
3027 file system resides.
3029 For example, to recover deleted files on the second partition of the
3030 first SCSI disk on Linux, you would use the following path name:
3033     /#undel:sda2
3036 It may take a while for the undelfs to load the required information
3037 before you start browsing files there.
3038 .\"NODE "  SMB File System"
3039 .SH "  SMB File System"
3040 The smbfs allows you to manipulate files on remote machines with SMB
3041 (or CIFS) protocol.  These include Windows for Workgroups,
3042 Windows 9x/ME/XP, Windows NT, Windows 2000 and Samba.
3043 To actually use it, you may try to use the panel command "SMB link..."
3044 (accessible from the menubar) or you may directly change your current
3045 directory to it using the cd command to a path name that looks like this:
3047 .I /#smb:[user@]machine[/service][/remote\-dir]
3050 .IR user ,
3051 .I service
3053 .I remote\-dir
3054 elements are optional.
3056 .IR user ,
3057 .I domain
3059 .I password
3060 can be specified in an input dialog.
3062 Examples:
3065     /#smb:machine/Share
3066     /#smb:other_machine
3067     /#smb:guest@machine/Public/Irlex
3069 .\"NODE "  EXTernal File System"
3070 .SH "  EXTernal File System"
3071 .B extfs
3072 allows to integrate numerous features and file types into GNU Midnight
3073 Commander in an easy way, by writing scripts.
3075 Extfs filesystems can be divided into two categories:
3077 1. Stand\-alone filesystems, which are not associated with any existing
3078 file.  They represent certain system\-wide data as a directory tree.
3079 You can invoke them by typing
3080 .RI ' "cd #fsname" '
3081 where fsname is an extfs short name (see below).  Examples of such
3082 filesystems include audio (list audio tracks on the CD) or apt (list of
3083 all Debian packages in the system).
3085 For example, to list CD\-Audio tracks on your CD\-ROM drive, type
3088   cd #audio
3091 2. 'Archive' filesystems (like rpm, patchfs and more), which represent
3092 contents of a file as a directory tree.  It can consist of 'real' files
3093 compressed in an archive (urar, rpm) or virtual files, like messages
3094 in a mailbox (mailfs) or parts of a patch (patchfs).  To access such
3095 filesystems
3096 .RI ' #fsname '
3097 should be appended to the archive name.  Note that the archive itself
3098 can be on another vfs.
3100 For example, to list contents of a zip archive documents.zip type
3103   cd documents.zip#uzip
3106 In many aspects, you could treat extfs like any other directory.  For
3107 instance, you can add it to the hotlist or change to it from directory
3108 history.  An important limitation is that you cannot invoke shell
3109 commands inside extfs, just like any other non\-local VFS.
3111 Common extfs scripts included with Midnight Commander are:
3113 .B a
3114 access 'A:' DOS/Windows diskette
3115 .RI ( "cd #a" ).
3117 .B apt
3118 front end to Debian's APT package management system
3119 .RI ( "cd #apt" ).
3121 .B audio
3122 audio CD ripping and playing
3123 .RI ( "cd #audio"
3125 .IR "cd device#audio" ).
3127 .B bpp
3128 package of Bad Penguin GNU/Linux distribution
3129 .RI ( "cd file.bpp#bpp" ).
3131 .B deb
3132 package of Debian GNU/Linux distribution
3133 .RI ( "cd file.deb#deb" ).
3135 .B dpkg
3136 Debian GNU/Linux installed packages
3137 .RI ( "cd #deb" ).
3139 .B hp48
3140 view and copy files to/from a HP48 calculator
3141 .RI ( "cd #hp48" ).
3143 .B lslR
3144 browsing of lslR listings as found on many FTPs
3145 .RI ( "cd filename#lslR" ).
3147 .B mailfs
3148 mbox\-style mailbox files support
3149 .RI ( "cd mailbox#mailfs" ).
3151 .B patchfs
3152 extfs to handle unified and context diffs
3153 .RI ( "cd filename#patchfs" ).
3155 .B rpm
3156 RPM package
3157 .RI ( "cd filename#rpm" ).
3159 .B rpms
3160 RPM database management
3161 .RI ( "cd #rpms" ).
3163 .B ulha, urar, uzip, uzoo, uar, uha
3164 archivers
3165 .RI ( "cd archive#xxxx"
3166 where xxxx is one of:
3167 .IR ulha ,
3168 .IR urar ,
3169 .IR uzip ,
3170 .IR uzoo ,
3171 .IR uar ,
3172 .IR uha ).
3174 You could bind file type/extension to specified extfs as described in the
3175 .\"LINK2"
3176 Extension File Edit
3177 .\"Extension File Edit"
3178 section.  Here is an example entry for Debian packages:
3181   regex/\.deb$
3182           Open=%cd %p#deb
3184 .\"NODE "Colors"
3185 .SH "Colors"
3186 The Midnight Commander will try to detect if your terminal supports
3187 color using the terminal database and your terminal name.  Sometimes
3188 it gets confused, so you may force color mode or disable color mode
3189 using the \-c and \-b flag respectively.
3191 If the program is compiled with the Slang screen manager instead of
3192 ncurses, it will also check the variable
3193 .B COLORTERM,
3194 if it is set, it has the same effect as the \-c flag.
3196 You may specify terminals that always force color mode
3197 by adding the
3198 .I color_terminals
3199 variable to the Colors section of the initialization file.  This will
3200 prevent the Midnight Commander from trying to detect if your terminal
3201 supports color.  Example:
3204 [Colors]
3205 color_terminals=linux,xterm
3206 color_terminals=terminal\-name1,terminal\-name2...
3209 The program can be compiled with both ncurses and slang, ncurses does
3210 not provide a way to force color mode: ncurses uses just the
3211 information in the terminal database.
3213 The Midnight Commander provides a way to change the default colors.
3214 Currently the colors are configured using the environment variable
3215 .B MC_COLOR_TABLE
3216 or the Colors section in the initialization file.
3218 In the Colors section, the default color map is loaded from the
3219 .I base_color
3220 variable.  You can specify an alternate color map for a terminal by
3221 using the terminal name as the key in this section.  Example:
3224 [Colors]
3225 base_color=
3226 xterm=menu=magenta:marked=,magenta:markselect=,red
3229 The format for the color definition is:
3232   <keyword>=<foregroundcolor>,<backgroundcolor>:<keyword>= ...
3235 The colors are optional, and the keywords are: normal, selected, marked,
3236 markselect, errors, input, reverse, gauge.  Menu colors are: menu,
3237 menusel, menuhot, menuhotsel, menuinactive. Dialog colors are: dnormal, dfocus,
3238 dhotnormal, dhotfocus.  Help colors are: helpnormal, helpitalic,
3239 helpbold, helplink, helpslink.  Viewer color is: viewunderline. Editor
3240 colors are: editnormal, editbold, editmarked.
3242 .I input
3243 determines the color of input lines used in query dialogs.
3245 .I gauge
3246 determines the color of the filled part of the progress bar (gauge),
3247 which is used to show the user the progress of file operations, such as
3248 copying.
3250 The dialog boxes use the following colors:
3251 .I dnormal
3252 is used for the normal text,
3253 .I dfocus
3254 is the color used for the currently selected component,
3255 .I dhotnormal
3256 is the color used to differentiate the hotkey color in normal
3257 components, whereas the
3258 .I dhotfocus
3259 color is used for the highlighted color in the currently selected
3260 component.
3262 Menus use the same scheme but uses the menu, menusel, menuhot, menuhotsel
3263 and menuinactive tags instead.
3265 Help uses the following colors:
3266 .I helpnormal
3267 is used for normal text,
3268 .I helpitalic
3269 is used for text which is emphasized in italic in the manual page,
3270 .I helpbold
3271 is used for text which is emphasized in bold in the manual page,
3272 .I helplink
3273 is used for not selected hyperlinks and
3274 .I helpslink
3275 is used for selected hyperlink.
3277 The possible colors are: black, gray, red, brightred, green,
3278 brightgreen, brown, yellow, blue, brightblue, magenta, brightmagenta,
3279 cyan, brightcyan, lightgray and white. And there is a special keyword
3280 for transparent background. It is 'default'. The 'default' can only be
3281 used for background color. Example:
3284 [Colors]
3285 base_color=normal=white,default:marked=magenta,default
3288 .\"NODE "Skins"
3289 .SH "Skins"
3290 You can change the appearance of Midhight Commander.
3291 To do this, you must specify a file that contain descriptions of colors
3292 and lines to draw boxes. Redefining of the colors is entirely compatible
3293 with the assignment of colors, as described in Section
3294 .\"LINK2"
3295 Colors\&.
3296 .\"Colors"
3298 A skin\-file is searched on the following algorithm (to the first one found):
3301 1) command line option
3302 .B \-S \<skin\>
3304 .B \-\-skin=\<skin\>
3306 2) Environment variable
3307 .B MC_SKIN
3309 3) In config file parameter
3310 .B skin
3311 in section
3312 .B [Midnight Commander]
3314 4) File
3315 .B @sysconfdir@/mc/skins/default.ini
3317 5) File
3318 .B @prefix@/share/mc/skins/default.ini
3321 Command line option, environment variable and parameter in config file may
3322 contain the absolute path to the skin\-file (with the extension \.ini
3323 or without it). Search of skin\-file will occur in (to the first one found):
3326 .B ~/.mc/skins/
3329 .B @sysconfdir@/mc/skins/
3332 .B @prefix@/share/mc/skins/
3336 For getting extended info, refer to:
3338 .\"LINK2"
3339 Description of section and parameters
3340 .\"Skins sections"
3342 .\"LINK2"
3343 Color pair definitions
3344 .\"Skins colors"
3346 .\"LINK2"
3347 Draw lines
3348 .\"Skins lines"
3350 .\"LINK2"
3351 Compatibility
3352 .\"Skins oldcolors"
3355 .\"NODE "  Skins sections"
3356 .SH "  Description of section and parameters"
3358 Section
3359 .B [skin]
3360 contain metainfo for skin\-file. Parameter
3361 .I description
3362 contain short text about skin.
3365 Section
3366 .B [filehighlight]
3367 contain descriptions of color pairs for filenames highlighting.
3368 Name of parameters must be equal to names of sections into
3369 filehighlight.ini file.
3371 .\"LINK2"
3372 Filenames Highlight
3373 .\"Filenames Highlight"
3374 for getting more info.
3377 Section
3378 .B [core]
3379 describes the elements that are used everywhere.
3381 .I _default_
3382 Default color pair. Used in all other sections if they not contain
3383 color definitions
3385 .I selected
3386 cursor
3388 .I marked
3389 selected data
3391 .I markselect
3392 cursor on selected data
3394 .I gauge
3395 color of the filled part of the progress bar
3397 .I input
3398 color of input lines used in query dialogs.
3400 .I reverse
3401 reverse color
3404 Section
3405 .B [dialog]
3406 describes the elements that are placed on dialog windows (except error dialogs).
3408 .I _default_
3409 Default color for this section. Used [core]._default_ if not specified
3411 .I dfocus
3412 Color of active element (in focus)
3414 .I dhotnormal
3415 Color of hotkeys
3417 .I dhotfocus
3418 Color of hotkeys in focused element
3421 Section
3422 .B [error]
3423 describes the elements that are placed on error dialog windows
3425 .I _default_
3426 Default color for this section. Used [core]._default_ if not specified
3428 .I errdhotnormal
3429 Color of hotkeys
3431 .I errdhotfocus
3432 Color of hotkeys in focused element
3435 Section
3436 .B [menu]
3437 describes the elements that are placed on menu. This section describes
3438 system menu (called by F9) and user-defined menus (called by F2 in panels
3439 and by F11 in editor).
3441 .I _default_
3442 Default color for this section. Used [core]._default_ if not specified
3444 .I entry
3445 Color of menu items
3447 .I menuhot
3448 Color of menu hotkeys
3450 .I menusel
3451 Color of active menu item (in focus)
3453 .I menuhotsel
3454 Color of menu hotkeys in focused menu item
3456 .I menuinactive
3457 Color of inactive menu
3460 Section
3461 .B [help]
3462 describes the elements that are placed on help window.
3464 .I _default_
3465 Default color for this section. Used [core]._default_ if not specified
3467 .I helpitalic
3468 Color pair for element with
3469 .B italic
3470 attribute
3472 .I helpbold
3473 Color pair for element with
3474 .B bold
3475 attribute
3477 .I helplink
3478 Color of links
3480 .I helpslink
3481 Color of active link (on focus)
3484 Section
3485 .B [editor]
3486 describes the colors of elements placed in editor.
3488 .I _default_
3489 Default color for this section. Used [core]._default_ if not specified
3491 .I editbold
3492 Color pair for element with
3493 .B bold
3494 attribute
3496 .I editmarked
3497 Color of selected text
3499 .I editwhitespace
3500 Color of tabs and trailing spaces highlighting
3502 .I linestate
3503 Color for line state area
3506 Section
3507 .B [viewer]
3508 describes the colors of elements placed in viewer.
3510 .I viewunderline
3511 Color pair for element with
3512 .B underline
3513 attribute
3515 .\"NODE "  Skins colors"
3516 .SH "  Color pair definitions"
3517 Any parameter in skin\-file contain definition of color pair.
3519 Color pairs described as two colors separated by ';'. First color
3520 sets the foreground color, second color sets background color.
3521 One of the colors may be omitted, in this case color will be
3522 taken from default color pair (global color pair  or
3523 from default color pair of this section).
3525 Example:
3528 [core]
3529     # green on black
3530     _default_=green;black
3531     # green (default)  on blue
3532     selected=;blue
3533     # yellow on black (default)
3534     marked=yellow;
3538 Possible colors (names) described in
3539 .\"LINK2"
3540 Colors\&.
3541 .\"Colors"
3542 section.
3544 .\"NODE "  Skins lines"
3545 .SH "  Draw lines"
3546 Lines sets in section
3547 .B [Lines]
3548 into skin\-file. By default single lines are used, but you may redefine
3549 to usage of any utf\-8 symbols (like to lines, for example).
3551 .I WARNING!!!
3552 When you build Midnight Commander with the Ncurses screen library
3553 usage of drawing lines is limited!
3554 Possible only drawing a single lines.
3555 For all questions and comments please contact the developers of Ncurses.
3558 Descriptions of parameters
3559 .BR [Lines] :
3561 .I lefttop
3562 left-top line fragment.
3564 .I righttop
3565 right-top line fragment.
3567 .I centertop
3568 down branch of horizontal line
3570 .I centerbottom
3571 up branch of horizontal line
3573 .I leftbottom
3574 left-bottom line fragment
3576 .I rightbottom
3577 right-bottom line fragment
3579 .I leftmiddle
3580 right branch of vertical line
3582 .I rightmiddle
3583 left branch of vertical line
3585 .I centermiddle
3586 cross of lines
3588 .I horiz
3589 horizontal line
3591 .I vert
3592 vertical line
3594 .I thinhoriz
3595 thin horizontal line
3597 .I thinvert
3598 thin vertical line
3601 .\"NODE "  Skins oldcolors"
3602 .SH "  Compatibility"
3604 Appointment of color  by skin\-files fully compatible with
3605 the appointment of the colors described in
3606 .\"LINK2"
3607 Colors\&.
3608 .\"Colors"
3609 section.
3611 In this case, reassignment of colors has priority over the skin file and is
3612 complementary.
3614 .\"NODE "Filenames Highlight"
3615 .SH "Filenames Highlight"
3616 Section [filehighlight] in current skin\-file contains key names as
3617 highlight groups and values as color pairs. Color pairs is documented
3619 .\"LINK2"
3620 Skins
3621 .\"Skins"
3622 section.
3624 Rules of filenames highlight are placed in @prefix@/share/mc/filehighlight.ini file
3625 (~/.mc/filehighlight.ini).
3626 Name of section in this file must be equal to parameters names in
3627 [filehighlight] section (in current skin\-file).
3629 Keys in these groups are:
3631 .I type
3632 file type. If present, all other options are ignored.
3634 .I regexp
3635 regular expression. If present, 'extensions' option is ignored.
3637 .I extensions
3638 list of extensions of files. Separated by ';' sign.
3640 .I extensions_case
3641 (make sense only with 'extensions' parameter) make 'extensions'
3642 rule case sentitive (true) or not (false).
3644 `type' key may have values:
3646 \- FILE (all files)
3647   \- FILE_EXE
3648 \- DIR (all directories)
3649   \- LINK_DIR
3650 \- LINK (all links except stale link)
3651   \- HARDLINK
3652   \- SYMLINK
3653 \- STALE_LINK
3654 \- DEVICE (all device files)
3655   \- DEVICE_BLOCK
3656   \- DEVICE_CHAR
3657 \- SPECIAL (all special files)
3658   \- SPECIAL_SOCKET
3659   \- SPECIAL_FIFO
3660   \- SPECIAL_DOOR
3664 .\"NODE "Special Settings"
3665 .SH "Special Settings"
3666 Most of the Midnight Commander settings can be changed from the
3667 menus. However, there are a small number of settings which can only be
3668 changed by editing the setup file.
3670 These variables may be set in your ~/.mc/ini file:
3672 .I clear_before_exec
3673 By default the Midnight Commander clears the screen before executing a
3674 command.  If you would prefer to see the output of the command at the
3675 bottom of the screen, edit your ~/.mc/ini file and change the value of
3676 the field clear_before_exec to 0.
3678 .I confirm_view_dir
3679 If you press F3 on a directory, normally MC enters that directory.  If
3680 this flag is set to 1, then MC will ask for confirmation before changing
3681 the directory if you have files tagged.
3683 .I ftpfs_retry_seconds
3684 This value is the number of seconds the Midnight Commander will wait
3685 before attempting to reconnect to an FTP server that has denied the
3686 login.  If the value is zero, the login will no be retried.
3688 .I max_dirt_limit
3689 Specifies how many screen updates can be skipped at most in the internal
3690 file viewer.  Normally this value is not significant, because the code
3691 automatically adjusts the number of updates to skip according to the
3692 rate of incoming keystrokes.  However, on very slow machines or
3693 terminals with a fast keyboard auto repeat, a big value can make screen
3694 updates too jumpy.
3696 It seems that setting max_dirt_limit to 10 causes the best behavior,
3697 and that is the default value.
3699 .I mouse_move_pages
3700 Controls whenever scrolling with the mouse is done by pages or line by
3701 line on the panels.
3703 .I mouse_move_pages_viewer
3704 Controls if scrolling with the mouse is done by pages or line by line
3705 on the internal file viewer.
3707 .I old_esc_mode
3708 By default the Midnight Commander treats the ESC key as a key prefix
3709 (old_esc_mode=0).  If this option is set (old_esc_mode=1), the ESC key
3710 will act as a prefix key for one second, and if no extra keys have
3711 arrived, then the ESC key is interpreted as a cancel key (ESC ESC).
3713 .I only_leading_plus_minus
3714 Allow special treatment for '+', '\-', '*' in the command line (select,
3715 unselect, reverse selection) only if the command line is empty.  You
3716 don't need to quote those characters in the middle of the command line.
3717 On the other hand, you cannot use them to change selection when the
3718 command line is not empty.
3720 .I reverse_files_only
3721 Allow revert selection of files only. This variable is on by default.
3722 If on, the reverse selection is applied to files only, not to directories.
3723 The selection of directories is untouched. If off, the reverse
3724 selection is applied to files as well to directories: all unselected
3725 items become selected, and vice versa.
3727 .I panel_scroll_pages
3728 If set (the default), panel will scroll by half the display when the
3729 cursor reaches the end or the beginning of the panel, otherwise it
3730 will just scroll a file at a time.
3732 .I show_output_starts_shell
3733 This variable only works if you are not using the subshell support.
3734 When you use the C\-o keystroke to go back to the user screen, if this
3735 one is set, you will get a fresh shell.  Otherwise, pressing any key
3736 will bring you back to the Midnight Commander.
3738 .I timeformat_recent
3739 Change the time format used to display dates less than 6 months from
3740 now.
3741 See strftime or date man page for the format specification. If this
3742 option is absent, default timeformat is used.
3744 .I timeformat_old
3745 Change the time format used to display  dates older than 6 months from
3746 now or for dates in the future.
3747 See strftime or date man page for the format specification. If this
3748 option is absent, default timeformat is used.
3750 .I torben_fj_mode
3751 If this flag is set, then the home and end keys will work slightly
3752 different on the panels, instead of moving the selection to the first
3753 and last files in the panels, they will act as follows:
3755 The home key will: Go up to the middle line, if below it; else go to the
3756 top line unless it is already on the top line, in this case it will go
3757 to the first file in the panel.
3759 The end key has a similar behavior: Go down to the middle line, if over
3760 it; else go to the bottom line unless you already are at the bottom
3761 line, in such case it will move the selection to the last file name in
3762 the panel.
3764 .I use_file_to_guess_type
3765 If this variable is on (the default) it will spawn the file command to
3766 match the file types listed on the
3767 .\"LINK2"
3768 mc.ext file\&.
3769 .\"Extension File Edit"
3771 .I xterm_mode
3772 If this variable is on (default is off) when you browse the file system
3773 on a Tree panel, it will automatically reload the other panel with the
3774 contents of the selected directory.
3776 .I fish_directory_timeout
3777 This variable holds the lifetime of a directory cache entry in seconds. The
3778 default value is 900 seconds.
3780 .I autodetect_codeset
3781 This option allows use the `enca' command to autodetect codeset of text files
3782 in internal viewer and editor. List of valid values can be obtain by the
3783 `enca \-\-list languages | cut \-d : \-f1' command. Option must be located
3784 in the [Misc] section.
3786 For example:
3789 autodetect_codeset=russian
3791 .\"NODE "Terminal databases"
3792 .SH "Terminal databases"
3793 The Midnight Commander provides a way to fix your system terminal
3794 database without requiring root privileges.  The Midnight Commander
3795 searches in the system initialization file (the mc.lib file located in
3796 the Midnight Commander library directory) and in the ~/.mc/ini file for
3797 the section "terminal:your\-terminal\-name" and then for the section
3798 "terminal:general", each line of the section contains a key symbol that
3799 you want to define, followed by an equal sign and the definition for the
3800 key.  You can use the special \\e form to represent the escape character
3801 and the ^x to represent the control\-x character.
3803 The possible key symbols are:
3806 f0 to f20     Function keys f0\-f20
3807 bs            backspace
3808 home          home key
3809 end           end key
3810 up            up arrow key
3811 down          down arrow key
3812 left          left arrow key
3813 right         right arrow key
3814 pgdn          page down key
3815 pgup          page up key
3816 insert        the insert character
3817 delete        the delete character
3818 complete      to do completion
3821 For example, to define the key insert to be the Escape + [ + O + p, you
3822 set this in the ini file:
3825 insert=\\e[Op
3829 Also now you can use
3830 .I extended learn keys.
3831 For example:
3834     ctrl-alt-right=\\e[[1;6C
3835     ctrl-alt-left=\\e[[1;6D
3839 This means that ctrl+alt+left sends a \\e[[1;6D escape sequence
3840 and therefore Midnight Commander interprets "\\e[[1;6D" as Ctrl\-Alt\-Left.
3844 .I complete
3845 key symbol represents the escape sequences used to invoke the completion
3846 process, this is invoked with Alt\-tab, but you can define other keys to do
3847 the same work (on those keyboard with tons of nice and unused keys
3848 everywhere).
3849 .SH ""
3850 .\"NODE "FILES"
3851 .SH "FILES"
3852 Full paths below may vary between installations.  They are also affected
3853 by the MC_DATADIR environment variable.  If it's set, its value is used
3854 instead of @prefix@/share/mc in the paths below.
3856 .I @prefix@/share/mc/mc.hlp
3858 The help file for the program.
3860 .I @prefix@/share/mc/mc.ext
3862 The default system\-wide extensions file.
3864 .I ~/.mc/bindings
3866 User's own extension, view configuration and edit configuration
3867 file.  They override the contents of the system wide files if present.
3869 .I @prefix@/share/mc/mc.ini
3871 The default system\-wide setup for the Midnight Commander, used only if
3872 the user doesn't have his own ~/.mc/ini file.
3874 .I @prefix@/share/mc/mc.lib
3876 Global settings for the Midnight Commander.  Settings in this file
3877 affect all users, whether they have ~/.mc/ini or not.  Currently, only
3878 .\"LINK2"
3879 terminal settings
3880 .\"Terminal databases"
3881 are loaded from mc.lib.
3883 .I ~/.mc/ini
3885 User's own setup. If this file is present then the setup is loaded
3886 from here instead of the system\-wide startup file.
3888 .I @prefix@/share/mc/mc.hint
3890 This file contains the hints displayed by the program.
3892 .I @prefix@/share/mc/mc.menu
3894 This file contains the default system\-wide applications menu.
3896 .I ~/.mc/menu
3898 User's own application menu. If this file is present it is used instead
3899 of the system\-wide applications menu.
3901 .I ~/.mc/Tree
3903 The directory list for the directory tree and tree view features.
3905 .I ./.mc.menu
3907 Local user\-defined menu. If this file is present, it is used instead of
3908 the home or system\-wide applications menu.
3909 .\"SKIP_SECTION"
3910 .SH "LICENSE"
3911 This program is distributed under the terms of the GNU General Public
3912 License as published by the Free Software Foundation. See the built\-in
3913 help for details on the License and the lack of warranty.
3914 .\"NODE "AVAILABILITY"
3915 .SH "AVAILABILITY"
3916 The latest version of this program can be found at
3917 ftp://ftp.gnu.org/gnu/mc/.
3918 .\"NODE "SEE ALSO"
3919 .SH "SEE ALSO"
3920 ed(1), gpm(1), mcserv(8), terminfo(1), view(1), sh(1), bash(1),
3921 tcsh(1), zsh(1).
3924 The Midnight Commander page on the World Wide Web:
3925         http://www.midnight\-commander.org/
3927 .\"NODE "AUTHORS"
3928 .SH "AUTHORS"
3929 Authors and contributors are listed in the AUTHORS file in the source
3930 distribution.
3931 .\"NODE "BUGS"
3932 .SH "BUGS"
3933 See the file TODO in the distribution for information on what remains to
3934 be done.
3936 If you want to report a problem with the program, please send mail to
3937 this address: mc\-devel@gnome.org.
3939 Provide a detailed description of the bug, the version of the program
3940 you are running
3941 .RI ( "mc \-V"
3942 displays this information), the operating system you are running the
3943 program on.  If the program crashes, we would appreciate a stack trace.