Set of patches to escape minus signs in mans by Denis Briand.
[midnight-commander.git] / doc / man / mc.1.in
blobe32c967834bd3bb6c77b668f6e3a37ed9be5afad
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 файл
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
339 .BR Commander\]
341 4) File
342 .BR ~/.mc/mc.keymap
344 5) File
345 .BR @prefix@/etc/mc/mc.keymap
347 6) File
348 .BR @prefix@/share/mc/mc.keymap
351 Command line option, environment variable and parameter in config file may
352 contain the absolute path to the keymap\-file (with the extension \.keymap
353 or without it). Search of keymap\-file will occur in (to the first one found):
356 .BR ~/.mc/
359 .BR @prefix@/etc/mc/
362 .BR @prefix@/share/mc/
365 .\"NODE "  Miscellaneous Keys"
366 .SH "  Miscellaneous Keys"
367 Here are some keys which don't fall into any of the other categories:
369 .B Enter
370 if there is some text in the command line (the one at the bottom of
371 the panels), then that command is executed. If there is no text in the
372 command line then if the selection bar is over a directory the
373 Midnight Commander does a
374 .B chdir(2)
375 to the selected directory and reloads the information on the panel;
376 if the selection is an executable file then it is executed. Finally,
377 if the extension of the selected file name matches one of the
378 extensions in the
379 .\"LINK2"
380 extensions file
381 .\"Extension File Edit"
382 then the corresponding command is executed.
384 .B C\-l
385 repaint all the information in the Midnight Commander.
387 .B C\-x c
388 run the
389 .\"LINK2"
390 Chmod
391 .\"Chmod"
392 command on a file or on the tagged files.
394 .B C\-x o
395 run the
396 .\"LINK2"
397 Chown
398 .\"Chown"
399 command on the current file or on the tagged files.
401 .B C\-x l
402 run the link command.
404 .B C\-x s
405 run the symbolic link command.
407 .B C\-x i
408 set the other panel display mode to information.
410 .B C\-x q
411 set the other panel display mode to quick view.
413 .B C\-x !
414 execute the
415 .\"LINK2"
416 External panelize
417 .\"External panelize"
418 command.
420 .B C\-x h
421 run the
422 .\"LINK2"
423 add directory to hotlist
424 .\"Hotlist"
425 command.
427 .B Alt\-!
428 executes the Filtered view command, described in the
429 .\"LINK2"
430 view command\&.
431 .\"Internal File Viewer"
433 .B Alt\-?
434 executes the
435 .\"LINK2"
436 Find file
437 .\"Find File"
438 command.
440 .B Alt\-c
441 pops up the
442 .\"LINK2"
443 quick cd
444 .\"Quick cd"
445 dialog.
447 .B C\-o
448 when the program is being run in the Linux or FreeBSD console or under
449 an xterm, it will show you the output of the previous command.  When ran
450 on the Linux console, the Midnight Commander uses an external program
451 (cons.saver) to handle saving and restoring of information on the
452 screen.
454 When the subshell support is compiled in, you can type C\-o at any time
455 and you will be taken back to the Midnight Commander main screen, to
456 return to your application just type C\-o.  If you have an application
457 suspended by using this trick, you won't be able to execute other
458 programs from the Midnight Commander until you terminate the suspended
459 application.
460 .\"NODE "  Directory Panels"
461 .SH "  Directory Panels"
462 This section lists the keys which operate on the directory panels. If
463 you want to know how to change the appearance of the panels take a
464 look at the section on
465 .\"LINK2"
466 Left and Right Menus\&.
467 .\"Left and Right Menus"
469 .B Tab, C\-i
470 change the current panel. The old other panel becomes the new current
471 panel and the old current panel becomes the new other panel. The
472 selection bar moves from the old current panel to the new current
473 panel.
475 .B Insert
476 to tag files you may use the Insert key (the kich1 terminfo sequence).
477 To untag files, just retag a tagged file.
479 .B C\-t
480 to change charset of panel you may use C\-t (Control\-t).
481 Recoding is made from selected codepage into system codepage. To
482 cancel the recoding you may select "directory up" (..) in active panel.
483 To cancel the charsets in all directories, select "No translation " in
484 the dialog of encodings.
486 .B Alt\-g, Alt\-r, Alt\-j
487 used to select the top file in a panel, the middle file and the bottom one,
488 respectively.
490 .B C\-s, Alt\-s
491 start a filename search in the directory listing. When the search is
492 active, the user input will be added to the search string instead of
493 the command line. If the
494 .I Show mini\-status
495 option is enabled the search string is shown on the mini\-status
496 line. When typing, the selection bar will move to the next file
497 starting with the typed letters. The
498 .I backspace
500 .I DEL
501 keys can be used to correct typing mistakes. If C\-s is pressed
502 again, the next match is searched for.
504 .B Alt\-t
505 toggle the current display listing to show the next display listing
506 mode.
507 With this it is possible to quickly switch to brief listing, long
508 listing, user defined listing mode, and back to the default.
510 .B C\-\\\\ (control\-backslash)
511 show the
512 .\"LINK2"
513 directory hotlist
514 .\"Hotlist"
515 and change to the selected directory.
517 .B + \ (plus)
518 this is used to select (tag) a group of files.  The Midnight Commander
519 will prompt for a selection options. When
520 .I Files only
521 checkbox is on, only files will be selected.  If
522 .I Files only
523 is off, as files as directories will be selected.
524 When
525 .I Shell Patterns
526 checkbox is on, the regular expression is much like the filename globbing
527 in the shell (* standing for zero or more characters and ? standing
528 for one character). If
529 .I Shell Patterns
530 is off, then the tagging of files is done with normal regular
531 expressions (see ed (1)). When
532 .I Case sensitive
533 checkbox is on, the selection will be case sensitive characters.
535 .I Case sensitive
536 is off, the case will be ignored.
538 .B \\\\ (backslash)
539 use the "\\" key to unselect a group of files. This is the opposite of
540 the Plus key.
542 .B up\-key, C\-p
543 move the selection bar to the previous entry in the panel.
545 .B down\-key, C\-n
546 move the selection bar to the next entry in the panel.
548 .B home, a1, Alt\-<
549 move the selection bar to the first entry in the panel.
551 .B end, c1, Alt\->
552 move the selection bar to the last entry in the panel.
554 .B next\-page, C\-v
555 move the selection bar one page down.
557 .B prev\-page, Alt\-v
558 move the selection bar one page up.
560 .B Alt\-o
561 If the currently selected file is a directory, load that directory on
562 the other panel and moves the selection to the next file. If the
563 currently selected file is not a directory, load the parent directory
564 on the other panel and moves the selection to the next file.
566 .B Alt\-i
567 make the current directory of the current panel also the current
568 directory of the other panel.  Put the other panel to the listing mode
569 if needed.  If the current panel is panelized, the other panel doesn't
570 become panelized.
572 .B C\-PageUp, C\-PageDown
573 only when supported by the terminal: change to ".." and to the currently
574 selected directory respectively.
576 .B Alt\-y
577 moves to the previous directory in the history, equivalent to clicking
579 .I <
580 with the mouse.
582 .B Alt\-u
583 moves to the next directory in the history, equivalent to clicking the
584 .I >
585 with the mouse.
587 .B Alt\-Shift\-h, Alt\-H
588 displays the directory history, equivalent to depressing the 'v' with
589 the mouse.
590 .\"NODE "  Shell Command Line"
591 .SH "  Shell Command Line"
592 This section lists keys which are useful to avoid excessive typing when
593 entering shell commands.
595 .B Alt\-Enter
596 copy the currently selected file name to the command line.
598 .B C\-Enter
599 same a Alt\-Enter.  May not work on remote systems and some terminals.
601 .B C\-Shift\-Enter
602 copy the full path name of the currently selected file to the command
603 line.  May not work on remote systems and some terminals.
605 .B Alt\-Tab
606 does the filename, command, variable, username and hostname
607 .\"LINK2"
608 completion
609 .\"Completion"
610 for you.
612 .B C\-x t, C\-x C\-t
613 copy the tagged files (or if there are no tagged files, the selected
614 file) of the current panel (C\-x t) or of the other panel (C\-x C\-t) to
615 the command line.
617 .B C\-x p, C\-x C\-p
618 the first key sequence copies the current path name to the command
619 line, and the second one copies the unselected panel's path name to
620 the command line.
622 .B C\-q
623 the quote command can be used to insert characters that are otherwise
624 interpreted by the Midnight Commander (like the '+' symbol)
626 .B Alt\-p, Alt\-n
627 use these keys to browse through the command history. Alt\-p takes you
628 to the last entry, Alt\-n takes you to the next one.
630 .B Alt\-h
631 displays the history for the current input line.
632 .\"NODE "  General Movement Keys"
633 .SH "  General Movement Keys"
634 The help viewer, the file viewer and the directory tree use common
635 code to handle moving. Therefore they accept exactly the same
636 keys. Each of them also accepts some keys of its own.
638 Other parts of the Midnight Commander use some of the same movement
639 keys, so this section may be of use for those parts too.
641 .B Up, C\-p
642 moves one line backward.
644 .B Down, C\-n
645 moves one line forward.
647 .B Prev Page, Page Up, Alt\-v
648 moves one page up.
650 .B Next Page, Page Down, C\-v
651 moves one page down.
653 .B Home, A1
654 moves to the beginning.
656 .B End, C1
657 move to the end.
659 The help viewer and the file viewer accept the following keys in
660 addition the to ones mentioned above:
662 .B b, C\-b, C\-h, Backspace, Delete
663 moves one page up.
665 .B Space bar
666 moves one page down.
668 .B u, d
669 moves one half of a page up or down.
671 .B g, G
672 moves to the beginning or to the end.
673 .\"NODE "  Input Line Keys"
674 .SH "  Input Line Keys"
675 The input lines (they are used for the
676 .\"LINK2"
677 command line
678 .\"Shell Command Line"
679 and for the query dialogs in the program) accept these keys:
681 .B C\-a
682 puts the cursor at the beginning of line.
684 .B C\-e
685 puts the cursor at the end of the line.
687 .B C\-b, move\-left
688 move the cursor one position left.
690 .B C\-f, move\-right
691 move the cursor one position right.
693 .B Alt\-f
694 moves one word forward.
696 .B Alt\-b
697 moves one word backward.
699 .B C\-h, backspace
700 delete the previous character.
702 .B C\-d, Delete
703 delete the character in the point (over the cursor).
705 .B C\-@
706 sets the mark for cutting.
708 .B C\-w
709 copies the text between the cursor and the mark to a kill buffer and
710 removes the text from the input line.
712 .B Alt\-w
713 copies the text between the cursor and the mark to a kill buffer.
715 .B C\-y
716 yanks back the contents of the kill buffer.
718 .B C\-k
719 kills the text from the cursor to the end of the line.
721 .B Alt\-p, Alt\-n
722 Use these keys to browse through the command history. Alt\-p takes you
723 to the last entry, Alt\-n takes you to the next one.
725 .B Alt\-C\-h, Alt\-Backspace
726 delete one word backward.
728 .B Alt\-Tab
729 does the filename, command, variable, username and hostname
730 .\"LINK2"
731 completion
732 .\"Completion"
733 for you.
734 .SH ""
735 .\"NODE "Menu Bar"
736 .SH "Menu Bar"
737 The menu bar pops up when you press F9 or click the mouse on the top
738 row of the screen. The menu bar has five menus: "Left", "File",
739 "Command", "Options" and "Right".
742 .\"LINK2"
743 Left and Right Menus
744 .\"Left and Right Menus"
745 allow you to modify the appearance of the left and right directory
746 panels.
749 .\"LINK2"
750 File Menu
751 .\"File Menu"
752 lists the actions you can perform on the currently selected file or
753 the tagged files.
756 .\"LINK2"
757 Command Menu
758 .\"Command Menu"
759 lists the actions which are more general and bear no relation to the
760 currently selected file or the tagged files.
763 .\"LINK2"
764 Options Menu
765 .\"Options Menu"
766 lists the actions which allow you to customize the Midnight Commander.
767 .\"NODE "  Left and Right Menus"
768 .SH "  Left and Right (Above and Below) Menus"
769 The outlook of the directory panels can be changed from the
770 .B Left
772 .B Right
773 menus (they are named
774 .B Above
776 .B Below
777 when the horizontal panel split is chosen from the
778 .\"LINK2"
779 Layout
780 .\"Layout"
781 options dialog).
782 .\"NODE "    Listing Mode..."
783 .SH "    Listing Mode..."
784 The listing mode view is used to display a listing of files, there are
785 four different listing modes available:
786 .BR Full ,
787 .BR Brief ,
788 .B Long
790 .BR User .
791 The full directory view shows the file name, the size of the file and
792 the modification time.
794 The brief view shows only the file name and it has two columns
795 (therefore showing twice as many files as other views). The long view
796 is similar to the output of
797 .B "ls \-l"
798 command. The long view takes the whole screen width.
800 If you choose the "User" display format, then you have to specify
801 the display format.
803 The user display format must start with a panel size specifier.  This
804 may be "half" or "full", and they specify a half screen panel and a
805 full screen panel respectively.
807 After the panel size, you may specify the two columns mode on the
808 panel, this is done by adding the number "2" to the user format
809 string.
811 After this you add the name of the fields with an optional size
812 specifier.  This are the available fields you may display:
814 .B name
815 displays the file name.
817 .B size
818 displays the file size.
820 .B bsize
821 is an alternative form of the
822 .B size
823 format. It displays the size of the files and for directories it just
824 shows SUB\-DIR or UP\-\-DIR.
826 .B type
827 displays a one character wide type field.  This character is similar to
828 what is displayed by ls with the \-F flag \-
829 .B *
830 for executable files,
831 .B /
832 for directories,
833 .B @
834 for links,
835 .B =
836 for sockets,
837 .B \-
838 for character devices,
839 .B +
840 for block devices,
841 .B |
842 for pipes,
843 .B ~
844 for symbolic links to directories and
845 .B !
846 for stale symlinks (links that point nowhere).
848 .B mark
849 an asterisk if the file is tagged, a space if it's not.
851 .B mtime
852 file's last modification time.
854 .B atime
855 file's last access time.
857 .B ctime
858 file's status change time.
860 .B perm
861 a string representing the current permission bits of the file.
863 .B mode
864 an octal value with the current permission bits of the file.
866 .B nlink
867 the number of links to the file.
869 .B ngid
870 the GID (numeric).
872 .B nuid
873 the UID (numeric).
875 .B owner
876 the owner of the file.
878 .B group
879 the group of the file.
881 .B inode
882 the inode of the file.
884 Also you can use following keywords to define the panel layout:
886 .B space
887 a space in the display format.
889 .B |
890 add a vertical line to the display format.
892 To force one field to a fixed size (a size specifier), you just add
893 .B :
894 followed by the number of characters you want the field to have.  If the
895 number is followed by the symbol
896 .BR + ,
897 then the size specifies the minimal field size \- if the program finds
898 out that there is more space on the screen, it will then expand that
899 field.
901 For example, the
902 .B Full
903 display corresponds to this format:
905 half type name | size | mtime
907 And the
908 .B Long
909 display corresponds to this format:
911 full perm space nlink space owner space group space size space mtime
912 space name
914 This is a nice user display format:
916 half name | size:7 | type mode:3
918 Panels may also be set to the following modes:
920 .B "Info"
921 The info view display information related to the currently
922 selected file and if possible information about the current file
923 system.
925 .B "Tree"
926 The tree view is quite similar to the
927 .\"LINK2"
928 directory tree
929 .\"Directory Tree"
930 feature. See the section about it for more information.
932 .B "Quick View"
933 In this mode, the panel will switch to a reduced
934 .\"LINK2"
935 viewer
936 .\"Internal File Viewer"
937 that displays the contents of the currently selected file, if you
938 select the panel (with the tab key or the mouse), you will have access
939 to the usual viewer commands.
940 .\"NODE "    Sort Order..."
941 .SH "    Sort Order..."
942 The eight sort orders are by name, by extension, by modification time,
943 by access time, and by inode information modification time, by size,
944 by inode and unsorted.  In the Sort order dialog box you can choose
945 the sort order and you may also specify if you want to sort in reverse
946 order by checking the reverse box.
948 By default directories are sorted before files but this can be changed
949 from the
950 .\"LINK2"
951 Options menu
952 .\"Options Menu"
953 (option
954 .BR "Mix all files" ).
955 .\"NODE "    Filter..."
956 .SH "    Filter..."
957 The filter command allows you to specify a shell pattern (for example
958 .BR "*.tar.gz" )
959 which the files must match to be shown. Regardless
960 of the filter pattern, the directories and the links to directories
961 are always shown in the directory panel.
962 .\"NODE "    Reread"
963 .SH "    Reread"
964 The reread command reload the list of files in the directory. It is
965 useful if other processes have created or removed files.  If you
966 have panelized file names in a panel this will reload the directory
967 contents and remove the panelized information (See the section
968 .\"LINK2"
969 External panelize
970 .\"External panelize"
971 for more information).
972 .\"NODE "  File Menu"
973 .SH "  File Menu"
974 The Midnight Commander uses the F1 \- F10 keys as keyboard shortcuts
975 for commands appearing in the file menu.  The escape sequences for the
976 function keys are terminfo capabilities kf1 trough kf10.  On terminals
977 without function key support, you can achieve the same functionality by
978 pressing the ESC key and then a number in the range 1 through 9 and 0
979 (corresponding to F1 to F9 and F10 respectively).
981 The File menu has the following commands (keyboard shortcuts in parentheses):
983 .B Help (F1)
985 Invokes the built\-in hypertext help viewer. Inside the
986 .\"LINK2"
987 help viewer\&,
988 .\"Contents"
989 you can use the Tab key to select the next link and the Enter key to
990 follow that link. The keys Space and Backspace are used to move
991 forward and backward in a help page. Press F1 again to get the full
992 list of accepted keys.
994 .B Menu (F2)
996 Invoke the
997 .\"LINK2"
998 user menu\&.
999 .\"Menu File Edit"
1000 The user menu provides an easy way to provide users with a menu and
1001 add extra features to the Midnight Commander.
1003 .B View (F3, Shift\-F3)
1005 View the currently selected file. By default this invokes the
1006 .\"LINK2"
1007 Internal File Viewer
1008 .\"Internal File Viewer"
1009 but if the option "Use internal view" is off, it invokes an external
1010 file viewer specified by the
1011 .B VIEWER
1012 environment variable.  If
1013 .B VIEWER
1014 is undefined, the
1015 .B PAGER
1016 environment variable is tried.  If
1017 .B PAGER
1018 is also undefined, the "view" command is invoked.  If you use Shift\-F3
1019 instead, the viewer will be invoked without doing any formatting or
1020 preprocessing to the file.
1022 .B Filtered View (Alt\-!)
1024 This command prompts for a command
1025 and its arguments (the argument defaults to the currently selected
1026 file name), the output from such command is shown in the internal file
1027 viewer.
1029 .B Edit (F4, F14)
1031 Press F4 to edit the highlighted file.  Press F14 (usually Shift\-F4)
1032 to start the editor with a new, empty file.
1033 Currently they invoke the
1034 .B vi
1035 editor, or the editor specified in the
1036 .B EDITOR
1037 environment variable, or the
1038 .\"LINK2"
1039 Internal File Editor
1040 .\"Internal File Editor"
1041 if the use_internal_edit option is on.
1043 .B Copy (F5, F15)
1045 Press F5 to pop up an input dialog to copy the currently selected file (or
1046 the tagged files, if there is at least one file tagged) to the
1047 directory/filename you specify in the input dialog.  The destination
1048 defaults to the directory in the non\-selected panel. During this
1049 process, you can press C\-c or ESC to abort the operation. For details
1050 about source mask (which will be usually either * or ^\\(.*\\)$ depending
1051 on setting of Use shell patterns) and possible wildcards in the destination
1053 .\"LINK2"
1054 Mask copy/rename\&.
1055 .\"Mask Copy/Rename"
1057 F15 (usually Shift\-F5) is similar, but defaults to the directory in the
1058 selected panel. It always operates on the selected file, regardless of
1059 any tagged files.
1061 On some systems, it is possible to do the copy in the background by
1062 clicking on the background button (or pressing Alt\-b in the dialog
1063 box).  The
1064 .\"LINK2"
1065 Background Jobs
1066 .\"Background jobs"
1067 is used to control the background process.
1069 .B Link (C\-x l)
1071 Create a hard link to the current file.
1073 .B SymLink (C\-x s)
1075 Create a symbolic link to the current file. To those of you who don't
1076 know what links are: creating a link to a file is a bit like copying
1077 the file, but both the source filename and the destination filename
1078 represent the same file image. For example, if you edit one of these
1079 files, all changes you make will appear in both files. Some people call
1080 links aliases or shortcuts.
1082 A hard link appears as a real file. After making it, there is no way of
1083 telling which one is the original and which is the link. If you delete
1084 either one of them the other one is still intact. It is very difficult
1085 to notice that the files represent the same image. Use hard links when
1086 you don't even want to know.
1088 A symbolic link is a reference to the name of the original file. If
1089 the original file is deleted the symbolic link is useless. It is quite
1090 easy to notice that the files represent the same image. The Midnight
1091 Commander shows an "@"\-sign in front of the file name if it is a
1092 symbolic link to somewhere (except to directory, where it shows a tilde (~)).
1093 The original file which the link points to is shown on mini\-status line if the
1094 .I "Show mini\-status"
1095 option is enabled. Use symbolic links when you want to avoid the
1096 confusion that can be caused by hard links.
1098 .B Rename/Move (F6, F16)
1100 Press F6 to pop up an input dialog to copy the currently selected file (or
1101 the tagged files, if there is at least one file tagged) to the
1102 directory/filename you specify in the input dialog.  The destination
1103 defaults to the directory in the non\-selected panel. For more details
1104 look at Copy (F5) operation above, most of the things are quite similar.
1106 F16 (usually Shift\-F6) is similar, but defaults to the directory in the
1107 selected panel. It always operates on the selected file, regardless of
1108 any tagged files.
1110 On some systems, it is possible to do the copy in the background by
1111 clicking on the background button (or pressing Alt\-b in the dialog
1112 box).  The
1113 .\"LINK2"
1114 Background Jobs
1115 .\"Background jobs"
1116 is used to control the background process.
1118 .B Mkdir (F7)
1120 Pop up an input dialog and creates the directory specified.
1122 .B Delete (F8)
1124 Delete the currently selected file or the tagged files in the
1125 currently selected panel. During the process, you can press C\-c or
1126 ESC to abort the operation.
1128 .B Quick cd (Alt\-c)
1129 Use the
1130 .\"LINK2"
1131 quick cd
1132 .\"Quick cd"
1133 command if you have full command line and want to cd somewhere.
1135 .B Select group (+)
1137 This is used to select (tag) a group of files. The Midnight Commander
1138 will prompt for a selection options. When
1139 .I Files only
1140 checkbox is on, only files will be selected.  If
1141 .I Files only
1142 is off, as files as directories will be selected.
1143 When
1144 .I Shell Patterns
1145 checkbox is on, the regular expression is much like the filename globbing
1146 in the shell (* standing for zero or more characters and ?  standing
1147 for one character). If
1148 .I Shell Patterns
1149 is off, then the tagging of files is done with normal regular
1150 expressions (see ed (1)). When
1151 .I Case sensitive
1152 checkbox is on, the selection will be case sensitive characters.
1154 .I Case sensitive
1155 is off, the case will be ignored.
1157 .B Unselect group (\\\\)
1159 Used to unselect a group of files. This is the opposite of the
1160 .I "Select group"
1161 command.
1163 .B Quit (F10, Shift\-F10)
1165 Terminate the Midnight Commander.  Shift\-F10 is used when you want to
1166 quit and you are using the shell wrapper.  Shift\-F10 will not take you
1167 to the last directory you visited with the Midnight Commander, instead
1168 it will stay at the directory where you started the Midnight Commander.
1169 .\"NODE "    Quick cd"
1170 .SH "    Quick cd"
1171 This command is useful if you have a full command line and want to
1172 .\"LINK2"
1174 .\"The cd internal command"
1175 somewhere without having to yank and paste the command line. This command
1176 pops up a small dialog, where you enter everything you would enter after
1177 .B cd
1178 on the command line and then you press enter. This features all the things
1179 that are already in the
1180 .\"LINK2"
1181 internal cd command\&.
1182 .\"The cd internal command"
1183 .\"NODE "  Command Menu"
1184 .SH "  Command Menu"
1186 .\"LINK2"
1187 Directory tree
1188 .\"Directory Tree"
1189 command shows a tree figure of the directories.
1192 .\"LINK2"
1193 Find file
1194 .\"Find File"
1195 command allows you to search for a specific file.
1197 The "Swap panels" command swaps the contents of the two directory panels.
1199 The "Panels on/off" command shows the output of the last shell command.
1200 This works only on xterm and on Linux and FreeBSD console.
1202 The Compare directories (C\-x d) command compares the directory
1203 panels with each other. You can then use the Copy (F5) command to make
1204 the panels identical. There are three compare methods. The quick method
1205 compares only file size and file date. The thorough method makes a
1206 full byte\-by\-byte compare. The thorough method is not available if the
1207 machine does not support the mmap(2) system call.  The size\-only
1208 compare method just compares the file sizes and does not check the
1209 contents or the date times, it just checks the file size.
1211 The Command history command shows a list of typed commands. The
1212 selected command is copied to the command line. The command history
1213 can also be accessed by typing Alt\-p or Alt\-n.
1216 .\"LINK2"
1217 Directory hotlist (C\-\\)
1218 .\"Hotlist"
1219 command makes changing of the current directory to often used directories
1220 faster.
1223 .\"LINK2"
1224 External panelize
1225 .\"External panelize"
1226 allows you to execute an external program, and make the output of that
1227 program the contents of the current panel.
1229 .\"LINK2"
1230 Extension file edit
1231 .\"Extension File Edit"
1232 command allows you to specify programs to executed when you try to
1233 execute, view, edit and do a bunch of other thing on files
1234 with certain extensions (filename endings). The
1235 .\"LINK2"
1236 Menu file edit
1237 .\"Menu File Edit"
1238 command may be used for editing the user menu (which appears by
1239 pressing F2).
1240 .\"NODE "    Directory Tree"
1241 .SH "    Directory Tree"
1242 The Directory Tree command shows a tree figure of the directories. You
1243 can select a directory from the figure and the Midnight Commander will
1244 change to that directory.
1246 There are two ways to invoke the tree. The real directory tree command
1247 is available from Commands menu. The other way is to select tree view
1248 from the Left or Right menu.
1250 To get rid of long delays the Midnight Commander creates the tree
1251 figure by scanning only a small subset of all the directories. If the
1252 directory which you want to see is missing, move to its parent
1253 directory and press C\-r (or F2).
1255 You can use the following keys:
1257 .\"LINK2"
1258 General movement keys
1259 .\"General Movement Keys"
1260 are accepted.
1262 .B Enter.
1263 In the directory tree, exits the directory tree and changes to this
1264 directory in the current panel. In the tree view, changes to this
1265 directory in the other panel and stays in tree view mode in the
1266 current panel.
1268 .B C\-r, F2 (Rescan).
1269 Rescan this directory. Use this when the tree figure is out of date:
1270 it is missing subdirectories or shows some subdirectories which don't
1271 exist any more.
1273 .B F3 (Forget).
1274 Delete this directory from the tree figure. Use this to remove clutter
1275 from the figure. If you want the directory back to the tree figure
1276 press F2 in its parent directory.
1278 .B F4 (Static/Dynamic).
1279 Toggle between the dynamic navigation mode (default) and the static
1280 navigation mode.
1282 In the static navigation mode you can use the Up and Down keys to
1283 select a directory. All known directories are shown.
1285 In the dynamic navigation mode you can use the Up and Down keys to
1286 select a sibling directory, the Left key to move to the parent
1287 directory, and the Right key to move to a child directory. Only the
1288 parent, sibling and children directories are shown, others are left
1289 out. The tree figure changes dynamically as you traverse.
1291 .B F5 (Copy).
1292 Copy the directory.
1294 .B F6 (RenMov).
1295 Move the directory.
1297 .B F7 (Mkdir).
1298 Make a new directory below this directory.
1300 .B F8 (Delete).
1301 Delete this directory from the file system.
1303 .B C\-s, Alt\-s.
1304 Search the next directory matching the search string. If there is
1305 no such directory these keys will move one line down.
1307 .B C\-h, Backspace.
1308 Delete the last character of the search string.
1310 .B Any other character.
1311 Add the character to the search string and move to the next directory
1312 which starts with these characters. In the tree view you must first
1313 activate the search mode by pressing C\-s. The search string is shown
1314 in the mini status line.
1316 The following actions are available only in the directory tree. They
1317 aren't supported in the tree view.
1319 .B F1 (Help).
1320 Invoke the help viewer and show this section.
1322 .B Esc, F10.
1323 Exit the directory tree. Do not change the directory.
1325 The mouse is supported. A double\-click behaves like Enter. See
1326 also the section on
1327 .\"LINK2"
1328 mouse support\&.
1329 .\"Mouse Support"
1330 .\"NODE "    Find File"
1331 .SH "    Find File"
1332 The Find File feature first asks for the start directory for the
1333 search and the filename to be searched for. By pressing the Tree
1334 button you can select the start directory from the
1335 .\"LINK2"
1336 directory tree
1337 .\"Directory Tree"
1338 figure.
1340 The contents field accepts regular expressions similar to egrep(1). That
1341 means you have to escape characters with a special meaning to egrep with "\\",
1342 e.g. if you search for "strcmp (" you will have to input "strcmp \\("
1343 (without the double quotes).
1345 Option \"Whole words\" Allow select only those files containing matches that
1346 form whole words. Like grep \-w
1348 You can start the search by pressing the OK button.
1349 During the search you can stop from the Stop button and continue from
1350 the Start button.
1352 You can browse the filelist with the up and down arrow keys. The Chdir
1353 button will change to the directory of the currently selected
1354 file. The Again button will ask for the parameters for a new
1355 search. The Quit button quits the search operation. The Panelize
1356 button will place the found files to the current directory panel so
1357 that you can do additional operations on them (view, copy, move,
1358 delete and so on). After panelizing you can press C\-r to return to the
1359 normal file listing.
1361 It is possible to have a list of directories that the Find File command
1362 should skip during the search (for example, you may want to avoid
1363 searches on a CD\-ROM or on a NFS directory that is mounted across a slow
1364 link).
1366 Directories to be skipped should be set on the variable
1367 .B find_ignore_dirs
1368 in the
1369 .B Misc
1370 section of your ~/.mc/ini file.
1372 Directory components should be separated with a colon, here is an
1373 example:
1376 [Misc]
1377 find_ignore_dirs=/cdrom:/nfs/wuarchive:/afs
1380 You may consider using the
1381 .\"LINK2"
1382 External panelize
1383 .\"External panelize"
1384 command for some operations. Find file command is for simple queries
1385 only, while using External panelize you can do as mysterious searches
1386 as you would like.
1387 .\"NODE "    External panelize"
1388 .SH "    External panelize"
1389 The External panelize allows you to execute an external program, and
1390 make the output of that program the contents of the current panel.
1392 For example, if you want to manipulate in one of the panels all the
1393 symbolic links in the current directory, you can use external
1394 panelization to run the following command:
1397 find . \-type l \-print
1400 Upon command completion, the directory contents of the panel will no
1401 longer be the directory listing of the current directory, but all the
1402 files that are symbolic links.
1404 If you want to panelize all of the files that have been downloaded
1405 from your FTP server, you can use this awk command to extract the file
1406 name from the transfer log files:
1409 awk '$9 ~! /incoming/ { print $9 }' < /var/log/xferlog
1412 You may want to save often used panelize commands under a descriptive name,
1413 so that you can recall them quickly. You do this by typing the command on
1414 the input line and pressing Add new button. Then you enter a name under
1415 which you want the command to be saved. Next time, you just choose that
1416 command from the list and do not have to type it again.
1417 .\"NODE "    Hotlist"
1418 .SH "    Hotlist"
1419 The Directory hotlist command shows the labels of the directories
1420 in the directory hotlist.  The Midnight Commander will change to the
1421 directory corresponding to the selected label.  From the hotlist dialog,
1422 you can remove already created label/directory pairs and add new ones.
1423 To add new directories quickly, you can use the Add to hotlist command
1424 (C\-x h), which adds the current directory into the directory hotlist,
1425 asking just for the label for the directory.
1427 This makes cd to often used directories faster. You may consider using the
1428 CDPATH variable as described in
1429 .\"LINK2"
1430 internal cd command
1431 .\"The cd internal command"
1432 description.
1433 .\"NODE "    Extension File Edit"
1434 .SH "    Extension File Edit"
1435 This will invoke your editor on the file
1436 .IR ~/.mc/bindings .
1437 The format of this file following:
1439 All lines starting with # or empty lines are thrown away.
1441 Lines starting in the first column should have following format:
1443 .IR keyword/expr ,
1444 i.e. everything after the slash until new line is
1445 .IR expr .
1447 .I keyword
1448 can be:
1450 .I shell
1452 .I expr
1453 is an extension (no wildcards).  File matches it its name ends
1454 with
1455 .IR expr .
1456 Example:
1457 .I shell/.tar
1458 matches
1459 .IR *.tar .
1461 .I regex
1463 .I expr
1464 is a regular expression.  File matches if its name matches the regular
1465 expression.
1467 .I directory
1469 .I expr
1470 is a regular expression.  File matches if it is a directory and its name
1471 matches the regular expression.
1473 .I type
1475 .I expr
1476 is a regular expression.  File matches if the output of
1477 .I file %f
1478 without the initial "filename:" part matches regular expression
1479 .IR expr .
1481 .I default
1482 \- matches any file.
1483 .I expr
1484 is ignored.
1486 .I include
1487 \- denotes a common section.
1488 .I expr
1489 is the name of the section.
1491 Other lines should start with a space or tab and should be of the format:
1492 .I keyword=command
1493 (with no spaces around =), where
1494 .I keyword
1495 should be:
1496 .I Open
1497 (invoked on Enter or double click),
1498 .I View
1499 (F3),
1500 .I Edit
1501 (F4) or
1502 .I Include
1503 (to add rules from the common section).
1504 .I command
1505 is any one\-line shell command, with the simple
1506 .\"LINK2"
1507 macro substitution\&.
1508 .\"Macro Substitution"
1510 Rules are matched from top to bottom, thus the order is important.  If
1511 the appropriate action is missing, search continues as if this rule
1512 didn't match (i.e. if a file matches the first and second entry and View
1513 action is missing in the first one, then on pressing F3 the View action
1514 from the second entry will be used).
1515 .I default
1516 should match all the actions.
1517 .\"NODE "    Background jobs"
1518 .SH "    Background Jobs"
1519 This lets you control the state of any background Midnight Commander
1520 process (only copy and move files operations can be done in the
1521 background).  You can stop, restart and kill a background job from
1522 here.
1523 .\"NODE "    Menu File Edit"
1524 .SH "    Menu File Edit"
1525 The user menu is a menu of useful actions that can be customized by
1526 the user. When you access the user menu, the
1527 file .mc.menu from the current directory is used if it exists,
1528 but only if it is owned by user or root and is not world\-writable.
1529 If no such file found, ~/.mc/menu is tried in the same way,
1530 and otherwise mc uses the default system\-wide menu
1531 @prefix@/share/mc/mc.menu.
1533 The format of the menu file is very simple. Lines that start with
1534 anything but space or tab are considered entries for the menu (in
1535 order to be able to use it like a hot key, the first character should
1536 be a letter). All the lines that start with a space or a tab are the
1537 commands that will be executed when the entry is selected.
1539 When an option is selected all the command lines of the option are
1540 copied to a temporary file in the temporary directory (usually
1541 /usr/tmp) and then that file is executed. This allows the user to put
1542 normal shell constructs in the menus. Also simple macro substitution
1543 takes place before executing the menu code. For more information, see
1544 .\"LINK2"
1545 macro substitution\&.
1546 .\"Macro Substitution"
1548 Here is a sample mc.menu file:
1551 A       Dump the currently selected file
1552         od \-c %f
1554 B       Edit a bug report and send it to root
1555         I=`mktemp ${MC_TMPDIR:\-/tmp}/mail.XXXXXX` || exit 1
1556         vi $I
1557         mail \-s "Midnight Commander bug" root < $I
1558         rm \-f $I
1560 M       Read mail
1561         emacs \-f rmail
1563 N       Read Usenet news
1564         emacs \-f gnus
1566 H       Call the info hypertext browser
1567         info
1569 J       Copy current directory to other panel recursively
1570         tar cf \- . | (cd %D && tar xvpf \-)
1572 K       Make a release of the current subdirectory
1573         echo \-n "Name of distribution file: "
1574         read tar
1575         ln \-s %d `dirname %d`/$tar
1576         cd ..
1577         tar cvhf ${tar}.tar $tar
1579 = f *.tar.gz | f *.tgz & t n
1580 X       Extract the contents of a compressed tar file
1581         tar xzvf %f
1584 .B Default Conditions
1586 Each menu entry may be preceded by a condition. The condition must
1587 start from the first column with a '=' character. If the condition is
1588 true, the menu entry will be the default entry.
1591 Condition syntax:       = <sub\-cond>
1592   or:                   = <sub\-cond> | <sub\-cond> ...
1593   or:                   = <sub\-cond> & <sub\-cond> ...
1595 Sub\-condition is one of following:
1597   y <pattern>           syntax of current file matching pattern?
1598                         (for edit menu only)
1599   f <pattern>           current file matching pattern?
1600   F <pattern>           other file matching pattern?
1601   d <pattern>           current directory matching pattern?
1602   D <pattern>           other directory matching pattern?
1603   t <type>              current file of type?
1604   T <type>              other file of type?
1605   x <filename>          is it executable filename?
1606   ! <sub\-cond>         negate the result of sub\-condition
1609 Pattern is a normal shell pattern or a regular expression, according
1610 to the shell patterns option. You can override the global value of
1611 the shell patterns option by writing "shell_patterns=x" on the first
1612 line of the menu file (where "x" is either 0 or 1).
1614 Type is one or more of the following characters:
1617   n     not a directory
1618   r     regular file
1619   d     directory
1620   l     link
1621   c     character device
1622   b     block device
1623   f     FIFO (pipe)
1624   s     socket
1625   x     executable file
1626   t     tagged
1629 For example 'rlf' means either regular file, link or fifo. The 't'
1630 type is a little special because it acts on the panel instead of the
1631 file. The condition '=t t' is true if there are tagged files in the
1632 current panel and false if not.
1634 If the condition starts with '=?' instead of '=' a debug trace will be
1635 shown whenever the value of the condition is calculated.
1637 The conditions are calculated from left to right. This means
1639         = f *.tar.gz | f *.tgz & t n
1641 is calculated as
1643         ( (f *.tar.gz) | (f *.tgz) ) & (t n)
1646 Here is a sample of the use of conditions:
1649 = f *.tar.gz | f *.tgz & t n
1650 L       List the contents of a compressed tar\-archive
1651         gzip \-cd %f | tar xvf \-
1654 .B Addition Conditions
1656 If the condition begins with '+' (or '+?') instead of '=' (or '=?') it
1657 is an addition condition. If the condition is true the menu entry will
1658 be included in the menu. If the condition is false the menu entry will
1659 not be included in the menu.
1661 You can combine default and addition conditions by starting condition
1662 with '+=' or '=+' (or '+=?' or '=+?' if you want debug trace). If you
1663 want to use two different conditions, one for adding and another for
1664 defaulting, you can precede a menu entry with two condition lines, one
1665 starting with '+' and another starting with '='.
1667 Comments are started with '#'. The additional comment lines must start
1668 with '#', space or tab.
1669 .\"NODE "  Options Menu"
1670 .SH "  Options Menu"
1671 The Midnight Commander has some options that may be toggled on and
1672 off in several dialogs which are accessible from this menu. Options
1673 are enabled if they have an asterisk or "x" in front of them.
1676 .\"LINK2"
1677 Configuration
1678 .\"Configuration"
1679 command pops up a dialog from which you can change most of settings of
1680 the Midnight Commander.
1683 .\"LINK2"
1684 Layout
1685 .\"Layout"
1686 command pops up a dialog from which you specify a bunch of options how mc
1687 looks like on the screen.
1690 .\"LINK2"
1691 Confirmation
1692 .\"Confirmation"
1693 command pops up a dialog from which you specify which actions you want to
1694 confirm.
1697 .\"LINK2"
1698 Display bits
1699 .\"Display bits"
1700 command pops up a dialog from which you may select which characters is your
1701 terminal able to display.
1704 .\"LINK2"
1705 Learn keys
1706 .\"Learn keys"
1707 command pops up a dialog from which you test some keys which are not working
1708 on some terminals and you may fix them.
1711 .\"LINK2"
1712 Virtual FS
1713 .\"Virtual FS"
1714 command pops up a dialog from which you specify some VFS related options.
1717 .\"LINK2"
1718 Save setup
1719 .\"Save Setup"
1720 command saves the current settings of the Left, Right and Options
1721 menus. A small number of other settings is saved, too.
1722 .\"NODE "    Configuration"
1723 .SH "    Configuration"
1724 The options in this dialog are divided into three groups:
1725 Panel Options, Pause after run and Other Options.
1727 .B Panel Options
1729 .I Use SI size units.
1730 If this option is set, Midnight Commander will use SI units (powers of 1000)
1731 when displaying any byte sizes. The suffixes (k, m ...) are shown in lowercase.
1732 If unset (default), Midnight Commander will use binary units (powers of 1024)
1733 and the suffixes are shown in upper case (K, M ...)
1735 .I Show Backup Files.
1736 If enabled, the Midnight Commander will show files ending with a tilde.
1737 Otherwise, they won't be shown (like GNU's ls option \-B).
1739 .I Show Hidden Files.
1740 If enabled, the Midnight Commander will show all files that start with
1741 a dot (like ls \-a).
1743 .I Mark moves down.
1744 If enabled, the selection bar will move down when you mark a file (with
1745 Insert key).
1747 .I Drop down menus.
1748 When this option is enabled, the pull down menus will be activated as
1749 soon as you press the
1750 .B F9
1751 key.  Otherwise, you will only get the menu title, and you will have
1752 to activate the menu either with the arrow keys or with the hotkeys.
1753 It is recommended if you are using hotkeys.
1755 .I Mix all files.
1756 If this option is enabled, all files and directories are shown mixed
1757 together.  If the option is off, directories (and links to directories)
1758 are shown at the beginning of the listing, and other files below.
1760 .I Fast directory reload.
1761 If this option is enabled, the Midnight Commander will use a trick to
1762 determine if the directory contents have changed.  The trick is to reload
1763 the directory only if the i\-node of the directory has changed; this means
1764 that reloads only happen when files are created or deleted.  If what
1765 changes is the i\-node for a file in the directory (file size changes,
1766 mode or owner changes, etc) the display is not updated.  In these cases,
1767 if you have the option on, you have to rescan the directory manually
1768 (with C\-r).
1770 .B Pause after run
1772 After executing your commands, the Midnight Commander can pause, so
1773 that you can examine the output of the command.  There are three
1774 possible settings for this variable:
1776 .I Never.
1777 Means that you do not want to see the output of your command.  If you
1778 are using the Linux or FreeBSD console or an xterm, you will be able to
1779 see the output of the command by typing C\-o.
1781 .I On dumb terminals.
1782 You will get the pause message on terminals that are not capable of
1783 showing the output of the last command executed (any terminal that is
1784 not an xterm or the Linux console).
1786 .I Always.
1787 The program will pause after executing all of your commands.
1789 .B Other Options
1791 .I Verbose operation.
1792 This toggles whether the file Copy, Rename and Delete operations are
1793 verbose (i.e., display a dialog box for each operation). If you have a
1794 slow terminal, you may wish to disable the verbose operation. It is
1795 automatically turned off if the speed of your terminal is less than
1796 9600 bps.
1798 .I Compute totals.
1799 If this option is enabled, the Midnight
1800 Commander computes total byte sizes and total number of files
1801 prior to any Copy, Rename and Delete operations. This will
1802 provide you with a more accurate progress bar at the expense
1803 of some speed. This option has no effect, if
1804 .I Verbose operation
1805 is disabled.
1807 .I Shell Patterns.
1808 By default the Select, Unselect and Filter commands will use shell\-like
1809 regular expressions. The following conversions are performed to achieve
1810 this: the '*' is replaced by '.*' (zero or more characters); the '?'
1811 is replaced by '.' (exactly one character) and '.' by the literal
1812 dot. If the option is disabled, then the regular expressions are the
1813 ones described in ed(1).
1815 .I Auto Save Setup.
1816 If this option is enabled, when you exit the Midnight Commander the
1817 configurable options of the Midnight Commander are saved in the
1818 ~/.mc/ini file.
1820 .I Auto menus.
1821 If this option is enabled, the user menu will be invoked at startup.
1822 Useful for building menus for non\-unixers.
1824 .I Use internal editor.
1825 If this option is enabled, the built\-in file editor is used to edit
1826 files. If the option is disabled, the editor specified in the
1827 .B EDITOR
1828 environment variable is used.
1829 If no editor is specified,
1830 .B vi
1831 is used.  See the section on the
1832 .\"LINK2"
1833 internal file editor\&.
1834 .\"Internal File Editor"
1836 .I Use internal viewer.
1837 If this option is enabled, the built\-in file viewer is used to view
1838 files. If the option is disabled, the pager specified in the
1839 .B PAGER
1840 environment variable is used.
1841 If no pager is specified, the
1842 .B view
1843 command is used.  See the section on the
1844 .\"LINK2"
1845 internal file viewer\&.
1846 .\"Internal File Viewer"
1848 .I Complete: show all.
1849 By default the Midnight Commander pops up all possible
1850 .\"LINK2"
1851 completions
1852 .\"Completion"
1853 if the completion is ambiguous only when you press
1854 .B Alt\-Tab
1855 for the second time.  For the first time, it just completes as much as
1856 possible and beeps in the case of ambiguity.  Enable this option if you
1857 want to see all possible completions even after pressing
1858 .B Alt\-Tab
1859 the first time.
1861 .I Rotating dash.
1862 If this option is enabled, the
1863 Midnight Commander shows a rotating dash in the upper right corner
1864 as a work in progress indicator.
1866 .I Lynx\-like motion.
1867 If this option is enabled,
1868 you may use the arrows keys to automatically chdir if the
1869 current selection is a subdirectory and the shell command
1870 line is empty. By default, this setting is off.
1872 .I Cd follows links.
1873 This option, if set, causes the Midnight Commander to follow the
1874 logical chain of directories when changing current directory
1875 either in the panels, or using the cd command. This is the default
1876 behavior of bash. When unset, the Midnight Commander follows the
1877 real directory structure, so cd .. if you've entered that directory
1878 through a link will move you to the current directory's real parent
1879 and not to the directory where the link was present.
1881 .I Safe delete.
1882 If this option is enabled, deleting files and directory hotlist entries
1883 unintentionally becomes more difficult.  The default selection in the
1884 confirmation dialogs for deletion changes from "Yes" to "No".
1885 This option is disabled by default.
1886 .\"NODE "    Layout"
1887 .SH "    Layout"
1888 The layout dialog gives you a possibility to change the general layout
1889 of screen. You can specify whether the menubar, the command prompt, the
1890 hintbar and the function keybar are visible. On the Linux or FreeBSD
1891 console you can specify how many lines are shown in the output window.
1893 The rest of the screen area is used for the two directory panels. You
1894 can specify whether the area is split to the panels in vertical or
1895 horizontal direction. The split can be equal or you can specify an
1896 unequal split.
1898 You can specify whether
1899 .I permissions
1901 .I file types
1902 should be highlighted with distinctive
1903 .\"LINK2"
1904 Colors\&.
1905 .\"Colors"
1906 If the permission highlighting is enabled, the parts of the
1907 .I perm
1909 .I mode
1910 .\"LINK2"
1911 display fields
1912 .\"Listing Mode..."
1913 which apply to the user running Midnight Commander are highlighted with
1914 the color defined by the
1915 .I selected
1916 keyword.  If the file type highlighting is enabled, file names are colored
1917 according to rules described in @prefix@/etc/mc/filehighlight.ini file.  See
1918 .\"LINK2"
1919 Filenames Highlight
1920 .\"Filenames Highlight"
1921 for more info.
1923 If the
1924 .I Show Mini\-Status
1925 option is enabled, one line of status information about the currently
1926 selected item is shown at the bottom of the panels.
1928 When run in a terminal emulator for X11, Midnight Commander sets the
1929 terminal window title to the current working directory and updates it
1930 when necessary.  If your terminal emulator is broken and you see some
1931 incorrect output on startup and directory change, turn off the
1932 .I Xterm Window Title
1933 option.
1934 .\"NODE "    Confirmation"
1935 .SH "    Confirmation"
1936 In this menu you configure the confirmation options for file deletion,
1937 directory hotlist entries deletion, overwriting, execution by pressing
1938 enter and quitting the program.
1939 .\"NODE "    Display bits"
1940 .SH "    Display bits"
1941 This is used to configure the range of visible characters on the
1942 screen.  This setting may be 7\-bits if your terminal/curses supports
1943 only seven output bits, ISO\-8859\-1 displays all the characters in the
1944 ISO\-8859\-1 map and full 8 bits is for those terminals that can display
1945 full 8 bit characters.
1946 .\"NODE "    Learn keys"
1947 .SH "    Learn keys"
1948 This dialog allows you to test and redefine functional keys, cursor
1949 arrows and some other keys to make them work properly on your terminal.
1950 They often don't, since many terminal databases are incomplete or broken.
1952 You can move around with the Tab key and with the vi moving keys ('h'
1953 left, 'j' down, 'k' up and 'l' right).  Once you press any cursor movement
1954 key and it is recognized, you can use that key as well.
1956 You can test keys just by pressing each of them.  When you press a
1957 key and it is recognized properly, OK should appear next to the name
1958 of that key.  Once a key is marked OK it starts working as usually,
1959 e.g. F1 pressed the first time will just check that the F1 key works,
1960 but after that it will show help.  The same applies to the arrow keys.
1961 The Tab key should be working always.
1963 If some keys do not work properly then you won't see OK appear after
1964 pressing one of these.  Then you may want to redefine it.  Do it by pressing
1965 the button with the name of that key (either by the mouse or by Enter
1966 or Space after selecting the button with Tab or arrows).  Then a message
1967 box will appear asking you to press that key.  Do it and wait until the
1968 message box disappears.  If you want to abort, just press Escape once
1969 and wait.
1971 When you finish with all the keys, you can Save them.  The definitions
1972 for the keys you have redefined will be written into the [terminal:TERM]
1973 section of your ~/.mc/ini file (where TERM is the name of your current
1974 terminal).  The definitions of the keys that were already working properly
1975 are not saved.
1976 .\"NODE "    Virtual FS"
1977 .SH "    Virtual FS"
1978 This option gives you control over the settings of the
1979 .\"LINK2"
1980 Virtual File System\&.
1981 .\"Virtual File System"
1983 The Midnight Commander keeps in memory the information related to some
1984 of the virtual file systems to speed up the access to the files in the
1985 file system (for example, directory listings fetched from FTP servers).
1987 Also, in order to access the contents of compressed files (for example,
1988 compressed tar files) the Midnight Commander needs to create temporary
1989 uncompressed files on your disk.
1991 Since both the information in memory and the temporary files on disk
1992 take up resources, you may want to tune the parameters of the cached
1993 information to decrease your resource usage or to maximize the speed of
1994 access to frequently used file systems.
1996 Because of the format of the tar archives, the
1997 .I Tar filesystem
1998 needs to read the whole file just to load the file entries.  Since most
1999 tar files are usually kept compressed (plain tar files are species in
2000 extinction), the tar file system has to uncompress the file on the disk
2001 in a temporary location and then access the uncompressed file as a
2002 regular tar file.
2004 Now, since we all love to browse files and tar files all over the disk,
2005 it's common that you will leave a tar file and the re\-enter it later.
2006 Since decompression is slow, the Midnight Commander will cache the
2007 information in memory for a limited time.  When the timeout expires, all
2008 the resources associated with the file system are released.  The default
2009 timeout is set to one minute.
2012 .\"LINK2"
2013 FTP File System
2014 .\"FTP File System"
2015 (ftpfs) allows you to browse directories on remote FTP servers.  It has
2016 several options.
2018 .I ftp anonymous password
2019 is the password used when you login as "anonymous".  Some sites require
2020 a valid e\-mail address.  On the other hand, you probably don't want to
2021 give your real e\-mail address to untrusted sites, especially if you are
2022 not using spam filtering.
2024 ftpfs keeps the directory listing it fetches from a FTP server in a cache.
2025 The cache expire time is configurable with the
2026 .I ftpfs directory cache timeout
2027 option.  A low value for this option may slow down every operation on
2028 the ftpfs because every operation would require sending a request to the
2029 FTP server.
2031 You can define an FTP proxy host for doing FTP.  Note that most modern
2032 firewalls are fully transparent at least for passive FTP (see below), so
2033 FTP proxies are considered obsolete.
2036 .I Always use ftp proxy
2037 is not set, you can use the exclamation sign to enable proxy for certain
2038 hosts.  See
2039 .\"LINK2"
2040 FTP File System
2041 .\"FTP File System"
2042 for examples.
2044 If this option is set, the program will do two things: consult the
2045 @prefix@/lib/mc/mc.no_proxy file for lines containing host names that
2046 are local (if the host name starts with a dot, it is assumed to be a
2047 domain) and to assume that any hostnames without dots in their names are
2048 directly accessible.  All other hosts will be accessed through the
2049 specified FTP proxy.
2051 You can enable using
2052 .I ~/.netrc
2053 file, which keeps login names and passwords for ftp servers.  See netrc
2054 (5) for the description of the .netrc format.
2056 .I Use passive mode
2057 enables using FTP passive mode, when the connection for data transfer is
2058 initiated by the client, not by the server.  This option is recommended
2059 and enabled by default.  If this option is turned off, the data
2060 connection is initiated by the server.  This may not work with some
2061 firewalls.
2062 .\"NODE "    Save Setup"
2063 .SH "    Save Setup"
2064 At startup the Midnight Commander will try to load initialization
2065 information from the ~/.mc/ini file. If this file doesn't exist, it will
2066 load the information from the system\-wide configuration file, located in
2067 @prefix@/share/mc/mc.ini. If the system\-wide configuration file doesn't
2068 exist, MC uses the default settings.
2071 .I Save Setup
2072 command creates the ~/.mc/ini file by saving the current settings
2073 of the
2074 .\"LINK2"
2075 Left, Right
2076 .\"Left and Right Menus"
2078 .\"LINK2"
2079 Options
2080 .\"Options Menu"
2081 menus.
2083 If you activate the
2084 .I auto save setup
2085 option, MC will always save the current settings when exiting.
2087 There also exist settings which can't be changed from the menus. To
2088 change these settings you have to edit the setup file with your
2089 favorite editor. See the section on
2090 .\"LINK2"
2091 Special Settings
2092 .\"Special Settings"
2093 for more information.
2094 .SH ""
2095 .\"NODE "Executing operating system commands"
2096 .SH "Executing operating system commands"
2097 You may execute commands by typing them directly in the Midnight
2098 Commander's input line, or by selecting the program you want to
2099 execute with the selection bar in one of the panels and hitting Enter.
2101 If you press Enter over a file that is not executable, the Midnight
2102 Commander checks the extension of the selected file against the
2103 extensions in the
2104 .\"LINK2"
2105 Extensions File\&.
2106 .\"Extension File Edit"
2107 If a match is found then the code associated with that extension is
2108 executed. A very simple
2109 .\"LINK2"
2110 macro expansion
2111 .\"Macro Substitution"
2112 takes place before executing the command.
2113 .\"NODE "  The cd internal command"
2114 .SH "  The cd internal command"
2116 .I cd
2117 command is interpreted by the Midnight Commander, it is not passed to
2118 the command shell for execution.  Thus it may not handle all of the
2119 nice macro expansion and substitution that your shell does, although it
2120 does some of them:
2122 .I Tilde substitution.
2123 The (~) will be substituted with your home directory, if you append a
2124 username after the tilde, then it will be substituted with the login
2125 directory of the specified user.
2127 For example, ~guest is the home directory for the user guest, while
2128 ~/guest is the directory guest in your home directory.
2130 .I Previous directory.
2131 You can jump to the directory you were previously by using the special
2132 directory name '\-' like this:
2133 .B cd \-
2135 .I CDPATH directories.
2136 If the directory specified to the
2137 .B cd
2138 command is not in the current directory, then The Midnight Commander
2139 uses the value in the environment variable
2140 .B CDPATH
2141 to search for the directory in any of the named directories.
2143 For example you could set your
2144 .B CDPATH
2145 variable to ~/src:/usr/src, allowing you to change your directory to
2146 any of the directories inside the ~/src and /usr/src directories, from
2147 any place in the file system by using its relative name (for example
2148 cd linux could take you to /usr/src/linux).
2149 .\"NODE "  Macro Substitution"
2150 .SH "  Macro Substitution"
2151 When accessing a
2152 .\"LINK2"
2153 user menu\&,
2154 .\"Menu File Edit"
2155 or executing an
2156 .\"LINK2"
2157 extension dependent command\&,
2158 .\"Extension File Edit"
2159 or running a command from the command line input, a simple macro
2160 substitution takes place.
2162 The macros are:
2164 .I %i
2165 The indent of blank space, equal the cursor column position.  For edit
2166 menu only.
2168 .I %y
2169 The syntax type of current file. For edit menu only.
2171 .I %k
2172 The block file name.
2174 .I %e
2175 The error file name.
2177 .I %m
2178 The current menu name.
2180 .IR %f " and " %p
2181 The current file name.
2183 .I %x
2184 The extension of current file name.
2186 .I %b
2187 The current file name without extension.
2189 .I %d
2190 The current directory name.
2192 .I %F
2193 The current file in the unselected panel.
2195 .I %D
2196 The directory name of the unselected panel.
2198 .I %t
2199 The currently tagged files.
2201 .I %T
2202 The tagged files in the unselected panel.
2204 .IR %u " and " %U
2205 Similar to the %t and %T macros, but in addition the files are untagged.
2206 You can use this macro only once per menu file entry or extension file
2207 entry, because next time there will be no tagged files.
2209 .IR %s " and " %S
2210 The selected files: The tagged files if there are any. Otherwise the
2211 current file.
2213 .I %cd
2214 This is a special macro that is used to change the current directory
2215 to the directory specified in front of it.  This is used primarily as
2216 an interface to the
2217 .\"LINK2"
2218 Virtual File System\&.
2219 .\"Virtual File System"
2221 .I %view
2222 This macro is used to invoke the internal viewer.  This macro can be
2223 used alone, or with arguments.  If you pass any arguments to this
2224 macro, they should be enclosed in brackets.
2226 The arguments are:
2227 .I ascii
2228 to force the viewer into ascii mode;
2229 .I hex
2230 to force the viewer into hex mode;
2231 .I nroff
2232 to tell the viewer that it should interpret the bold and underline
2233 sequences of nroff;
2234 .I unformatted
2235 to tell the viewer to not interpret nroff commands for making the text
2236 bold or underlined.
2238 .I %%
2239 The % character
2241 .I %{some text}
2242 Prompt for the substitution. An input box is shown and the text inside
2243 the braces is used as a prompt. The macro is substituted by the text
2244 typed by the user. The user can press ESC or F10 to cancel. This macro
2245 doesn't work on the command line yet.
2247 .I %var{ENV:default}
2248 If environment variable
2249 .I ENV
2250 is unset, the
2251 .I default
2252 is substituted.  Otherwise, the value of
2253 .I ENV
2254 is substituted.
2255 .\"NODE "  The subshell support"
2256 .SH "  The subshell support"
2257 The subshell support is a compile time option, that works with the
2258 shells: bash, tcsh and zsh.
2260 When the subshell code is activated the Midnight Commander will
2261 spawn a concurrent copy of your shell (the one defined in the
2262 .B SHELL
2263 variable and if it is not defined, then the one in the /etc/passwd
2264 file) and run it in a pseudo terminal, instead of invoking a new shell
2265 each time you execute a command, the command will be passed to the
2266 subshell as if you had typed it.  This also allows you to change the
2267 environment variables, use shell functions and define aliases that are
2268 valid until you quit the Midnight Commander.
2270 If you are using
2271 .B bash
2272 you can specify startup
2273 commands for the subshell in your ~/.mc/bashrc file and
2274 special keyboard maps in the ~/.mc/inputrc file.
2275 .B tcsh
2276 users may specify startup commands in the ~/.mc/tcshrc file.
2278 When the subshell code is used, you can suspend applications at any
2279 time with the sequence C\-o and jump back to the Midnight Commander, if
2280 you interrupt an application, you will not be able to run other
2281 external commands until you quit the application you interrupted.
2283 An extra added feature of using the subshell is that the prompt
2284 displayed by the Midnight Commander is the same prompt that you are
2285 currently using in your shell.
2288 .\"LINK2"
2289 OPTIONS
2290 .\"OPTIONS"
2291 section has more information on how you can control the subshell code.
2292 .\"NODE "Chmod"
2293 .SH "Chmod"
2294 The Chmod window is used to change the attribute bits in a group of
2295 files and directories.  It can be invoked with the C\-x c key combination.
2297 The Chmod window has two parts \-
2298 .I Permissions
2300 .IR File .
2302 In the File section are displayed the name of the file or directory
2303 and its permissions in octal form, as well as its owner and group.
2305 In the Permissions section there is a set of check buttons which
2306 correspond to the file attribute bits.  As you change the attribute
2307 bits, you can see the octal value change in the File section.
2309 To move between the widgets (buttons and check buttons) use the
2310 .I arrow keys
2311 or the
2312 .I Tab
2313 key.  To change the state of the check buttons or to select a button
2315 .I Space.
2316 You can also use the hotkeys on the buttons to quickly activate them.
2317 Hotkeys are shown as highlighted letters on the buttons.
2319 To set the attribute bits, use the Enter key.
2321 When working with a group of files or directories, you just click on
2322 the bits you want to set or clear.  Once you have selected the bits
2323 you want to change, you select one of the action buttons (Set marked
2324 or Clear marked).
2326 Finally, to set the attributes exactly to those specified, you can use
2328 .B [Set all]
2329 button, which will act on all the tagged files.
2331 .B [Marked all]
2332 set only marked attributes to all selected files
2334 .B [Set marked]
2335 set marked bits in attributes of all selected files
2337 .B [Clean marked]
2338 clear marked bits in attributes of all selected files
2340 .B [Set]
2341 set the attributes of one file
2343 .B [Cancel]
2344 cancel the Chmod command
2345 .\"NODE "Chown"
2346 .SH "Chown"
2347 The Chown command is used to change the owner/group of a file. The hot
2348 key for this command is C\-x o.
2349 .\"NODE "Advanced Chown"
2350 .SH "Advanced Chown"
2351 The Advanced Chown command is the
2352 .\"LINK2"
2353 Chmod
2354 .\"Chmod"
2356 .\"LINK2"
2357 Chown
2358 .\"Chown"
2359 command combined into one window. You can change the permissions and
2360 owner/group of files at once.
2361 .\"NODE "File Operations"
2362 .SH "File Operations"
2363 When you copy, move or delete files the Midnight Commander shows the
2364 file operations dialog.  It shows the files currently being processed
2365 and uses up to three progress bars.  The file bar indicates the
2366 percentage of the current file that has been processed so far.  The
2367 count bar shows how many of the tagged files have been handled.  The
2368 bytes bar indicates the percentage of the total size of the tagged files
2369 that has been handled.  If the verbose option is off, the file and bytes
2370 bars are not shown.
2372 There are two buttons at the bottom of the dialog. Pressing the Skip
2373 button will skip the rest of the current file. Pressing the Abort
2374 button will abort the whole operation, the rest of the files are
2375 skipped.
2377 There are three other dialogs which you can run into during the file
2378 operations.
2380 The error dialog informs about error conditions and has three choices.
2381 Normally you select either the Skip button to skip the file or the Abort
2382 button to abort the operation altogether.  You can also select the Retry
2383 button if you fixed the problem from another terminal.
2385 The replace dialog is shown when you attempt to copy or move a file on
2386 the top of an existing file.  The dialog shows the dates and sizes of
2387 the both files.  Press the Yes button to overwrite the file, the No
2388 button to skip the file, the All button to overwrite all the files, the
2389 None button to never overwrite and the Update button to overwrite if the
2390 source file is newer than the target file.  You can abort the whole
2391 operation by pressing the Abort button.
2393 The recursive delete dialog is shown when you try to delete a directory
2394 which is not empty.  Press the Yes button to delete the directory
2395 recursively, the No button to skip the directory, the All button to
2396 delete all the directories and the None button to skip all the non\-empty
2397 directories.  You can abort the whole operation by pressing the Abort
2398 button.  If you selected the Yes or All button you will be asked for a
2399 confirmation.  Type "yes" only if you are really sure you want to do the
2400 recursive delete.
2402 If you have tagged files and perform an operation on them only the files
2403 on which the operation succeeded are untagged. Failed and skipped files
2404 are left tagged.
2405 .\"NODE "Mask Copy/Rename"
2406 .SH "Mask Copy/Rename"
2407 The copy/move operations let you translate the names of files in an
2408 easy way.  To do it, you have to specify the correct source mask and
2409 usually in the trailing part of the destination specify some wildcards.
2410 All the files matching the source mask are copied/renamed according to
2411 the target mask.  If there are tagged files, only the tagged files
2412 matching the source mask are renamed.
2414 There are other options which you can set:
2416 .B Follow links
2418 determines whether make the symlinks and hardlinks in the source
2419 directory (recursively in subdirectories) new links in the target
2420 directory or whether would you like to copy their content.
2422 .B Dive into subdirs
2424 determines the behavior when the source directory is about to be copied,
2425 but the target directory already exists.  The default action is to copy
2426 the contents of the source directory into the target directory.
2427 Enabling this option causes copying the source directory itself into the
2428 target directory.
2430 For example, you want to copy directory
2431 .I /foo
2432 containing file
2433 .I bar
2435 .IR /bla/foo ,
2436 which is an already existing directory.  Normally (when
2437 .B Dive into subdirs
2438 is not set), mc would copy file
2439 .I /foo/bar
2440 into the file
2441 .IR /bla/foo/bar .
2442 By enabling this option the
2443 .I /bla/foo/foo
2444 directory will be created, and
2445 .I /foo/bar
2446 will be copied into
2447 .IR /bla/foo/foo/bar .
2449 .B Preserve attributes
2451 determines whether to preserve the permissions, timestamps and (if you
2452 are root) the ownership of the original files.  If this option is not
2453 set, the current value of the umask will be respected.
2455 .B Use shell patterns on
2457 When the shell patterns option is on you can use the '*' and '?'
2458 wildcards in the source mask.  They work like they do in the shell.  In
2459 the target mask only the '*' and '\\<digit>' wildcards are allowed.  The
2460 first '*' wildcard in the target mask corresponds to the first wildcard
2461 group in the source mask, the second '*' corresponds to the second group
2462 and so on.  The '\\1' wildcard corresponds to the first wildcard group
2463 in the source mask, the '\\2' wildcard corresponds to the second group
2464 and so on all the way up to '\\9'.  The '\\0' wildcard is the whole
2465 filename of the source file.
2467 Two examples:
2469 If the source mask is "*.tar.gz", the destination is "/bla/*.tgz" and the
2470 file to be copied is "foo.tar.gz", the copy will be "foo.tgz" in "/bla".
2472 Suppose you want to swap basename and extension so that "file.c" would
2473 become "c.file" and so on.  The source mask for this is "*.*" and the
2474 destination is "\\2.\\1".
2476 .B Use shell patterns off
2478 When the shell patterns option is off the MC doesn't do automatic
2479 grouping anymore. You must use '\\(...\\)' expressions in the source
2480 mask to specify meaning for the wildcards in the target mask. This is
2481 more flexible but also requires more typing. Otherwise target masks
2482 are similar to the situation when the shell patterns option is on.
2484 Two examples:
2486 If the source mask is "^\\(.*\\)\\.tar\\.gz$", the destination is
2487 "/bla/*.tgz" and the file to be copied is "foo.tar.gz", the copy
2488 will be "/bla/foo.tgz".
2490 Let's suppose you want to swap basename and extension so that "file.c"
2491 will become "c.file" and so on. The source mask for this is
2492 "^\\(.*\\)\\.\\(.*\\)$" and the destination is "\\2.\\1".
2494 .B Case Conversions
2496 You can also change the case of the filenames.  If you use '\\u'
2497 or '\\l' in the target mask, the next character will be converted to
2498 uppercase or lowercase correspondingly.
2500 If you use '\\U' or '\\L' in the target mask, the next characters will
2501 be converted to uppercase or lowercase correspondingly up to the
2502 next '\\E' or next '\\U', '\\L' or the end of the file name.
2504 The '\\u' and '\\l' are stronger than '\\U' and '\\L'.
2506 For example, if the source mask is '*' (shell patterns on) or '^\\(.*\\)$'
2507 (shell patterns off) and the target mask is '\\L\\u*' the file names
2508 will be converted to have initial upper case and otherwise lower case.
2510 You can also use '\\' as a quote character. For example, '\\\\' is
2511 a backslash and '\\*' is an asterisk.
2512 .\"NODE "Select/Unselect Files"
2513 .SH "Select/Unselect Files"
2514 The dialog of group of files and directories selection or uselection.
2516 .\"LINK2"
2517 input line
2518 .\"Input Line Keys"
2519 allow enter the regular expression of filenames that will be
2520 selected/unselected.
2522 When
2523 .I Files only
2524 checkbox is on, only files will be selected.  If
2525 .I Files only
2526 is off, as files as directories will be selected.
2527 When
2528 .I Shell Patterns
2529 checkbox is on, the regular expression is much like the filename globbing
2530 in the shell (* standing for zero or more characters and ?  standing
2531 for one character). If
2532 .I Shell Patterns
2533 is off, then the tagging of files is done with normal regular
2534 expressions (see ed (1)). When
2535 .I Case sensitive
2536 checkbox is on, the selection will be case sensitive characters.
2538 .I Case sensitive
2539 is off, the case will be ignored.
2540 .\"NODE "Internal File Viewer"
2541 .SH "Internal File Viewer"
2542 The internal file viewer provides two display modes: ASCII and hex.
2543 To toggle between modes, use the F4 key.
2545 The viewer will try to use the best method provided by your system or
2546 the file type to display the information.
2547 Some character sequences, which appear most often in preformatted manual
2548 pages, are displayed bold and underlined, thus making a pretty display
2549 of your files.
2551 When in hex mode, the search function accepts text in quotes and
2552 constant numbers.  Text in quotes is matched exactly after removing
2553 the quotes.  Each number matches one byte.  You can mix quoted text
2554 with constants like this:
2557 "String" \-1 0xBB 012 "more text"
2560 Note that 012 is an octal number.  \-1 is converted to 0xFF.
2562 Here is a listing of the actions associated with each key that the
2563 Midnight Commander handles in the internal file viewer.
2565 .B F1
2566 Invoke the built\-in hypertext help viewer.
2568 .B F2
2569 Toggle the wrap mode.
2571 .B F4
2572 Toggle the hex mode.
2574 .B F5
2575 Goto line.  This will prompt you for a line number and will display
2576 that line.
2578 .B F6, /.
2579 Regular expression search.
2581 .B ?,
2582 Reverse regular expression search.
2584 .B F7
2585 Normal search / hex mode search.
2587 .B C\-s, F17, n.
2588 Start normal search if there was no previous search expression else
2589 find next match.
2591 .B C\-r.
2592 Start reverse search if there was no previous search expression else
2593 find next match.
2595 .B F8
2596 Toggle Raw/Parsed mode: This will show the file as found on disk or if
2597 a processing filter has been specified in the mc.ext file, then the
2598 output from the filter. Current mode is always the other than written
2599 on the button label, since on the button is the mode which you enter
2600 by that key.
2602 .B F9
2603 Toggle the format/unformat mode: when format mode is on the viewer
2604 will interpret some string sequences to show bold and underline with
2605 different colors. Also, on button label is the other mode than current.
2607 .B F10, Esc.
2608 Exit the internal file viewer.
2610 .B next\-page, space, C\-v.
2611 Scroll one page forward.
2613 .B prev\-page, Alt\-v, C\-b, backspace.
2614 Scroll one page backward.
2616 .B down\-key
2617 Scroll one line forward.
2619 .B up\-key
2620 Scroll one line backward.
2622 .B C\-l
2623 Refresh the screen.
2625 .B C\-o
2626 Switch to the subshell and show the command screen.
2628 .B !
2629 Like C\-o, but run a new shell if the subshell is not running.
2631 .B "[n] m"
2632 Set the mark n.
2634 .B "[n] r"
2635 Jump to the mark n.
2637 .B C\-f
2638 Jump to the next file.
2640 .B C\-b
2641 Jump to the previous file.
2643 .B Alt\-r
2644 Toggle the ruler.
2646 It's possible to instruct the file viewer how to display a file, look
2647 at the
2648 .\"LINK2"
2649 Extension File Edit section
2650 .\"Extension File Edit"
2652 .\"NODE "Internal File Editor"
2653 .SH "Internal File Editor"
2654 The internal file editor is a full\-featured full screen editor.  It can
2655 edit files up to 64 megabytes.  It is possible to edit binary files.
2656 The internal file editor is invoked using
2657 .B F4
2658 if the
2659 .I use_internal_edit
2660 option is set in the initialization file.
2662 The features it presently supports are: block copy, move, delete, cut,
2663 paste; key for key undo; pull\-down menus; file insertion; macro
2664 commands; regular expression search and replace; shift\-arrow text highlighting
2665 (if supported by the terminal); insert\-overwrite toggle; word wrap;
2666 autoindent; tunable tab size; syntax highlighting for various file
2667 types; and an option to pipe text blocks through shell commands like
2668 indent and ispell.
2670 Sections:
2673 .\"LINK2"
2674 Options of editor in ini-file
2675 .\"Internal File Editor / options"
2678 The editor is very easy to use and requires no tutoring. To see what
2679 keys do what, just consult the appropriate pull\-down menu. Other keys
2680 are: Shift movement keys do text highlighting.
2681 .B Ctrl\-Ins
2682 copies to the file
2683 .B cooledit.clip
2685 .B Shift\-Ins
2686 pastes from cooledit.clip.
2687 .B Shift\-Del
2688 cuts to
2689 .BR cooledit.clip ,
2691 .B Ctrl\-Del
2692 deletes highlighted text. Mouse highlighting also works, and you
2693 can override the mouse as usual by holding down the shift key
2694 while dragging the mouse to let normal terminal mouse highlighting
2695 work.
2697 To define a macro, press
2698 .B Ctrl\-R
2699 and then type out the key
2700 strokes you want to be executed. Press
2701 .B Ctrl\-R
2702 again when finished. You can then assign the macro to any key you
2703 like by pressing that key. The macro is executed when you press
2704 .B Ctrl\-A
2705 and then the assigned key. The macro is also executed if
2706 you press Meta, Ctrl, or Esc and the assigned key, provided that the
2707 key is not used for any other function. Once defined, the macro
2708 commands go into the file
2709 .B .mc/cedit/cooledit.macros
2710 in your home directory. You can delete a macro by deleting the
2711 appropriate line in this file.
2713 .B F19
2714 will format the currently highlighted block (plain text or
2715 .B C
2717 .B C++
2718 code or another). This is controlled by the
2719 file
2720 .B @prefix@/share/mc/edit.indent.rc
2721 which is copied to
2722 .B .mc/cedit/edit.indent.rc
2723 in your home directory the first time you use it.
2725 The editor also displays non\-us characters (160+). When editing
2726 binary files, you should set
2727 .B display bits
2728 to 7 bits in the options menu to keep the spacing clean.
2730 .\"NODE "Internal File Editor / options"
2731 .SH "Options of editor in ini-file"
2733 In this section described some options in ini-file.
2734 Options placed in '[Midnight Commander]' section
2737 .I editor_wordcompletion_collect_entire_file
2738 Search autocomplete candidates in entire of file or just from
2739 begin of file to cursor position (0)
2742 .\"NODE "Completion"
2743 .SH "Completion"
2744 Let the Midnight Commander type for you.
2746 Attempt to perform completion on the text before current position.  MC
2747 attempts completion treating the text as variable (if the text begins
2748 with
2749 .BR $ ),
2750 username (if the text begins with
2751 .BR ~ ),
2752 hostname (if the text begins with
2753 .BR @ )
2754 or command (if you are on the command line in the position where you
2755 might type a command, possible completions then include shell reserved
2756 words and shell built\-in commands as well) in turn.  If none of these
2757 matches, filename completion is attempted.
2759 Filename, username, variable and hostname completion works on all input
2760 lines, command completion is command line specific.  If the completion
2761 is ambiguous (there are more different possibilities), MC beeps and the
2762 following action depends on the setting of the
2763 .I Complete: show all
2764 option in the
2765 .\"LINK2"
2766 Configuration
2767 .\"Configuration"
2768 dialog.  If it is enabled, a list of all possibilities pops up next to
2769 the current position and you can select with the arrow keys and
2770 .B Enter
2771 the correct entry.  You can also type the first letters in which the
2772 possibilities differ to move to a subset of all possibilities and
2773 complete as much as possible.  If you press
2774 .B Alt\-Tab
2775 again, only the subset will be shown in the listbox, otherwise the first
2776 item which matches all the previous characters will be highlighted.  As
2777 soon as there is no ambiguity, dialog disappears, but you can hide it by
2778 canceling keys
2779 .BR Esc ,
2780 .B F10
2781 and left and right arrow keys. If
2782 .\"LINK2"
2783 Complete: show all
2784 .\"Configuration"
2785 is disabled, the dialog pops up only if you press
2786 .B Alt\-Tab
2787 for the second time, for the first time MC just beeps.
2788 .\"NODE "Virtual File System"
2789 .SH "Virtual File System"
2790 The Midnight Commander is provided with a code layer to access the file
2791 system; this code layer is known as the virtual file system switch.  The
2792 virtual file system switch allows the Midnight Commander to manipulate
2793 files not located on the Unix file system.
2795 Currently the Midnight Commander is packaged with some Virtual File
2796 Systems (VFS): the
2797 .I local
2798 file system, used for accessing the regular Unix file system; the
2799 .IR ftpfs ,
2800 used to manipulate files on remote systems with the FTP protocol; the
2801 .IR tarfs ,
2802 used to manipulate tar and compressed tar files; the
2803 .IR undelfs ,
2804 used to recover deleted files on ext2 file systems (the default file
2805 system for Linux systems),
2806 .I fish
2807 (for manipulating files over shell connections such as rsh and ssh) and
2808 finally the
2809 .I mcfs
2810 (Midnight Commander file system), a network based file system.  If the
2811 code was compiled with
2812 .I smbfs
2813 support, you can manipulate files on remote systems with the SMB (CIFS)
2814 protocol.
2816 A generic
2817 .I extfs
2818 (EXTernal virtual File System) is provided in order to easily expand
2819 VFS capabilities using scripts and external software.
2821 The VFS switch code will interpret all of the path names used and will
2822 forward them to the correct file system, the formats used for each one
2823 of the file systems is described later in their own section.
2824 .\"NODE "  FTP File System"
2825 .SH "  FTP File System"
2826 The FTP File System (ftpfs) allows you to manipulate files on remote
2827 machines.  To actually use it, you can use the
2828 .I FTP link
2829 item in the menu or directly change your current directory using the
2830 .I cd
2831 command to a path name that looks like this:
2833 .I /#ftp:[!][user[:pass]@]machine[:port][remote\-dir]
2836 .IR user ,
2837 .I port
2839 .I remote\-dir
2840 elements are optional.  If you specify the
2841 .I user
2842 element, the Midnight Commander will login to the remote machine as that
2843 user, otherwise it will use anonymous login or the login name from the
2844 .I ~/.netrc
2845 file.  The optional
2846 .I pass
2847 element is the password used for the connection.  Using the password in
2848 the VFS directory name is not recommended, because it can appear on the
2849 screen in clear text and can be saved to the directory history.
2851 To enable using FTP proxy, prepend
2852 .B !
2853 (an exclamation sign) to the hostname.
2855 Examples:
2858     /#ftp:ftp.nuclecu.unam.mx/linux/local
2859     /#ftp:tsx\-11.mit.edu/pub/linux/packages
2860     /#ftp:!behind.firewall.edu/pub
2861     /#ftp:guest@remote\-host.com:40/pub
2862     /#ftp:miguel:xxx@server/pub
2865 Please check the
2866 .\"LINK2"
2867 Virtual File System
2868 .\"Virtual FS"
2869 dialog box for ftpfs options.
2870 .\"NODE "  Tar File System"
2871 .SH "  Tar File System"
2872 The tar file system provides you with read\-only access to your tar
2873 files and compressed tar files by using the chdir command.  To change
2874 your directory to a tar file, you change your current directory to the
2875 tar file by using the following syntax:
2877 .I /filename.tar#utar/[dir\-inside\-tar]
2879 The mc.ext file already provides a shortcut for tar files, this means
2880 that usually you just point to a tar file and press return to enter
2881 into the tar file, see the
2882 .\"LINK2"
2883 Extension File Edit
2884 .\"Extension File Edit"
2885 section for details on how this is done.
2887 Examples:
2890     mc\-3.0.tar.gz#utar/mc\-3.0/vfs
2891     /ftp/GCC/gcc\-2.7.0.tar#utar
2894 The latter specifies the full path of the tar archive.
2895 .\"NODE "  FIle transfer over SHell filesystem"
2896 .SH "  FIle transfer over SHell filesystem"
2897 The fish file system is a network based file system that allows you to
2898 manipulate the files in a remote machine as if they were local. To use
2899 this, the other side has to either run fish server, or has to have
2900 bash\-compatible shell.
2902 To connect to a remote machine, you just need to chdir
2903 into a special directory which name is in the following
2904 format:
2906 .I /#sh:[user@]machine[:options]/[remote\-dir]
2909 .I user,
2910 .I options
2912 .I remote\-dir
2913 elements are optional.  If you specify the
2914 .I user
2915 element, the Midnight Commander will try to login on the remote
2916 machine as that user, otherwise it will use your login name.
2919 .I options
2920 are 'C' \- use compression and 'rsh' use rsh instead of ssh.  If the
2921 .I remote\-dir
2922 element is present, your current directory on the remote machine will be
2923 set to this one.
2925 Examples:
2928     /#sh:onlyrsh.mx:r/linux/local
2929     /#sh:joe@want.compression.edu:C/private
2930     /#sh:joe@noncompressed.ssh.edu/private
2932 .\"NODE "  Network File System"
2933 .SH "  Network File System"
2934 The Midnight Commander file system is a network base file system that
2935 allows you to manipulate the files in a remote machine as if they were
2936 local.  To use this, the remote machine must be running the mcserv(8)
2937 server program.
2939 To connect to a remote machine, you just need to chdir into a special
2940 directory which name is in the following format:
2942 .I /#mc:[user@]machine[:port][remote\-dir]
2945 .I user, port
2947 .I remote\-dir
2948 elements are optional.  If you specify the
2949 .I user
2950 element then the Midnight Commander will try to logon on the remote
2951 machine as that user, otherwise it will use your login name.
2954 .I port
2955 element is used when the remote server is running on a special port
2956 (see the mcserv(8) manual page for more information about ports);
2957 finally, if the
2958 .I remote\-dir
2959 element is present, your current directory on the remote machine will
2960 be set to this one.
2962 Examples:
2965     /#mc:ftp.nuclecu.unam.mx/linux/local
2966     /#mc:joe@foo.edu:11321/private
2968 .\"NODE "  Undelete File System"
2969 .SH "  Undelete File System"
2970 On Linux systems, if you asked configure to use the ext2fs undelete
2971 facilities, you will have the undelete file system available.
2972 Recovery of deleted files is only available on ext2 file systems.  The
2973 undelete file system is just an interface to the ext2fs library to
2974 retrieve all of the deleted files names on an ext2fs and provides and
2975 to extract the selected files into a regular partition.
2977 To use this file system, you have to chdir into the special file name
2978 formed by the "/#undel" prefix and the file name where the actual
2979 file system resides.
2981 For example, to recover deleted files on the second partition of the
2982 first SCSI disk on Linux, you would use the following path name:
2985     /#undel:sda2
2988 It may take a while for the undelfs to load the required information
2989 before you start browsing files there.
2990 .\"NODE "  SMB File System"
2991 .SH "  SMB File System"
2992 The smbfs allows you to manipulate files on remote machines with SMB
2993 (or CIFS) protocol.  These include Windows for Workgroups,
2994 Windows 9x/ME/XP, Windows NT, Windows 2000 and Samba.
2995 To actually use it, you may try to use the panel command "SMB link..."
2996 (accessible from the menubar) or you may directly change your current
2997 directory to it using the cd command to a path name that looks like this:
2999 .I /#smb:[user@]machine[/service][/remote\-dir]
3002 .IR user ,
3003 .I service
3005 .I remote\-dir
3006 elements are optional.
3008 .IR user ,
3009 .I domain
3011 .I password
3012 can be specified in an input dialog.
3014 Examples:
3017     /#smb:machine/Share
3018     /#smb:other_machine
3019     /#smb:guest@machine/Public/Irlex
3021 .\"NODE "  EXTernal File System"
3022 .SH "  EXTernal File System"
3023 .B extfs
3024 allows to integrate numerous features and file types into GNU Midnight
3025 Commander in an easy way, by writing scripts.
3027 Extfs filesystems can be divided into two categories:
3029 1. Stand\-alone filesystems, which are not associated with any existing
3030 file.  They represent certain system\-wide data as a directory tree.
3031 You can invoke them by typing
3032 .RI ' "cd #fsname" '
3033 where fsname is an extfs short name (see below).  Examples of such
3034 filesystems include audio (list audio tracks on the CD) or apt (list of
3035 all Debian packages in the system).
3037 For example, to list CD\-Audio tracks on your CD\-ROM drive, type
3040   cd #audio
3043 2. 'Archive' filesystems (like rpm, patchfs and more), which represent
3044 contents of a file as a directory tree.  It can consist of 'real' files
3045 compressed in an archive (urar, rpm) or virtual files, like messages
3046 in a mailbox (mailfs) or parts of a patch (patchfs).  To access such
3047 filesystems
3048 .RI ' #fsname '
3049 should be appended to the archive name.  Note that the archive itself
3050 can be on another vfs.
3052 For example, to list contents of a zip archive documents.zip type
3055   cd documents.zip#uzip
3058 In many aspects, you could treat extfs like any other directory.  For
3059 instance, you can add it to the hotlist or change to it from directory
3060 history.  An important limitation is that you cannot invoke shell
3061 commands inside extfs, just like any other non\-local VFS.
3063 Common extfs scripts included with Midnight Commander are:
3065 .B a
3066 access 'A:' DOS/Windows diskette
3067 .RI ( "cd #a" ).
3069 .B apt
3070 front end to Debian's APT package management system
3071 .RI ( "cd #apt" ).
3073 .B audio
3074 audio CD ripping and playing
3075 .RI ( "cd #audio"
3077 .IR "cd device#audio" ).
3079 .B bpp
3080 package of Bad Penguin GNU/Linux distribution
3081 .RI ( "cd file.bpp#bpp" ).
3083 .B deb
3084 package of Debian GNU/Linux distribution
3085 .RI ( "cd file.deb#deb" ).
3087 .B dpkg
3088 Debian GNU/Linux installed packages
3089 .RI ( "cd #deb" ).
3091 .B hp48
3092 view and copy files to/from a HP48 calculator
3093 .RI ( "cd #hp48" ).
3095 .B lslR
3096 browsing of lslR listings as found on many FTPs
3097 .RI ( "cd filename#lslR" ).
3099 .B mailfs
3100 mbox\-style mailbox files support
3101 .RI ( "cd mailbox#mailfs" ).
3103 .B patchfs
3104 extfs to handle unified and context diffs
3105 .RI ( "cd filename#patchfs" ).
3107 .B rpm
3108 RPM package
3109 .RI ( "cd filename#rpm" ).
3111 .B rpms
3112 RPM database management
3113 .RI ( "cd #rpms" ).
3115 .B ulha, urar, uzip, uzoo, uar, uha
3116 archivers
3117 .RI ( "cd archive#xxxx"
3118 where xxxx is one of:
3119 .IR ulha ,
3120 .IR urar ,
3121 .IR uzip ,
3122 .IR uzoo ,
3123 .IR uar ,
3124 .IR uha ).
3126 You could bind file type/extension to specified extfs as described in the
3127 .\"LINK2"
3128 Extension File Edit
3129 .\"Extension File Edit"
3130 section.  Here is an example entry for Debian packages:
3133   regex/\.deb$
3134           Open=%cd %p#deb
3136 .\"NODE "Colors"
3137 .SH "Colors"
3138 The Midnight Commander will try to detect if your terminal supports
3139 color using the terminal database and your terminal name.  Sometimes
3140 it gets confused, so you may force color mode or disable color mode
3141 using the \-c and \-b flag respectively.
3143 If the program is compiled with the Slang screen manager instead of
3144 ncurses, it will also check the variable
3145 .B COLORTERM,
3146 if it is set, it has the same effect as the \-c flag.
3148 You may specify terminals that always force color mode
3149 by adding the
3150 .I color_terminals
3151 variable to the Colors section of the initialization file.  This will
3152 prevent the Midnight Commander from trying to detect if your terminal
3153 supports color.  Example:
3156 [Colors]
3157 color_terminals=linux,xterm
3158 color_terminals=terminal\-name1,terminal\-name2...
3161 The program can be compiled with both ncurses and slang, ncurses does
3162 not provide a way to force color mode: ncurses uses just the
3163 information in the terminal database.
3165 The Midnight Commander provides a way to change the default colors.
3166 Currently the colors are configured using the environment variable
3167 .B MC_COLOR_TABLE
3168 or the Colors section in the initialization file.
3170 In the Colors section, the default color map is loaded from the
3171 .I base_color
3172 variable.  You can specify an alternate color map for a terminal by
3173 using the terminal name as the key in this section.  Example:
3176 [Colors]
3177 base_color=
3178 xterm=menu=magenta:marked=,magenta:markselect=,red
3181 The format for the color definition is:
3184   <keyword>=<foregroundcolor>,<backgroundcolor>:<keyword>= ...
3187 The colors are optional, and the keywords are: normal, selected, marked,
3188 markselect, errors, input, reverse, gauge.  Menu colors are: menu,
3189 menusel, menuhot, menuhotsel.  Dialog colors are: dnormal, dfocus,
3190 dhotnormal, dhotfocus.  Help colors are: helpnormal, helpitalic,
3191 helpbold, helplink, helpslink.  Viewer color is: viewunderline. Editor
3192 colors are: editnormal, editbold, editmarked.
3194 .I input
3195 determines the color of input lines used in query dialogs.
3197 .I gauge
3198 determines the color of the filled part of the progress bar (gauge),
3199 which is used to show the user the progress of file operations, such as
3200 copying.
3202 The dialog boxes use the following colors:
3203 .I dnormal
3204 is used for the normal text,
3205 .I dfocus
3206 is the color used for the currently selected component,
3207 .I dhotnormal
3208 is the color used to differentiate the hotkey color in normal
3209 components, whereas the
3210 .I dhotfocus
3211 color is used for the highlighted color in the currently selected
3212 component.
3214 Menus use the same scheme but uses the menu, menusel, menuhot and
3215 menuhotsel tags instead.
3217 Help uses the following colors:
3218 .I helpnormal
3219 is used for normal text,
3220 .I helpitalic
3221 is used for text which is emphasized in italic in the manual page,
3222 .I helpbold
3223 is used for text which is emphasized in bold in the manual page,
3224 .I helplink
3225 is used for not selected hyperlinks and
3226 .I helpslink
3227 is used for selected hyperlink.
3229 The possible colors are: black, gray, red, brightred, green,
3230 brightgreen, brown, yellow, blue, brightblue, magenta, brightmagenta,
3231 cyan, brightcyan, lightgray and white. And there is a special keyword
3232 for transparent background. It is 'default'. The 'default' can only be
3233 used for background color. Example:
3236 [Colors]
3237 base_color=normal=white,default:marked=magenta,default
3240 .\"NODE "Skins"
3241 .SH "Skins"
3242 You can change the appearance of Midhight Commander.
3243 To do this, you must specify a file that contain descriptions of colors
3244 and lines to draw boxes. Redefining of the colors is entirely compatible
3245 with the assignment of colors, as described in Section
3246 .\"LINK2"
3247 Colors\&.
3248 .\"Colors"
3250 A skin\-file is searched on the following algorithm (to the first one found):
3253 1) command line option
3254 .B \-S \<skin\>
3256 .B \-\-skin=\<skin\>
3258 2) Environment variable
3259 .B MC_SKIN
3261 3) In config file parameter
3262 .B skin
3263 in section
3264 .B \[Midnight Commander\]
3266 4) File
3267 .B @prefix@/etc/mc/skins/default.ini
3269 5) File
3270 .B @prefix@/share/mc/skins/default.ini
3273 Command line option, environment variable and parameter in config file may
3274 contain the absolute path to the skin\-file (with the extension \.ini
3275 or without it). Search of skin\-file will occur in (to the first one found):
3278 .B ~/.mc/skins/
3281 .B @prefix@/etc/mc/skins/
3284 .B @prefix@/share/mc/skins/
3288 For getting extended info, refer to:
3290 .\"LINK2"
3291 Description of section and parameters
3292 .\"Skins sections"
3294 .\"LINK2"
3295 Color pair definitions
3296 .\"Skins colors"
3298 .\"LINK2"
3299 Draw lines
3300 .\"Skins lines"
3302 .\"LINK2"
3303 Compability
3304 .\"Skins oldcolors"
3307 .\"NODE "  Skins sections"
3308 .SH "  Description of section and parameters"
3310 Section
3311 .B [skin]
3312 contain metainfo for skin\-file. Paramter
3313 .I description
3314 contain short text about skin.
3317 Section
3318 .B [filehighlight]
3319 contain descriptions of color pairs for filenames highlighting.
3320 Name of parameters must be equal to names of sections into
3321 filehighlight.ini file.
3323 .\"LINK2"
3324 Filenames Highlight
3325 .\"Filenames Highlight"
3326 for getting more info.
3329 Section
3330 .B [core]
3331 describes the elements that are used everywhere.
3333 .I _default_
3334 Default color pair. Used in all other sections if they not contain
3335 color definitions
3337 .I selected
3338 cursor
3340 .I marked
3341 selected data
3343 .I markselect
3344 cursor on selected data
3346 .I gauge
3347 color of the filled part of the progress bar
3349 .I input
3350 color of input lines used in query dialogs.
3352 .I reverse
3353 reverse color
3356 Section
3357 .B [dialog]
3358 describes the elements that are placed on dialog windows (except error dialogs).
3360 .I _default_
3361 Default color for this section. Used [core]._default_ if not specified
3363 .I dfocus
3364 Color of active element (in focus)
3366 .I dhotnormal
3367 Color of hotkeys
3369 .I dhotfocus
3370 Color of hotkeys in focused element
3373 Section
3374 .B [error]
3375 describes the elements that are placed on error dialog windows
3377 .I _default_
3378 Default color for this section. Used [core]._default_ if not specified
3380 .I errdhotnormal
3381 Color of hotkeys
3383 .I errdhotfocus
3384 Color of hotkeys in focused element
3387 Section
3388 .B [menu]
3389 describes the elements that are placed on menu. This section describes
3390 system menu (called by F9) and user-defined menus (called by F2 in panels
3391 and by F11 in editor).
3393 .I _default_
3394 Default color for this section. Used [core]._default_ if not specified
3396 .I entry
3397 Color of menu items
3399 .I menuhot
3400 Color of menu hotkeys
3402 .I menusel
3403 Color of active menu item (in focus)
3405 .I menuhotsel
3406 Color of menu hotkeys in focused menu item
3409 Section
3410 .B [help]
3411 describes the elements that are placed on help window.
3413 .I _default_
3414 Default color for this section. Used [core]._default_ if not specified
3416 .I helpitalic
3417 Color pair for element with
3418 .B italic
3419 attribute
3421 .I helpbold
3422 Color pair for element with
3423 .B bold
3424 attribute
3426 .I helplink
3427 Color of links
3429 .I helpslink
3430 Color of active link (on focus)
3433 Section
3434 .B [editor]
3435 describes the colors of elements placed in editor.
3437 .I _default_
3438 Default color for this section. Used [core]._default_ if not specified
3440 .I editbold
3441 Color pair for element with
3442 .B bold
3443 attribute
3445 .I editmarked
3446 Color of selected text
3448 .I editwhitespace
3449 Color of tabs and trailing spaces highlighting
3451 .I linestate
3452 Color for line state area
3455 Section
3456 .B [viewer]
3457 describes the colors of elements placed in viewer.
3459 .I viewunderline
3460 Color pair for element with
3461 .B underline
3462 attribute
3464 .\"NODE "  Skins colors"
3465 .SH "  Color pair definitions"
3466 Any parameter in skin\-file contain definition of color pair.
3468 Color pairs described as two colors separated by ';'. First color
3469 sets the foreground color, second color sets background color.
3470 One of the colors may be omitted, in this case color will be
3471 taken from default color pair (global color pair  or
3472 from default color pair of this section).
3474 Example:
3477 [core]
3478     # green on black
3479     _default_=green;black
3480     # green (default)  on blue
3481     selected=;blue
3482     # yellow on black (default)
3483     marked=yellow;
3487 Possible colors (names) described in
3488 .\"LINK2"
3489 Colors\&.
3490 .\"Colors"
3491 section.
3493 .\"NODE "  Skins lines"
3494 .SH "  Draw lines"
3495 Lines sets in section
3496 .B [Lines]
3497 into skin\-file. By default single lines are used, but you may redefine
3498 to usage of any utf\-8 symbols (like to lines, for example).
3500 .I WARNING!!!
3501 When you build Midnight Commander with the Ncurses screen library
3502 usage of drawing lines is limited!
3503 Possible only drawing a single lines.
3504 For all questions and comments please contact the developers of Ncurses.
3507 Descriptions of parameters
3508 .BR [Lines] :
3510 .I lefttop
3511 left-top line fragment.
3513 .I righttop
3514 right-top line fragment.
3516 .I centertop
3517 down branch of horizontal line
3519 .I centerbottom
3520 up branch of horizontal line
3522 .I leftbottom
3523 left-bottom line fragment
3525 .I rightbottom
3526 right-bottom line fragment
3528 .I leftmiddle
3529 right branch of vertical line
3531 .I rightmiddle
3532 left branch of vertical line
3534 .I centermiddle
3535 cross of lines
3537 .I horiz
3538 horizontal line
3540 .I vert
3541 vertical line
3543 .I thinhoriz
3544 thin horizontal line
3546 .I thinvert
3547 thin vertical line
3550 .\"NODE "  Skins oldcolors"
3551 .SH "  Compability"
3553 Appointment of color  by skin\-files fully compatible with
3554 the appointment of the colors described in
3555 .\"LINK2"
3556 Colors\&.
3557 .\"Colors"
3558 section.
3560 In this case, reassignment of colors has priority over the skin files and is
3561 complementary.
3563 .\"NODE "Filenames Highlight"
3564 .SH "Filenames Highlight"
3565 Section [filehighlight] from current skin\-file contain key names as
3566 highlight groups and values as color pairs. Color pairs is documented
3567 into
3568 .\"LINK2"
3569 Skins
3570 .\"Skins"
3571 section.
3573 Rules of filenames highlight placed in @prefix@/etc/mc/filehighlight.ini file
3574 (~/.mc/filehighlight.ini).
3575 Name of section in this file must be equal to parameters names into
3576 [filehighlight] section (in current skin\-file)
3578 Keys in these groups:
3580 .I type
3581 file type. if present, all other option ignored
3583 .I regexp
3584 regular expression. If present, 'extensions' option ignored
3586 .I extensions
3587 list of extensions of files. Separated by ';' sign.
3589 .I extensions_case
3590 (make sense only with 'extensions' parameter) make 'extensions'
3591 rule case sentitive (true) or not (false).
3593 'type' key may have values:
3595 \- FILE (all files)
3596   \- FILE_EXE
3597 \- DIR (all directories)
3598   \- LINK_DIR
3599 \- LINK (all links except stale link)
3600   \- HARDLINK
3601   \- SYMLINK
3602 \- STALE_LINK
3603 \- DEVICE (all device files)
3604   \- DEVICE_BLOCK
3605   \- DEVICE_CHAR
3606 \- SPECIAL (all special files)
3607   \- SPECIAL_SOCKET
3608   \- SPECIAL_FIFO
3609   \- SPECIAL_DOOR
3613 .\"NODE "Special Settings"
3614 .SH "Special Settings"
3615 Most of the settings of the Midnight Commander can be changed from the
3616 menus. However, there are a small number of settings which can only be
3617 changed by editing the setup file.
3619 These variables may be set in your ~/.mc/ini file:
3621 .I clear_before_exec
3622 By default the Midnight Commander clears the screen before executing a
3623 command.  If you would prefer to see the output of the command at the
3624 bottom of the screen, edit your ~/.mc/ini file and change the value of
3625 the field clear_before_exec to 0.
3627 .I confirm_view_dir
3628 If you press F3 on a directory, normally MC enters that directory.  If
3629 this flag is set to 1, then MC will ask for confirmation before changing
3630 the directory if you have files tagged.
3632 .I ftpfs_retry_seconds
3633 This value is the number of seconds the Midnight Commander will wait
3634 before attempting to reconnect to an FTP server that has denied the
3635 login.  If the value is zero, the login will no be retried.
3637 .I max_dirt_limit
3638 Specifies how many screen updates can be skipped at most in the internal
3639 file viewer.  Normally this value is not significant, because the code
3640 automatically adjusts the number of updates to skip according to the
3641 rate of incoming keystrokes.  However, on very slow machines or
3642 terminals with a fast keyboard auto repeat, a big value can make screen
3643 updates too jumpy.
3645 It seems that setting max_dirt_limit to 10 causes the best behavior,
3646 and that is the default value.
3648 .I mouse_move_pages
3649 Controls whenever scrolling with the mouse is done by pages or line by
3650 line on the panels.
3652 .I mouse_move_pages_viewer
3653 Controls if scrolling with the mouse is done by pages or line by line
3654 on the internal file viewer.
3656 .I old_esc_mode
3657 By default the Midnight Commander treats the ESC key as a key prefix
3658 (old_esc_mode=0).  If this option is set (old_esc_mode=1), the ESC key
3659 will act as a prefix key for one second, and if no extra keys have
3660 arrived, then the ESC key is interpreted as a cancel key (ESC ESC).
3662 .I only_leading_plus_minus
3663 Allow special treatment for '+', '\-', '*' in the command line (select,
3664 unselect, reverse selection) only if the command line is empty.  You
3665 don't need to quote those characters in the middle of the command line.
3666 On the other hand, you cannot use them to change selection when the
3667 command line is not empty.
3669 .I reverse_files_only
3670 Allow revert selection of files only. This variable is on by default.
3671 If on, the reverse selection is applied to files only, not to directories.
3672 The selection of directories is untouched. If off, the reverse
3673 selection is applied to files as well to directories: all unselected
3674 items become selected, and vice versa.
3676 .I panel_scroll_pages
3677 If set (the default), panel will scroll by half the display when the
3678 cursor reaches the end or the beginning of the panel, otherwise it
3679 will just scroll a file at a time.
3681 .I show_output_starts_shell
3682 This variable only works if you are not using the subshell support.
3683 When you use the C\-o keystroke to go back to the user screen, if this
3684 one is set, you will get a fresh shell.  Otherwise, pressing any key
3685 will bring you back to the Midnight Commander.
3687 .I torben_fj_mode
3688 If this flag is set, then the home and end keys will work slightly
3689 different on the panels, instead of moving the selection to the first
3690 and last files in the panels, they will act as follows:
3692 The home key will: Go up to the middle line, if below it; else go to the
3693 top line unless it is already on the top line, in this case it will go
3694 to the first file in the panel.
3696 The end key has a similar behavior: Go down to the middle line, if over
3697 it; else go to the bottom line unless you already are at the bottom
3698 line, in such case it will move the selection to the last file name in
3699 the panel.
3701 .I use_file_to_guess_type
3702 If this variable is on (the default) it will spawn the file command to
3703 match the file types listed on the
3704 .\"LINK2"
3705 mc.ext file\&.
3706 .\"Extension File Edit"
3708 .I xterm_mode
3709 If this variable is on (default is off) when you browse the file system
3710 on a Tree panel, it will automatically reload the other panel with the
3711 contents of the selected directory.
3713 .I fish_directory_timeout
3714 This variable holds the lifetime of a directory cache entry in seconds. The
3715 default value is 900 seconds.
3716 .\"NODE "Terminal databases"
3717 .SH "Terminal databases"
3718 The Midnight Commander provides a way to fix your system terminal
3719 database without requiring root privileges.  The Midnight Commander
3720 searches in the system initialization file (the mc.lib file located in
3721 the Midnight Commander library directory) and in the ~/.mc/ini file for
3722 the section "terminal:your\-terminal\-name" and then for the section
3723 "terminal:general", each line of the section contains a key symbol that
3724 you want to define, followed by an equal sign and the definition for the
3725 key.  You can use the special \\e form to represent the escape character
3726 and the ^x to represent the control\-x character.
3728 The possible key symbols are:
3731 f0 to f20     Function keys f0\-f20
3732 bs            backspace
3733 home          home key
3734 end           end key
3735 up            up arrow key
3736 down          down arrow key
3737 left          left arrow key
3738 right         right arrow key
3739 pgdn          page down key
3740 pgup          page up key
3741 insert        the insert character
3742 delete        the delete character
3743 complete      to do completion
3746 For example, to define the key insert to be the Escape + [ + O + p, you
3747 set this in the ini file:
3750 insert=\\e[Op
3754 Also now you can use
3755 .I extended learn keys.
3756 For example:
3759     ctrl-alt-right=\\e[[1;6C
3760     ctrl-alt-left=\\e[[1;6D
3764 This means that ctrl+alt+left sends a \\e[[1;6D escape sequence
3765 and therefore Midnight Commander interprets "\\e[[1;6D" as Ctrl\-Alt\-Left.
3769 .I complete
3770 key symbol represents the escape sequences used to invoke the completion
3771 process, this is invoked with Alt\-tab, but you can define other keys to do
3772 the same work (on those keyboard with tons of nice and unused keys
3773 everywhere).
3774 .SH ""
3775 .\"NODE "FILES"
3776 .SH "FILES"
3777 Full paths below may vary between installations.  They are also affected
3778 by the MC_DATADIR environment variable.  If it's set, its value is used
3779 instead of @prefix@/share/mc in the paths below.
3781 .I @prefix@/share/mc/mc.hlp
3783 The help file for the program.
3785 .I @prefix@/share/mc/mc.ext
3787 The default system\-wide extensions file.
3789 .I ~/.mc/bindings
3791 User's own extension, view configuration and edit configuration
3792 file.  They override the contents of the system wide files if present.
3794 .I @prefix@/share/mc/mc.ini
3796 The default system\-wide setup for the Midnight Commander, used only if
3797 the user doesn't have his own ~/.mc/ini file.
3799 .I @prefix@/share/mc/mc.lib
3801 Global settings for the Midnight Commander.  Settings in this file
3802 affect all users, whether they have ~/.mc/ini or not.  Currently, only
3803 .\"LINK2"
3804 terminal settings
3805 .\"Terminal databases"
3806 are loaded from mc.lib.
3808 .I ~/.mc/ini
3810 User's own setup. If this file is present then the setup is loaded
3811 from here instead of the system\-wide startup file.
3813 .I @prefix@/share/mc/mc.hint
3815 This file contains the hints displayed by the program.
3817 .I @prefix@/share/mc/mc.menu
3819 This file contains the default system\-wide applications menu.
3821 .I ~/.mc/menu
3823 User's own application menu. If this file is present it is used instead
3824 of the system\-wide applications menu.
3826 .I ~/.mc/Tree
3828 The directory list for the directory tree and tree view features.
3830 .I ./.mc.menu
3832 Local user\-defined menu. If this file is present, it is used instead of
3833 the home or system\-wide applications menu.
3834 .\"SKIP_SECTION"
3835 .SH "LICENSE"
3836 This program is distributed under the terms of the GNU General Public
3837 License as published by the Free Software Foundation. See the built\-in
3838 help for details on the License and the lack of warranty.
3839 .\"NODE "AVAILABILITY"
3840 .SH "AVAILABILITY"
3841 The latest version of this program can be found at
3842 ftp://ftp.gnu.org/gnu/mc/.
3843 .\"NODE "SEE ALSO"
3844 .SH "SEE ALSO"
3845 ed(1), gpm(1), mcserv(8), terminfo(1), view(1), sh(1), bash(1),
3846 tcsh(1), zsh(1).
3849 The Midnight Commander page on the World Wide Web:
3850         http://www.midnight\-commander.org/
3852 .\"NODE "AUTHORS"
3853 .SH "AUTHORS"
3854 Authors and contributors are listed in the AUTHORS file in the source
3855 distribution.
3856 .\"NODE "BUGS"
3857 .SH "BUGS"
3858 See the file TODO in the distribution for information on what remains to
3859 be done.
3861 If you want to report a problem with the program, please send mail to
3862 this address: mc\-devel@gnome.org.
3864 Provide a detailed description of the bug, the version of the program
3865 you are running
3866 .RI ( "mc \-V"
3867 displays this information), the operating system you are running the
3868 program on.  If the program crashes, we would appreciate a stack trace.