mcommander(1)

MCOMMANDER(1) M-Commander MCOMMANDER(1)

НАИМЕНОВАНИЕ

mcommander - консольный двухпанельный файловый менеджер

СИНТАКСИС

mcommander [-abcCdfhPstuUVx] [-l журнал] [каталог1 [каталог2]] [-e [файл] ...] [-v файл]

ОПИСАНИЕ

M-Commander - это консольный двухпанельный файловый менеджер, основанный на GNU Midnight Commander. Архитектура построена вокруг компактного ядра и динамически загружаемых панельных плагинов. Плагины предоставляют единый панельный интерфейс для работы с архивами, удалёнными файловыми системами, репозиториями и другими источниками данных. Для выполнения команд используется встроенный терминал. В состав M-Commander также входят текстовый редактор с подсветкой синтаксиса и программа просмотра с поддержкой текстовых и двоичных форматов.

КЛЮЧИ

Ключи запуска программы M-Commander

-a, --stickchars
Отключить использование графических символов для рисования линий.

-b, --nocolor
Запуск программы в черно-белом режиме экрана.

-c, --color
Включает цветной режим дисплея. Для получения более подробной информации смотрите раздел Цвета.

--configure-options
Выводит опции конфигурирования, с которыми был собран M-Commander.

-d, --nomouse
Отключает поддержку мыши.

-e [файл]
Запустить встроенный редактор. Если параметр "файл" задан, этот файл будет открыт при запуске. Смотрите также mcedit6(1).

-f, --datadir
Выводит на экран определённый в процессе компиляции программы путь к файлам программы M-Commander.

-F, --datadir-info
Выводит на экран расширенную информацию о путях, используемых при работе программы M-Commander.

-g, --oldmouse
Принудительно устанавливает режим мыши "normal tracking". В xterm-совместимых терминалах (например, tmux/screen).

-K файл, --keymap=файл
Задаёт файл клавиатурных команд для переопределения привязки клавиатурных комбинаций к действиям.

--nokeymap
Не загружать клавиатурные комбинации из файла, использовать определённые в исходном коде.

-P файл, --printwd=файл
По окончании работы M-Commander запишет последний текущий каталог в указанный файл. Эту опцию не следует использовать напрямую. Она используется специальной функцией оболочки, которая меняет текущий каталог оболочки на последний каталог, использованный M-Commander.

Для того чтобы эта функция была определена, используйте файл /usr/lib/mcommander/mc6.sh для оболочек bash и zsh, или для оболочки tcsh файл /usr/lib/mcommander/mc6.csh а для оболочки fish соответственно файл /usr/lib/mcommander/mc6.fish

-s, --slow
Включает медленный режим терминала, в котором программа выводит меньше псевдографических символов (в том числе в меню и экранах помощи) и отключается вывод дополнительных (избыточных) сообщений.

-S arg, --skin=arg
Используется для того, чтобы задать другой скин в командной строке. Технология скинов описана в разделе Внешний вид.

-t, --termcap
Используется только в том случае, когда код был скомпилирован с S-Lang и terminfo: в этом случае M-Commander использует значение переменной TERMCAP для получения информации о терминале вместо использования системной базы терминалов.

-u, --nosubshell
Отключает использование альтернативных оболочек shell (имеет смысл только в том случае, когда M-Commander был скомпилирован с поддержкой альтернативной оболочки).

-U, --subshell
Делает возможным использование subshell (имеет смысл только в том случае, когда M-Commander был скомпилирован с поддержкой subshell как опции).

-v file
Запустить встроенную программу просмотра M-Commander-а для просмотра указанного файла. После выхода из режима просмотра вы выходите из M-Commander и оказываетесь в shell.

-V, --version
Отображает версию программы.

-x, --xterm
Запускает программу в режиме xterm. Используется только на терминалах, работающих в режиме xterm (два режима работы экрана и возможность формировать экранирующие последовательности с помощью мыши) (two screen modes, and able to send mouse escape sequences).

-X, --no-x11
Не использовать X11 для получения состояния модификаторов Alt, Ctrl, Shift.

Если в командной строке указаны два каталога, первый будет отображаться в активной панели, второй - в другой панели.

Если указан только один каталог, он будет отображён в активной панели, во второй панели будет отображён каталог, указанный в параметре "other_dir" в файле panels.ini.

Если каталоги не указаны, в активной панели будет отображён текущий каталог, а во второй панели - каталог, указанный в параметре "other_dir" в файле panels.ini.

Главное окно программы

Главное окно программы M-Commander состоит из трёх полей. Два поля, называемые "панелями", идентичны по структуре и обычно отображают перечни файлов и подкаталогов каких-то двух каталогов файловой структуры. Эти каталоги в общем случае различны, хотя, в частности, могут и совпасть. Каждая панель состоит из заголовка, списка файлов и информационной строки.

Третье поле экрана, расположенное в нижней части экрана, содержит командную строку текущей оболочки. В этом же поле (самая нижняя строка экрана) содержится подсказка по использованию функциональных клавиш F1 - F10. Самая верхняя строка экрана содержит строку горизонтального меню. Эта строка может не отображаться на экране; в этом случае доступ к ней можно получить, щёлкнув мышью по верхней рамке или нажав клавишу F9.

Панели M-Commander обеспечивают просмотр одновременно двух каталогов. Одна из панелей является активной в том смысле, что пользователь может выполнять некоторые операции с отображаемыми в этой панели файлами и каталогами. В активной панели подсвечено имя одного из каталогов или файлов, а также выделен цветом заголовок панели в верхней строке. Этот заголовок совпадает с именем отображаемого в данной панели каталога, который является текущим каталогом той оболочки, из которой запущена программа. Вторая панель - пассивна. Почти все операции выполняются в активной панели, то есть в соответствующем (текущем) каталоге. Некоторые операции (типа копирования или переноса файлов) по умолчанию используют каталог, отображаемый в пассивной панели, как место назначения операции. Более подробное описание панелей дано в подразделе Панели каталогов раздела Меню левой и правой панелей и в разделе Меню Файл

Вы можете выполнить любую команду операционной системы или запустить на исполнение любую программу непосредственно из программы M-Commander, просто набрав имя этой команды (программы) в командной строке и нажав клавишу Enter. Прочитайте разделы Командная строка оболочки и Редактирование строк ввода для того, чтобы узнать больше о командной строке.

Поддержка мыши

Программа M-Commander обеспечивает поддержку мыши. Это свойство обеспечивается независимо от того, откуда запущен терминал xterm(1) (даже если xterm запущен на удалённом компьютере, используя соединение через telnet, ssh или rlogin) или если вы работаете за консолью Linux и запущена программа управления мышью gpm.

Если вы щёлкаете мышью на имени файла в одной из панелей, файл выбирается (подсветка перемещается на это имя); если вы щёлкнете правой кнопкой мыши, файл отмечается (или отметка с файла снимается, в зависимости от предыдущего состояния).

Двойной щелчок мыши на имени файла означает попытку запустить файл на исполнение (если это исполняемая программа); либо, если файл расширений содержит программу, ассоциированную с данным расширением, запускается эта программа и ей передаётся на обработку выбранный файл.

Точно также можно выполнить команду, ассоциированную с любой функциональной клавишей, щёлкнув по соответствующей экранной кнопке в самой нижней строке экрана.

По умолчанию скорость эмуляции повторных нажатий на клавишу в случае её удержания (auto repeat rate) составляет 400 миллисекунд. Это значение можно изменить путем изменения параметра mouse_repeat_rate в файле ~/.config/mc6/ini

Если Commander запущен с поддержкой мыши, вы можете обойти Commander и добиться того, что мышь будет вести себя так же, как она ведёт себя по умолчанию (обеспечивая вырезание и вставку текста), если будете удерживать клавишу Shift.

Клавиатурные команды

Некоторые команды в M-Commander вызываются с использованием клавиш Control (иногда обозначается как CTRL или CTL) и Meta (иногда обозначается ALT или даже Compose). В настоящем руководстве будут использоваться следующие сокращения:

C-<символ> означает, что нужно нажать и удерживать клавишу
Control и в это время нажать клавишу <символ>. Так C-f будет означать: нажмите Control и, удерживая её, нажмите (коротким щелчком) клавишу f.

Alt-<символ> означает, что надо удерживать в нажатом состоянии клавишу
Alt или Meta во время нажатия на клавишу <символ>. Если на клавиатуре нет клавиш Alt и Meta, нажмите Esc, отпустите её, а потом нажмите на клавишу <символ>.

S-<символ> означает, что нужно держать в нажатом состоянии клавишу
Shift во время нажатия на клавишу <символ>.

Все строки ввода в M-Commander по умолчанию поддерживают соглашения об использовании "горячих" клавиш, принятые в редакторе GNU Emacs.

Вы можете переопределить клавиатурные привязки "горячих" клавиш к командам, как это описано в разделе переопределение клавиатурных команд

Все последующие описания клавиатурных команд относятся к поведению по умолчанию.

Описания клавиатурных команд даются в нескольких разделах помощи. Наиболее важными являются следующие разделы:

В разделе Меню Файл приведены комбинации клавиш, которые служат для вызова команд, перечисленных в меню "Файл". В этом же разделе перечислены команды, ассоциированные с функциональными клавишами. Большинство из этих команд выполняют действия над подсвеченным файлом или группой отмеченных файлов.

В секции Панели каталогов рассказано о клавишах, которые используются для выбора файла или группы файлов как объектов некоторого последующего действия (обычно действия из меню "Файл").

В разделе Командная строка оболочки (Shell) перечисляются команды и комбинации клавиш, которые используются для ввода и редактирования команд в командной строке оболочки. Большая часть этих команд служит для переноса имен файлов и/или имен каталогов в командную строку (чтобы уменьшить трудоемкость ввода) или для доступа к истории команд.

Клавиши редактирования строк ввода используются как при редактировании командной строки, так и других строк ввода, появляющихся в различных запросах программы.

Переопределение клавиатурных команд

То же самое можно сделать и в самой программе, из меню Настройки. Диалог Привязки клавиш показывает все действия с клавишами, на которые они отвечают, меняет их и пишет результат в ~/.config/mc6/keymap.ini, то есть в тот файл, который ищет параметр keymap. Диалог Распознавание клавиш решает другую задачу: он учит программу тем последовательностям, которые терминал шлёт для клавиш, распознанных неверно. Диалог Перехват клавиш показывает, что приходит при нажатии клавиши, и действие, на которое она назначена в текущей карте; с него и стоит начинать, когда привязка как будто не работает.

Клавиатурные команды могут быть прочитаны из внешнего файла. Сначала M-Commander создаёт карту клавиатурных команд из списка, определённого в исходном коде. Затем всегда загружаются два файла /usr/share/mcommander/keymap.ini и /etc/mcommander/keymap.ini, последовательно переопределяя ранее загруженные команды. Свои карты пакет кладёт в /etc/mcommander: keymap.default.ini, keymap.emacs.ini и keymap.vim.ini, причём keymap.ini является ссылкой на карту по умолчанию. Параметр --nokeymap не читает ни одного файла и оставляет привязки из исходного кода.

Поиск файла клавиатурных команд, определённого пользователем, производится по следующему алгоритму (до первого нахождения файла):

1) параметр командной строки -K <файл>, --keymap=<файл>
2) переменная окружения MC_KEYMAP
3) параметр keymap секции [Midnight-Commander]
4) файл ~/.config/mc6/keymap.ini

В первых трёх случаях задаётся либо абсолютный путь, либо название схемы привязки. К названию, которое не оканчивается на .keymap, это расширение добавляется, и файл ищется в следующих каталогах (до первого нахождения):

1) ~/.config/mc6/
2) /usr/share/mcommander/

Из-за этого расширения карты пакета, имена которых оканчиваются на .ini, таким способом выбрать нельзя. Чтобы взять одну из них, скопируйте её или сделайте ссылку на ~/.config/mc6/keymap.ini, который читается последним и не требует параметров:

ln -s /etc/mcommander/keymap.vim.ini ~/.config/mc6/keymap.ini

Разные команды

Имеется несколько действий, ассоциированных с некоторыми комбинациями клавиш, которые не попадают ни в одну из других категорий:

Enter
Если в командной строке (в нижней части экрана) набрано имя какой-либо команды, запускается соответствующая программа (если команды не существует, выдаётся соответствующее сообщение). Если в командной строке нет никакого текста, и если на активной панели подсвечено имя каталога, то M-Commander выполняет переход chdir(2) в выбранный каталог и отображает его содержимое в этой панели; если подсвечен исполняемый файл, то он запускается на выполнение. Наконец, если расширение подсвеченного в активной панели файла совпадает с одним из расширений, указанных в файле расширений, то выполняется команда, связанная с этим расширением.

C-l
Обновляет всю информацию, отображаемую программой M-Commander.

C-x c
Запускает команду Chmod для подсвеченного файла или группы отмеченных файлов.

C-x o
Запускает команду Chown для подсвеченного файла или группы отмеченных файлов.

C-x l
Запускает команду создания жесткой ссылки.

C-x s
Запускает команду создания абсолютной символической ссылки.

C-x v
Запускает команду создания относительной символической ссылки. Для более детальной информации о ссылках смотрите раздел Меню Файл

C-x i
Переводит пассивную панель в режим "Информация".

C-x q
Переводит пассивную панель в режим быстрого просмотра.

C-x !
Выполняется пункт меню "Критерий панелизации".

C-x h
Добавить имя каталога в "Каталоги быстрого доступа".

Alt-!
Выполняет пункт меню "Просмотр вывода команды", который описан подробнее в разделе "Меню "Файл".

Alt-?
Вызов диалогового окна "Поиск файла".

Alt-c
Вызов диалогового окна "Быстрая смена каталога".

C-o
Если M-Commander запущен в консоли Linux или FreeBSD, или через xterm, вам будет показан вывод предыдущей команды. При этом на Linux-консоли M-Commander использует встроенную программу (cons.saver) для сохранения выводимой информации и демонстрации её на экране.

Если M-Commander скомпилирован с поддержкой подоболочки (subshell), вы можете в процессе выполнения приложения из-под M-Commander в любой момент набрать C-o и вернуться к главному экрану M-Commander-а. Для возврата к вашему приложению достаточно снова набрать C-o. Если вы застопорите выполнение приложения, использовав этот приём, вы не сможете запустить других программ из M-Commander пока отложенное приложение не закончит работу, либо пока вы не прервете его выполнение.

Панели каталогов

В настоящем разделе перечисляются команды, которые позволяют оперировать с содержимым панелей. Если вы хотите узнать, как изменить вид панели или способ представления информации на панели, смотрите раздел Меню левой и правой панелей.

Tab, C-i
Сменить текущую (активную) панель. Подсветка перемещается с панели, которая была активной ранее, в другую панель, которая становится активной.

Insert, C-t
Чтобы отметить файл, на который указывает в данный момент подсветка, используйте клавишу Insert (the kich1 terminfo sequence). Для снятия отметки с файла используются те же комбинации.

Alt-e
Чтобы поменять кодировку панели, используйте комбинацию Alt-e (M-e). Перекодировка производится из выбранной кодировки в системную. Для отмены перекодировки выберите "Без перекодировки" в диалоге выбора кодировок.

Alt-g, Alt-r, Alt-j
Используются для перемещения подсветки, соответственно, на самый верхний, средний или нижний файл из числа отображаемых в данный момент на панели.

Alt-t
Циклически переключает режимы отображения списка файлов текущего каталога. С помощью этой комбинации клавиш можно быстро переключаться из режима стандартного вывода (long listing) к сокращенному или к режиму, определяемому пользователем.

C-\ (control-backslash)
Показать "Каталоги быстрого доступа" и перейти к выбранному каталогу.

+ (plus)
Эта клавиша используется для того, чтобы выбрать (отметить) группу файлов по регулярному выражению, задающему эту группу. Когда включена опция Только файлы, то выделены будут только файлы. Если опция Только файлы, выключена, то выделены будут как файлы, так и каталоги. Если включена опция Образцы в стиле shell, регулярные выражение строятся по тем же правилам, которые действуют в оболочке shell ('*' означает ноль или большее число любых символов, а '?' заменяет один произвольный символ). Если опция Образцы в стиле shell выключена, то пометка файлов производится по правилам обработки нормальных регулярных выражений (смотрите ed (1)). Если включена опция С учётом регистра то пометка файлов и каталогов будет производиться с учётом регистра символов имён. Если опция С учётом регистра выключена, то регистр символов учитываться не будет.

\ (backslash) Клавиша "\" снимает отметку с группы файлов, то есть производит действие, обратное тому, которое вызывается по клавише "+".

Up, C-p
Перемещает подсветку на предыдущую позицию в списке файлов панели.

Down, C-n
Перемещает подсветку на следующую позицию в списке файлов панели.

Home, a1, Alt-<
Перемещает подсветку на первую позицию списка файлов.

End, c1, Alt->
Перемещает подсветку на последнюю позицию списка файлов.

PageDown, C-v
Перемещает подсветку на одну страницу вниз.

PageUp, Alt-v
Перемещает подсветку на одну страницу вверх.

Alt-(, Alt-)
Прокручивает длинные имена файлов направо или налево.

Alt-o
Если выделенным элементом активной панели является каталог, установить этот каталог текущим в неактивной панели и перейти к следующему файлу. Если выделенным элементом активной панели является не каталог, установить родительский каталог текущим в неактивной панели и также перейти к следующему файлу.

Alt-i
Сделать текущий каталог активной панели также текущим каталогом неактивной панели. Если необходимо, перевести неактивную панель в режим отображения списка файлов. Если активная панель находится в режиме панелизации, неактивная панель в этот режим не переводится.

C-PageUp, C-PageDown
Только если mcommander запущен с консоли Linux: выполняется, соответственно, переход (chdir) к родительскому каталогу ("..") или к выделенному подсветкой каталогу.

Alt-y
Перемещение к предыдущему каталогу из истории перемещения по каталогам; эквивалентно нажатию мышкой на символ '<' в верхнем углу панели.

Alt-u
Перемещение к следующему каталогу из истории перемещения по каталогам; эквивалентно нажатию мышкой на символ '>'.

Alt-S-h, Alt-H
Отображает историю перемещения по каталогам; эквивалентно нажатию мышкой на символ 'v' в верхнем углу панели.

Быстрый поиск и быстрый фильтр

Режим быстрого поиска позволяет быстро найти нужный файл в каталоге, отображённом в файловой панели, по первым символам имени. Для перехода в режим быстрого поиска используются клавиатурные сочетания C-s или Alt-s. Сочетание Alt-Shift-s включает быстрый фильтр: он использует ту же строку поиска, но скрывает элементы, имена которых её не содержат. Запись родительского каталога .. остаётся видимой всегда.

После включения быстрого поиска или фильтра вводимые символы отображаются не в командной строке, а в общей строке поиска. Если режим Показ мини-статуса включен, эта строка отображается на месте строки мини-статуса. В процессе ввода последующих символов линия подсветки перемещается к следующему файлу, название которого начинается с введённой строки символов; в режиме быстрого фильтра список одновременно сокращается до совпадающих элементов. Клавиши Backspace или DEL могут использоваться для исправления ошибок.

Нажатие C-s или Alt-s при включённом быстром фильтре переключает его на быстрый поиск, показывает полный список и сохраняет строку поиска и текущий файл. Нажатие Alt-Shift-s в режиме быстрого поиска снова включает фильтр. Повторное нажатие комбинации активного режима переходит к следующему совпадению.

Клавиши навигации перемещают курсор внутри отфильтрованного списка, не закрывая фильтр. Файлы можно помечать и снимать с них отметки; отметки сохраняются после переключения режима или закрытия фильтра.

Двойное нажатие комбинации при запуске любого из режимов восстанавливает строку предыдущего поиска или фильтра.

Кроме обычных символов в имени файла также можно использовать символы маски '*' и '?'.

Командная строка оболочки

В этом разделе перечислены команды, которые позволяют сократить число нажатий на клавиши во время ввода и редактирования команд в командной строке.

Alt-Enter
Копирует подсвеченное имя файла или каталога в командную строку.

C-Enter
То же самое, что Alt-Enter, но работает только на консоли Linux.

Alt-Tab
Пытается выполнить операцию Завершение ввода (completion) имени файла, названия команды, переменной, имени пользователя или имени машины (в зависимости от того, что вы начали набирать и какой элемент команды вводите).

C-x t, C-x C-t
Копирует в командную строку имена помеченных файлов (или подсвеченное имя, если нет помеченных) из активной панели (C-x t) или пассивной панели (C-x C-t).

C-x p, C-x C-p
Первая комбинация клавиш копирует в командную строку имя текущего каталога, а вторая - имя каталога, отображаемого в пассивной панели.

C-q
Эта команда (the quote command) используется для того, чтобы вставить символы, которые каким-то образом интерпретируются самим M-Commander-ом (например, символ '+').

Alt-p, Alt-n
Эти комбинации используются для перемещения по истории команд. Alt-p вызывает перемещение на команду назад по списку ранее запускавшихся команд, а Alt-n - перемещение на одну команду вперёд.

Alt-h
Выводит историю текущей строки ввода (для командной строки - историю команд).

Клавиши управления перемещением

Встроенная программа просмотра файлов, программа просмотра подсказки и программа просмотра каталогов используют один и тот же программный код для управления перемещением. Следовательно, для перемещения используются одни и те же комбинации клавиш. Но в каждой подпрограмме имеются и комбинации, применяющиеся только в ней.

Другие части M-Commander-а тоже используют некоторые из комбинаций клавиш управления перемещением, так что настоящая секция руководства может быть также полезна при изучении этих частей.

Up, C-p
Перемещение на одну строку назад или вверх

Down, C-n
Перемещение на одну строку вперёд

PageUp, Alt-v
Перемещение на одну страницу назад

PageDown, C-v
Перемещение на одну страницу вперёд

Home, A1
Перемещение к началу.

End, C1
Перемещение к концу.

Программы просмотра файлов и помощи воспринимают в дополнение к
перечисленным ещё и следующие комбинации:

b, C-b, C-h, Backspace, Delete
Перемещение на одну страницу назад

Space bar
Перемещение на одну страницу вперёд

u, d
Перемещение на половину страницы назад или вперёд.

g, G
Перемещение к началу или к концу файла.

Редактирование строк ввода

Строки ввода (это не только командная строка оболочки, но и строки в диалоговых окнах различных подпрограмм) воспринимают следующие управляющие комбинации:

C-a
Перемещает курсор в началу строки.

C-e
Перемещает курсор в конец строки.

C-b, Left
Перемещает курсор на одну позицию влево.

C-f, Right
Перемещает курсор на одну позицию вправо.

Alt-f
Перемещает курсор на одно слово вперёд.

Alt-b
Перемещает курсор на одно слово назад.

C-h, Backspace
Удаляет символ, предшествующий курсору.

C-d, Delete
Удаляет символ в позиции курсора.

C-@
Устанавливает метку для того, чтобы вырезать (скопировать в буфер) часть текста.

C-w
Копирует текст, расположенный между курсором и меткой, в буфер, удаляя текст из строки ввода.

Alt-w
Копирует текст, расположенный между курсором и меткой, в буфер.

C-y
Вставляет содержимое буфера в строку ввода перед позицией курсора.

C-k
Удаляет текст от курсора до конца строки.

Ctrl-Insert
Копирует выделенный текст в файл обмена и во внешний буфер обмена. Если ничего не выделено: отмеченные файлы панели, по одному на строку; иначе вся строка; иначе файл под курсором панели.

Shift-Delete
Вырезает выделенный текст в файл обмена и во внешний буфер обмена.

Shift-Insert
Вставляет файл обмена в строку одной строкой: переводы строк и другие управляющие символы становятся пробелами. В командной строке работает и с поднятыми, и с убранными панелями. Больше 2 Кбайт текста вставляется только после подтверждения.

Alt-p, Alt-n
Эти комбинации используются для перемещения по истории команд. Alt-p перемещает к предыдущей команде, Alt-n - к следующей.

Alt-C-h, Alt-Backspace
Удалить предшествующее слово.

Alt-Tab
Пытается выполнить завершение ввода (completion) имени файла, команды, переменной, имени пользователя или имени машины.

Главное меню программы M-Commander

Строка главного меню появляется в верхней части экрана после нажатия клавиши F9 или щелчка мыши по верхней рамке экрана. Меню состоит из шести пунктов: "Левая", "Файл", "Атрибуты", Команды", Настройки" и "Правая". При выборе одного из этих пунктов появляется соответствующее выпадающее меню.

Пункты меню "Левая" и "Правая " ("Верхняя" и "Нижняя") позволяют изменить вид, соответственно, левой и правой (или верней и нижней) панелей и характер отображаемой в панели информации, в частности, выполнить соединения с удалёнными компьютерами.

Меню "Файл" позволяет выполнить какие-то действия с выбранным файлом или группой помеченных файлов.

Меню "Атрибуты" собирает команды, которые меняют права доступа, владельца и флаги файловой системы тех же файлов.

Меню "Команды" перечисляет действия, которые имеют более общий характер и не относятся только к выделенному в данный момент файлу или группе помеченных файлов.

Меню "Настройки" служит для задания ряда параметров, определяющих внешний вид и поведение программы M-Commander. Один из пунктов этого меню служит для сохранения настроек, заданных пользователем.

Меню левой и правой (или верхней и нижней) панелей

Вид панелей, в которых отображаются списки файлов и каталогов, может быть изменен через пункты меню Левая (или Верхняя ) и Правая (или Нижняя ).

Формат списка...

Этот пункт меню предназначен для определения формата вывода списка файлов в панели. Вы можете выбрать один из 4 вариантов представления списка файлов: Стандартный, Укороченный, Расширенный и Определяемый пользователем.

В стандартном формате отображаются имя файла, его размер и время последней модификации.

В укороченном (brief) формате отображаются только имена файлов, расположенные в несколько колонок (от 1 до 9), за счет чего на панели видно в несколько раз больше имен.

В расширенном (long) формате содержимое каталога представляется так, как это делает команда ls -l. В этом формате панель занимает весь экран.

Если вы выберете формат "Определяемый пользователем" ("User"), вы должны будете задать структуру отображаемой информации.

При задании структуры вначале указывается размер панели: "half" (половина экрана) или "full" (весь экран).

После размера панели можно указать, что на панели должно быть две колонки. Это делается добавлением цифры 2 в строку задания формата.

Далее надо перечислить имена полей с необязательным параметром ширины поля. В качестве имен полей могут использоваться:

name
отображать имя файла.

size
отображать размер файла.

bsize
отображать размер в альтернативной форме, при которой выводятся размеры файлов, а для каталогов выводится только надпись "ПОД-КАТ" ("SUB-DIR") или "ВВЕРХ" ("UP--DIR").

type
отображать односимвольное поле типа. Этот символ может принимать значения из подмножества символов, выводимых командой ls -F: * (asterisk) для исполняемых файлов, / (slash) для каталогов, @ (at-sign) для ссылок (links), = (знак равенства) для сокетов (sockets), - дефис (hyphen) для байт-ориентированных устройств, + для блок-ориентированных устройств, | (pipe) для файлов типа FIFO, ~ (тильда) для символических ссылок на каталоги, ! (восклицательный знак) для оборванных (stale) символических ссылок (ссылок, указывающих в никуда).

mark
Звёздочка (asterisk) если файл помечен, пробел - если не помечен.

mtime
время последней модификации файла.

atime
время последнего доступа к файлу.

ctime
время последнего изменения файла.

perm
строка, показывающая текущие права доступа к файлу.

mode
восьмеричное представление текущих прав доступа к файлу.

число ссылок на данный файл.

ngid
идентификатор группы (GID, в цифровой форме).

nuid
идентификатор пользователя (UID, в цифровой форме).

owner
владелец файла.

group
группа, имеющая права на файл.

inode
номер inode файла.

Вы также можете использовать следующие имена полей для организации вывода информации на дисплей:

space
Вставить пробел при выводе на дисплей.

|
Вставить вертикальную линию при выводе на дисплей.

Для того чтобы задать фиксированную ширину поля, нужно добавить двоеточие ':', после которого указать число позиций, которое отводится под это поле. Если после числа поставить символ '+', то указанное число будет интерпретироваться как минимальная ширина поля, и, если экран позволяет, поле будет расширено.

Например, Стандартный формат вывода задаётся строкой:

half type name | size | mtime

а Расширенный - строкой:

full perm space nlink space owner space group space size space mtime space name

А вот пример удобного формата, определяемого пользователем:

half name | size:7 | type mode:3

Помимо того, что может задаваться формат вывода на панель списка файлов, любую панель можно перевести в один из следующих режимов:

Информация
В этом режиме на панель выводится информация о подсвеченном в другой панели файле и о текущей файловой системе (тип, свободное пространство и число свободных inode).

Дерево
Режим отображения дерева каталогов подобен тому, который вы увидите, выбрав пункт Дерево каталогов из меню "Команды" ("Commands"). Смотрите соответствующий раздел.

Быстрый просмотр
В этом режиме панель переключается на отображение содержимого файла, подсвеченного в другой панели. Для вывода используется встроенная программа просмотра файлов, так что, если переключиться клавишей Tab в панель просмотра, вы сможете использовать все команды управления просмотром.

Режимы панели

Режим панели - это именованный формат списка, который можно применять повторно. Список режимов общий для обеих панелей; он редактируется и применяется через два диалоговых окна.

Alt-t (и пункт Режимы панели... меню левой и правой панелей) открывает переключатель: простой список заданных режимов. Нажатие Enter на режиме применяет его к панели (к панели того меню, из которого он вызван, или к активной панели для Alt-t), а Esc оставляет панель без изменений.

Пункт Режимы файловой панели... меню Настройки открывает менеджер: тот же список, но с правкой по клавишам. Insert создаёт новый режим, F4 (или Enter) правит выбранный, F5 делает его копию, а Delete (или F8) удаляет. Кнопка По умолчанию заменяет список встроенными режимами. Кнопка ОК сохраняет список, Отмена (или Esc) отменяет все изменения, сделанные в этом окне. Менеджер правит общий список режимов и не переключает панели.

В редакторе режима отдельные поля ввода заданы для типов полей колонок и их ширины, а также для строки мини-статуса; используются имена полей, описанные в разделе Формат списка... . Список типов разделяется запятыми, по одной записи на колонку; в одной колонке может стоять несколько полей через пробел (например, type name). Ширина 0 (или пустая) оставляет полю его автоматическую ширину. В поле типов можно вставить и готовую строку формата (например, half name | size:7): разделители | и суффиксы :ширина будут разложены по двум спискам.

Заданные режимы и выбранный режим каждой панели сохраняются между сеансами.

Порядок сортировки...

Отображение списка файлов в любой из панелей может производиться в соответствии с одним из восьми порядков сортировки:

- по имени;
- по расширению;
- по размеру файла;
- по времени модификации;
- по времени последнего обращения к файлу;
- по времени последнего изменения атрибутов файла;
- по номеру узла (inode);
- без сортировки.

Порядок сортировки можно выбрать, вызвав диалоговое окно, в котором кроме того можно указать, что сортировка производится в обратном порядке (поставив с помощью клавиши пробела отметку в скобках возле слова "Обратный".

По умолчанию каталоги отображаются в начале списка, но это можно изменить, проставив отметку возле опции Смешивать файлы и каталоги пункта меню Настройки панелей.

Фильтр...

Пункт меню "Фильтр" позволяет задать шаблон, которому должны соответствовать имена файлов и каталогов, отображаемых в панели (например, *.tar.gz).

Строка ввода предназначена для ввода регулярного выражения (маски) для выбора файлов. Если включена опция Только файлы, то фильтроваться будут только файлы, а все каталоги будут отображаться независимо от того, соответствуют они фильтру или нет. В противном случае фильтроваться будут как файлы, так и каталоги. Если включена опция Образцы в стиле shell, регулярные выражение строятся по тем же правилам, которые действуют в оболочке shell ('*' означает ноль или большее число любых символов, а '?' заменяет один произвольный символ). В противном случае соответствие файлов/каталогов фильтру определяется по правилам обработки нормальных регулярных выражений (смотрите ed(1)). Если включена опция С учётом регистра , то фильтрация файлов и каталогов будет производиться с учётом регистра символов имён. В противном случае регистр символов учитываться не будет.

Перечитать

Команда "Перечитать" обновляет список, отображаемый на панели. Это бывает полезно в тех случаях, когда другие процессы создают или удаляют файлы.

Файл

Программа M-Commander использует функциональные клавиши F1 - F10 как "горячие" клавиши для команд, включенных в меню "Файл". Escape-последовательности, генерируемые клавишами F1 - F10, соответствуют функциям terminfo kf1 - kf10. На терминалах без поддержки функциональных клавиш можно достичь аналогичного эффекта, нажав клавишу Esc, а затем число в диапазоне от 1 до 9 или 0 (соответствует F1 - F9 и F10).

Меню "Файл" содержит следующие команды:

Просмотр файла

Просмотреть файл, на который указывает подсветка. По умолчанию при этом вызывается встроенная программа просмотра, но, сняв отметку с опции Встроенный просмотр в пункте "Конфигурация" меню "Настройки", можно вызывать внешнюю программу просмотра, путь к которой должен быть указан в переменной окружения PAGER. Если переменная PAGER не определена, вызывается встроенная программа. Если вместо F3 нажать F13, встроенная программа просмотра не выполняет предварительного форматирования или обработки файла.

В разделе Параметры для внешних редакторов и программ просмотра описано, как можно задать параметры командной строки для внешних программ просмотра файлов.

Просмотр вывода команды

По этой команде на экране появляется строка ввода, в которой вы можете ввести любую команду с параметрами (по умолчанию предлагается использовать в качестве параметра имя подсвеченного файла). Вывод этой команды будет отображаться на экране через встроенную программу просмотра.

Правка

Вызывается редактор vi, либо редактор, указанный в переменной окружения EDITOR, либо встроенный редактор файлов (если включена опция Встроенный редактор в меню "Настройки / Конфигурация").

В разделе Параметры для внешних редакторов и программ просмотра описано, как можно задать параметры командной строки для внешних редакторов.

Копирование

Вызывается диалоговое окно, в котором предлагается скопировать подсвеченный файл из каталога, отображаемого в активной панели (или группу отмеченных файлов, если в активной панели отмечен хотя бы один файл) в каталог, отображаемый в пассивной панели. Имя каталога, в который будет производиться копирование, можно изменить. Можно предварительно резервировать место под новые файлы в каталоге назначения, выставив конфигурационную опцию preallocate_space. О том, как задать шаблон для имен копируемых файлов (обычно это "*" или "^\(.*\)$", в зависимости от установки опции Образцы в стиле shell, и о допустимых символах замены (wildcards) в строке целевого каталога вы можете узнать, просмотрев раздел Маски файлов для операций копирования/переименования.

В процессе выполнения копирования можно нажать Esc для того, чтобы прервать выполнение операции.

В некоторых системах можно осуществлять копирование в фоновом режиме, если запустить процесс не кнопкой [Дальше] диалогового окна, а кнопкой [На фоне] (или нажав Alt-b в диалоговом окне). Используя пункт меню "Команды/Фоновые задания", можно управлять выполнением фоновых процессов.

Жесткая ссылка

Создаёт жесткую ссылку на текущий файл.

Символическая ссылка

Создаёт абсолютную символическую ссылку на текущий файл.

Относительная символическая ссылка

Создаёт относительную символическую ссылку на текущий файл.

Если вы не знаете, что такое ссылки: создание ссылки в некотором смысле подобно копированию файла, но и исходное имя файла и ссылка указывают на один и тот же реальный файл на диске. Поэтому, если вы, например, редактируете файл, то изменения будут появляться в обеих копиях. Синонимами термина "ссылка" (link) являются термины "алиас" (alias) и "ярлык" (shortcut).

Жесткая ссылка выглядит как реальный файл. После создания жесткой ссылки невозможно различить, где исходный файл, а где ссылка. Если вы удаляете один из этих файлов (точнее одно из этих имен), то файл ещё сохраняется на диске (пока у него есть хоть одно имя-ссылка). Очень трудно различить первоначальное имя файла и позже созданные жесткие ссылки на него. Поэтому жесткие ссылки применяются там, где отслеживать различия и не требуется.

Символическая ссылка - это ссылка на имя исходного файла. Если исходный файл удален, символическая ссылка становится бесполезной. Символическую ссылку легко отличить от первоначального имени файла, и программа M-Commander указывает символические ссылки, выводя знак "@" перед именем такой ссылки (кроме ссылок на каталоги, которые обозначаются знаком тильды '~'). Если на экран выводится строка мини-статуса (опция Показывать мини-статус включена), то в ней отображается имя исходного файла. Используйте символические ссылки в тех случаях, когда хотите избежать путаницы, связанной с применением жестких ссылок.

Когда вы нажимаете клавиатурное сочетание C-x s, M-Commander автоматически заполняет поля диалога создания ссылки: имя ссылки и имя файла, на который будет указывать ссылка. Вы можете изменить их.

Но иногда требуется, чтобы ссылка указывала на файл не по абсолютному пути, а по относительному. Абсолютный путь начинается с корневого каталога:

/home/frodo/mc/mc -> /home/frodo/new/mc

Относительный путь указывает на расположение файла относительно места, где будет располагаться создаваемая ссылка:

/home/frodo/mc/mc -> ../new/mc

Для того чтобы создать относительную символическую ссылку, используйте клавиатурное сочетание C-x v вместо C-x s.

Переименование

Вызывается диалоговое окно, в котором предлагается перенести подсвеченный файл из каталога, отображаемого в активной панели (или группу отмеченных файлов, если в активной панели отмечен хотя бы один файл) в каталог, отображаемый в пассивной панели. Имя каталога, в который будет производиться перенос, можно изменить, воспользовавшись соответствующей строкой ввода.

В остальном диалоговое окно аналогично окну, появляющемуся при вызове команды копировании файлов (смотрите выше).

Создание каталога

Появляется диалоговое окно и создаётся каталог с введённым именем.

Удаление

Удаляется файл, имя которого подсвечено (или группа файлов, имена которых помечены) в активной панели. Операцию можно прервать, нажав C-c или Esc во время её исполнения.

Смена каталога

Используйте быструю смену каталога если вы знаете полный путь к каталогу, в который хотите перейти (который хотите сделать текущим).

Отметить группу

Эта команда используется для отметки группы файлов по заданному шаблону. M-Commander выдаст диалоговое окно, в которой надо задать опции выделения группы файлов и каталогов. Если включена опция Только файлы, то выделены будут только файлы. Если опция Только файлы выключена, то выделены будут как файлы, так и каталоги. Если включена опция Образцы в стиле shell, регулярные выражение строятся по тем же правилам, которые действуют в оболочке shell ('*' означает ноль или большее число любых символов, а '?' заменяет один произвольный символ). Если опция Образцы в стиле shell выключена, то пометка файлов производится по правилам обработки нормальных регулярных выражений (смотрите ed (1)). Если включена опция С учётом регистра то пометка файлов и каталогов будет производиться с учётом регистра символов имён. Если опция С учётом регистра выключена, то регистр символов учитываться не будет.

Снять отметку

Используется для снятия отметки с группы файлов. Эта операция является обратной по отношению к операции отметки группы файлов и использует те же правила формирования шаблонов.

Выход

Выйти из программы M-Commander. S-F10 используется для выхода в тех ситуациях, когда используется shell wrapper. После S-F10 текущим каталогом будет не последний каталог, в котором вы были при работе в M-Commander, а тот, в котором вы были, когда запустили M-Commander.

Быстрая смена каталога

Эта команда полезна тогда, когда вы знаете полный путь к каталогу, который хотите сделать текущим, и желаете использовать встроенную команду cd.

По этой команде вызывается диалоговое окно, в строке ввода которого вы должны ввести тот путь, который вы ввели бы в командной строке оболочки при выполнении команды cd.

После этого надо нажать клавишу Enter.

Меню 'Атрибуты'

Команды этого меню меняют не содержимое файла, а то, что о нём знает файловая система: права доступа, владельца и группу, флаги файловой системы. Каждая из них работает с выделенным файлом или с группой помеченных файлов.

Права доступа... (C-x c)
Изменить права доступа в диалоговом окне Права доступа.

Владелец/группа... (C-x o)
Изменить владельца и группу в диалоговом окне Владелец/группа.

Права (расширенные)...
Изменить права доступа, владельца и группу в одном диалоговом окне, смотрите Расширенная команда Chown.

Флаги chattr... (C-x e)
Изменить флаги файловой системы ext2, ext3 или ext4 в диалоговом окне Команда Chattr. Пункт есть только в сборке с поддержкой этих флагов.

Меню 'Команды'

Меню пользователя

Вызывает меню пользователя. Меню пользователя предоставляет простой способ расширения возможностей M-Commander за счет добавления в личное меню пользователя вызова часто используемых программ.

При обращении к пункту меню Дерево каталогов выводится окно, отображающее структуру каталогов файловой системы.

Команда Поиск файла позволяет найти на диске файл с заданным именем. "Горячие" клавиши - Alt-?.

Команда Переставить панели меняет местами содержимое правой и левой панелей. "Горячие" клавиши - C-u.

По команде Отключить панели показывается вывод последней из выполнявшихся команд оболочки. Эта команда работает только через xterm и на консоли Linux и FreeBSD. "Горячие" клавиши - C-o.

По команде Сравнить каталоги ("горячие" клавиши C-x d) сравнивается содержимое каталогов, отображаемых на левой и правой панелях. После сравнения можно воспользоваться командой Копировать для того, чтобы сделать содержимое каталогов одинаковым. Существует три метода сравнения. При быстром методе сравниваются только размер и дата создания файлов с одинаковыми именами. При побайтном методе сравнивается содержимое файлов (побайтно). При сравнении по размеру сравниваются только размеры соответствующих файлов, а дата создания не проверяется.

Пункт меню Внешняя панелизация позволяет выполнить внешнюю программу, сделав ее вывод содержимым текущей панели (характерный пример - панелизация вывода команды find).

Пункт меню История командной строки выводит окно со списком ранее выполнявшихся команд. Подсвеченную строку из истории можно скопировать в командную строку оболочки (перемещение подсветки - клавишами Up/Down, копирование - по клавише Enter). Доступ к истории команд можно получить также по комбинациям клавиш Alt-p или Alt-n, однако в этом случае вы не видите окна с перечнем команд. Вместо этого в командную строку выводится одна команда из списка и по комбинации Alt-p происходит смена этой команды на предыдущую, а по Alt-n - на следующую команду из истории команд.

Пункт меню Каталоги быстрого доступа позволяет создать список каталогов, которые часто используются, и обеспечить быстрый переход к нужному каталогу из этого списка.

Пункт меню Список активных ВФС отображает список виртуальных файловых систем, активных на настоящий момент. Можно перейти на выбранную виртуальную файловую систему. Для Обновления списка выберите кнопку [Освежить] в диалоговом окне. Кнопка [Освободить ВФС сейчас] поможет при обновлении содержимого архива или при разорванном сетевом соединении.

Пункт меню Фоновые задания отображает список фоновых заданий, запущенных в диалоге копирования/перемещения кнопкой [В фоне].

Пункт меню Список экранов отображает диалоговое окно со списком одновременно работающих в данный момент встроенных редакторов, программ просмотра и других модулей M-Commander, поддерживающих такой режим работы.

Дерево каталогов

После выбора пункта меню "Дерево каталогов" появляется окно, в котором отображена иерархическая структура каталогов.

Дерево каталогов может быть вызвано двумя способами: через пункт "Дерево каталогов" из меню "Команды" и пункт "Дерево" из меню правой или левой панелей.

Чтобы избавиться от долгих задержек во время создания дерева каталогов, M-Commander создаёт дерево путем просмотра только небольшого подмножества всех каталогов. Если каталог, который вам нужен, не отображен, перейдите в его родительский каталог и нажмите C-r (или F2).

Для управления просмотром дерева каталогов могут использоваться следующие комбинации клавиш:

Работают все
клавиши управления перемещением.

Enter
В окне просмотра дерева каталогов нажатие этой клавиши вызывает выход из режима просмотра и отображение списка файлов выбранного каталога в активной панели. При отображении дерева каталогов в одной из панелей при нажатии клавиши Enter соответствующий каталог отображается во второй панели, а на текущей панели остается дерево.

C-r, F2
Перечитать содержимое каталога. Используется в тех случаях, когда дерево каталогов не соответствует реальной структуре: некоторые каталоги не показаны или показаны более не существующие.

F3
Удалить текущий каталог из дерева. Эта команда используется для удаления ошибочно отображаемых ветвей дерева. Если вам необходимо вернуть подкаталог в дерево, перейдите в его родительский каталог и нажмите клавишу F2.

F4
Переключение между статическим (применяемым по умолчанию) и динамическим режимами перемещения по дереву.

В статическом режиме перемещения для выбора каталога (то есть перемещения
подсветки на имя другого каталога) используются только клавиши Up/Down. Показываются все известные программе на данный момент подкаталоги.

В динамическом режиме клавиши
Up/Down используются для перехода на соседний каталог того же уровня. Для перехода в родительский каталог используется клавиша Left, а по клавише Right происходит переход к потомкам текущего каталога, то есть на один уровень ниже. При этом отображаются только вышележащие каталоги (включая родительский и выше), соседние каталоги того же уровня и непосредственные потомки. Вид дерева каталогов динамически изменяется после каждого перемещения по дереву.

F5
Копировать подкаталог (появляется строка ввода, в которой надо указать, куда копировать).

F6
Переместить подкаталог.

F7
Создать подкаталог в текущем (подсвеченном) каталоге.

F8
Удалить подсвеченный каталог из файловой системы.

C-s, Alt-s
Найти следующий каталог, соответствующий заданному шаблону поиска. Если такого каталога не существует, происходит просто смещение подсветки на одну строку вниз.

C-h, Backspace
Удаляет последний символ в строке (шаблоне) поиска.

Любой другой символ
Этот символ добавляется в шаблон поиска и производится перемещение на имя следующего каталога, удовлетворяющее шаблону. В режиме просмотра дерева каталогов вначале необходимо активизировать режим поиска клавишами C-s. Шаблон поиска будет отображаться в строке мини-статуса.

Следующие действия возможны только в окне просмотра дерева каталогов и не поддерживаются при просмотре дерева в одной из панелей:

F1 (Help)
Вызов подсказки с отображением настоящего раздела помощи.

Esc, F10
Выход из окна дерева каталогов. Смены текущего каталога не происходит.

В окне просмотра дерева каталогов поддерживается мышка. Двойной щелчок аналогичен нажатию клавиши Enter. Смотрите также секцию о поддержке мыши.

Поиск файлов

После выбора пункта меню "Поиск файла" появляется диалоговое окно, в котором запрашивается имя искомого файла и имя каталога, с которого необходимо начинать поиск. Нажав кнопку [Дерево], можно выбрать начальный каталог поиска из дерева каталогов.

Поле "Шаблон имени" содержит маску имени файла, по которой происходит поиск. В зависимости от опции "Метасимволы shell" маска интерпретируется либо по тем же правилам, что и в командной оболочке, либо как регулярное выражение. Пустое поле также допустимо и соответствует любому имени.

Поле "Содержимое" позволяет задать текст, который надо найти. Если это поле пусто, то поиск по содержимому файлов производиться не будет.

Опция Только целые слова устанавливает, что шаблон поиска соответствует только целым словам (например, если указано "foo", не будет найдено слово "foobar").

Для того чтобы начать поиск, нажмите экранную кнопку [Дальше]. Во время поиска его можно приостановить кнопкой [Приостановить] и продолжить по кнопке [Продолжить].

Список найденных файлов можно просматривать, перемещаясь с помощью клавиш Up и Down. Кнопка [Перейти] используется для перехода в каталог, в котором находится подсвеченный файл. Кнопка [Повтор] служит для задания параметров нового поиска. Кнопка [Выход] служит для выхода из режима поиска. Нажатие на кнопку [Панелизация] приведёт к тому, что результаты поиска будут отображены на текущую активную панель, так что вы можете производить с выбранными файлами ещё какие-то действия (просматривать, копировать, перемещать, удалять и так далее). Для возврата к обычному списку файлов нужно перейти в каталог "..".

Опция Разрешить игнорирование каталогов совместно с расположенным ниже полем ввода позволяет задать список каталогов, которые нужно пропускать при поиске (например, вы знаете, что искомого файла нет на CD-ROM или не хотите искать в каталогах, подключенных через NFS по очень медленному каналу). Компоненты списка должны быть разделены двоеточиями. Например

/cdrom:/nfs/wuarchive:/afs

Относительные пути также поддерживаются. Следующий пример показывает, как при поиске пропускать специальные каталоги различных систем управления версиями:

/cdrom:/nfs/wuarchive:/afs:.svn:.git:CVS

Внимание: поле ввода может содержать точку (.), это означает текущий абсолютный путь.

Вы можете использовать перенаправление вывода на панель (см. Критерий панелизации) для выполнения некоторых усложненных последовательностей действий, в то время как "Поиск файла" позволяет выполнять только простые запросы.

Критерий панелизации

Пункт меню "Критерий панелизации" (который правильнее было бы назвать "Перенаправление вывода на панель") позволяет выполнить внешнюю программу и отобразить вывод этой программы на текущей активной панели.

Например, если вы хотите выполнить какое-то действие над всеми символическими ссылками текущего каталога, вы можете использовать пункт "Критерий панелизации" для запуска следующей команды:

find . -type l -print

После выполнения этой команды в текущей панели будет отображено не содержимое соответствующего каталога, а только все символические ссылки, в нем расположенные.

Если вы хотите вывести на панель все файлы, которые были скачаны с вашего FTP-сайта, вы можете использовать следующую команду для извлечения нужных имен из файла протокола:

awk '$9 ~! /incoming/ { print $9 }' < /var/log/xferlog

Если вы захотите, то можете сохранить часто используемые команды панелизации под отдельными информативными именами, чтобы иметь возможность их быстро вызвать по этим именам. Для этого нужно набрать команду в строке ввода и нажать кнопку [Добавить]. После этого вам потребуется ввести имя, по которому вы будете вызывать команду. В следующий раз вам достаточно будет выбрать нужное имя из списка, а не вводить всю команду заново.

Каталоги быстрого доступа

Пункт меню "Каталоги быстрого доступа" показывает метки мест из списка быстрого доступа, и M-Commander переходит в место выбранной метки. Местом может быть каталог, путь внутри виртуальной файловой системы или адрес панельного плагина, например sftp:host/dir. В диалоге можно удалить ранее созданные пары метка/место и добавить новые. Быстрее всего добавляет текущий каталог или место панели плагина команда "Добавить текущий каталог" (C-x h): она спрашивает только метку. Место, которое уже есть в списке, второй раз не добавляется, диалог показывает существующую запись.

Клавиши диалога:

Enter        перейти в выбранное место
Alt-o        открыть выбранное место на другой панели
Ctrl-Enter   поместить "cd место" в командную строку
Alt-Enter    то же для терминалов без Ctrl-Enter
Insert       добавить текущее место
Shift-F4     новая запись: спросить метку и место
F7           новая группа
F4           править метку и место выбранной записи
Delete       удалить выбранную запись
Ctrl-Up      поднять выбранную запись на строку выше
Ctrl-Down    опустить выбранную запись на строку ниже
F6           перенести запись в другую группу: диалог показывает группы,

Enter открывает группу, Move или F6 кладёт запись в конец
показанной группы, в том числе и исходной F9 отсортировать текущую группу по меткам, группы первыми Ctrl-s поиск по списку по мере набора, Ctrl-s ищет дальше Right, Left войти в группу и выйти из неё

Всё это ускоряет переход к часто используемым каталогам. Другой способ - переменная CDPATH, она описана во встроенной команде cd.

Фоновые задания

Этот пункт меню позволяет вам управлять фоновыми заданиями, запущенными из M-Commander (такими заданиями могут быть только операции копирования и перемещения файлов). Используя этот пункт меню или "горячие" клавиши C-x j, вы можете остановить, возобновить или снять любое из фоновых заданий.

Редактирование файлов меню

Меню пользователя - это меню полезных действий, которое пользователь настраивает сам. Оно бывает в двух видах: меню, которое правит себя и хранится в ключевом файле, и старое меню, написанное вручную. Там, где ключевой файл есть, F2 открывает именно его; где его нет, читается старый файл, как и раньше.

Меню, которое правит себя

Пункты хранятся в файле .mc6menu текущего каталога и в ~/.config/mc6/menu.ini, и показываются вместе. Файл .mc6menu читается только тогда, когда он принадлежит этому пользователю или root и никто больше не может в него писать, потому что его пункты запускают команды. Больше ничего не читается: в меню лежит то, что положил его владелец, а mcommander не поставляет ни одного пункта, так что у нового пользователя меню пустое и просит завести первый пункт. Внутри меню:

Enter       выполнить пункт
Ins         добавить пункт
F4          править пункт
F5          взять пункты из меню, написанного вручную
Shift-F4    открыть файл, в котором лежит пункт
Del         удалить пункт
Ctrl-Up     поднять пункт выше
Ctrl-Down   опустить пункт ниже

Пункт - это горячая клавиша, название и команды, и больше диалог ничего не спрашивает: условий и масок файлов в нём нет. В командах работают те же подстановки, что и в старом меню, %f, %s, %{prompt} и прочие, они описаны в разделе макроподстановки. Два флажка говорят, что делать с выводом: идёт ли он в программу просмотра и запускается ли команда без оболочки панели.

Название показывается с уже подставленными значениями, поэтому название "print %f" стоит в списке с именем файла под курсором. Сам файл при этом не меняется, а %{...} остаётся как написано: список - не место для вопросов.

Пункт может быть не командой, а подменю: Ins спрашивает, что из двух добавить. Подменю показывается с косой чертой после названия, как каталог; Enter открывает его, а заголовок называет те подменю, внутри которых вы находитесь. Esc поднимает на уровень выше, а на верхнем уровне выходит из меню. Удаление подменю удаляет и то, что в нём лежит. В файле подменю - это группа с submenu=true и без команды, а пункт внутри неё называет подменю в parent=.

Команды - это поле из нескольких строк: Enter открывает новую, а стрелки, Home и End ходят по тексту. Shift с движением отмечает то, что движение проходит, мышь отмечает протягиванием, а Ctrl-Insert, Shift-Insert и Shift-Delete копируют, вставляют и вырезают через файл обмена, как и в строке ввода. Кнопка "Редактор" выходит из диалога и открывает файл, в котором лежит пункт, для того, что проще написать там.

Пункт записывается обратно в тот файл, откуда он взят, а порядок списка - это порядок файла. Условия и маски принадлежат старому виду меню: то, чего не умеет диалог, умеет файл, и Shift-F4 его открывает.

Меню, написанное вручную

Установка такого файла больше не поставляет; описанное ниже читается там, где кто-то держит своё меню в старом виде: берётся файл .usermenu из текущего каталога, если он есть и если его владелец - пользователь или root и он не доступен на запись всем. Если такого файла нет, тем же способом берётся ~/.config/mc6/menu.

Если у меню, которое правит себя, файла ещё нет, а другое меню найдено - своё, написанное вручную, usermenu установленного mcommander или menu.ini от более старого mcommander, - mcommander один раз за сеанс предлагает перенести его; F5 в меню и кнопка "Импорт" пустого меню спрашивают об этом в любой момент, для того файла или для названного вручную. Дальше он показывает, что лежит в файле: Space отмечает пункт, Ins отмечает и переходит ниже, '*' переворачивает все отметки, а Enter переносит отмеченные в ~/.config/mc6/menu.ini, где их уже можно править диалогом. Исходный файл остаётся на месте, а условия и маски отбрасываются, потому что в диалоге для них места нет.

Формат файла меню очень прост. Строки комментариев начинаются с '#'. Дополнительные комментарии должны начинаться с '#', пробела или символа табуляции. Строки, начинающиеся с любого символа, отличного от пробела и символа табуляции, интерпретируются как названия пунктов меню, причём если первый символ является буквой или цифрой, то соответствующая клавиша будет служить "горячей" клавишей для вызова этого пункта меню. Строки, начинающиеся с пробела или символа табуляции, интерпретируются как команды, которые должны выполняться при вызове соответствующего пункта меню. Эти строки должны следовать за строкой названия и их может быть несколько.

Когда пользователь выбирает какой-то пункт меню, соответствующие командные строки копируются во временный файл во временном каталоге (обычно /usr/tmp) и затем этот файл запускается на выполнение. Это позволяет пользователю вставлять в команды меню любые конструкции, допустимые в командном языке оболочки. Можно также использовать макроподстановки, которые производятся перед выполнением кода меню (подробнее смотрите в секции Макроподстановки).

Вот пример файла usermenu:

A	Dump the currently selected file
	od -c %f
B	Edit a bug report and send it to root
	I=`mktemp ${MC_TMPDIR:-/tmp}/mail.XXXXXX` || exit 1
	vi $I
	mail -s "M-Commander bug" root < $I
	rm -f $I
M	Read mail
	emacs -f rmail
N	Read Usenet news
	emacs -f gnus
H	Call the info hypertext browser
	info
J	Copy current directory to other panel recursively
	tar cf - . | (cd %D && tar xvpf -)
K	Make a release of the current subdirectory
	echo -n "Name of distribution file: "
	read tar
	ln -s %d `dirname %d`/$tar
	cd ..
	tar cvhf ${tar}.tar $tar
= f *.tar.gz | f *.tgz & t n
X	Extract the contents of a compressed tar file
	tar xzvf %f

Условия выполнения (Default Conditions)

Каждому пункту меню может предшествовать условие. Строка, задающая условие, должна содержать символ '=' в первой колонке. Команды, задаваемые этим пунктом меню, будут выполняться только если условие выполняется.

Синтаксис строки условия:   = <sub-cond>

или: = <sub-cond> | <sub-cond> ...
или: = <sub-cond> & <sub-cond> ... где <sub-condition> может принимать следующие значения:
y <pattern> синтаксис текущего файла соответствует шаблону.
Только для меню редактора.
f <pattern> соответствует ли шаблону имя текущего файла?
F <pattern> соответствует ли шаблону файл в пассивной панели?
d <pattern> соответствует ли шаблону имя текущего каталога?
D <pattern> соответствует ли шаблону имя текущего каталога
в пассивной панели?
t <type> соответствует ли тип файла <type>?
T <type> соответствует ли тип файла в пассивной панели <type>?
x <filename> является ли filename исполнимым?
! <sub-cond> логическое отрицание условия <sub-cond>

Шаблон (pattern) - это обычный шаблон оболочки (shell pattern) или регулярное выражение, в соответствии с опцией "shell patterns". Вы можете задать значение опции "shell patterns" путем записи строки "shell_patterns=x" в самую первую строку файла меню (здесь "x" равно 0 или 1).

Типы файлов определяются следующими символами:

n не каталог
r обычный файл (regular file)
d каталог
l ссылка (link)
c байт-ориентированное устройство (char special)
b блок-ориентированное устройство (block special)
f fifo
s socket
x исполняемый файл
t помеченный файл (tagged)

Например, 'rlf' означает либо обычный файл, либо ссылку, либо файл типа fifo. Тип 't' стоит несколько особняком, потому что этот тип определяется не типом самого файла, а тем, помечен ли файл на панели. Условие '=t t' истинно, если в текущей панели имеются помеченные файлы, и ложно, если таковых нет.

Если условие начинается с "=?" вместо '=', то во время выполнения проверки условия будет отображаться ход вычисления условия (a debug trace will be shown whenever the value of the condition is calculated).

Значение условия вычисляется слева направо. Это значит, что

	= f *.tar.gz | f *.tgz & t n

вычисляется как

	( (f *.tar.gz) | (f *.tgz) ) & (t n)

Вот пример использования условий:

= f *.tar.gz | f *.tgz & t n
L	List the contents of a compressed tar-archive
	gzip -cd %f | tar xvf -

Условия включения пункта в меню (Addition Conditions)

Если строка условия начинается с '+' (или "+?") вместо '=' (или "=?") - это условие трактуется как условие включения данного пункта в меню. Если условие истинно, пункт включается в отображаемое на экране меню, если условие не выполняется - не включается.

Вы можете использовать одно и то же условие и как условие выполнения и как условие включения пункта в меню, если начнете строку условия с "+=" или "=+" (если надо отображать ход вычисления, то с "+=?" или "=+?"). Если вы хотите использовать два разных условия, одно для включения в меню, а другое - для выполнения, надо предпослать пункту меню две строки условий, одну - начинающуюся с '+', и другую - начинающуюся с '='.

Меню 'Настройки'

Программа M-Commander имеет ряд установок (опций), каждая из которых может быть включена или выключена, для чего служат несколько диалоговых окон, доступных через меню "Настройки". Опция включена, если поставлена звёздочка или знак "x" в скобках перед названием опции.

Пункт Конфигурация вызывает диалоговое окно, в котором вы можете поменять большинство установок программы M-Commander.

Пункт Внешний вид служит для задания настроек, определяющих положение и вид окна программы mcommander на экране.

Пункт Настройки панелей служит для задания настроек панелей файлового менеджера.

Пункт Подтверждение вызывает диалоговое окно, в котором вы указываете, на выполнение каких действий программа будет требовать подтверждения.

Пункты Настройки сравнения, Настройки просмотра и Настройки редактора вызывают диалоговые окна трёх программ, показывающих файл: сравнения, просмотра и редактирования. Те же окна есть в меню "Настройки" каждой из них; здесь они доступны без того, чтобы сначала открыть файл. Программа сравнения берёт свои настройки при запуске, поэтому уже открытое окно сравнения остаётся с теми настройками, с которыми было открыто.

Пункт Оформление вызывает диалоговое окно, в котором вы можете выбрать скин.

Пункт Распознавание клавиш вызывает диалоговое окно, в котором вы можете протестировать работу некоторых клавиш, которые работают не на всех типах терминалов, и связать ту реакцию системы, которая должна была последовать за нажатием отсутствующей клавиши, с нажатием другой клавиши или комбинации клавиш.

После выбора пункта меню Редактировать файл расширений вы можете связать с определённым расширением файла (окончанием имени после последней точки) программу, которая будет запускаться для обработки (просмотра, редактирования или выполнения) файла с таким расширением. Запуск выбранной программы будет осуществляться после установки подсветки на имя файла и нажатия клавиши Enter.

Пункт меню Править файл расцветки имён открывает файл, который задаёт, какие имена и какие типы файлов панель показывает каким цветом, смотрите Подсветка имён файлов.

По команде Сохранить настройки введённые значения параметров сохраняются в ini-файле программы.

Конфигурация

Параметры конфигурации, задаваемые в этом окне, делятся на несколько групп: "Параметры операций с файлами", "Клавиша Esc", "Пауза после исполнения" и "Прочие настройки".

Параметры операций с файлами

Детали операций. Этот переключатель определяет, будет ли при выполнении операций копирования, перемещения и удаления выводится дополнительное окно, отображающее ход выполнения операции. Если у вас медленный терминал, вы можете отключить этот вывод. Он отключается автоматически, если скорость вашего терминала меньше 9600 bps.

Подсчитывать общий размер. Если эта опция включена, M-Commander перед выполнением операций копирования, перемещения и удаления подсчитывает общее число обрабатываемых файлов и их суммарный размер и показывает ход выполнения операции над этими файлами в виде диаграммы-полоски (правда, это слегка замедляет выполнение операций). Эта опция не работает, если выключена опция Детали операций.

Обычный индикатор прогресса. Если эта опция включена, индикатор прогресса файловых операций (копирование, перемещение, удаление) всегда увеличивается слева направо. Если опция выключена, направление увеличения индикатора прогресса совпадает с направлением файловой операции: с левой панели на правую или наоборот. По умолчанию включено.

Автоимя каталога. При создании нового каталога по F7 в поле ввода имени нового каталога будет автоматически подставляться имя файла или каталога, находящегося под курсором. По умолчанию выключено.

Выделять место. Если возможно, предварительно выделять место под весь копируемый файл. По умолчанию выключено.

Клавиша Esc

По умолчанию M-Commander трактует нажатие на клавишу Esc как действие, предшествующее нажатию какой-то другой клавиши и совместно обрабатывает комбинацию Esc-key. Поэтому вы должны нажимать Esc дважды, чтобы закрыть диалог. Но существует возможность использовать однократное нажатие Esc для этого действия.

Однократное нажатие. По умолчанию эта опция выключена. Если вы её включите, то программа будет ожидать нажатия второй клавиши только в течение некоторого временного интервала (см. ниже опцию Интервал), и если за это время ни одна клавиша не нажата, то Esc интерпретируется как команда "Отмена" (Esc Esc).

Интервал. Эта опция используется для задания временного интервала (в микросекундах) для использования однократного нажатия на клавишу Esc. По умолчанию этот интервал равен 1 секунде (1000000 микросекунд). Кроме того, этот интервал может быть установлен через переменную окружения KEYBOARD_KEY_TIMEOUT_US (также в микросекундах), которая имеет приоритет над над значением этой опции.

Пауза после исполнения

После выполнения вашей команды M-Commander может обеспечить паузу, чтобы вы могли просмотреть и изучить вывод команды. Есть три варианта установки этой опции:

Никогда. Это значит, что вы не хотите видеть вывод команды. На консоли Linux или FreeBSD или при использовании xterm вы можете просмотреть этот вывод, нажав C-o.

На “тупых” терминалах. Пауза будет создаваться на терминалах, которые не способны обеспечить показ вывода последней из выполнявшихся команд (это любые терминалы, отличные от xterm или консоли Linux).

Всегда. Программа обеспечит паузу после выполнения любой команды.

Прочие настройки

Встроенный редактор. Если эта опция включена, то для редактирования файлов вызывается встроенный редактор. Если опция выключена, то будет использоваться редактор, указанный в переменной окружения EDITOR. Если такой редактор не задан, будет вызываться vi Смотрите раздел Встроенный редактор файлов.

Встроенный просмотр. Если эта опция включена, для просмотра файлов вызывается встроенная программа просмотра. Если опция выключена, вызывается программа, указанная в переменной окружения PAGER. Если такая программа не задана, используется команда view. Смотрите раздел Встроенная программа просмотра файлов.

Автоматические меню. Если эта опция включена, пользовательское меню будет автоматически вызываться на экран при запуске программы. Это бывает полезно, если на компьютере работают неопытные пользователи (операторы), которые должны выполнять только стандартные операции.

Спрашивать имя нового файла. Если эта опция включена, то перед открытием нового файла в редакторе будет запрошено его имя.

Выпадение меню при вызове. Если эта опция включена, то при вызове главного меню нажатием клавиши F9 будет сразу отображаться перечень пунктов меню (выпадающее меню). В противном случае активизируются только пункты главного меню, и вы должны (после выбора одного из них клавишами стрелок) нажать клавишу Enter либо выбрать нужный пункт по "горячей" клавише и только после этого получите возможность выбрать пункт выпадающего меню.

Образцы в стиле shell. По умолчанию команды Select, Unselect и Filter используют регулярные выражения, которые строятся по правилам, действующим в оболочке (shell- like regular expressions). Для того чтобы достичь такого эффекта, выполняются следующие преобразования: '*' заменяется на '.*' (ноль или больше символов); '?' заменяется на '.' (в точности один символ) и '.' заменяется на обычную точку. Если опция выключена, то регулярные выражения должны строиться так, как описано в ed(1).

Дополнение: показывать всё. В процессе ввода команд M-Commander может выполнять Завершение ввода при нажатии на клавиши Alt-Tab, пытаясь угадать окончание вводимой команды. По умолчанию при первом нажатии Alt-Tab он ищет все возможные варианты завершения и, если завершения неоднозначны (имеется много разных вариантов), то только издаёт звуковой сигнал. При втором нажатии Alt-Tab отображаются все возможные завершения. Если вы хотите видеть все возможные варианты завершения после первого нажатия Alt-Tab, включите эту опцию.

Вращающийся индикатор. Если эта опция включена, M-Commander отображает в верхнем правом углу вращающуюся черточку как индикатор того, что выполняется какое-то задание (операция).

Смена каталога по ссылкам. Установка этой опции приводит к тому, что M-Commander будет следовать логической цепочке подкаталогов при выполнении команд смены каталога как в панели, так и по команде cd. Так же ведёт себя по умолчанию bash. Если же опция не включена, M-Commander будет при выполнении команды cd следовать реальной структуре каталогов, так что если вы вошли в текущий каталог по ссылке на него, то по команде cd .. вы окажетесь в его родительском каталоге, а не в том каталоге, где расположена ссылка.

Безопасное удаление. Если эта опция включена, непреднамеренно удалить файл будет сложнее. В диалоговых окнах подтверждения удаления предлагаемая по умолчанию кнопка изменяется с [Да] на [Нет]. По умолчанию эта опция выключена.

Безопасная перезапись. Если эта опция включена, непреднамеренно перезаписать файл будет сложнее. В диалоговом окне подтверждения перезаписи предлагаемая по умолчанию кнопка изменяется с [Да] на [Нет]. По умолчанию эта опция выключена.

Автосохранение настроек. Если эта опция включена, то при выходе из программы M-Commander значения всех настраиваемых параметров сохраняются в файле ~/.config/mc6/ini.

Внешний вид

Диалоговое окно "Внешний вид" даёт вам возможность изменить некоторые параметры отображения на экране главного окна программы M-Commander. Параметры, задаваемые в этом окне, делятся на несколько групп: "Разбиение панелей", "Консольный вывод" и "Прочие настройки".

Разбиение панелей

Большую часть экрана занимают файловые панели. Вы можете указать, каким должно быть расположение панелей: вертикальное или горизонтальное. Изменить расположение панелей можно также с помощью клавиатурного сочетания Alt-, (Alt-запятая).

Равные размеры. По умолчанию панели имеют равные размеры. Эта опция позволяет изменить их.

Консольный вывод.

Эта опция доступна, если M-Commander запущен на консоли Linux или FreeBSD. Она устанавливает число строк, которые будут оставлены для отображения вывода команды.

Прочие настройки

Линейка меню. Если включено, основное меню программы будет отображаться постоянно вверху экрана. По умолчанию включено.

Командная строка. Если включено, в нижней части экрана будет доступна командная строка. По умолчанию включено.

Метки клавиш. Если включено, внизу экрана будут отображаться 10 меток, соответствующих функциональным клавишам F1 - F10. По умолчанию включено.

Строка подсказки. Если включено, ниже панелей будут отображаться однострочные подсказки по приёмам работы в M-Commander. По умолчанию включено.

Заголовок xterm. При исполнении в эмуляторе терминала системы X11 M-Commander отображает в заголовке xterm текущий каталог и изменяет этот заголовок при необходимости. Если ваш эмулятор терминала неисправен и вы видите неверный заголовок при старте или изменении каталога, выключите эту опцию. По умолчанию включено.

Свободное место. Если включено, на нижней рамке панели будет показано свободное место и общий размер текущей файловой системы. По умолчанию включено.

Настройки панелей

Основные настройки панелей

Показывать мини-статус. Если включено, в нижней части каждой панели выводится строка информации о выделенном подсветкой файле или каталоге каждой панели. По умолчанию включено.

Размеры в единицах СИ. Если эта опция включена, то M-Commander отображает размеры файлов и каталогов с префиксами СИ (по основанию 10). По умолчанию опция выключена. В этом случае M-Commander отображает размеры с префиксами МЭК (по основанию 2).

Смешивать файлы/каталоги. Если эта опция включена, имена файлов и каталогов отображаются вперемежку. Если опция выключена, каталоги (и ссылки на каталоги) показываются в начале списка, а имена файлов - после имен всех каталогов. По умолчанию выключено.

Показывать резервные (Backup) файлы. Если эта опция выключена, M-Commander не показывает файлы, имена которых заканчиваются на '~' (подобно ключу -B команды ls в GNU). По умолчанию включено.

Показывать скрытые файлы. Если эта опция включена, M-Commander показывает все файлы, имена которых начинаются точкой (как ls -a). По умолчанию включено.

Быстрая загрузка каталога. По умолчанию эта опция выключена. Если вы активизируете её, M-Commander будет использовать для вывода содержимого каталога следующий трюк: содержимое каталога перечитывается только в том случае, если изменилась запись в i-node каталога, то есть если в каталоге создавались или удалялись файлы; если изменялись только записи в i-node файлов каталога (изменялся размер файла, режим доступа или владелец и т.п.) содержимое панели не обновляется. В этом случае (если опция включена) вы должны обновлять список файлов вручную (используя клавиатурное сочетание C-r).

Отметка перемещает курсор. Когда вы отмечаете файл (клавишей Insert), то по умолчанию подсветка на имени файла смещается на одну строку вниз.

Инвертировать только файлы. Если опция включена (по умолчанию она включена), инвертирование выбора применяется только к файлам, но не к каталогам. Выбор каталогов не изменяется. Если не установлена, производится инвертирование как файлов, так и каталогов. Все невыбранные объекты становятся выбранными и наоборот.

Простая перестановка. Если обе панели содержат списки файлов и каталогов, простая перестановка представляет собой изменение расположения панелей на экране: правая панель становится левой и наоборот. Если эта опция выключена, панели со списками файлов обмениваются своим содержимым, сохраняя формат списка и параметры сортировки. По умолчанию выключено.

Автосохранение настроек панелей. Если опция включена (по умолчанию она выключена), то при выходе из M-Commander'а текущие настройки панелей сохраняются в файле ~/.config/mc6/panels.ini.

Следить за каталогами. Если опция включена (по умолчанию она включена), M-Commander просит ядро сообщать об изменениях в каталогах, показанных на панелях, и перечитывает панель, когда файл в ней создан, удалён или изменён чем-то ещё: другим терминалом, сборкой или оболочкой встроенного терминала. Панель, убранная с экрана, перечитывается при возврате. Одно наблюдение охватывает весь каталог, поэтому его цена не зависит от числа файлов в нём, а серия изменений приводит к одному перечитыванию. Каталоги виртуальных файловых систем и каталоги на файловых системах, за которыми ядро следить не умеет (например NFS), работают по-прежнему: там список обновляется вручную (C-r). Пока эта опция включена, опция Быстрая загрузка каталога выигрыша не даёт и показывается недоступной.

Навигация

Навигация в стиле lynx. Если эта опция включена, вы имеете возможность использовать клавиши Rigth для перехода в подсвеченный в данный момент каталог и Left для перехода в родительский по отношению к текущему каталог (при условии, что командная строка пуста). По умолчанию опция выключена.

Страничное листание. Если опция установлена (по умолчанию она установлена), то когда курсор (подсветка) достигает конца или начала списка файлов, отображаемого на панели, будет производиться смещение на половину этого списка (то есть половина отображаемого списка остается на экране, а половина пропадает, заменяясь следующими пунктами общего списка). Если опция не установлена, происходит смещение только на одну строку.

Страничное листание мышью. Определяет, будет ли прокрутка информации (scrolling) в панелях, осуществляемая с помощью мышки, производиться страницами или на одну строку.

Центрированное листание. Если эта опция включена, содержимое панели будет пролистываться, а курсор будет находиться в середине колонки списка файлов. Эта опция не применяется к страничному листанию - в этом случае позиция курсора изменится.

Расцветка файлов

По умолчанию вся информация отображаются одним цветом, но вы можете сделать так, чтобы права доступа и типы файлов были выделены другими цветами. Если включено выделение цветом прав доступа, поля perm и mode в форматах вывода, показывающие права пользователя, запустившего программу M-Commander, выделены цветом, определённым ключевым словом selected. Если разрешено, подсветка имён файлов производится на основании правил из файла /etc/mcommander/filehighlight.ini. Смотрите Подсветка имён файлов для получения большей информации.

Быстрый поиск и быстрый фильтр

Быстрый поиск файлов и быстрый фильтр могут работать в одном из трёх режимов: с учётом регистра имён файлов, без учёта регистра или в соответствии с порядком сортировки файлов в панели: с учётом регистра или без. Режим по умолчанию - использование порядка сортировки файлов в панели.

Подтверждения

Используя это диалоговое окно, вы можете сделать так, чтобы перед выполнением операций удаления, перезаписи файла, запуска файла на выполнение, перед выходом из программы M-Commander, перед удалением каталога из каталогов быстрого доступа, а также перед очисткой истории выдавался дополнительный запрос на подтверждение.

Оформление

Используя это диалоговое окно, вы можете выбрать скин и разрешить отрисовку теней у диалоговых окон и выпадающих меню.

Для получения более подробной информации о скинах обратитесь к разделу Внешний вид.

Тени. Если эта опция включена, все диалоговые окна и выпадающие меню будут иметь тени.

Распознавание клавиш...

Этот диалог учит mcommander тем управляющим последовательностям, которые ваш терминал шлёт для функциональных клавиш, стрелок и клавиш перемещения.

Отметьте флажками сочетание модификаторов (Ctrl, Alt, Shift), затем нажмите кнопку нужной клавиши. Нажмите саму клавишу на клавиатуре и дождитесь, пока сообщение о захвате исчезнет. Распознанная последовательность появится рядом с кнопкой.

Del - забыть распознанную клавишу.

Сохранить - записать распознанные клавиши в ~/.config/mc6/term/<TERM>.

Правка файла терминала - открыть файл определений клавиш терминала в редакторе.

Старые определения из секции [terminal:TERM] файла ~/.config/mc6/ini переносятся автоматически при первом запуске.

Управление плагинами

Плагины, которые загрузила программа, в виде таблицы: вид, имя и то, что плагин сообщает о себе. Флажок в строке выключает и включает плагин; что выключено, в следующий раз не загружается.

Enter, F4
Открыть настройки плагина, на котором стоит курсор. Плагин без настроек сообщает об этом.

Здесь перечислены панельные плагины вместе с плагинами редактора и пакетами Lua-скриптов; скрипты пакета показывает диалог Lua-скрипты из его настроек.

Lua-скрипты

Скрипты пакета Lua в виде таблицы: имя, идентификатор, где скрипт лежит, что он предоставляет и что делает. Флажок в строке выключает и включает скрипт.

Настройки
Запустить скрипт с настройками пакета, если он есть.

Файл существует

Копирование в панель плагина нашло там файл с таким же именем. Диалог показывает путь, размер и время того, что копируется, и того, что уже есть, и спрашивает, что делать: перезаписать, пропустить, продолжить копирование с места остановки, если плагин это умеет, или прервать всю операцию.

Выбор кодировки

Список кодировок, которые знает программа, из файла /usr/share/mcommander/charsets. Выбор кодировки говорит программе, в какой записаны имена или текст, а пункт <Без перекодировки> оставляет их как есть. Список открывает Alt-e в панели, во встроенной программе просмотра и в редакторе, а также пункт "Выбор кодировки" их меню.

История строки ввода

Список того, что вводили в строку ввода раньше, начиная с последнего; его открывает Alt-h для той строки, в которой стоит курсор. Enter подставляет выбранную запись в строку, Esc оставляет строку как была, а F8, Del удаляет запись из истории.

Редактировать файл расширений

Этот пункт меню "Команда" служит для вызова редактора и редактирования файла ~/.config/mc6/extensions.ini. Если этот файл не существует и вы не root, этот файл будет скопирован с /etc/mcommander/extensions.ini. Если вы root, вы можете выбрать, какой из файлов редактировать: пользовательский ~/.config/mc6/extensions.ini или системный /etc/mcommander/extensions.ini. Формат этого файла подробно описан в нём самом.

Сохранение установок

При загрузке M-Commander пытается считать значения различных установочных параметров из файла ~/.config/mc6/ini. Если такого файла не существует, необходимая информация ищется в общесистемном конфигурационном файле mc.ini. Этот файл располагается в каталоге, путь к которому можно определить, запустив команду mcommander -f. (это можно сделать даже из командной строки M-Commander). Если и этого файла не существует, M-Commander использует установки по умолчанию.

Команда Сохранить настройки создаёт файл ~/.config/mc6/ini, в котором записываются текущие значения параметров, задаваемых опциями меню Левая, Правая и Настройки.

Если вы включите опцию Автосохранение настроек (пункт меню "Настройки/Конфигурация"), M-Commander будет автоматически сохранять текущие настройки при выходе из программы.

Значения некоторых параметров не могут быть изменены через пункты меню. Для изменения значений этих параметров вы должны отредактировать файл настроек с помощью какой-либо программы- редактора. Подробнее об этих параметрах смотрите в разделе Специальные установки.

Выполнение команд операционной системы

Для того чтобы во время работы с M-Commander запустить любую команду ОС, вы должны либо набрать имя соответствующей программы в командной строке, либо выбрать имя программы в одной из панелей (переместив подсветку на имя файла программы), а затем нажать клавишу Enter.

Если вы нажимаете клавишу Enter в тот момент, когда подсветка указывает на имя файла, не являющегося исполняемым, M-Commander сравнивает расширение выбранного файла с расширениями, прописанными в файле расширений. Если в файле расширений найдётся подраздел, задающий процедуры обработки файлов с данным расширением, то обработка файла производится в соответствии с заданными в этом подразделе командами. Перед обработкой выполняются простые макроподстановки.

Встроенная команда cd

Команда cd не передаётся на исполнение оболочке, а интерпретируется самой программой M-Commander. Поэтому при её запуске возможны не все удобные макрорасширения и подстановки, доступные в оболочке, а только часть из них:

Замена тильды Символ тильды (~) будет заменен именем вашего домашнего каталога, а если вы добавите после тильды имя пользователя, эта конструкция будет заменена на имя домашнего каталога указанного пользователя.

Например, ~guest - это домашний каталог пользователя guest, в то время как ~/guest - это каталог guest в вашем домашнем каталоге.

Предыдущий каталог вы можете перейти в предыдущий каталог, используя специальное имя '-', то есть выполнив команду: cd -

Каталоги в CDPATH Если каталог, указанный команде cd, не является подкаталогом текущего каталога, то M-Commander использует значение переменной окружения CDPATH для поиска указанного каталога во всех каталогах, перечисленных в этой переменной.

Например, если переменной CDPATH присвоено значение ~/src:/usr/src, то из любого места в файловой системе вы сможете перейти в любой подкаталог каталогов ~/src и /usr/src, используя только относительные имена (cd linux вызовет переход в /usr/src/linux).

Макроподстановки

Перед выполнением команд, задаваемых пунктами пользовательского меню, вызываемых по расширению имени файла, или запускаемых из командной строки ввода, вначале выполняются простые макроподстановки.

%i
Отступ из пробелов, равный текущему положению курсора. Только для меню редактора.

%y
Тип синтаксиса текущего файла. Только для меню редактора.

%b
Имя файла блока редактора.

%e
Имя файла протокола ошибок исполнения сценариев редактора.

%m
Имя текущего файла меню.

%f и %p
В файле меню файлового менеджера: текущее имя файла в активной панели. В файле меню встроенного редактора: имя открытого файла.

%x
Расширение текущего файла.

%n
Имя текущего файла без расширения.

%d
Имя текущего каталога.

%F
Текущее имя файла в неактивной панели.

%D
Имя текущего каталога в неактивной панели.

%t
Отмеченные файлы.

%T
Файлы, отмеченные в неактивной панели.

%v и %V
Подобны макросам %t и %T, но используют полные имена файлов.

%u и %U
Подобны макросам %t и %T, но дополнительно снимается отметка с файлов. Их можно использовать в скриптах, заданных для пункта меню или ассоциированных с расширением файла, только один раз, поскольку после их использования помеченных файлов не будет.

%s и %S
Выбранные файлы: помеченные файлы, если такие есть; в противном случае файл, имя которого подсвечено.

%cd
Это специальный макрос, используемый для перехода из текущего каталога в каталог, указанный перед этим макросом. Используется в основном для обращения к виртуальным файловым системам.

%view
Этот макрос используется для вызова встроенной программы просмотра. Может использоваться как с аргументами, так и без них. Если заданы аргументы, они должны быть заключены в фигурные скобки.

Аргументами могут быть: ascii - для перевода программы просмотра в режим ascii; hex - для перевода программы просмотра в режим hex; nroff - для указания программе просмотра, что необходимо интерпретировать выделенные (bold) и подчеркнутые последовательности nroff; unformatted - указывает программе просмотра, что не нужно использовать команды nroff для выделения или подчеркивания текста;

%%
Символ %

%{любой текст}
Запрос на подстановку. Будет выдаваться окно ввода, а текст из скобок выводится как подсказка. Макрос заменяется на текст, введённый пользователем в окне ввода. Пользователь может нажать Esc или F10 для того, чтобы отказаться от ввода. Этот макрос пока не работает в командной строке.

%var{ENV-VAR:default}
Этот макрос будет заменяться на значение переменной окружения ENV-VAR, если она установлена, в противном случае будет использовано значение default. Это подобно конструкции ${VAR-def} в оболочке Борна.

Терминал

M-Commander держит вашу оболочку в псевдотерминале за панелями. Работают оболочки bash, ash (BusyBox и Debian), (o/m)ksh, tcsh, zsh и fish.

Берётся оболочка из переменной SHELL, а если она не задана, то из файла /etc/passwd. Вместо того чтобы вызывать новую оболочку на каждую команду, команда передаётся этой оболочке так, как будто вы набрали её сами. Поэтому можно менять переменные окружения, пользоваться функциями оболочки и заводить алиасы, которые действуют до выхода из M-Commander.

bash
команды запуска в ~/.local/share/mc6/bashrc (иначе ~/.bashrc), своя раскладка клавиатуры в ~/.local/share/mc6/inputrc (иначе ~/.inputrc).

ash/dash
(BusyBox или Debian) команды запуска в ~/.local/share/mc6/ashrc (иначе ~/.profile).

ksh/oksh
команды запуска в ~/.local/share/mc6/kshrc (иначе ENV или ~/.profile).

mksh
(MirBSD ksh) команды запуска в ~/.local/share/mc6/mkshrc (иначе ENV или ~/.mkshrc).

zsh
команды запуска в ~/.local/share/mc6/.zshrc (иначе ~/.zshrc).

tcsh, fish
своих файлов запуска для mcommander пока нет, работают только файлы самой оболочки.

Выполняемое приложение можно в любой момент отложить комбинацией C-o и вернуться к M-Commander. Если вы прервали таким образом команду, то запустить другую внешнюю команду не получится, пока прерванное приложение не завершено.

За панелями терминал хранит всю выдачу оболочки, и пока панели убраны, её можно читать, отмечать и очищать. Клавиши управления курсором ходят по выдаче, а они же с Shift отмечают её, и то и другое пока терминал сам держит фокус; клавиши, которые только двигают обзор, работают независимо от того, кто принимает ввод. Любая клавиша, не названная ниже, попадает в оболочку.

Ctrl-Insert    копировать отмеченное в буфер обмена
Ctrl-Shift-u   снять отметку
Alt-s          искать в выдаче то, что набирается дальше
Alt-Shift-s    показать только совпавшие строки
Ctrl-l         очистить экран, сохранив выдачу
Ctrl-Shift-l   очистить и экран, и всю выдачу

(то же самое Ctrl-Alt-l)

Alt-s и Alt-Shift-s берут образец так же, как в панелях: он набирается в верхней строке экрана, и выдача следует за ним по мере набора. Регистр значения не имеет. Поиск идёт вниз от курсора и отмечает ближайшее совпадение; Alt-s ещё раз отмечает следующее ниже, а за самой новой строкой поиск переходит к самой старой. Там, где печатает оболочка, ещё ничего не читали, и поиск берёт выдачу с самой старой строки. Фильтр показывает только совпавшие строки, и клавиши управления курсором ходят по ним прямо во время набора; Alt-Shift-s ещё раз переводит курсор на строку ниже. Настройка search_direction разворачивает обе клавиши: поиск идёт вверх по выдаче, как в less и как было раньше. Нажатые без набранного образца, обе клавиши берут прежний образец. Backspace убирает символ, а символ, с которым не совпадает ничего, не принимается. Enter заканчивает набор и оставляет обзор на найденном, вместе с отметкой; Esc заканчивает его и возвращает обзор к тому, что было до набора: курсор туда, где читали, или на промпт, если не читали, и фильтр с отметкой, какие были. Любая другая клавиша заканчивает набор и делает то, что делает.

Когда панели убраны, большинство функциональных клавиш принадлежит терминалу, и строка кнопок называет их. Просмотра, правки, копирования, переноса и удаления там нет: они работают с файлом под курсором панели, а этого курсора не видно. F8 намеренно оставлена пустой, чтобы привычное движение к удалению не сделало что-то другое. F7 создаёт каталог, а Shift-F4 правит новый файл, как и при поднятых панелях: обе работают в каталоге панели, а это тот же каталог, в котором стоит оболочка.

F2           копировать отмеченное в буфер обмена
F3           отметить всю выдачу или снять имеющуюся отметку
F4           оставить только строки, совпавшие с отметкой

или со словом под курсором F5 снять этот фильтр и поставить его снова F6 очистить и экран, и всю выдачу

Пока оболочка ждёт у приглашения, F1, F7, Shift-F4, F9 и F10 принадлежат файловому менеджеру, и F1 открывает помощь по этому разделу. Как только команда запущена, экран и все клавиши на нём принадлежат ей, в том числе и эти. Пять клавиш выше - исключение: пока команда работает, они остаются за терминалом. Полноэкранное приложение, редактор или программа постраничного просмотра забирает себе все клавиши, включая и их. Все они перечислены в секции [mcterm] файла привязок клавиш и переопределяются там же.

Если у приглашения оболочки за убранными панелями набрать mcommander без аргументов, то запущенный M-Commander снова покажет свои панели, а не запустит вторую копию. С аргументом, например с именем каталога, запускается вложенный M-Commander, как и прежде.

Простое приглашение, которое выводит M-Commander, имеет вид "user@host:current_path$ ". С развитой оболочкой, такой как Bash, это будет то же приглашение, которым вы пользуетесь в самой оболочке.

(Известная особенность fish: приглашение видно только в полноэкранном режиме (Ctrl-o), но не при поднятых панелях.)

Чтобы взять оболочку, отличную от переменной SHELL и от оболочки, записанной в /etc/passwd, вызовите M-Commander так: SHELL=/bin/myshell mcommander

В разделе Опции запуска описано, как управлять оболочкой из командной строки.

Права доступа

Диалоговое окно "Права доступа" предоставляет удобный интерфейс к команде chmod - команде изменения атрибутов доступа к файлам и каталогам. Доступ к этому окну можно получить по "горячей" комбинации клавиш C-x c.

Диалоговое окно "Права доступа" состоит из двух частей: "Права доступа" и "Файл".

В части "Файл" отображается имя файла или каталога и права доступа на него в восьмеричной форме, а также указаны владелец и группа файла.

В части "Права доступа" расположены двенадцать кнопок-флажков, каждая из которых соответствует одному атрибуту доступа. Изменять установки атрибутов можно двумя способами.

При первом способе непосредственно изменяется состояние кнопок-флажков. Для изменения значений атрибутов надо выбрать соответствующую кнопку и нажать клавишу пробела.

Для перемещения по кнопкам можно использовать клавиши-стрелки или клавишу Tab. Изменяемые атрибуты помечаются звёздочкой, и предполагаемое значение всех прав доступа в восьмеричном представлении сразу же отображаются в части окна "Файл".

Для того чтобы выбранные вами значения атрибутов прав доступа вступили в силу, надо нажать клавишу Enter или экранную кнопку [Установить]. Для отказа от изменения атрибутов нужно нажать кнопку [Прервать]. Вместо выбора экранных кнопок можно воспользоваться "горячими" клавишами соответствующих кнопок-флажков.

Изменять права доступа к отдельному файлу можно только этим способом. Если вы хотите изменить атрибуты прав доступа сразу группы файлов или каталогов, вы тоже можете воспользоваться этим способом, только вместо экранной кнопки [Установить] или клавиши Enter должны выбрать кнопку [Установить всё].

Второй способ заключается в том, что вы сначала помечаете те атрибуты, которые хотите изменить, с помощью клавиш Ins или t. Обратите внимание, что состояния кнопок-флажков при этом не изменяется. После этого вы выбираете один из следующих вариантов действия (то есть одну из экранных кнопок):

[Отметить всё]
отмеченные атрибуты (и только они) будут установлены в соответствии с состоянием кнопок-флажков, причём для всех выбранных (помеченных) файлов. Если атрибут не был отмечен, его значение для выбранных файлов не изменяется.

[Установить помеченное]
для всех выбранных файлов бит, соответствующий данному атрибуту, будет установлен в 1.

[Очистить помеченное]
для всех выбранных файлов бит, соответствующий данному атрибуту, будет установлен в 0.

[Установить]
будут установлены атрибуты только для одного файла (первого из помеченных), причём установка производится так же, как по кнопке [Отметить всё].

[Прервать]
отказаться от выполнения команды Chmod.

Владелец/группа

Пункт меню "Владелец/группа" используется для того, чтобы изменить владельца файла или группу, которая имеет какие-то права на файл. "Горячая" клавиша для вызова этого пункта меню - C-x o.

Расширенная команда Chown

Выбрав пункт меню "Расширенная команда Chown", вы увидите окно, совмещающее в себе окна, появляющиеся при выборе пунктов Права доступа и Владелец/группа. В этом окне можно изменить как права доступа к файлу, так и владельцев файла.

Команда Chattr

Диалоговое окно "Команда Chattr" предоставляет удобный интерфейс к команде chattr - команде изменения атрибутов файлов и каталогов на файловых системах ОС Linux. Доступ к этому окну можно получить по "горячей" комбинации клавиш C-x e.

Множество поддерживаемых файловой системой атрибутов зависит от самой файловой системы. Символьное представление атрибутов под именем файлов показывает все доступные атрибуты (для расшифровки символов атрибутов смотрите страницу руководства к команде chattr(1), а кнопки-флажки представляют только те атрибуты, которые можно изменить. Каждая из кнопок-флажков соответствует одному атрибуту. Изменять установки атрибутов можно двумя способами.

При первом способе непосредственно изменяется состояние кнопок-флажков. Для изменения значений атрибутов надо выбрать соответствующую кнопку и нажать клавишу пробела.

Для перемещения по кнопкам можно использовать клавиши-стрелки или клавишу Tab. Изменяемые атрибуты помечаются звёздочкой, и предполагаемое значение всех атрибутов в символьном представлении сразу же отображается под именем файла.

Для того чтобы выбранные вами значения атрибутов вступили в силу, надо нажать клавишу Enter или экранную кнопку [Установить]. Для отказа от изменения атрибутов нужно нажать кнопку [Прервать].

Изменять атрибуты отдельного файла можно только этим способом. Если вы хотите изменить атрибуты сразу группы файлов или каталогов, вы тоже можете воспользоваться этим способом, только вместо экранной кнопки [Установить] или клавиши Enter должны выбрать кнопку [Установить всё].

Второй способ заключается в том, что вы сначала помечаете те атрибуты, которые хотите изменить, с помощью клавиш Ins или t. Обратите внимание, что состояния кнопок-флажков при этом не изменяется. После этого вы выбираете один из следующих вариантов действия (то есть одну из экранных кнопок):

[Отметить всё]
отмеченные атрибуты (и только они) будут установлены в соответствии с состоянием кнопок-флажков, причём для всех выбранных (помеченных) файлов. Если атрибут не был отмечен, его значение для выбранных файлов не изменяется.

[Установить помеченное]
для всех выбранных файлов данный атрибут будет установлен.

[Очистить помеченное]
для всех выбранных файлов данный атрибут будет сброшен.

[Установить]
будут установлены атрибуты только для одного файла (первого из помеченных), причём установка производится так же, как по кнопке [Отметить всё].

[Прервать]
отказаться от выполнения команды Chattr.

Операции с файлами

Когда вы выполняете операции копирования, перемещения или удаления файлов, M-Commander отображает на экране диалоговое окно, в котором показано, какой(ие) файл(ы) в данный момент обрабатывается и как идет процесс обработки. Для отображения процесса обработки на экран выводится до двух диаграмм-полосок (progress bars). Первая показывает, какая часть текущего файла обработана (например, скопирована). Вторая показывает долю выполненных работ (в процентах от суммарного объема помеченных файлов). Если выключена опция Детали операций (см. Настройки/Конфигурация. ), вторая диаграмма не отображаются.

В нижней части этого диалогового окна имеются три кнопки:

[Пропустить]
прерывает обработку текущего файла.

[Приостановить]
приостанавливает выполнение операции и при нажатии превращается в кнопку [Продолжить], при нажатии на которую выполнение операции продолжится.

[Прервать]
прерывает выполнение заданной операции, все оставшиеся файлы будут пропущены.

В процессе выполнения файловых операций вы можете увидеть окна ещё трёх видов.

Окно ошибок информирует об ошибке и предлагает четыре варианта продолжения:

[Игнорировать]
проигнорировать текущую ошибку файловой операции.

[Игнорировать всё]
игнорировать эту и все последующие ошибки файловой операции.

[Прервать]
отменить выполнение заданной операции.

[Повторить]
продолжить выполнение операции, когда вам удалось устранить причину сбоя (например, воспользовавшись другим терминалом).

Перезапись файла

Окно подтверждения перезаписи появляется тогда, когда вы пытаетесь переписать существующий файл. В этом окне отображаются время создания и размеры файла-источника и файла-приёмника. Ннже находится вопрос "Переписать этот файл?" и предлагается четыре варианта ответа:

[Да]
переписать текущий файл.

[Нет]
пропустить перезапись текущего файла.

[Дописать в конец]
дописать содержимое файла-источника в конец файла-приёмника.

[Докачать]
дописать оставшуюся часть файла-источника в конец файла-приёмника. Эта кнопка появляется только в том случае, если размер файла-приёмника не нулевой и меньше размера файла-источника.

Выбор одного из вариантов ответа на второй вопрос ("Переписать все файлы?") позволяет принять одно решение по всем выбранным для обработки файлам (чтобы окно запроса не появлялось каждый раз). Предлагается четыре варианта решения:

[Все]
перезаписать без дополнительных вопросов все выбранные файлы.

[Старше]
перезапиcать (затереть) только те файлы, которые созданы раньше файла-источника.

[Ни одного]
не перезаписывать файлы (но если не существует файла-приёмника, то копирование источника будет произведено).

[Меньше]
перезапиcать (затереть) только те файлы, размеры которых меньше размеров соответствующих файлов-источников.

[Различающиеся по длине]
перезапиcать (затереть) только те файлы, размеры которых отличаются от размеров соответствующих файлов-источников.

[Прервать]
прервать выполнение операции.

Если перекючатель Не перезаписывать файлами нулевой длины включен, то файлы-источники с нулевыми размерами не будут перезаписывать файлы-приёмники с ненулевымы размерами.

Окно запроса на рекурсивное удаление появляется в том случае, если вы пытаетесь удалить непустой каталог. В этом диалоге имеются следующие кнопки:

[Да]
каталог будет удален вместе со всеми файлами.

[Нет]
отказ от удаления каталога.

[Всё]
удалить все помеченные каталоги.

[Ни одного]
пропустить все непустые каталоги из числа помеченных.

[Прервать]
отказ от выполнения операции удаления.

Если вы пометили для обработки группу файлов, то после выполнения операции будет снята отметка только с тех файлов, которые успешно обработаны. Пропущенные файлы останутся помеченными.

Маски файлов для операций копирования/переименования

При выполнении операций копирования и перемещения (или переименования) файлов вы имеете возможность изменить имена копируемых или перемещаемых файлов. Для этого вы должны задать маску для имен файлов-источников и маску для имен файлов, которые будут созданы (файлы-приёмники). Обычно эта вторая маска представляет собой несколько символов замены (wildcards) в конце строки, определяющей место назначение создаваемых файлов. Все файлы, удовлетворяющие маске источника, будут переименованы (скопированы или перемещены с новыми именами) в соответствии с маской файла-приёмника. Если имеются помеченные файлы, то копируются (перемещаются) только помеченные файлы, удовлетворяющие заданной маске для файлов-источников.

Есть ещё несколько опций, которые влияют на выполнение операций копирования/перемещения файлов, и которые устанавливаются в том же окне запроса, где задаются маски имен файлов:

Разыменовывать ссылки

определяет, будут ли при копировании жестких или символических ссылок в каталоге- приёмнике (и рекурсивно в подкаталогах) создаваться такие же ссылки, или будут копироваться файлы (и подкаталоги), на которые эти ссылки указывают.

Внутрь каталога, если есть

определяет, что делать, если в каталоге-приёмнике уже существует подкаталог, имя которого совпадает с именем файла (каталога), который копируется (источника). По умолчанию (опция выключена) содержимое каталога-источника копируется в каталог-приёмник. Если опция включена, то в каталоге приёмнике будет создан новый подкаталог с тем же именем, в который и будет осуществляться копирование. Лучше показать это на примере:

Пусть вы хотите скопировать каталог /foo, содержащий файл bar, в уже существующий каталог /bla/foo. Если эта опция не включена, M-Commander скопирует файл /foo/bar в файл /bla/foo/bar. Если опцию включить, будет создан каталог /bla/foo/foo и файл /foo/bar будет скопирован в файл /bla/foo/foo/bar.

Сохранять атрибуты

определяет, будут ли при копировании/перемещении сохранены атрибуты исходных файлов и каталогов: права доступа, временные метки и, если вы root, UID и GID. Если опция выключена, атрибуты будут установлены в соответствии с текущим значением umask.

Сохранять атрибуты ext2

определяет, будут ли при копировании/перемещении сохранены расширенные атрибуты исходных файлов и каталогов на файловой системе ext2/3/4.

Образцы в стиле shell

Когда эта опция включена, можно использовать символы замены (wildcards) '*' и '?' в маске источника. Они обрабатываются аналогично тому, как это делается в shell. В маске приёмника разрешается использовать только '*' и '\<цифра>'. Первый символ '*' в маске приёмника соответствует первой группе символов замены в маске источника, второй символ '*' соответствует второй группе и т. д. Аналогично, символ замены '\1' соответствует первой группе символов замены в маске источника, символ '\2' - второй группе и т. д. до '\9'. Символ '\0' соответствует целому имени файла-источника.

Два примера:

Если маска источника "*.tar.gz", а приёмник - "/bla/*.tgz" и имя копируемого файла - "foo.tar.gz", копия будет называться "foo.tgz" и будет находиться в каталоге "/bla".

Предположим вы хотите поменять местами имя и расширение файла, так чтобы "file.c" стал файлом "c.file". Маска источника для этого должна иметь вид "*.*", а маска приёмника - "\2.\1".

Когда опция Образцы в стиле shell выключена, M-Commander не осуществляет автоматической группировки. Для указания групп символов в маске источника, которые будут соответствовать символам замены в маске приёмника, вы должны в этом случае использовать скобки '\(...\)'. Этот способ более гибкий, но требует больше усилий при вводе.

Два примера:

Если маска источника имеет вид "^\(.*\)\.tar\.gz$", копирование производится в "/bla/*.tgz" и копируется файл "foo.tar.gz", то результатом будет "/bla/foo.tgz".

Предположим, что вы хотите поменять местами имя файла и его расширение, так чтобы имена вида "file.c" приняли вид "c.file". Маска источника для этого - "^\(.*\)\.\(.*\)$", а маска приёмника - "\2.\1".

Преобразование регистра

Вы можете также преобразовать регистр символов в именах файлов. Если вы используете '\u' или '\l' в маске приёмника, то следующий символ имени будет образован в верхнем (заглавные символы) или нижнем (строчные) регистре соответственно.

Если использовать в маске приёмника '\U' или '\L', то к соответствующему регистру будут преобразованы все последующие символы, вплоть до следующего вхождения '\E' или '\U', появления символа '\L' или конца имени файла.

Применение '\u' и '\l' обеспечивает более широкие возможности, чем '\U' и '\L'.

Например, если маска источника есть '*' (опция Образцы в стиле shell включена) или "^\(.*\)$" (опция Образцы в стиле shell выключена), а маска приёмника есть "\L\u*", имена файлов будут преобразованы таким образом, что первые буквы имени будут заглавными, а все остальные - строчными.

Символ '\' в масках используется для отмены специальной интерпретации отдельных символов. Например, "\\" означает просто backslash и "\*" означает просто звёздочку (asterisk).

Изменять относительные ссылки

указывает, что M-Commander должен изменять символические ссылки. Скопированные символические ссылки будут указывать на то же расположение, что и оригинальная ссылка, при этом дописываются необходимые ../ и другие каталоги.

Отметить файлы

Диалоговое окно параметров отметки группы файлов по заданному шаблону. Строка ввода предназначена для ввода регулярного выражения (маски) для помети файлов. Если включена опция Только файлы, то выделены будут только файлы. Если опция Только файлы выключена, то выделены будут как файлы, так и каталоги. Если включена опция Образцы в стиле shell, регулярные выражение строятся по тем же правилам, которые действуют в оболочке shell ('*' означает ноль или большее число любых символов, а '?' заменяет один произвольный символ). Если опция Образцы в стиле shell выключена, то пометка файлов производится по правилам обработки нормальных регулярных выражений (смотрите ed(1)). Если включена опция С учётом регистра то пометка файлов и каталогов будет производиться с учётом регистра символов имён. Если опция С учётом регистра выключена, то регистр символов учитываться не будет.

Краткий справочник по регулярным выражениям

Основные элементы

Один из символов a, b или c      [abc]
Любой символ, кроме a, b и c     [^abc]
Символ из диапазона a-z          [a-z]
Символ не из диапазона a-z       [^a-z]
Символ из диапазона a-z или A-Z  [a-zA-Z]
Любой одиночный символ           .
Выбор: a или b                   a|b
Любой пробельный символ          \s
Любой непробельный символ        \S
Любая цифра                      \d
Любой символ, кроме цифры        \D
Любой символ слова               \w
Любой символ не из слова         \W
Группа без захвата               (?:...)
Группа с захватом                (...)
Ноль или одно вхождение a        a?
Ноль или более вхождений a       a*
Одно или более вхождений a       a+
Ровно 3 вхождения a              a{3}
3 вхождения a или больше         a{3,}
От 3 до 6 вхождений a            a{3,6}
Начало строки                    ^
Конец строки                     $
Граница слова                    \b
Не граница слова                 \B

Якоря

Начало совпадения        \G
Начало строки            ^
Конец строки             $
Начало строки            \A
Конец строки             \Z
Абсолютный конец строки  \z
Граница слова            \b
Не граница слова         \B

Общие элементы

Перевод строки   \n
Возврат каретки  \r
Табуляция        \t
Нулевой символ   \0

Метапоследовательности

Любой одиночный символ                 .
Выбор: a или b                         a|b
Любой пробельный символ                \s
Любой непробельный символ              \S
Любая цифра                            \d
Любой символ, кроме цифры              \D
Любой символ слова                     \w
Любой символ не из слова               \W
Знак Unicode вместе с переводом строк  \X
Переводы строк Unicode                 \R
Любой символ, кроме перевода строки    \N
Вертикальный пробельный символ         \v
Отрицание \v                           \V
Горизонтальный пробельный символ       \h
Отрицание \h                           \H
Сбросить начало совпадения             \K
Совпадение с подшаблоном номер #       \#
Свойство Unicode X                     \pX
Свойство Unicode или вид письма        \p{...}
Отрицание \pX                          \PX
Отрицание \p{...}                      \P{...}
Цитирование: всё внутри буквально      \Q...\E
Совпадение с подшаблоном 'name'        \k{name}
Совпадение с подшаблоном 'name'        \k<name>
Совпадение с подшаблоном 'name'        \k'name'
Совпадение с n-м подшаблоном           \gn
Совпадение с n-м подшаблоном           \g{n}
n-й подшаблон назад от текущего        \g{-n}
Выражение n-й группы захвата           \g<n>
Выражение n-й группы захвата впереди   \g<+n>
Выражение n-й группы захвата           \g'n'
Выражение n-го подшаблона впереди      \g'+n'
Совпадение с именованной группой       \g{letter}
Выражение именованной группы           \g<letter>
Выражение именованной группы           \g'letter'
Шестнадцатеричный символ YY            \xYY
Шестнадцатеричный символ YYYY          \x{YYYY}
Восьмеричный символ ddd                \ddd
Управляющий символ Y                   \cY
Символ забоя (backspace)               [\b]
Делает любой символ буквальным         \

Квантификаторы

Ноль или одно вхождение a   a?
Ноль или более вхождений a  a*
Одно или более вхождений a  a+
Ровно 3 вхождения a         a{3}
3 вхождения a или больше    a{3,}
От 3 до 6 вхождений a       a{3,6}
Жадный квантификатор        a*
Ленивый квантификатор       a*?
Сверхжадный квантификатор   a*+

Классы символов

Один из символов a, b или c      [abc]
Любой символ, кроме a, b и c     [^abc]
Символ из диапазона a-z          [a-z]
Символ не из диапазона a-z       [^a-z]
Символ из диапазона a-z или A-Z  [a-zA-Z]
Буквы и цифры                    [[:alnum:]]
Буквы                            [[:alpha:]]
Коды ASCII 0-127                 [[:ascii:]]
Только пробел и табуляция        [[:blank:]]
Управляющие символы              [[:cntrl:]]
Десятичные цифры                 [[:digit:]]
Видимые символы (кроме пробела)  [[:graph:]]
Строчные буквы                   [[:lower:]]
Печатаемые символы               [[:print:]]
Видимые знаки препинания         [[:punct:]]
Пробельные символы               [[:space:]]
Прописные буквы                  [[:upper:]]
Символы слова                    [[:word:]]
Шестнадцатеричные цифры          [[:xdigit:]]
Начало слова                     [[:<:]]
Конец слова                      [[:>:]]

Флаги и модификаторы

Многострочный режим                      m
Без учёта регистра                       i
Пропускать пробелы, подробный режим      x
Однострочный режим                       s
Юникод                                   u
Дополнительный (eXtra)                   X
Нежадный                                 U
Привязка (anchor)                        A
Одинаковые имена групп                   J
Группы без захвата                       n
Пропускать все пробелы, подробный режим  xx

Конструкции групп

Группа без захвата                 (?:...)
Группа с захватом                  (...)
Атомарная группа (без захвата)     (?>...)
Сброс нумерации подшаблонов        (?|...)
Группа-комментарий                 (?#...)
Именованная группа захвата         (?'name'...)
Именованная группа захвата         (?<name>...)
Именованная группа захвата         (?P<name>...)
Встроенные модификаторы            (?imsxUJnxx)
Локальные встроенные модификаторы  (?imsxUJnxx:...)
Условное выражение                 (?(1)yes|no)
Условное выражение                 (?(R)yes|no)
Рекурсивное условное выражение     (?(R#)yes|no)
Условное выражение                 (?(R&name)yes|no)
Условие с просмотром вперёд        (?(?=...)yes|no)
Условие с просмотром назад         (?(?<=...)yes|no)
Рекурсия всего шаблона             (?R)
Выражение группы захвата 1         (?1)
Первая относительная группа        (?+1)
Выражение именованной группы       (?&name)
Совпадение с подшаблоном 'name'    (?P=name)
Выражение группы '{name}'          (?P>name)
Заранее описанные шаблоны          (?(DEFINE)...)
Положительный просмотр вперёд      (?=...)
Отрицательный просмотр вперёд      (?!...)
Положительный просмотр назад       (?<=...)
Отрицательный просмотр назад       (?<!...)
Буквенные утверждения просмотра    (*pla:...)
Неатомарное утверждение просмотра  (*non_atomic_positive_lookahead:...)
Утверждение однородности письма    (*script_run:...)
Однородность письма, кратко        (*sr:...)
Управляющее слово                  (*ACCEPT)
Управляющее слово                  (*FAIL)
Управляющее слово                  (*MARK:NAME)
Управляющее слово                  (*COMMIT)
Управляющее слово                  (*PRUNE)
Управляющее слово                  (*SKIP)
Управляющее слово                  (*THEN)

Список экранов

M-Commander поддерживает возможность одновременной работы своих встроенных модулей (таких как редактор, программа просмотра, программа сравнения файлов) и переключения между ними без необходимости закрытия загруженных файлов. Файловый менеджер может быть только один, несколько файловых менеджеров, работающих одновременно, не поддерживаются. Назовём каждый из таких модулей экраном.

Есть три способа переключения между экранами: переход к следующему экрану в списке клавиатурной комбинацией Alt-}, переход к предыдущему экрану в списке клавиатурной комбинацией Alt-{, вызов диалогового окна со списком экранов клавиатурной комбинацией Alt-` или с помощью пункта меню. Все эти комбинации клавиш одинаковы во всех экранах.

Завершение ввода

Заставьте M-Commander работать на клавиатуре вместо вас!

Завершение ввода - это попытка закончить за вас ввод текста, набранного до текущей позиции курсора. M-Commander пытается завершить ввод, трактуя уже введённый текст как переменную (если текст начинается с $), имя пользователя (если текст начинается с ~), имя машины (если текст начинается на @) или как команду (если вы в командной строке в позиции, где вы можете вводить команду; в этом случае для завершения ввода используются зарезервированные слова оболочки, в том числе любая из встроенных команд оболочки). Если введённый текст не попадает ни в одну из перечисленных категорий, выполняется попытка завершения текста как имени файла.

Завершение имен файлов, пользователей, переменных и машин работает во всех строках ввода, завершение команд - только в командной строке. Если однозначно выполнить завершение ввода невозможно (имеется несколько вариантов), M-Commander издаёт звуковой сигнал и выполняет следующие действия, в зависимости от установки опции Дополнение: показывать всё в пункте меню Настройки/Конфигурация. Если эта опция включена, список всех возможных вариантов завершения появляется возле текущей позиции и вы можете выбрать нужный вариант с помощью клавиш стрелок и Enter. Вы можете также набрать следующую букву, чтобы перейти к подмножеству всех возможных завершений. Если вы снова нажмете Alt-Tab, будет выведено уже сокращенное множество вариантов, причём в строку ввода добавляются те символы, которые определяются однозначно (даже если полное завершение ввода ещё невозможно). Как только неопределённость выбора исчезает, пропадает и диалоговое окно с вариантами. Вы можете отказаться от вывода на экран этого окна в любое время, нажав одну из клавиш Esc, F10 или Left/Right. Если опция "Дополнение: показывать всё" выключена, окно с вариантами завершения появляется только тогда, когда вы нажмете клавиши Alt-Tab второй раз, при первом нажатии M-Commander только издаёт звуковой сигнал.

Используйте экранирование символов '?', '*' и '&' (как \?, \*, \&) в именах файлов, чтобы они не рассматривались как метасимволы в регулярных выражениях при подстановках в полях ввода.

Виртуальные файловые системы

Программа M-Commander содержит слой кода для доступа к файловой системе, который называется переключателем виртуальных файловых систем. Он позволяет работать с файлами, которые не лежат в файловой системе Unix.

Кроме local, обычной файловой системы Unix, в программу встроены две виртуальные: extfs, которая показывает файл или общесистемный список деревом каталогов с помощью собственного сценария, и sfs, которая пропускает один файл через команду и показывает то, что получилось. Всё, что требует соединения с другой машиной, и архивы стали панельными плагинами, а не файловыми системами переключателя.

Переключатель разбирает все используемые имена путей и передаёт их нужной файловой системе; формат имени для каждой описан в её разделе.

Панельные плагины

Панель не привязана к файловой системе: наполнять её может плагин - всем, что он умеет перечислить. С программой поставляются

arcmc        архивы и то, что внутри них
ftp, sftp    файлы на другой машине
shell-link   файлы на другой машине поверх ssh
samba        ресурсы сервера SMB
s3           корзины хранилища S3
git          состояние репозитория
docker       контейнеры, образы и их журналы
k8s          объекты кластера
mongo        коллекции базы данных
sqlite       таблицы базы данных
systemd      юниты системы
panelize     результат команды в виде панели
mcpeek       заглянуть внутрь файла
mcstruct     двоичный файл как дерево именованных полей
skineditor   скин программы

У каждого плагина своя справка, её открывает F1 внутри его панели или диалога. Пункт Управление плагинами меню "Настройки" показывает, что загружено, отключает плагин и открывает его настройки. Панель плагина открывается из меню левой и правой панели, из каталогов быстрого доступа или набором адреса плагина в командной строке.

Внешняя файловая система (EXTernal File System)

extfs Внешняя файловая система позволяет очень просто интегрировать новые файловые контейнера и типы файлов простым написанием скриптов.

Файловая система Extfs подразделяется на две категории:

1. Автономные файловые системы, которые не ассоциированы ни с одним из типов файлов.они представляют некоторые системные данные как дерево каталогов Вы можете их вызвать набрав cd fsname://", где fsname - это короткое имя extfs (см. ниже). Примеры этих ВФС включают audio (список всех звуковых дорожек на CD) или apt (список всех установленных в системе пакетов Debian).

Например, для получения списка звуковых дорожек на CD наберите:


cd audio://

2. "Архивные" файловые системы (такие как rpm, patchfs и прочие) представляют содержимое файла как дерево каталогов. Они могут состоять из "реальных" файлов, находящихся в сжатом виде в архивах (urar, rpm) или из виртуальных файлов, например, сообщений в файле mailbox (mailfs) или части diff-файла (patchfs). Для доступа к этим ВФС суффикс fsname:// должен быть добавлен к имени архива. Сам архив может находиться в другой ВФС.

Например, для получения списка содержимого архива documents.zip наберите:


cd documents.zip/uzip://

Можно манипулировать extfs-путями как обычными каталогами и файлами. Например, можно добавить их в каталоги быстрого доступа или перейти на него из истории каталогов в панели. Основное ограничение: нельзя запускать shell-команды внутри extfs, как и на любой другой нелокальной ВФС.

Список некоторых extfs-скриптов, включённых в M-Commander:

a
доступ к DOS/Windows диску 'A:' ("cd a://").

apt
front end для системы управления пакетами APT (Debian) ("cd apt://").

audio
Чтение и воспроизведение звуковых дорожек с CD ("cd audio://" или "cd device/audio://").

deb
пакеты дистрибутива Debian GNU/Linux ("cd file.deb/deb://").

dpkg
Управление установленными deb-пакетами ("cd deb://").

hp48
просмотр и копирование файлов с/на калькулятор HP48 ("cd hp48://").

lslR
просмотр lslR-файлов, находящихся на многих FTP-серверах ("cd filename/lslR://").

mailfs
поддержка файлов формата mailbox ("cd mailbox/mailfs://").

patchfs
поддержка diff-файлов ("cd filename/patchfs://").

rpm
поддержка файлов в формате RPM ("cd filename/rpm://").

rpms
Управление установленными в системе RPM-пакетами ("cd rpms://").

ulha, urar, uzip, uzoo, uar, uha
архивы ("cd archive/xxxx://"), где xxxx один из: ulha, urar, uzip, uzoo, uar, uha).

Вы можете назначить ВФС файлах по типу или расширению в секции Файл расширений Например, для обработки пакетов Debian внесите:


regex/\.deb$
Open=%cd %p/deb://

Файловая система одного файла

sfs пропускает один файл через команду и показывает результат как отдельный файл - так читается сжатый файл без распаковки вручную. Имя файловой системы добавляется к имени файла, как и в extfs:


cd documents.gz/ugz://

Команды перечислены в /etc/mcommander/sfs.ini, по одной в строке: имя файловой системы, косая черта, номер команды, табуляция и сама команда, где %1 - это файл, на котором стоит панель, а %3 - файл, в который писать. Поставляемый файл содержит пары для упаковки и распаковки gz, bz2, lz, lz4, lzma, lzo, xz и zst и ещё несколько.

Цвета

Программа M-Commander пытается определить, поддерживает ли ваш терминал цвета, используя для этого базу данных о терминалах и имя вашего терминала. Иногда это не удаётся. В таких случаях можно включить или отключить цветной вывод, используя ключи запуска программы -c и -b, соответственно.

Программа может быть скомпилирована с использованием библиотек ncurses или S-Lang. Ncurses не даёт возможности включать цветной режим: ncurses использует только информацию из базы данных о терминалах. Для того чтобы узнать, какая библиотека была использована при компиляции, дайте команду mcommander -V.

Если программа скомпилирована с использованием менеджера экрана S-Lang, она проверяет значение переменной COLORTERM. Задание этой переменной даёт тот же эффект, что и задание ключа -c.

Можно указать терминалы, которые всегда должны работать в цветном режиме, добавив строку color_terminals в секцию Colors инициализационного файла. В этом случае M-Commander не будет пытаться определить, поддерживает ли ваш терминал цветной вывод. Пример:

[Colors]
color_terminals=linux,xterm

color_terminals=terminal-name1,terminal-name2...

Внешний вид

Вы можете изменить внешний вид M-Commander'а. Для этого необходимо указать файл, в котором указаны цвета и линии для отрисовки рамок. Такой файл называется далее скин-файл. переопределение внешнего вида полностью совместимо с заданием цветов, описанным в секции Цвета.

Если скин содержит описание любого из 256-ти цветов, то необходимо установить опцию '256colors' со значением TRUE в секции [skin].

Поиск скин-файла производится по следующему алгоритму (до первого нахождения файла):

1) параметр командной строки -S <скин> или --skin=<скин>
2) переменная окружения MC_SKIN
3) параметр skin в секции [Midnight-Commander] конфигурационного файла.
4) файл /etc/mcommander/skins/default.ini
5) файл /usr/share/mcommander/skins/default.ini

Параметры в трёх первых случаях могут содержать абсолютный путь к скин-файлу либо просто название скина (с расширением .ini либо без него). В данном случае поиск скин-файла будет происходить по следующим каталогам (до первого нахождения):

1) ~/.local/share/mc6/skins/
2) /etc/mcommander/skins/
3) /usr/share/mcommander/skins/

Для получения расширенной информации, обратитесь к подразделам:
Описание секций и параметров
Определения цветовых пар
Псевдонимы цветов и атрибутов
Линии для отрисовки рамок
Совместимость

Описание секций

Секция [skin] содержит информацию, относящуюся к самому скин-файлу. Параметр description кратко описывает скин.

Секция [filehighlight] содержит описания цветовых пар для групп подсветок имен файлов. Названия параметров в секции должно совпадать с названиями секций в файле подсветки. Смотрите раздел Подсветка имён файлов для получения подробной информации.

Секция [core] содержит описание элементов, используемых повсеместно.

_default_
Цвет по умолчанию. Используется во всех остальных секциях (глобальный параметр), если в них нет переопределения.

selected
курсор

marked
отмеченные данные

markselect
курсор на отмеченных данных

gauge
цвет заполненной части индикатора прогресса

input
элемент ввода данных

reverse
инвертированный цвет

Секция [dialog] содержит описания элементов диалоговых окон (кроме сообщений об ошибках).

_default_
цвет по умолчанию для данной секции. Если не указан, то используется [core]._default_

dfocus
цвет элемента, находящегося в фокусе

dhotnormal
цвет "горячих" клавиш

dhotfocus
цвет "горячих" клавиш, находящихся в фокусе

Секция [error] содержит описания элементов диалога-сообщения об ошибках.

_default_
цвет по умолчанию для данной секции. Если не указан, то используется [core]._default_

errdhotnormal
цвет "горячих" клавиш

errdhotfocus
цвет "горячих" клавиш, находящихся в фокусе

Секция [menu] содержит описание элементов, отображающихся в меню. Это касается как системного меню (вызываемого клавишей F9), так и пользовательских меню ( F2 в панелях или F11 в редакторе).

_default_
цвет по умолчанию для данной секции. Если не указан, то используется [core]._default_

entry
цвет пунктов меню

цвет "горячих" клавиш

цвет выделенного пункта меню

цвет "горячих" клавиш, находящихся в фокусе

цвет неактивного меню

Секция [help] содержит описания цветов для окна отображения помощи.

_default_
цвет по умолчанию для данной секции. Если не указан, то используется [core]._default_

helpitalic
цветовыделение элементов с атрибутом italic

helpbold
цветовыделение элементов с атрибутом bold

цвет ссылок

цвет ссылки, находящейся под курсором

Секция [editor] содержит описания элементов редактора

_default_
цвет по умолчанию для данной секции. Если не указан, то используется [core]._default_

editbold
цветовыделение элементов с атрибутом bold

editmarked
цвет выделенного текста

editwhitespace
цодсветка знаков табуляции и "висящих" пробелов

editlinestate
цвет области отображения состояния строки.

Секция [viewer] содержит описания элементов редактора

viewunderline
цветовыделение элементов с атрибутом underline

Цветовые пары

Каждый параметр в скин-файле содержит цветовые пары.

Цветовые пары описываются как два цвета и необязательные атрибуты, разделённые символом ";". Первый цвет задаёт цвет написания символов, второй - цвет фона. Любой из цветов и атрибуты могут быть пропущены, в этом случае будет взят цвет по умолчанию (глобальный или для данной секции).

Например:

[core]

# зелёным по чёрному
_default_=green;black
# зелёным (умолч.) по синему
selected=;blue
# жёлтым по чёрному (умолч.) с подчёркиванием
marked=yellow;;underline

Возможные цвета (названия) и атрибуты описаны в секции Цвета.

Псевдонимы цветов и атрибутов

Эта необязательная секция содержит определения псевдонимов цветов (не цветовых пар) и атрибутов. Псевдоним представляет собой части определения параметров скина. В определение псевдонима может использоваться другой псевдоним, но при этом не должны образовываться циклические ссылки.

Например:

[aliases]

myfavfg=green
myfavbg=black
myfavattr=bold+italic [core]
_default_=myfavfg;myfavbg;myfavattr

Линии для отрисовки рамок

Линии задаются в секции [lines] в скин-файле. По умолчанию используются одинарные линии, но возможно переназначить на использование любых utf-8 символов, похожих на линии

Описание параметров секции [lines]:

lefttop
изображение левого верхнего угла рамки

righttop
изображение правого верхнего угла рамки

centertop
изображение ответвления горизонтальной линии вниз

centerbottom
изображение ответвления горизонтальной линии вверх

leftbottom
изображение левого нижнего угла рамки

rightbottom
изображение правого нижнего угла рамки

leftmiddle
изображение ответвления вертикальной линии вправо

rightmiddle
изображение ответвления вертикальной линии влево

centermiddle
изображение пересечения вертикальной и горизонтальной линий

horiz
изображение горизонтальной линии

vert
изображение вертикальной линии

thinhoriz
изображение тонкой горизонтальной линии

thinvert
изображение тонкой вертикальной линии

Совместимость

Назначение цветов элементов посредством скин-файлов полностью совместимо с назначением цветов, описанном в секции Цвета.

В данном случае переназначение цветов имеет приоритет над скин-файлами и носит дополняющий характер.

Подсветка имён файлов

Секция [filehighlight] из текущего скин-файла содержит имена параметров (в качестве групп подсветки) и значения параметров как цветовые пары. Описания цветовых пар смотрите в разделе Внешний вид

Правила подсветки находятся в файле /etc/mcommander/filehighlight.ini (~/.config/mc6/filehighlight.ini). Названия групп должны совпадать с названиями параметров в секции [filehighlight] в текущем скин-файле.

Ключи в группах могут принимать следующие значения:

type
Тип файла. Если параметр присутствует, остальные опции игнорируются

regexp
Регулярное выражение. Если присутствует, параметр 'extensions' игнорируется.

extensions
Список расширений файлов. Расширения разделяются символом ';'.

extensions_case
(имеет смысл только с параметром 'extensions') делает правило 'extensions' чувствительным к регистру букв (true) или не чувствительным (false).

Параметр 'type' (тип файла) может принимать значения:

- FILE (все файлы)

- FILE_EXE - DIR (все каталоги)
- LINK_DIR - LINK (все ссылки (линки), исключая "битые" линки)
- HARDLINK
- SYMLINK - STALE_LINK - DEVICE (все файлы устройств)
- DEVICE_BLOCK
- DEVICE_CHAR - SPECIAL (все специальные файлы)
- SPECIAL_SOCKET
- SPECIAL_FIFO
- SPECIAL_DOOR

Специальные установки

Большинство установок M-Commander может быть изменено путем использования меню. Однако имеется несколько установок, которые могут быть изменены только путем непосредственного редактирования конфигурационного файла ~/.config/mc6/ini.

clear_before_exec
По умолчанию M-Commander очищает экран перед выполнением команды. Если вы хотите, чтобы вывод предыдущей команды не исчезал, измените значение поля clear_before_exec на 0.

confirm_view_dir
Если вы нажимаете F3 на имени каталога, обычно M-Commander переходит в этот каталог. Если этот флаг будет установлен в 1, M-Commander будет спрашивать подтверждение перед тем, как перейти в указанный каталог, если в текущем каталоге были помечены какие-либо файлы.

vfs_timeout
Время жизни кэша виртуальной файловой системы в секундах. После выхода из архива или сжатого файла прочитанный список и распакованный временный файл держатся ещё столько времени, чтобы повторный вход был мгновенным, а затем освобождаются. По умолчанию 60; 0 освобождает сразу.

only_leading_plus_minus
Устанавливает специальный режим обработки символов '+', '-', '*' в командной строке. Эти символы используются для выбора, отмены выбора и инвертирования выбора, но выполняют такую функцию только если командная строка пуста. В середине командной строки эти символы уже не вызывают выполнения операций группового выбора, но зато вы не сможете использовать эти символы для таких операций, если командная строка не пуста.

alternate_plus_minus
Если установлена, символы '+', '-', '\' and '*' обрабатываются обычным образом. Чтобы выбрать файлы, отменить или инвертировать выбор, используйте 'Alt-+', 'Alt--' и 'Alt-*' соответственно.

show_output_starts_shell
Эта переменная работает только в том случае, когда не включена поддержка subshell. Если она установлена, то при нажатии C-o для перехода в экран пользователя будет запускаться новый экземпляр оболочки.

use_file_to_guess_type
Когда эта опция включена (что сделано по умолчанию), mcommander будет вызывать программу file для определения типа файла в соответствии с типами файлов, указанными в файле extensions.ini.

xtree_mode
Если эта переменная включена (по умолчанию она выключена), то при просмотре в одной из панелей структуры дерева каталогов во второй панели автоматически будет отображаться список файлов выбранного каталога.

clipboard_store
Эта переменная позволяет назначить внешнюю программу (с параметрами) для работы с буфером обмена, такую как 'xclip', для вставки данных в системный буфер обмена. Например:

clipboard_store=xclip -i
    

clipboard_paste
Эта переменная позволяет назначить внешнюю программу (с параметрами) для работы с буфером обмена, такую как 'xclip', для получения данных из системного буфера обмена. Например:

clipboard_paste=xclip -o
    

autodetect_codeset
Эта опция позволяет использовать команду enca для автоматического определения кодировки текстовых файлов во встроенных просмотрщике и редакторе. Список допустимых значений может быть получен командой "enca --list languages | cut -d : -f1". Опция должна располагаться в секции [Misc].

Например:

autodetect_codeset=russian

Настройки встроенной программы просмотра находятся в секции [Viewer] того же файла. Все они есть и в диалоге Настройки просмотра; здесь приведены имена, под которыми их пишет этот диалог.

wrap
Переносить строку шире экрана на следующую экранную строку. По умолчанию включено.

syntax
Раскрашивать текст по правилам синтаксиса редактора. По умолчанию выключено.

mouse_move_pages
Прокручивать мышью страницами, а не построчно. В режиме ASCII левая кнопка выделяет текст, поэтому там такая прокрутка идёт правой или средней кнопкой. По умолчанию включено.

remember_file_position
Открывать файл на том месте, где его оставили в прошлый раз. По умолчанию выключено.

structured_auto
Сразу открывать файлы поддерживаемых типов (json, yaml, yml, xml, html, htm) в структурном режиме (деревом). Если файл разобрать не удалось, молча берётся обычный текстовый вид. По умолчанию выключено.

eof
Текст, который печатается после последней строки файла. По умолчанию пусто.

structured_max_size
Наибольший файл, который разбирает структурный вид (дерево), в байтах. Файл больше отвергается ещё до чтения. По умолчанию 67108864 (64 МБ).

structured_max_nodes
Наибольшее дерево, которое строит структурный вид, считая в узлах. Плотный документ, например XML из мелких тегов, упирается в этот предел раньше, чем в предел размера: он тратит около узла на двенадцать байт, а каждый узел занимает память. По умолчанию 10000000, и это около 120 МБ такого файла примерно в 1,5 ГБ памяти.

dirt_limit
Сколько раз может быть пропущена операция обновления изображения на экране, пока файл читается. Обычно этот параметр не имеет большого значения, поскольку программа автоматически выбирает оптимальное значение в зависимости от скорости нажатий на клавиши. Однако на очень медленных машинах или терминалах с большой скоростью автоповторения (keyboard auto repeat) слишком большое значение этого параметра может привести к тому, что процедура обновления экрана начнёт вас раздражать. По умолчанию 10, и это значение ведёт себя лучше всего.

Прежние версии хранили эти настройки в главной секции под более длинными именами (wrap_mode, viewer_syntax_highlighting, mouse_move_pages_viewer, mcview_remember_file_position, mcview_structured_auto, mcview_eof и max_dirt_limit). Они один раз читаются оттуда и записываются обратно в секцию [Viewer].

Настройки терминала, в котором за панелями работает оболочка, находятся в секции [Terminal] того же файла. Диалога у них нет.

search_direction
В какую сторону Alt-s просматривает выдачу оболочки и в какую Alt-Shift-s переходит от одной строки фильтра к следующей: "down" - от курсора к самой новой строке и за ней по кругу к самой старой, "up" - к самой старой и по кругу к самой новой, как ищет less и как было раньше. По умолчанию "down".

Параметры для внешних редакторов и программ просмотра

M-Commander позволяет задать некоторые параметрыы для внешних редакторов и программ просмотра. Они задаются в секции [External editor or viewer parameters], которая сначала ищется в системном (defaults.ini), а затем в пользовательском (~/.config/mc6/ini) файле инициализации. Имя параметра должно совпадать с именем внешнего редактора или программы просмотра. Значение параметра может содержать следующие переменные:

%filename Имя файла для редактирования или просмотра.

%lineno Номер начальной строки в открываемом файле.

Пример:

[External editor or viewer parameters]

vi=%filename +%lineno
joe=%filename +%lineno
more=%filename +%lineno

Начальная строка передаётся в во внешнюю программу редактирования или просмотра только в том случае, если она вызывается из окна результатов поиска файлов.

Если внешняя программа редактирования или просмотра запускается по клавишам F4 или F3, M-Commander надеется, что она имеет собственную функцию открытия файла в том же самом месте, где он был закрыт в предыдущий раз. Такую функцию имеет, например, редактор "joe" и многие другие. M-Commander не препятствует внешней программе редактирования или просмотра самостоятельно сохранять и восстанавливать позиции в открываемых файлах.

Базы терминалов

M-Commander обеспечивает возможность внесения исправлений в системную базу терминалов, даже если вы не обладаете правами суперпользователя. M-Commander ищет в системном инициализационном файле (файл defaults.ini в библиотечном каталоге программы M-Commander) или в файле ~/.config/mc6/ini секцию с названием "terminal:your-terminal-name", а затем секцию "terminal:general". Каждая строка в этих секциях содержит ключевое слово, которое вы хотите определить, за которым следует знак равенства и определение ключевого слова. Специальный символ \e используется для задания экранирующих последовательностей, а ^x служит для задания последовательностей вида control-x

В качестве ключевых слов используются:

f0 - f20     определяет последовательность символов,

генерируемых при нажатии на функциональные
клавиши F0-F20 bs определяет последовательность символов, которая
будет использоваться вместо клавиши Backspace home то же для клавиши Home end то же для клавиши End up то же для клавиши Up down то же для клавиши Down left то же для клавиши Left right то же для клавиши Right pgdn то же для клавиши Page Down pgup то же для клавиши Page Up insert то же для клавиши Insert delete то же для клавиши Delete complete комбинация клавиш для выполнения операции "завершение ввода"

Например, для того, чтобы задать, что клавише Insert соответствует экранирующая последовательность "Escape + [ + O + p", нужно в файле ini прописать строку:

insert=\e[Op

Операция "завершение ввода" обычно вызывается по клавишам Alt-Tab, но задав значение ключевого слова complete можно вызывать такую же реакцию системы по другой комбинации клавиш (почему бы не сделать это, если у вас клавиатура, имеющая массу неиспользуемых клавиш!).

Переменные окружения

Ниже перечислены переменные, которые M-Commander читает сам, и те, которые он выставляет для запускаемых им программ. Переменные вроде TERM, SHELL, HOME или PATH сюда не входят: программа читает их, чтобы понять, где работает, а не для того, чтобы ими настраиваться.

Читаются при запуске

MC_DATADIR
Каталог, из которого берутся файлы данных, вместо встроенного. См. Файлы.

MC_PROFILE_ROOT
Корень пользовательских файлов, абсолютный путь. См. Файлы.

MC_SKIN
Внешний вид: имя или путь. См. Внешний вид.

MC_KEYMAP
Файл раскладки клавиш. См. Клавиатурные команды.

MC_TMPDIR
Каталог для временных файлов программы.

MC_NO_LUA
Значение 1 запускает программу без среды Lua. Ни один пакет Lua не загружается, и всё, что от него зависит, недоступно.

MC_SIXEL
Значение 0 говорит, что терминал не умеет графику sixel, значение 1 - что умеет. Без переменной опрашивается сам терминал.

KEYBOARD_KEY_TIMEOUT_US
Сколько ждать продолжения escape-последовательности, в микросекундах.

COLORTERM
Читается при выборе цветов. См. Цвета.

CDPATH
Каталоги, в которых ищет встроенная команда cd.

EDITOR, VIEWER, PAGER
Внешние программы, используемые при выключенных встроенных редакторе и программе просмотра. См. Параметры для внешних редакторов и программ просмотра.

Выставляются для запускаемых программ

Их не нужно задавать вручную. Программа пишет их сама, чтобы своя же копия, запущенная из встроенного терминала, поняла, что уже работает внутри него.

MC_SID
Сеанс, в котором работает программа. Копия, запущенная из этого сеанса, своих панелей не открывает.

MC_PID
Идентификатор процесса работающей программы.

MC_TTY
Терминал, на котором программа была запущена.

Отладочные журналы

Журнал пишется только когда он включён, и переключатель принимает значение 1. Переменные плагинов откатываются к общим, поэтому одной общей пары достаточно, чтобы записывать всё.

MC_LOG_ENABLE, MC_LOG_FILE
Общий журнал. Без MC_LOG_FILE берётся файл, указанный в logfile секции [Logging] файла ini, а без этой записи - mc.log рядом с остальными пользовательскими файлами.

MC_FTP_LOG_ENABLE, MC_FTP_LOG_FILE
Журнал панельного плагина ftp. Файл откатывается к /tmp/mc-ftp.log.

MC_SMB_LOG_ENABLE, MC_SMB_LOG_FILE
Журнал панельного плагина samba. Файл откатывается к /tmp/mc-samba.log.

MC_SPELL_LOG
Файл, в который пишет проверка орфографии. Своего переключателя у неё нет: журнал пишется, когда переменная называет файл.

Чтобы сохранить журнал неудачного подключения по ftp:

MC_FTP_LOG_ENABLE=1 MC_FTP_LOG_FILE=/tmp/ftp.log mcommander

Файлы

Программа извлекает всю нужную ей информацию из файлов, пути к которым определяются относительно переменной окружения MC_DATADIR. Если эта переменная не задана, происходит обращение к так называемому библиотечному каталогу программы M-Commander. Для того чтобы узнать имя этого каталога, дайте команду mcommander -f.

/usr/share/mcommander/help/mcommander.md
Файл подсказки для программы.

/usr/share/mcommander/extensions.ini
Используемый по умолчанию общесистемный файл расширений.

~/.config/mc6/extensions.ini
Файл расширений пользователя. Если этот файл существует, он используется вместо общесистемного файла расширений.

/etc/mcommander/mc.ini /usr/share/mcommander/mc.ini
Общесистемные файлы установок для M-Commander; используются только в тех случаях, когда пользователь не имеет своего файла ~/.config/mc6/ini. Если файл /etc/mcommander/mc.ini существует, то /usr/share/mcommander/mc.ini не используется.

/usr/share/mcommander/defaults.ini
Глобальные установки для M-Commander. Установки из этого файла действительны для всех пользователей, независимо от того, имеют ли они ~/.config/mc6/ini или нет. В настоящий момент только настройки терминалов загружаются из defaults.ini.

~/.config/mc6/ini
Собственные установки пользователя. Если такой файл существует, то установки загружаются из него, а не из общесистемного инициализационного файла программы.

/usr/share/mcommander/hints/hint
Этот файл содержит подсказки (hints или cookies), циклически отображаемые программой.

~/.config/mc6/menu
Собственное меню пользователя, написанное вручную.

~/.config/mc6/menu.ini
Меню пользователя, которое правит себя, по группе на пункт. Там, где этот файл есть, F2 открывает именно его, а файл .mc6menu текущего каталога показывается вместе с ним.

~/.cache/mc6/Tree
Список каталогов для окна, выводимого при выборе пункта меню "Команда/Дерево каталогов" или при просмотре дерева каталогов в одной из панелей. Каждая строка файла соответствует подкаталогу. Строки, начинающиеся со слэша ("/") соответствуют полным путям. Если строка начинается с цифры, то надо взять указанное число символов из имени предыдущего каталога. При желании можно создать этот файл, дав команду


find / -type d -print | sort > ~/.cache/mc6/Tree

Обычно не имеет смысла делать это, потому что M-Commander автоматически обновляет этот файл.

./.usermenu
локальное меню, задаваемое пользователем. Если этот файл существует, он используется вместо файла меню из домашнего каталога пользователя и общесистемного меню.

Для того чтобы изменить корневой каталог M-Commander, установленный по умолчанию, можно использовать переменную окружения MC_PROFILE_ROOT. Значением этой переменный должен быть абсолютный путь. Если переменная MC_PROFILE_ROOT не определена или пуста, используется переменная окружения HOME. Если и HOME не определена или пуста, каталоги M-Commander определяются средствами библиотеки GLib.

Лицензия

Эта программа распространяется в надежде, что она будет полезной, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемых гарантий КОММЕРЧЕСКОЙ ЦЕННОСТИ или ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ. Для получения подробных сведений смотрите Универсальную Общественную Лицензию GNU.

Обновление версий

Последние версии программы M-Commander можно найти на сайте https://github.com/blue-panels/mcommander/releases .

Другие источники

ed(1), gpm(1), terminfo(1), view(1), sh(1), bash(1), tcsh(1), zsh(1), mcedit6(1).

Страница, посвященная M-Commander, в World Wide Web:
	https://github.com/blue-panels/mcommander

Данная страница оперативного руководства содержит информацию, актуальную для версии 4.6.0 (январь 2003 года). Если вы используете более свежую версию программы, оригинальная страница на английском языке может содержать более полную и актуальную информацию. Для просмотра оригинальной страницы в оболочке bash можно использовать команду

LANG= man mcommander

АВТОРЫ

Miguel de Icaza (miguel@ximian.com), Janne Kukonlehto (jtklehto@paju.oulu.fi), Radek Doulik (rodo@ucw.cz), Fred Leeflang (fredl@nebula.ow.org), Dugan Porter (dugan@b011.eunet.es), Jakub Jelinek (jj@sunsite.mff.cuni.cz), Ching Hui (mr854307@cs.nthu.edu.tw), Andrej Borsenkow (borsenkow.msk@sni.de), Norbert Warmuth (nwarmuth@privat.circular.de), Mauricio Plaza (mok@roxanne.nuclecu.unam.mx), Paul Sheer (psheer@icon.co.za), Pavel Machek (pavel@ucw.cz) and Pavel Roskin (proski@gnu.org) are the developers of this package. Alessandro Rubini (rubini@ipvvis.unipv.it) has been especially helpful debugging and enhancing the program's mouse support, John Davis (davis@space.mit.edu) also made his S-Lang library available to us under the GPL and answered my questions about it, and the following people have contributed code and many bug fixes (in alphabetical order):

Adam Tla/lka (atlka@sunrise.pg.gda.pl), alex@bcs.zp.ua (Alex I. Tkachenko), Antonio Palama, DOS port (palama@posso.dm.unipi.it), Erwin van Eijk (wabbit@corner.iaf.nl), Gerd Knorr (kraxel@cs.tu-berlin.de), Jean-Daniel Luiset (luiset@cih.hcuge.ch), Jon Stevens (root@dolphin.csudh.edu), Juan Francisco Grigera, Win32 port (j-grigera@usa.net), Juan Jose Ciarlante (jjciarla@raiz.uncu.edu.ar), Ilya Rybkin (rybkin@rouge.phys.lsu.edu), Marcelo Roccasalva (mfroccas@raiz.uncu.edu.ar), Massimo Fontanelli (MC8737@mclink.it), Sergey Ya. Korshunoff (seyko2@gmail.com), Thomas Pundt (pundtt@math.uni-muenster.de), Timur Bakeyev (timur@goff.comtat.kazan.su), Tomasz Cholewo (tjchol01@mecca.spd.louisville.edu), Torben Fjerdingstad (torben.fjerdingstad@uni-c.dk), Vadim Sinolitis (vvs@nsrd.npi.msu.su) and Wim Osterholt (wim@djo.wtm.tudelft.nl).

Перевод текста подсказки на русский язык - Костромин В.А., 1999г. Исправления, адаптация к текущей версии и конвертация в формат mandoc - Самойлов А.В. <sav@bcs.zp.ua>, 2002 г.

Недоработки

Если вы обнаружили в программе какие-то недостатки или недоработки, оформите, пожалуйста, ваши замечания по адресу https://github.com/blue-panels/mcommander/issues .

Дайте подробное описание обнаруженных недостатков (и/или ваших предложений по усовершенствованию программы), сообщите версию программы с которой вы работаете (для получения номера версии используйте команду mcommander -V), в какой операционной системе вы запускали программу. В случае фатальной ошибки программы мы будем очень благодарны, если вы пришлете след вызовов.

сентября 2026 MCommander unknown