Midnight Commander - это программа, предназначенная для просмотра содержимого каталогов и выполнения основных функций управления файлами в UNIX-подобных операционных системах.
Если в командной строке указаны два каталога, первый будет отображаться в активной панели, второй - в другой панели.
Если указан только один каталог, он будет отображён в активной панели, во второй панели будет отображён каталог, указанный в параметре "other_dir" в файле panels.ini.
Если каталоги не указаны, в активной панели будет отображён текущий каталог, а во второй панели - каталог, указанный в параметре "other_dir" в файле panels.ini.
Третье поле экрана, расположенное в нижней части экрана, содержит командную строку текущей оболочки. В этом же поле (самая нижняя строка экрана) содержится подсказка по использованию функциональных клавиш F1 - F10. Самая верхняя строка экрана содержит строку горизонтального меню. Эта строка может не отображаться на экране; в этом случае доступ к ней можно получить, щелкнув мышью по верхней рамке или нажав клавишу F9.
Панели Midnight Commander обеспечивают просмотр одновременно двух каталогов. Одна из панелей является активной в том смысле, что пользователь может выполнять некоторые операции с отображаемыми в этой панели файлами и каталогами. В активной панели подсвечено имя одного из каталогов или файлов, а также выделен цветом заголовок панели в верхней строке. Этот заголовок совпадает с именем отображаемого в данной панели каталога, который является текущим каталогом той оболочки, из которой запущена программа. Вторая панель - пассивна. Почти все операции выполняются в активной панели, то есть в соответствующем (текущем) каталоге. Некоторые операции (типа копирования или переноса файлов) по умолчанию используют каталог, отображаемый в пассивной панели, как место назначения операции. Более подробное описание панелей дано в подразделе Панели каталогов раздела Меню левой и правой панелей и в разделе Меню Файл
Вы можете выполнить любую команду операционной системы или запустить на исполнение любую программу непосредственно из программы Midnight Commander, просто набрав имя этой команды (программы) в командной строке и нажав клавишу Enter. Прочитайте разделы Командная строка оболочки и Редактирование строк ввода для того, чтобы узнать больше о командной строке.
Если вы щелкаете мышью на имени файла в одной из панелей, файл выбирается (подсветка перемещается на это имя); если вы щелкнете правой кнопкой мыши, файл отмечается (или отметка с файла снимается, в зависимости от предыдущего состояния).
Двойной щелчок мыши на имени файла означает попытку запустить файл на исполнение (если это исполняемая программа); либо, если файл расширений содержит программу, ассоциированную с данным расширением, запускается эта программа и ей передается на обработку выбранный файл.
Точно также можно выполнить команду, ассоциированную с любой функциональной клавишей, щелкнув по соответствующей экранной кнопке в самой нижней строке экрана.
По умолчанию скорость эмуляции повторных нажатий на клавишу в случае ее удержания (auto repeat rate) составляет 400 миллисекунд. Это значение можно изменить путем изменения параметра mouse_repeat_rate в файле ~/.config/mc/ini
Если Commander запущен с поддержкой мыши, вы можете обойти Commander и добиться того, что мышь будет вести себя так же, как она ведет себя по умолчанию (обеспечивая вырезание и вставку текста), если будете удерживать клавишу Shift.
C-<символ> означает, что нужно нажать и удерживать клавишу Control и в это время нажать клавишу <символ>. Так C-f будет означать: нажмите Control и, удерживая ее, нажмите (коротким щелчком) клавишу f.
Аналогично M-<символ> означает, что надо удерживать в нажатом состоянии клавишу Meta или Alt во время удара по клавише <символ>. Если на клавиатуре нет клавиш Meta и Alt, нажмите ESC, отпустите ее, а потом щелкните по клавише <символ>.
S-<символ> означает, что нужно держать в нажатом состоянии клавишу Shift во время удара по клавише <символ>.
Все строки ввода в Midnight Commander по умолчанию поддерживают соглашения об использовании "горячих" клавиш, принятые в редакторе GNU Emacs.
Вы можете переопределить клавиатурные привязки хоткеев к командам, как это описано в разделе переопределение клавиатурных команд
Все последующие описания клавиатурных команд относятся к поведению по умолчанию.
Описания клавиатурных команд даются в нескольких разделах помощи. Наиболее важными являются следующие разделы:
В разделе Меню Файл приведены комбинации клавиш, которые служат для вызова команд, перечисленных в меню "Файл". В этом же разделе перечислены команды, ассоциированные с функциональными клавишами. Большинство из этих команд выполняют действия над подсвеченным файлом или группой отмеченных файлов.
В секции Панели каталогов рассказано о клавишах, которые используются для выбора файла или группы файлов как объектов некоторого последующего действия (обычно действия из меню "Файл").
В разделе Командная строка оболочки (Shell) перечисляются команды и комбинации клавиш, которые используются для ввода и редактирования команд в командной строке оболочки. Большая часть этих команд служит для переноса имен файлов и/или имен каталогов в командную строку (чтобы уменьшить трудоемкость ввода) или для доступа к истории команд.
Клавиши редактирования строк ввода используются как при редактировании командной строки, так и других строк ввода, появляющихся в различных запросах программы.
Параметры в трёх первых случаях могут содержать абсолютный путь к файлу клавиатурных команд либо просто название схемы привязки (с расширением .keymap либо без него). В данном случае поиск файла клавиатурных команд будет происходить по следующим каталогам (до первого нахождения):
Если Midnight Commander скомпилирован с поддержкой подоболочки (subshell), вы можете в процессе выполнения приложения из-под Midnight Commander в любой момент набрать C-o и вернуться к главному экрану Midnight Commander-а. Для возврата к вашему приложению достаточно снова набрать C-o. Если вы застопорите выполнение приложения, использовав этот прием, вы не сможете запустить других программ из Midnight Commander пока отложенное приложение не закончит работу, либо пока вы не прервете его выполнение.
\\ (backslash) Клавиша "\" снимает отметку с группы файлов, то есть производит действие, обратное тому, которое вызывается по клавише "+".
M-y Перемещение к предыдущему каталогу из истории перемещения по каталогам; эквивалентно нажатию мышкой на символ '<' в верхнем углу панели.
После нажатия одной из этих комбинаций вводимые символы отображаются не в командной строке, а в строке поиска. Если режим Показ мини-статуса включен, эта строка отображается на месте строки мини-статуса. В процессе ввода последующих символов линия подсветки перемещается к следующему файлу, название которого начинается с введенной строки символов. Клавиши Backspace или DEL могут использоваться для исправления ошибок. Если C-s нажато снова, осуществляется поиск следующего подходящего файла.
Если переход в режим быстрого поиска осуществляется двойным нажатием C-s, то в текущем поиске будет использоваться шаблон предыдущего поиска.
Кроме обычных символов в имени файла также можно использовать символы маски '*' и '?'.
M-Enter Копирует подсвеченное имя файла или каталога в командную строку.
C-Enter То же самое, что M-Enter, но работает только на консоли Linux.
M-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) используется для того, чтобы вставить символы, которые каким-то образом интерпретируются самим Midnight Commander-ом (например, символ '+').
M-p, M-n Эти комбинации используются для перемещения по истории команд. M-p вызывает перемещение на команду назад по списку ранее запускавшихся команд, а M-n - перемещение на одну команду вперед.
M-h Выводит историю текущей строки ввода (для командной строки - историю команд).
Другие части Midnight Commander-а тоже используют некоторые из комбинаций клавиш управления перемещением, так что настоящая секция руководства может быть также полезна при изучении этих частей.
Up, C-p Перемещение на одну строку назад или вверх
Down, C-n Перемещение на одну строку вперед
Prev Page, Page Up, M-v Перемещение на одну страницу назад
Next Page, Page Down, 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, стрелка-влево Перемещает курсор на одну позицию влево.
C-f, стрелка-вправо Перемещает курсор на одну позицию вправо.
M-f Перемещает курсор на одно слово вперед.
M-b Перемещает курсор на одно слово назад.
C-h, Backspace Удаляет символ, предшествующий курсору.
C-d, Delete Удаляет символ в позиции курсора.
C-@ Устанавливает метку для того, чтобы вырезать (скопировать в буфер) часть текста.
C-w Копирует текст, расположенный между курсором и меткой, в буфер, удаляя текст из строки ввода.
M-w Копирует текст, расположенный между курсором и меткой, в буфер.
C-y Вставляет содержимое буфера в строку ввода перед позицией курсора.
C-k Удаляет текст от курсора до конца строки.
M-p, M-n Эти комбинации используются для перемещения по истории команд. M-p перемещает к предыдущей команде, M-n - к следующей.
M-C-h, M-Backspace Удалить предшествующее слово.
M-Tab Пытается выполнить завершение ввода (completion) имени файла, команды, переменной, имени пользователя или имени машины.
Пункты меню "Левая" и "Правая " ("Верхняя" и "Нижняя") позволяют изменить вид, соответственно, левой и правой (или верней и нижней) панелей и характер отображаемой в панели информации, в частности, выполнить соединения с удаленными компьютерами.
Меню "Файл" позволяет выполнить какие-то действия с выбранным файлом или группой помеченных файлов.
Меню "Команды" перечисляет действия, которые имеют более общий характер и не относятся только к выделенному в данный момент файлу или группе помеченных файлов.
Меню "Настройки" служит для задания ряда параметров, определяющих внешний вид и поведение программы Midnight Commander. Один из пунктов этого меню служит для сохранения настроек, заданных пользователем.
В стандартном формате отображаются имя файла, его размер и время последней модификации.
В укороченном (brief) формате отображаются только имена файлов, расположенные в несколько колонок (от 1 до 9), за счет чего на панели видно в несколько раз больше имен.
В расширенном (long) формате содержимое каталога представляется так, как это делает команда ls -l. В этом формате панель занимает весь экран.
Если вы выберете формат "Определяемый пользователем" ("User"), вы должны будете задать структуру отображаемой информации.
При задании структуры вначале указывается размер панели: "half" (половина экрана) или "full" (весь экран).
После размера панели можно указать, что на панели должно быть две колонки. Это делается добавлением цифры 2 в строку задания формата.
Далее надо перечислить имена полей с необязательным параметром ширины поля. В качестве имен полей могут использоваться:
Вы также можете использовать следующие имена полей для организации вывода информации на дисплей:
Для того, чтобы задать фиксированную ширину поля, нужно добавить двоеточие ':', после которого указать число позиций, которое отводится под это поле. Если после числа поставить символ '+', то указанное число будет интерпретироваться как минимальная ширина поля, и, если экран позволяет, поле будет расширено.
Например, Стандартный формат вывода задается строкой:
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); - без сортировки.
Порядок сортировки можно выбрать, вызвав диалоговое окно, в котором кроме того можно указать, что сортировка производится в обратном порядке (поставив с помощью клавиши пробела отметку в скобках возле слова "Обратный (reverse)".
По умолчанию каталоги отображаются в начале списка, но это можно изменить, проставив отметку возле опции Смешивать файлы и каталоги пункта меню Настройки панелей.
Меню "Файл" содержит следующие команды (соответствующие "горячие" клавиши указываются в скобках):
Просмотр файла
Просмотреть файл, на который указывает подсветка. По умолчанию при этом вызывается встроенная программа просмотра, но, сняв отметку с опции "Встроенный просмотр" ("Use internal view") в пункте "Конфигурация" меню "Настройки" ("Options"), можно вызывать внешнюю программу просмотра, путь к которой должен быть указан в переменной окружения PAGER. Если переменная PAGER не определена, вызывается встроенная программа. Если вместо F3 нажать F13, встроенная программа просмотра не выполняет предварительного форматирования или обработки файла.
В разделе Параметры для внешних редакторов и программ просмотра описано, как можно задать параметры командной строки для внешних программ просмотра файлов.
Просмотр вывода команды
По этой команде на экране появляется строка ввода, в которой вы можете ввести любую команду с параметрами (по умолчанию предлагается использовать в качестве параметра имя подсвеченного файла). Вывод этой команды будет отображаться на экране через встроенную программу просмотра.
Редактирование
Вызывается редактор vi, либо редактор, указанный в переменной окружения EDITOR, либо встроенный редактор файлов (если включена опция "Встроенный редактор" (use_internal_edit) в меню "Настройки / Конфигурация").
В разделе Параметры для внешних редакторов и программ просмотра описано, как можно задать параметры командной строки для внешних редакторов.
Копирование
Вызывается диалоговое окно, в котором предлагается скопировать подсвеченный файл из каталога, отображаемого в активной панели (или группу отмеченных файлов, если в активной панели отмечен хотя бы один файл) в каталог, отображаемый в пассивной панели. Имя каталога, в который будет производиться копирование, можно изменить. Можно предварительно резервировать место под новые файлы в каталоге назначения, выставив конфигурационную опцию preallocate_space. О том, как задать шаблон для имен копируемых файлов (обычно это * или ^\(.*\)$, в зависимости от установки опции Образцы в стиле shell (Shell Patterns), и о допустимых символах замены (wildcards) в строке целевого каталога вы можете узнать, просмотрев раздел Маски файлов для операций копирования/переименования.
В процессе выполнения копирования можно нажать C-c или ESC для того, чтобы прервать выполнение операции.
В некоторых системах можно осуществлять копирование в фоновом режиме, если запустить процесс не кнопкой <Дальше> диалогового окна, а кнопкой <На фоне> (или нажав M-b в диалоговом окне). Используя пункт меню "Команды/Фоновые задания", можно управлять выполнением фоновых процессов.
Права доступа
Позволяет изменить права доступа к выделенному или помеченным файлам.
Жесткая ссылка
Создает жесткую ссылку на текущий файл.
Абсолютная символическая ссылка
Создает абсолютную символическую ссылку на текущий файл.
Относительная символическая ссылка
Создает относительную символическую ссылку на текущий файл.
Если вы не знаете, что такое ссылки: создание ссылки в некотором смысле подобно копированию файла, но и исходное имя файла и ссылка указывают на один и тот же реальный файл на диске. Поэтому, если вы, например, редактируете файл, то изменения будут появляться в обеих копиях. Синонимами термина "ссылка" (link) являются термины "алиас" (alias) и "ярлык" (shortcut).
Жесткая ссылка выглядит как реальный файл. После создания жесткой ссылки невозможно различить, где исходный файл, а где ссылка. Если вы удаляете один из этих файлов (точнее одно из этих имен), то файл еще сохраняется на диске (пока у него есть хоть одно имя-ссылка). Очень трудно различить первоначальное имя файла и позже созданные жесткие ссылки на него. Поэтому жесткие ссылки применяются там, где отслеживать различия и не требуется.
Символическая ссылка - это ссылка на имя исходного файла. Если исходный файл удален, символическая ссылка становится бесполезной. Символическую ссылку легко отличить от первоначального имени файла, и программа Midnight Commander указывает символические ссылки, выводя знак "@" перед именем такой ссылки (кроме ссылок на каталоги, которые обозначаются знаком тильды "~"). Если на экран выводится строка мини-статуса (опция "Показывать мини-статус" ("Show mini-status") включена), то в ней отображается имя исходного файла. Используйте символические ссылки в тех случаях, когда хотите избежать путаницы, связанной с применением жестких ссылок.
Когда вы нажимаете клавиатурное сочетание "C-x s", Midnight Commander автоматически заполняет поля диалога создания ссылки: имя ссылки и имя файла, на который будет указывать ссылка. Вы можете изменить их.
Но иногда требуется, чтобы ссылка указывала на файл не по абсолютному пути, а по относительному. Абсолютный путь начинается с корневого каталога:
/home/frodo/mc/mc -> /home/frodo/new/mc
Относительный путь указывает на расположение файла относительно места, где будет располагаться создаваемая ссылка:
/home/frodo/mc/mc -> ../new/mc
Для того, чтобы создать относительную символическую ссылку, используйте клавиатурное сочетание "C-x v" вместо "C-x s".
Владелец/группа
Позволяет выполнить команду chown.
Права (расширенные)
Позволяет изменить права доступа и владения файлом.
Переименование
Вызывается диалоговое окно, в котором предлагается перенести подсвеченный файл из каталога, отображаемого в активной панели (или группу отмеченных файлов, если в активной панели отмечен хотя бы один файл) в каталог, отображаемый в пассивной панели. Имя каталога, в который будет производиться перенос, можно изменить, воспользовавшись соответствующей строкой ввода.
В остальном диалоговое окно аналогично окну, появляющемуся при вызове команды копировании файлов (смотрите выше).
Создание каталога
Появляется диалоговое окно и создается каталог с введенным именем.
Удаление
Удаляется файл, имя которого подсвечено (или группа файлов, имена которых помечены) в активной панели. Операцию можно прервать, нажав C-c или ESC во время ее исполнения.
Быстрая смена каталога
Используйте быструю смену каталога если вы знаете полный путь к каталогу, в который хотите перейти (который хотите сделать текущим).
Отметить группу
Эта команда используется для отметки группы файлов по заданному шаблону. Midnight Commander выдаст диалоговое окно, в которой надо задать опции выделения группы файлов и каталогов. Если включена опция Только файлы, то выделены будут только файлы. Если опция Только файлы, отключена, то выделены будут как файлы, так и каталоги. Если включена опция Образцы в стиле shell (Shell Patterns), регулярные выражение строятся по тем же правилам, которые действуют в оболочке shell (* означает ноль или большее число любых символов, а ? заменяет один произвольный символ). Если опция Образцы в стиле shell (Shell Patterns) отключена, то пометка файлов производится по правилам обработки нормальных регулярных выражений (смотрите ed (1)). Если включена опция С учётом регистра то пометка файлов и каталогов будет производиться с учетом регистра символов имён. Если опция С учётом регистра отключена, то регистр символов учитываться не будет.
Снять отметку
Используется для снятия отметки с группы файлов. Эта операция является обратной по отношению к операции отметки группы файлов и использует те же правила формирования шаблонов.
Выход
Выйти из программы Midnight Commander. Shift-F10 используется для выхода в тех ситуациях, когда используется shell wrapper. После Shift-F10 текущим каталогом будет не последний каталог, в котором вы были при работе в Midnight Commander, а тот, в котором вы были, когда запустили Midnight Commander.
По этой команде вызывается диалоговое окно, в строке ввода которого вы должны ввести тот путь, который вы ввели бы в командной строке оболочки при выполнении команды cd.
После этого надо нажать клавишу <Enter>.
Вызывает меню пользователя. Меню пользователя предоставляет простой способ расширения возможностей Midnight Commander за счет добавления в личное меню пользователя вызова часто используемых программ.
При обращении к пункту меню Дерево каталогов выводится окно, отображающее структуру каталогов файловой системы.
Команда Поиск файла позволяет найти на диске файл с заданным именем. "Горячие" клавиши - M-?.
Команда Переставить панели меняет местами содержимое правой и левой панелей. "Горячие" клавиши - C-u.
По команде Отключить панели показывается вывод последней из выполнявшихся команд облочки. Эта команда работает только через xterm и на консоли Linux и FreeBSD. "Горячие" клавиши - C-o.
По команде Сравнить каталоги ("горячие" клавиши - C-x d) сравнивается содержимое каталогов, отображаемых на левой и правой панелях. После сравнения можно воспользоваться командой Копировать для того, чтобы сделать содержимое каталогов одинаковым. Существует три метода сравнения. При быстром методе сравниваются только размер и дата создания файлов с одинаковыми именами. При побайтном методе сравнивается содержимое файлов (побайтно). Этот метод недоступен, если машина не поддерживает системный вызов mmap(2). При сравнении по размеру сравниваются только размеры соответствующих файлов, а дата создания не проверяется.
Пункт меню Внешняя панелизация позволяет выполнить внешнюю программу, сделав ее вывод содержимым текущей панели (характерный пример - панелизация вывода команды find).
Пункт меню История командной строки выводит окно со списком ранее выполнявшихся команд. Подсвеченную строку из истории можно скопировать в командную строку оболочки (перемещение подсветки - стрелками вверх/вниз, копирование - по клавише Enter). Доступ к истории команд можно получить также по комбинациям клавиш M-p или M-n, однако в этом случае вы не видите окна с перечнем команд. Вместо этого в командную строку выводится одна команда из списка и по комбинации M-p происходит смена этой команды на предыдущую, а по M-n - на следующую команду из истории команд.
Пункт меню Каталоги быстрого доступа позволяет создать список каталогов, которые часто используются, и обеспечить быстрый переход к нужному каталогу из этого списка.
Пункт меню Список активных ВФС отображает список виртуальных файловых систем, активных на настоящий момент. Можно перейти на выбранную виртуальную файловую систему. Для Обновления списка выберите кнопку "Освежить" в диалоговом окне. Кнопка "Освободить ВФС сейчас" поможет при обновлении содержимого архива или при разорванном сетевом соединении.
Пункт меню Фоновые задания отображает список фоновых заданий, запущенных в диалоге копирования/перемещения кнопкой "В фоне".
Пункт меню Список экранов отображает диалоговое окно со списком одновременно работающих в данный момент встроенноых редакторов, программ просмотра и других модулей MC, поддерживающих такой режим работы.
После выбора пункта меню Файл расширений вы можете связать с определенным расширением файла (окончанием имени после последней точки) программу, которая будет запускаться для обработки (просмотра, редактирования или выполнения) файла с таким расширением. Запуск выбранной программы будет осуществляться после установки подсветки на имя файла и нажатия клавиши <Enter>.
Пункт меню Файл меню используется для редактирования пользовательского меню (которое появляется после нажатия клавиши F2).
Дерево каталогов может быть вызвано двумя способами: через пункт "Дерево каталогов" из меню "Команды" и пункт "Дерево" из меню правой или левой панелей.
Чтобы избавиться от долгих задержек во время создания дерева каталогов, Midnight Commander создает дерево путем просмотра только небольшого подмножества всех каталогов. Если каталог, который вам нужен, не отображен, перейдите в его родительский каталог и нажмите C-r (или F2).
Для управления просмотром дерева каталогов могут использоваться следующие комбинации клавиш:
Работают все клавиши управления перемещением.
Enter В окне просмотра дерева каталогов нажатие этой клавиши вызывает выход из режима просмотра и отображение списка файлов выбранного каталога в активной панели. При отображении дерева каталогов в одной из панелей при нажатии клавиши Enter соответствующий каталог отображается во второй панели, а на текущей панели остается дерево.
C-r, F2 Перечитать содержимое каталога. Используется в тех случаях, когда дерево каталогов не соответствует реальной структуре: некоторые каталоги не показаны или показаны более не существующие.
F3 Удалить текущий каталог из дерева. Эта команда используется для удаления ошибочно отображаемых ветвей дерева. Если вам необходимо вернуть подкаталог в дерево, перейдите в его родительский каталог и нажмите клавишу F2.
F4 Переключение между статическим (применяемым по умолчанию) и динамическим режимами перемещения по дереву.
В статическом режиме перемещения для выбора каталога (т.е. перемещения подсветки на имя другого каталога) используются только стрелки вверх/вниз. Показываются все известные программе на данный момент подкаталоги.
В динамическом режиме стрелки вверх/вниз используются для перехода на соседний каталог того же уровня. Для перехода в родительский каталог используется клавиша "стрелка влево", а по стрелке вправо происходит переход к потомкам текущего каталога, то есть на один уровень ниже. При этом отображаются только вышележащие каталоги (включая родительский и выше), соседние каталоги того же уровня и непосредственные потомки. Вид дерева каталогов динамически изменяется после каждого перемещения по дереву.
F5 Копировать подкаталог (появляется строка ввода, в которой надо указать, куда копировать).
F6 Переместить подкаталог.
F7 Создать подкаталог в текущем (подсвеченном) каталоге.
F8 Удалить подсвеченный каталог из файловой системы.
C-s, M-s Найти следующий каталог, соответствующий заданному шаблону поиска. Если такого каталога не существует, происходит просто смещение подсветки на одну строку вниз.
C-h, Backspace Удаляет последний символ в строке (шаблоне) поиска.
Любой другой символ Этот символ добавляется в шаблон поиска и производится перемещение на имя следующего каталога, удовлетворяющее шаблону. В режиме просмотра дерева каталогов вначале необходимо активизировать режим поиска клавишами C-s. Шаблон поиска будет отображаться в строке мини-статуса.
Следующие действия возможны только в окне просмотра дерева каталогов и не поддерживаются при просмотре дерева в одной из панелей:
F1 (Help) Вызов подсказки с отображением настоящего раздела помощи.
Esc, F10 Выход из окна дерева каталогов. Смены текущего каталога не происходит.
В окне просмотра дерева каталогов поддерживается мышка. Двойной щелчок аналогичен нажатию клавиши Enter. Смотрите также секцию о поддержке мыши.
Поле "Шаблон имени" содержит маску имени файла, по которой происходит поиск. В зависимости от опции "Метасимволы shell" маска интерпретируется либо по тем же правилам, что и в командной оболочке, либо как регулярное выражение. Пустое поле также допустимо и соответствует любому имени.
Поле "Содержимое" позволяет задать текст, который надо найти. Если это поле пусто, то поиск по содержимому файлов производиться не будет.
Опция "Только целые слова" устанавливает, что шаблон поиска соответствует только целым словам (например, если указано "foo", не будет найдено слово "foobar").
Для того, чтобы начать поиск, нажмите экранную кнопку <Дальше>. Во время поиска его можно приостановить кнопкой <Приостановить> и продолжить по кнопке <Продолжить>.
Список найденных файлов можно просматривать, перемещаясь с помощью клавиш "стрелка вверх" и "стрелка вниз". Кнопка <Перейти> используется для перехода в каталог, в котором находится подсвеченный файл. Кнопка <Повтор> служит для задания параметров нового поиска. Кнопка <Выход> служит для выхода из режима поиска. Нажатие на кнопку <Панелизация> приведет к тому, что результаты поиска будут отображены на текущую активную панель, так что вы можете производить с выбранными файлами еще какие-то действия (просматривать, копировать, перемещать, удалять и так далее). Для возврата к обычному списку файлов нужно перейти в каталог "..".
Опция "Разрешить игнорирование каталогов" совместно с расположенным ниже полем ввода позволяет задать список каталогов, которые нужно пропускать при поиске (например, вы знаете, что искомого файла нет на CDROM или не хотите искать в каталогах, подключенных через 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
Если вы захотите, то можете сохранить часто используемые команды панелизации под отдельными информативными именами, чтобы иметь возможность их быстро вызвать по этим именам. Для этого нужно набрать команду в строке ввода и нажать кнопку <Добавить>. После этого вам потребуется ввести имя, по которому вы будете вызывать команду. В следующий раз вам достаточно будет выбрать нужное имя из списка, а не вводить всю команду заново.
Использование этого пункта меню обеспечивает более быстрый переход к часто используемым каталогам. Другим способом ускорения процедуры переключения на часто используемые каталоги является задание переменной CDPATH (смотрите описание встроенной команды cd.
Все строки, начинающиеся с # или пустые строки игнорируются.
Строки, начинающиеся с первой колонки (будем говорить, что с таких строк начинаются секции файла расширений), должны иметь следующий формат:
keyword/desc, т.е. все, что стоит после keyword/ и до конца строки, интерпретируется как desc.
В качестве keyword может стоять одно из следующих слов:
Все строки в секции, кроме первой, должны начинаться с пробела или символа табуляции и иметь следующий формат:
keyword=command (без пробелов возле "="), где keyword должно быть:
Open (строка задает действия, выполняемые в том случае, когда пользователь нажимает Enter или дважды щелкает мышкой по имени файла), View (F3), Edit (F4) или Include (для добавления правил из общей секции).
command - любая однострочная команда оболочки, в которой допускаются простые макроподстановки.
Действие вычисляется сверху вниз (таким образом порядок следования важен). Если некоторое действие пропущено, поиск продолжается как в случае, если это действие не соответствует условию. Другими словами если файл соответствует первой и второй секции, но действие View пропущено в первой секции, то при нажатии клавиши F3 будет использовано действие View из второй секции. default должно описывать все действия.
Формат всех трех файлов меню одинаков и очень прост. Строки комментариев начинаются с '#'. Дополнительные комментарии должны начинаться с '#', пробела или символа табуляции. Строки, начинающиеся с любого символа, отличного от пробела и символа табуляции, интерпретируются как названия пунктов меню, причем если первый символ является буквой или цифрой, то соответствующая клавиша будет служить "горячей" клавишей для вызова этого пункта меню. Строки, начинающиеся с пробела или символа табуляции, интерпретируются как команды, которые должны выполняться при вызове соответствующего пункта меню. Эти строки должны следовать за строкой названия и их может быть несколько.
Когда пользователь выбирает какой-то пункт меню, соответствующие командные строки копируются во временный файл во временном каталоге (обычно /usr/tmp) и затем этот файл запускается на выполнение. Это позволяет пользователю вставлять в команды меню любые конструкции, допустимые в командном языке оболочки. Можно также использовать макроподстановки, которые производятся перед выполнением кода меню (подробнее смотрите в секции Макроподстановки).
Вот пример файла mc.menu:
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 "Midnight 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)
Если строка условия начинается с '+' (или '+?') вместо '=' (или '=?') - это условие трактуется как условие включения данного пункта в меню. Если условие истинно, пункт включается в отображаемое на экране меню, если условие не выполняется - не включается.
Вы можете использовать одно и то же условие и как условие выполнения и как условие включения пункта в меню, если начнете строку условия с '+=' или '=+' (если надо отображать ход вычисления, то с '+=?' или '=+?'). Если вы хотите использовать два разных условия, одно для включения в меню, а другое - для выполнения, надо предпослать пункту меню две строки условий, одну - начинающуюся с '+', и другую - начинающуюся с '='.
Пункт Конфигурация вызывает диалоговое окно, в котором вы можете поменять большинство установок программы Midnight Commander.
Пункт Внешний вид служит для задания настроек, определяющих положение и вид окна программы mc на экране.
Пункт Настройки панелей служит для задания настроек панелей файлового менеджера.
Пункт Подтверждение вызывает диалоговое окно, в котором вы указываете, на выполнение каких действий программа будет требовать подтверждения.
Пункт Оформление вызывает диалоговое окно, в котором вы можете выбрать скин.
Пункт Биты символов вызывает диалоговое окно, в котором вы указываете, в каком формате ваш терминал будет обрабатывать (вводить и отображать на дисплее) информацию, представленную байтами (например, записанную в файле).
Пункт Распознавание клавиш вызывает диалоговое окно, в котором вы можете протестировать работу некоторых клавиш, которые работают не на всех типах терминалов, и связать ту реакцию системы, которая должна была последовать за нажатием отсутствующей клавиши, с нажатием другой клавиши или комбинации клавиш.
Пункт Виртуальные ФС вызывает диалоговое окно, в котором вы можете задать значения некоторых параметров, связанных с использованием виртуальных файловых систем.
По команде Сохранить настройки введенные значения параметров сохраняются в ini-файле программы.
Параметры операций с файлами
Детали операций. Этот переключатель определяет, будет ли при выполнении операций копирования, перемещения и удаления выводится дополнительное окно, отображающее ход выполнения операции. Если у вас медленный терминал, вы можете отключить этот вывод. Он отключается автоматически, если скорость вашего терминала меньше 9600 bps.
Подсчитывать общий размер. Если эта опция включена, Midnight Commander перед выполнением операций копирования, перемещения и удаления подсчитывает общее число обрабатываемых файлов и их суммарный размер и показывает ход выполнения операции над этими файлами в виде диаграммы-полоски (правда, это слегка замедляет выполнение операций). Эта опция не работает, если отключена опция Детали операций.
Обычный индикатор прогресса. Если эта опция включена, индикатор прогресса файловых операций (копирование, перемещение, удаление) всегда увеличивается слева направо. Если опция выключена, направление увеличения индикатора прогресса совпадает с направлением файловой операции: с левой панели на правую или наоборот. По умолчанию включено.
Автоимя каталога. При создании нового каталога по F7 в поле ввода имени нового каталога будет автоматически подставляться имя файла или каталога, находящегося под курсором. По умолчанию выключено.
Выделять место Если возможно, предварительно выделять место под весь копируемый файл. По умолчанию выключено.
Клавиша Esc
По умолчанию Midnight Commander трактует нажатие на клавишу ESC как действие, предшествующее нажатию какой-то другой клавиши и совместно обрабатывает комбинацию <Esc-key>. Поэтому вы должны нажимать ESC дважды, чтобы закрыть диалог. Но существует возможность использовать однократное нажатие ESC для этого действия.
Однократное нажатие. По умолчанию эта опция выключена. Если вы её включите, то программа будет ожидать нажатия второй клавиши только в течение некоторого временного интервала (см. ниже опцию Интервал), и если за это время ни одна клавиша не нажата, то ESC интерпретируется как каоманда "Отмена" (ESC ESC).
Интервал. Эта опция используется для задания временного интервала (в микросекундах) для использования однократного нажатия на клавишу ESC. По умолчанию этот интервал равен 1 секунде (1000000 микросекунд). Кроме того, этот интервал может быть установлен через переменную окружения KEYBOARD_KEY_TIMEOUT_US (также в микросекундах), которая имеет приоритет над над значеним этой опции.
Пауза после исполнения
После выполнения вашей команды Midnight Commander может обеспечить паузу, чтобы вы могли просмотреть и изучить вывод команды. Есть три варианта установки этой опции:
Никогда. Это значит, что вы не хотите видеть вывод команды. На консоли Linux или FreeBSD или при использовании xterm вы можете просмотреть этот вывод, нажав C-o.
На тупых терминалах . Пауза будет создаваться на терминалах, которые не способны обеспечить показ вывода последней из выполнявшихся команд (это любые терминалы, отличные от xterm или Linux-консоли).
Всегда. Программа обеспечит паузу после выполнения любой команды.
Прочие настройки
Встроенный редактор. Если эта опция включена, то для редактирования файлов вызывается встроенный редактор. Если опция выключена, то будет использоваться редактор, указанный в переменной окружения EDITOR. Если такой редактор не задан, будет вызываться vi Смотрите раздел Встроенный редактор файлов.
Встроенный просмотр. Если эта опция включена, для просмотра файлов вызывается встроенная программа просмотра. Если опция выключена, вызывается программа, указанная в переменной окружения PAGER. Если такая программа не задана, используется команда view. Смотрите раздел Встроенная программа просмотра файлов.
Автоматические меню. Если эта опция включена, пользовательское меню будет автоматически вызываться на экран при запуске программы. Это бывает полезно, если на компьютере работают неопытные пользователи (операторы), которые должны выполнять только стандартные операции.
Спрашивать имя нового файла. Если эта опция включена, то перед открытием нового файла в редакторе будет запрошено его имя.
Выпадение меню при вызове. Если эта опция включена, то при вызове главного меню нажатием клавиши F9 будет сразу отображаться перечень пунктов меню (выпадающее меню). В противном случае активизируются только пункты главного меню, и вы должны (после выбора одного из них клавишами стрелок) нажать клавишу Enter либо выбрать нужный пункт по "горячей клавише" и только после этого получите возможность выбрать пункт выпадающего меню.
Образцы в стиле shell. По умолчанию команды Select, Unselect и Filter используют регулярные выражения, которые строятся по правилам, действующим в оболочке (shell- like regular expressions). Для того, чтобы достичь такого эффекта, выполняются следующие преобразования: '*' заменяется на '.*' (ноль или больше символов); '?' заменяется на '.' (в точности один символ) и '.' заменяется на обычную точку. Если опция отключена, то регулярные выражения должны строиться так, как описано в ed(1).
Дополнение: показывать всё. В процессе ввода команд Midnight Commander может выполнять Завершение ввода при нажатии на клавиши M-Tab, пытаясь угадать окончание вводимой команды. По умолчанию при первом нажатии M-Tab он ищет все возможные варианты завершения и, если завершения неоднозначны (имеется много разных вариантов), то только издает звуковой сигнал. При втором нажатии M-Tab отображаются все возможные завершения. Если вы хотите видеть все возможные варианты завершения после первого нажатия M-Tab, включите эту опцию.
Вращающийся индикатор Если эта опция включена, Midnight Commander отображает в верхнем правом углу вращающуюся черточку, как индикатор того, что выполняется какое-то задание (операция).
Смена каталога по ссылкам. Установка этой опции приводит к тому, что Midnight Commander будет следовать логической цепочке подкаталогов при выполнении команд смены каталога как в панели, так и по команде cd. Так же ведет себя по умолчанию bash. Если же опция не включена, Midnight Commander будет при выполнении команды cd следовать реальной структуре каталогов, так что если вы вошли в текущий каталог по ссылке на него, то по команде cd .. вы окажетесь в его родительском каталоге, а не в том каталоге, где расположена ссылка.
Безопасное удаление. Если эта опция включена, непреднамеренно удалить файл будет сложнее. В диалоговых окнах подтверждения удаления предлагаемая по умолчанию кнопка изменяется с Да на Нет. По умолчанию эта опция отключена.
Безопасная перезапись. Если эта опция включена, непреднамеренно перезаписать файл будет сложнее. В диалоговом окне подтверждения перезаписи предлагаемая по умолчанию кнопка изменяется с Да на Нет. По умолчанию эта опция отключена.
Автосохранение настроек. Если эта опция включена, то при выходе из программы Midnight Commander значения всех настраиваемых параметров сохраняются в файле ~/.config/mc/ini.
Разбиение панелей
Большую часть экрана занимают файловые панели. Вы можете указать, каким должно быть расположение панелей: вертикальное или горизонтальное. Изменить расположение панелей можно также с помощью клавиатурного сочетания Alt-, (Alt-запятая).
Равные размеры По умолчанию панели имеют равные разменры. Эта опция позволяет изменить их.
Консольный вывод
Эта опция доступна, если Midnight Commander запущен на консоли Linux или FreeBSD. Она устанавливает число строк, которые будут оставлены для отображения вывода команды.
Прочие настройки
Линейка меню. Если включено, основное меню программы будет отображаться постоянно вверху экрана. По умолчанию включено.
Командная строка. Если включено, в нижней части экрана будет доступна командная строка. По умолчанию включено.
Метки клавиш. Если включено, внизу экрана будут отображаться 10 меток, соответствующих функциональным клавишам F1-F10. По умолчанию включено.
Строка подсказки. Если включено, ниже панелей будут отображаться однострочные подсказки по приёмам работы в Midnight Commander. По умолчанию включено.
Заголовок xterm. При исполнении в эмуляторе терминала системы X11 Midnight Commander отображает в заголовке xterm текущий каталог и изменяет этот заголовок при необходимости. Если ваш эмулятор терминала неисправен и вы видите неверный заголовок при старте или изменении каталога, выключите эту опцию. По умолчанию включено.
Свободное место. Если включено, на нижней рамке панели будет показано свободное место и общий размер текущей файловой системы. По умолчанию включено.
Показывать мини-статус. Если включено, в нижней части каждой панели выводится строка информации о выделенном подсветкой файле или каталоге каждой панели. По умолчанию включено.
Размеры в единицах СИ. Если эта опция включена, то Midnight Commander отображает размеры файлов и каталогов с префиксами СИ (по основанию 10). По умолчанию опция выключена. В этом случае Midnight Commander отображает размеры с префиксами МЭК (по основанию 2).
Смешивать файлы/каталоги. Если эта опция включена, имена файлов и каталогов отображаются вперемежку. Если опция выключена, каталоги (и ссылки на каталоги) показываются в начале списка, а имена файлов - после имен всех каталогов. По умолчанию выключено.
Показывать резервные (Backup) файлы. Если эта опция выключена, Midnight Commander не показывает файлы, имена которых заканчиваются на '~' (подобно ключу -B команды ls в GNU). По умолчанию включено.
Показывать скрытые файлы. Если эта опция включена, Midnight Commander показывает все файлы, имена которых начинаются точкой (как ls -a). По умолчанию включено.
Быстрая загрузка каталога. По умолчанию эта опция выключена. Если вы активизируете ее, Midnight Commander будет использовать для вывода содержимого каталога следующий трюк: содержимое каталога перечитывается только в том случае, если изменилась запись в i-node каталога, то есть если в каталоге создавались или удалялись файлы; если изменялись только записи в i-node файлов каталога (изменялся размер файла, режим доступа или владелец и т.п.) содержимое панели не обновляется. В этом случае (если опция включена) вы должны обновлять список файлов вручную (используя клавиатурное сочетание C-r).
Отметка перемещает курсор. Когда вы отмечаете файл (клавишей Insert), то по умолчанию подсветка на имени файла смещается на одну строку вниз.
Инвертировать только файлы. Если опция включена (по умолчанию она включена), инвертирование выбора применяется только к файлам, но не к каталогам. Выбор каталогов не изменяется. Если не установлена, производится инвертирование как файлов, так и каталогов. Все невыбранные объекты становятся выбранными и наоборот.
Простая перестановка. Если обе панели содержат списки файлов и каталогов, простая перестановка представляет собой изменение расположения панелей на экране: правая панель становится левой и наоборот. Если эта опция выключена, панели со списками файлов обмениваются соим содержимым, сохраняя формат списка и параметры сортировки. По умолчанию выключено.
Автосохранение настроек панелей. Если опция включена (по умолчанию она выключена), то при выходе из Midnight Commander'а текущие настройки панелей соханяются в файле ~/.config/mc/panels.ini.
Навигация
Навигация в стиле lynx. Если эта опция включена, вы имеете возможность использовать клавиши "стрелка вправо" для перехода в подсвеченный в данный момент каталог и "стрелка влево" для перехода в родительский по отношению к текущему каталог (при условии, что командная строка пуста). По умолчанию опция отключена.
Страничное листание. Если опция установлена (по умолчанию она установлена), то когда курсор (подсветка) достигает конца или начала списка файлов, отображаемого на панели, будет производиться смещение на половину этого списка (то есть половина отображаемого списка остается на экране, а половина пропадает, заменяясь следующими пунктами общего списка). Если опция не установлена, происходит смещение только на одну строку.
Страничное листание мышью. Определяет, будет ли прокрутка информации (scrolling) в панелях, осуществляемая с помощью мышки, производиться страницами или на одну строку.
Центрированное листание. Если эта опция включена, содержимое панели будет пролистываться, а курсор будет находиться в середине колонки списка файлов. Эта опция не применяется к страничному листанию - в этом случае позиция курсора изменится.
Расцветка файлов
По умолчанию вся информация отображаются одним цветом, но вы можете сделать так, чтобы права доступа и типы файлов были выделены другими цветами. Если включено выделение цветом прав доступа, поля perm и mode в форматах вывода, показывающие права пользователя, запустившего программу Midnight Commander, выделены цветом, определенным ключевым словом selected. Если разрешено, подсветка имён файлов производится на основании правил из файла /usr/local/etc/mc/filehighlight.ini. Смотрите Подсветка имён файлов для получения большей информации.
Быстрый поиск
Быстрый поиск файлов может работать в одном из трёх режимов: с учётом регистра имён файлов, без учёта регистра или в соответствии с порядком сортировки файлов в панели: с учётом регистра или без. Режим по умолчанию - использование порядка сортировки файлов в панели.
Для получения более подробной информации о скинах обратитесь к разделу Внешний вид.
В диалоговом окне появляется таблица с названиями клавиш, которые могут тестироваться. Вы можете перемещать подсветку по названиям, используя клавишу Tab или клавиши, применяемые в редакторе vi ('h' влево, 'j' вниз, 'k' вверх 'l' вправо). Если один раз нажать на клавиши со стрелками, после чего возле их названий в таблице появится пометка OK, то их тоже можно будет использовать для управления перемещением.
Для тестирования работы клавиш нужно нажать каждую клавишу из перечисленных в таблице. Если она работает нормально, возле ее названия в таблице появится пометка OK. После появления такой пометки клавиша начинает работать в ее обычном режиме. Например, первое нажатие на клавишу F1 приводит только к появлению пометки (если она работает нормально), а при следующих нажатиях будет вызываться окно подсказки. То же самое относится к клавишам стрелок. Клавиша Tab работает всегда.
Если какая-то клавиша не работает, то после нажатия на нее пометка OK не появится. В таком случае можно связать ту реакцию системы, которая должна была последовать за нажатием неработающей (отсутствующей) клавиши, с нажатием другой клавиши или комбинации клавиш. Для этого надо переместить подсветку на название неработающей клавиши (используя мышь или клавишу Tab) и нажать Enter или клавишу пробела. Должно появиться окно красного цвета, в котором вас просят нажать клавишу, которая будет использоваться вместо неработающей. Для отмены операции нажмите Esc и дождитесь, пока красное окно исчезнет. Либо выберите и нажмите ту комбинацию клавиш, которая будет служить заменой для неработающей клавиши (и тоже дождитесь закрытия окна).
Когда закончите тестирование и настройку всех клавиш, вы можете сохранить эти настройки в секции [terminal:TERM] вашего файла ~/.config/mc/ini (где TERM - название используемого терминала) либо отказаться от запоминания изменений. Если все клавиши работают нормально, то сохранение, конечно, не требуется.
С целью ускорения доступа к файлам Midnight Commander сохраняет в оперативной памяти информацию, относящуюся к некоторым виртуальным файловым системам (например, списки файлов в каталогах удаленных ftp серверов).
Кроме того, для получения доступа к содержимому сжатых архивов (например, сжатых tar-файлов) Midnight Commander создает временные файлы на жестком диске.
Поскольку в обоих этих случаях расходуются ресурсы компьютера, у вас может появиться желание настроить некоторые параметры таким образом, чтобы уменьшить эти расходы или повысить скорость доступа к часто используемым файловым системам.
Файловая система архиватора tar очень разумно организует работу с архивными файлами: она сохраняет на диске структуру каталогов архива и, когда возникает необходимость обращения к информации из tar-файла, использует этот список для извлечения нужного файла.
В общем случае tar-файлы обычно хранятся в сжатом виде (простые tar-файлы - вымирающее явление), и в силу природы таких файлов (структура подкаталогов для tar-файлов недоступна для мгновенной загрузки/отображения), файловая система tar должна разархивировать файлы на диск во временный каталог и затем представить обращение к разархивированным файлам как обращение к tar-файлу.
А поскольку мы все любим быстро пролистывать файлы и хранить их в виде tar-архивов, стало самой обычной ситуацией когда сначала просматривают такой файл, выходят из него, а потом обращаются к нему снова. Поскольку разархивация - операция медленная, Midnight Commander кеширует информацию в памяти на некоторое время. По истечении этого интервала времени все ресурсы, выделенные этой файловой системе, будут освобождены. По умолчанию величина этого интервала устанавливается равной 1 минуте. Смотрите также Файловая система tar.
Файловая система FTP сохраняет список каталогов, полученный с FTP-сервера, в памяти (в кеше). Время, в течение которого этот список хранится в кеше, задается опцией Тайм-аут кеша каталога FTP. Слишком маленькое значение этого параметра будет замедлять все операции с файловой системой ftp, потому что каждое обращение к ней будет означать реальное обращение к удаленному ftp серверу.
Кроме того, в том же диалоговом окне можно задать имя прокси-сервера (proxy host), который будет использоваться для перекачки файлов по ftp и сконфигурировать Midnight Commander таким образом, чтобы всегда работать через прокси-сервер.
Пароль анонимного FTP: - пароль, используемый когда вы регистрируетесь как анонимный пользователь "anonymous". Для некоторых сайтов требуется полноценный электронный адрес, с другой стороны, вероятно, вы не захотите указывать свой настоящий электронный адрес для сайтов, которым не доверяете, особенно если не используется фильтрация нежелательной корреспонденции.
Также можно разрешить использование файла ~/.netrc, содержащего имена пользователей и пароли серверов FTP. Формат файла .netrc описан в .netrc (5).
Смотрите раздел о файловой системе FTP для получения дополнительной информации.
Команда Сохранить настройки создает файл ~/.config/mc/ini, в котором записываются текущие значения параметров, задаваемых опциями меню Левая, Правая и Настройки.
Если вы включите опцию Автосохранение настроек (пункт меню "Настройки/Конфигурация"), MC будет автоматически сохранять текущие настройки при выходе из программы.
Значения некоторых параметров не могут быть изменены через пункты меню. Для изменения значений этих параметров вы должны отредактировать файл настроек с помощью какой-либо программы- редактора. Подробнее об этих параметрах смотрите в разделе Специальные установки.
Если вы нажимаете клавишу Enter в тот момент, когда подсветка указывает на имя файла, не являющегося исполняемым, Midnight Commander сравнивает расширение выбранного файла с расширениями, прописанными в файле расширений. Если в файле расширений найдется подраздел, задающий процедуры обработки файлов с данным расширением, то обработка файла производится в соответствии с заданными в этом подразделе командами. Перед обработкой выполняются простые макроподстановки.
Замена тильды Символ тильды (~) будет заменен именем вашего домашнего каталога, а если вы добавите после тильды имя пользователя, эта конструкция будет заменена на имя домашнего каталога указанного пользователя.
Например, ~guest - это домашний каталог пользователя guest, в то время как ~/guest - это каталог guest в вашем домашнем каталоге.
Предыдущий каталог вы можете перейти в предыдущий каталог, используя специальное имя '-', то есть выполнив команду: cd -
Каталоги в CDPATH Если каталог, указанный команде cd, не является подкаталогом текущего каталога, то Midnight Commander использует значение переменной окружения CDPATH для поиска указанного каталога во всех каталогах, перечисленных в этой переменной.
Например, если переменной CDPATH присвоено значение ~/src:/usr/src, то из любого места в файловой системе вы сможете перейти в любой подкаталог каталогов ~/src и /usr/src, используя только относительные имена (cd linux вызовет переход в /usr/src/linux).
Если поддержка subshell включена, то Midnight Commander будет порождать точную копию (a concurrent copy) вашей оболочки (которая определена в переменной окружения SHELL или, если эта переменная не определена, в файле /etc/passwd) и запускать ее в псевдо-терминале, вместо того, чтобы каждый раз вызывать новую оболочку для выполнения команды. Введенная команда передается subshell. Это позволяет изменять значения переменных окружения, использовать функции shell и определять алиасы (aliases), которые будут действовать до выхода из программы Midnight Commander.
Если вы используете bash, можно указать команды, которые будут выполняться при запуске subshell, в файле ~/.local/share/mc/bashrc и специальную карту раскладки клавиатуры в файле ~/.local/share/mc/inputrc. Пользователи tcsh могут задать выполняемые при запуске команды в файле ~/.local/share/mc/tcshrc.
Во время выполнения приложения в subshell можно в любой момент нажать комбинацию клавиш C-o для переключения в Midnight Commander (выполняемая команда или приложение будут остановлены). Если вы прервали таким образом исполнение команды, вы не сможете запустить другую внешнюю команду, пока не завершите работу остановленного приложения.
Особенностью использования subshell является то, что подсказка (prompt), выводимая Midnight Commander будет той же самой, что и в вашей обычной оболочке.
В разделе Опции запуска приведена дополнительная информация о том, как можно управлять (настроить) subshell.
Диалоговое окно "Права доступа" состоит из двух частей - Правадоступа и Файл.
В части "Файл" отображается имя файла или каталога и права доступа на него в восьмеричной форме, а также указаны владелец и группа файла.
В части "Права доступа" перечислены атрибуты прав доступа к текущему файлу. В квадратных скобках возле соответствующего атрибута крестиком помечены те атрибуты, которые установлены для данного файла. Изменять установки атрибутов можно двумя способами. При первом способе непосредственно изменяется значение атрибута в квадратных скобках возле его названия. Для изменения значений атрибутов надо переместить подсветку на название соответствующего атрибута и нажать клавишу пробела.
Для перемещения подсветки по названиям атрибутов можно использовать клавиши-стрелки или клавишу Tab. Названия изменяемых атрибутов помечаются звездочкой и предполагаемое значение всех атрибутов в восьмеричном представлении прав доступа сразу же отображаются в части окна "Файл".
Для того, чтобы выбранные вами значения атрибутов прав доступа вступили в силу, надо нажать клавишу Enter или экранную кнопку [Установить] (с помощью мышки). Для отказа от изменения атрибутов нужно выбрать кнопку [Прервать]. Вместо выбора экранных кнопок можно воспользоваться "горячими" клавишами (выделенные буквы в названии атрибута).
Изменять права доступа к отдельному файлу можно только первым способом (описанным выше). Если вы хотите изменить атрибуты прав доступа сразу группы файлов или каталогов, вы тоже можете воспользоваться этим способом, только вместо экранной кнопки [Установить] или клавиши <Enter> должны выбрать кнопку [Установить все]. Второй способ заключается в том, что вы сначала помечаете те атрибуты, которые хотите изменить, с помощью клавиш <Ins> или <T>. Обратите внимание, что значение в квадратных скобках при этом не изменяется. После этого вы выбираете один из следующих вариантов действий (то есть одну из экранных кнопок):
[Отметить все] отмеченные атрибуты (и только они) будут установлены в те значения, которые указаны в квадратных скобках возле названия атрибута, причем для всех выбранных (помеченных) файлов; если атрибут не был отмечен, его значение для выбранных файлов не изменяется.
[Установить помеченное] для всех выбранных файлов бит, соответствующий данному атрибуту, будет установлен в 1.
[Очистить помеченное] для всех выбранных файлов бит, соответствующий данному атрибуту, будет установлен в 0.
[Установить] будут установлены атрибуты только для одного файла (первого из помеченных), причем установка производится так же, как по клавише [Отметить все].
[Прервать] отказаться от выполнения команды Chmod.
В нижней части этого диалогового окна имеются две кнопки. Нажатие на кнопку <Пропустить> приведет к тому, что будет пропущена обработка текущего файла. Нажатие на кнопку <Прервать> прерывает выполнение заданной операции, все оставшиеся файлы будут пропущены.
В процессе выполнения файловых операций вы можете увидеть окна еще трех видов.
Окно ошибок информирует об ошибке и предлагает три варианта продолжения. Обычно вы выбираете либо вариант <Пропустить> для того, чтобы исключить из обработки файл, на котором споткнулась программа, либо <Прервать>, чтобы вообще отменить выполнение заданной операции. Третий вариант, <Повторить>, выбирается тогда, когда вам удалось устранить причину сбоя (например, воспользовавшись другим терминалом).
Окно подтверждения перезаписи появляется тогда, когда вы пытаетесь переписать существующий файл. В этом окне отображаются время создания и размер файла-источника и файла-приемника (то есть перезаписываемого файла, который фактически будет уничтожен). Ниже выведены два вопроса. На первый вопрос ("Переписать этот файл?") предлагается три варианта ответа:
согласиться (кнопка <Да>);
отказаться, то есть пропустить перезапись текущего файла (кнопка <Нет>);
дописать содержимое файла-источника в конец файла-приемника (кнопка <дописать в Конец>).
Выбор одного из вариантов ответа на второй вопрос ("Переписать все файлы?") позволяет принять одно решение по всем выбранным для обработки файлам (чтобы окно запроса не появлялось каждый раз). Предлагается 4 варианта решения:
Окно запроса на рекурсивное удаление появляется в том случае, когда вы пытаетесь удалить непустой каталог. По кнопке <Да> каталог будет удален вместе со всеми файлами, <Нет> означает отказ от удаления каталога, <Все> надо выбирать, если вы отметили группу подкаталогов для удаления и уверены в своем выборе, <ни Одного> - чтобы пропустить все непустые каталоги из числа помеченных, <Прервать> означает отказ от выполнения операции удаления. Выбирайте <Да> или <Все> только в том случае, когда вы действительно уверены, что хотите удалить каталог со всеми вложенными подкаталогами.
Если вы пометили для обработки группу файлов, то после выполнения операции будет снята отметка только с тех файлов, которые успешно обработаны. Пропущенные файлы останутся помеченными.
Есть еще несколько опций, которые влияют на выполнение операций копирования/перемещения файлов, и которые устанавливаются в том же окне запроса, где задаются маски имен файлов:
Разыменовывать ссылки
определяет, будут ли при копировании жестких или символических ссылок в каталоге- приемнике (и рекурсивно в подкаталогах) создаваться такие же ссылки, или будут копироваться файлы (и подкаталоги), на которые эти ссылки указывают.
Внутрь каталога, если есть
определяет, что делать, если в каталоге-приемнике уже существует подкаталог, имя которого совпадает с именем файла (каталога), который копируется (источника). По умолчанию (опция отключена) содержимое каталога-источника копируется в каталог-приемник. Если опция включена, то в каталоге приемнике будет создан новый подкаталог с тем же именем, в который и будет осуществляться копирование. Лучше показать это на примере:
Пусть вы хотите скопировать каталог /foo , содержащий файл bar , в уже существующий каталог /bla/foo. Если эта опция не включена, MC скопирует файл /foo/bar в файл /bla/foo/bar. Если опцию включить, будет создан каталог /bla/foo/foo и файл /foo/bar будет скопирован в файл /bla/foo/foo/bar.
Сохранять атрибуты
определяет, будут ли при копировании/перемещении сохранены атрибуты исходного файла: права доступа, временные метки и, если вы root, UID и GID исходного файла. Если опция отключена, атрибуты будут установлены в соответствии с текущим значением umask.
Образцы в стиле shell
Когда эта опция включена, можно использовать символы замены (wildcards) '*' и '?' в маске источника. Они обрабатываются аналогично тому, как это делается в shell. В маске приемника разрешается использовать только '*' и '\<цифра>'. Первый символ '*' в маске приемника соответствует первой группе символов замены в маске источника, второй символ '*' соответствует второй группе и т. д. Аналогично, символ замены '\1' соответствует первой группе символов замены в маске источника, символ '\2' - второй группе и т. д. до '\9'. Символ '\0' соответствует целому имени файла-источника.
Два примера:
Если маска источника "*.tar.gz", а приемник - "/bla/*.tgz" и имя копируемого файла - "foo.tar.gz", копия будет называться "foo.tgz" и будет находиться в каталоге "/bla".
Предположим вы хотите поменять местами имя и расширение файла, так чтобы "file.c" стал файлом "c.file". Маска источника для этого должна иметь вид "*.*", а маска приемника - "\2.\1".
Когда опция Образцы в стиле shell выключена, MC не осуществляет автоматической группировки. Для указания групп символов в маске источника, которые будут соответствовать символам замены в маске приемника, вы должны в этом случае использовать скобки '\(...\)'. Этот способ более гибкий, но требует больше усилий при вводе.
Два примера:
Если маска источника имеет вид "^\(.*\)\.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).
Изменять относительные ссылки
указывает, что Midnight Commander должен изменять символические ссылки. Скопированные символические ссылки будут указывать на то же расположение, что и оригинальная ссылка, при этом дописываются необходимые ../ и другие каталоги.
Ниже представлен список горячих клавиш, используемых во встроенной утилите сравнения файлов mcdiff.
F1 Вызов встроенной помощи.
F2 Сохранение изменений в файлах.
F4 Редактирование файла в левой панели.
F14 Редактирование файла в правой панели.
F5 Произвести слияние текушего изменения.
F7 Вызов диалогового окна для задания шаблона поиска.
F17 Продолжение поиска в соответствии с ранее определенным шаблоном.
F10, Esc, q Выход.
Alt-s, s Включить/выключить показ статуса различий.
Alt-n, l Включить/выключить показ номеров строк.
f Увеличить левую панель до максимума.
= Сделать панели равными по ширине.
> Увеличить левую панель.
< Увеличить правую панель.
c Включить/выключить показ символов конца строки (CR) как ^M.
2, 3, 4, 8 Установить размер табуляции.
C-u Поменять панели местами.
C-r Обновить экран.
C-o Переключиться в подоболочку и показать окно команд.
Enter, Space, n Найти следующее различие.
Backspace, p Найти предыдущее различие.
g Показать диалог перехода к строке.
Down Перемещение на одну строку вниз.
Up Перемещение на одну строку вверх.
PageUp Перемещение на одну страницу вверх.
PageDown Перемещение на одну страницу вниз.
Home, A1 Перемещение к началу строки.
End Перемещение в конец строки.
C-Home Перемещение в начало файла.
C-End, C1 Перемещение в конец файла.
Встроенная программа просмотра всегда пытается использовать для отображения информации лучший из методов, предоставляемых вашей системой для данного типа файла. Некоторые последовательности символов интерпретируются для задания таких атрибутов, как жирный шрифт и подчеркивание, обеспечивая более наглядное представление информации.
В шестнадцатеричном режиме функция поиска позволяет задать строку поиска как в обычном текстовом виде (заключенном в кавычки), так и в виде шестнадцатеричных констант. Можно даже одновременно использовать в шаблоне поиска как ту, так и другую форму представления, например:
"String" 34 0xBB 012 "more text"
Все числа интерпретируются как шестнадцатеричные. В данном примере "34" интерпретируется как 0x34. Префикс 0x необязателен: вместо "0xBB" можно просто ввести "BB". Число "012" интерпретируется не как восьмеричное, а как 0x12.
Некоторые детали внутренней реализации программы просмотра: на системах, которые предоставляют системный вызов mmap(2) программа отображает файл в память вместо его загрузки; иначе, а также если при вызове mmap возникает сбой или c файлом связано некоторое действие, которое требует фильтр, программа использует динамически распределяемые буфера памяти, загружая только те части файла, к которым вы обращаетесь (это относится к архивированным файлам).
Ниже приводится перечень всех клавиш и их комбинаций, с которыми ассоциированы некие действия встроенной программы просмотра.
F1 Вызывает просмотр встроенной гипертекстовой подсказки.
F2 Переключает режим переноса строки.
F4 Переключает между ASCII и шестнадцатеричным режимами.
F5 Переход. Можно указать номер строки, абсолютное смещение или проценты от размера файла того места, к просмотру которой вы хотите перейти.
F7,/,? Начать поиск. Вызов диалогового окна, которое позволит установить параметры поиска. Если клавиша ?, то будет установлен параметр поиска "Назад".
C-s Продолжение поиска.
C-r То же, что и C-s, но поиск производится в обратном направлении.
F17, n Продолжить поиск в заданном направлении.
N Временно изменить направление поиска: искать назад, если установлен поиск вперёд, и наоборот.
F8 Переключение между режимами Raw/Parsed: файл отображается либо в том виде, как он записан на диске, либо пропущенным через фильтр, который задан для этого типа файлов в mc.ext. Текущий режим отображения всегда обратный по отношению к тому, который указан на экранной кнопке F8, поскольку на кнопке указывается режим, к которому осуществляется переход по данной кнопке.
F9 Переключение между режимами отображения текста в форматированном и неформатированном виде: в режиме отображения форматированного текста некоторые последовательности символов отображаются другим цветом для выделения жирного и подчеркнутого шрифта. Как и в предыдущем случае, на кнопке указан режим, обратный по отношению к текущему.
F3, F10, Esc, q Выйти из встроенной программы просмотра.
PageDown, пробел, C-v Переместиться на страницу вперед.
PageUp, M-v, Backspace Переместиться на страницу назад.
стрелка вниз Переместиться на одну строку вперед.
стрелка вверх Переместиться на одну строку назад.
C-l Обновить изображение на экране.
C-o Переключиться в subshell и показать окно команд.
[n] m Установить метку с номером n (кавычки не вводятся).
[n] r Переместиться к метке с номером n.
C-f Перейти к просмотру следующего файла текущего каталога.
C-b Перейти к просмотру предыдущего файла в текущем каталоге.
M-r Переключение режима отображения линейки (вверху/внизу/отключена).
Можно настроить режимы отображения файлов встроенной программой просмотра, воспользовавшись файлом расширений.
Поддерживаются следующие возможности: копирование, перемещение, удаление, вырезание и вставка блоков текста; отмена предыдущих операций (key for key undo); выпадающие меню; вставка файлов; макроопределения; поиск и замена по регулярным выражениям; выделение текста по комбинации клавиш shift-стрелки в стиле MSW-MAC (только для linux-консоли); переключение между режимами вставки-замены символа; а также операция обработки блоков текста командами оболочки (an option to pipe text blocks through shell commands like indent).
Разделы:
Опции в ini-файле для редактора
Редактор очень прост и практически не требует обучения. Для того, чтобы узнать, какие клавиши вызывают выполнение определенных действий, достаточно просмотреть выпадающие меню, которые вызываются нажатием клавиши F9 в окне редактора. Не перечисленные в меню комбинации клавиш: Shift-<клавиши стрелок> выделение блока текста. Ctrl-Ins копирует блок в файл mcedit.clip. Shift-Ins производит вставку последнего скопированного в mcedit.clip блока в позицию курсора. Shift-Del удаляет выделенный блок текста, запоминая его в файле mcedit.clip. По клавише Enter вставляются символы конца строки, причем на следующей строке автоматически устанавливается отступ. Работает выделение текста с помощью мыши, причем если удерживать клавишу Shift, то управление мышью осуществляется терминальным драйвером мыши.
Для того, чтобы определить макрос, нажмите Ctrl-R, после чего введите строки команд, которые должны быть выполнены. После завершения ввода команд снова нажмите Ctrl-R и свяжите макрос с какой-нибудь клавишей или комбинацией клавиш, нажав эту клавишу (комбинацию). Макрос будет вызываться нажатием Ctrl-A и назначенной для него клавиши. Макрос можно также вызвать нажатием любой из клавиш Meta (Alt), Ctrl, или Esc и назначенной макросу клавиши, при условии, что данная комбинация не используется для вызова какой-либо другой функции. Макрокоманды после определения записываются в файл ~/.local/share/mc/mcedit/mcedit.macros в вашем домашнем каталоге. Вы можете удалить макрос удалением соответствующей строки в этом файле.
По клавише F19 (ее нет на обычной клавиатуре IBM PC, так что придется пользоваться соответствующим пунктом меню, вызываемым по клавише F9, или переназначить клавишу) будет осуществляться форматирование выделенного блока кода на языке C, C++ или других. Форматирование управляется файлом /usr/local/share/mc/edit.indent.rc который при первом вызове копируется в ~/.local/share/mc/mcedit/edit.indent.rc в вашем домашнем каталоге.
Встроенный редактор обрабатывает символы из второй половины кодовой таблицы (160+). Но когда редактируете бинарные файлы, лучше установить опцию Биты символов из меню "Настройки" в положение "7 бит", чтобы сохранить формат файла (to keep the spacing clean).
Описать все функции встроенного редактора в данной подсказке невозможно. Запомните только, что все основные операции можно выполнить через пункты меню, которое вызывается нажатием клавиши F9 в окне редактирования. Кроме того, можно прочитать man-страницу по команде man mcedit или info mcedit
В данном разделе кратко описаны опции ini-файла, относящиеся к редактору. Опции записываются в секцию [Midnight-Commander].
Есть три способа переключения между экранами: переходк к следующему экрану в списке клавиатурной комбинацией Alt-}, переходк к предыдущему экрану в списке клавиатурной комбинацией Alt-{, вызов дилогового окна со списком экранов клавиатурной комбинацией Alt-` или с помощью пункта меню. Все эти комбинации клавиш одинаковы во всех экранах.
Завершение ввода - это попытка закончить за вас ввод текста, набранного до текущей позиции курсора. MC пытается завершить ввод, трактуя уже введенный текст как переменную (если текст начинается с $), имя пользователя (если текст начинается с ~), имя машины (если текст начинается на @) или как команду (если вы в командной строке в позиции, где вы можете вводить команду; в этом случае для завершения ввода используются зарезервированные слова оболочки, в том числе любая из встроенных команд оболочки). Если введенный текст не попадает ни в одну из перечисленных категорий, выполняется попытка завершения текста как имени файла.
Завершение имен файлов, пользователей, переменных и машин работает во всех строках ввода, завершение команд - только в командной строке. Если однозначно выполнить завершение ввода невозможно (имеется несколько вариантов), MC издает звуковой сигнал и выполняет следующие действия, в зависимости от установки опции Дополнение: показывать всё в пункте меню Настройки/Конфигурация. Если эта опция включена, список всех возможных вариантов завершения появляется возле текущей позиции и вы можете выбрать нужный вариант с помощью клавиш стрелок и Enter. Вы можете также набрать следующую букву, чтобы перейти к подмножеству всех возможных завершений. Если вы снова нажмете M-Tab, будет выведено уже сокращенное множество вариантов, причем в строку ввода добавляются те символы, которые определяются однозначно (даже если полное завершение ввода еще невозможно). Как только неопределенность выбора исчезает, пропадает и диалоговое окно с вариантами. Вы можете отказаться от вывода на экран этого окна в любое время, нажав одну из клавиш Esc, F10 или стрелку влево/вправо. Если опция Дополнение: показывать всё отключена, окно с вариантами завершения появляется только тогда, когда вы нажмете клавиши M-Tab второй раз, при первом нажатии MC только издает звуковой сигнал.
Используйте экранирование символов ?, * и & (как \?, \*, \& ) в именах файлов, чтобы они не рассматривались как метасимволы в регулярных выражениях при подстановках в полях ввода.
В настоящее время Midnight Commander обеспечивает поддержку нескольких
Виртуальных Файловых Систем - ВФС (VFS):
- локальной файловой системы, используемой для обычных файловых систем
Unix;
- файловой системы ftpfs, используемой для манипулирования файлами на
удаленных компьютерах по протоколу FTP;
- файловой системы tarfs, используемой для обработки tar- и сжатых
tar-файлов;
- файловой системы undelfs, используемой для восстановления удаленных
файлов в файловой системе ext2 (файловая система, используемая в Linux
по умолчанию);
- файловой системы fish (для манипулирования файлами при работе с
оболочкой через такие программы как rsh и ssh);
- и, наконец, сетевой файловой системы nfs.
MC может быть собран с поддержкой файловой системы smbfs, используемой
для манипулирования файлами на удаленных компьютерах по протоколу SMB
(CIFS).
Подпрограммы работы с виртуальными файловыми системами интерпретируют все встречающиеся имена путей и формируют корректные обращения к различным файловым системам. Форматы обращения к каждой из виртуальных файловых систем описаны в отдельных разделах по каждой ВФС:
ftp://[!][user[:pass]@]machine[:port][remote-dir]
Элементы user, port и remote-dir не обязательны. Если элемент user указан, то Midnight Commander будет пытаться регистрироваться на удаленном компьютере с эти именем, в противном случае будет использовано имя anonymous или имя из файла ~/.netrc. Необязательный элемент pass (если указан) используется как пароль для входа. Однако явно задавать его не рекомендуется (также не записывайте его в ваши каталоги быстрого доступа, если только вы не обеспечили соответствующую защиту этих файлов; но и тогда нельзя быть полностью уверенным в безопасности).
ftp://ftp.nuclecu.unam.mx/linux/local ftp://tsx-11.mit.edu/pub/linux/packages ftp://!behind.firewall.edu/pub ftp://guest@remote-host.com:40/pub ftp://miguel:xxx@server/pub
Для того, чтобы соединиться с сервером, который расположен за firewall, нужно использовать префикс ftp://! (то есть добавить восклицательный знак перед именем сервера), чтобы указать Midnight Commander на необходимость использовать прокси для осуществления передач по ftp. Вы можете задать имя прокси в диалоговом окне Виртуальные ФС... меню "Настройки".
Чтобы не задавать имя прокси-сервера каждый раз, можно поставить отметку в квадратных скобках возле опции Всегда использовать FTP прокси в диалоговом окне Виртуальные ФС... меню "Настройки". В таком случае программа всегда будет использовать указанный прокси-сервер. При этом (если опция установлена) программа делает следующее: считывает из файла /usr/local/share/mc/mc.no_proxy имена локальных машин (если имя начинается с точки, оно считается именем домена), и, если заданное при установлении FTP-соединения имя машины совпадает с одним из имен, указанных в файле mc.no_proxy без точки, то производит прямое обращение к данной машине.
При подключении к ftp-серверу через фильтрующий пакеты маршрутизатор (If you are using the ftpfs code with a filtering packet router), который не позволяет использовать обычный режим открытия файлов, можно заставить программу работать в режиме пассивного открытия файла (the passive-open mode). Для этого установите в инициализационном файле опцию ftpfs_use_passive_connections в 1.
Midnight Commander сохраняет в течение заданного интервала времени список файлов удаленного каталога, прочитанный по FTP, в оперативной памяти. Величина этого интервала времени задается в диалоговом окне Виртуальные ФС... меню "Настройки". В силу этого возможен побочный эффект, заключающийся в том, что даже если вы сделали какие-то изменения в каталоге, они не будут отображаться в панели до тех пор, пока вы не обновите содержимое панели командой C-r. Это не является недоработкой (если вы думаете, что это ошибка, поразмыслите над тем, как происходит работа по FTP с файлами, находящимися на другой стороне Атлантического океана).
cd ./filename.tar/utar://[dir-inside-tar]
Файл mc.ext по умолчанию содержит команды для просмотра tar-файлов, то есть обычно для получения списка файлов tar-архива достаточно просто переместить указатель на имя tar-файла и нажать Enter. Чтобы понять, как это достигается, смотрите раздел Файл расширений.
Примеры:
mc-3.0.tar.gz/utar://mc-3.0/vfs /ftp/GCC/gcc-2.7.0.tar/utar://
В последнем примере указан полный путь к tar-архиву.
Для соединения с удаленным компьютером нужно выполнить команду перехода в каталог (chdir), имя которого задается в следующем формате:
sh://[user@]machine[:options]/[remote-dir]
Элементы user, options и remote-dir не обязательны. Если задан элемент user, то Midnight Commander будет регистрироваться на удаленный компьютер под этим именем, в противном случае - под тем именем, с которым вы зарегистрированы в локальной системе.
В качестве options могут использоваться:
'C' - использовать сжатие; 'r' - использовать rsh вместо ssh; port - использовать данный порт для поключения к удалённому компьютеру.Если задан элемент remote-dir, то указанный каталог станет текущим после соединения с удаленным компьютером.
Примеры:
sh://onlyrsh.mx:r/linux/local sh://joe@want.compression.edu:C/private sh://joe@noncompressed.ssh.edu/private sh://joe@somehost.ssh.edu:2222/private
Для соединения с удаленным компьютером нужно выполнить команду перехода в каталог (chdir), имя которого задается в следующем формате:
sftp://[user@]machine[:port]/[remote-dir]
Элементы user, port и remote-dir не обязательны. Если задан элемент user, то Midnight Commander будет регистрироваться на удаленный компьютер под этим именем, в противном случае - под тем именем, с которым вы зарегистрированы в локальной системе. Если задан port то он будет использован для поключения к удалённому компьютеру. Если задан элемент remote-dir, то указанный каталог станет текущим после соединения с удаленным компьютером.
Примеры:
sftp://onlyrsh.mx/linux/local sftp://joe:password@want.compression.edu/private sftp://joe@noncompressed.ssh.edu/private sftp://joe@somehost.ssh.edu:2222/private
Для того, чтобы воспользоваться этой возможностью (этой файловой системой), нужно выполнить команду перехода (chdir) в специальный каталог, имя которого образуется из префикса "undel://" и имени специального файла устройства, на котором находится реальная файловая система.
Например, чтобы восстановить удаленные файлы на втором разделе первого SCSI-диска, нужно использовать следующее имя:
undel://sda2
Загрузка списка удаленных файлов требует некоторого времени, так что наберитесь терпения. Имейте в виду, что имена файлов в полученном списке будут цифровыми, так что поиск нужного придется проводить либо по дате, либо последовательным просмотром содержимого (в общем, я вам не завидую!).
smb://[username@]machine[/service][/remote-dir]
Элементы username, service и remote-dir необязательны. username, domain и password могут быть указаны в окне диалога.
Примеры:
smb://machine/Share smb://other_machine smb://guest@machine/Public/Irlex
Файловая система 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-скриптов, включённых в Midnight Commander:
Вы можете назначить ВФС файлах по типу или расширению в секции Файл расширений Например, для обработки пакетов Debian внесите:
regex/.deb$ Open=%cd %p/deb://
Программа может быть скомпилирована с использованием библиотек ncurses или slang. ncurses не дает возможности включать цветной режим: ncurses использует только информацию из базы данных о терминалах. Для того, чтобы узнать, какая библиотека была использована при компиляции, дайте команду mc -V.
Если программа скомпилирована с использованием менеджера экрана S-Lang, она проверяет значение переменной COLORTERM. Задание этой переменной дает тот же эффект, что и задание ключа -c.
Можно указать терминалы, которые всегда должны работать в цветном режиме, добавив строку color_terminals в секцию Colors инициализационного файла. В этом случае Midnight Commander не будет пытаться определить, поддерживает ли ваш терминал цветной вывод. Пример:
[Colors] color_terminals=linux,xterm
color_terminals=terminal-name1,terminal-name2...
Midnight Commander обеспечивает также возможность изменять цвета, заданные по умолчанию. В настоящее время таблица используемых цветов задается переменной MC_COLOR_TABLE или в секции Colors инициализационного файла.
В секции Colors загружаемая по умолчанию таблица цветов определяется переменной (строкой) base_color. Вы можете указать альтернативную таблицу цветов для терминала, используя имя терминала как ключ в этой секции. Пример:
[Colors] base_color= xterm=menu=magenta:marked=,magenta:markselect=,red
Формат определения цвета:
<keyword>=<fgcolor>,<bgcolor>,<attributes>:<keyword>= ...
Цвета не являются обязательными, а в качестве ключевых слов (keywords) могут использоваться: для задания цветовой палитры в панелях: normal, selected, disabled, marked, markselect, errors, input, inputmark, inputunchanged, commandlinemark, reverse, gauge, header, inputhistory, commandhistory. Цвета строки горячих клавиш F1-F10: bbarhotkey, bbarbutton. Цвет строки статуса редактора и программ просмотра и сравнения файлов: statusbar. Цвета пунктов меню: menunormal, menusel, menuhot, menuhotsel, menuinactive. Цвета в окне диалога: dnormal, dfocus, dhotnormal, dhotfocus. Цвета в диалоге-сообщении об ошибке: errdfocus, errdhotnormal, errdhotfocus, errdtitle. Цвета в окне встроенной помощи: helpnormal, helpitalic, helpbold, helplink, helpslink. Цвета в окне программы просмотра: viewnormal, viewbold, viewunderline, viewselected. Цвета в редакторе: editnormal, editbold, editmarked, editwhitespace, editlinestate. Цвета окна всплывающего меню: pmenunormal, pmenusel, pmenutitle.
Цвета задавать не обязательно. Цвет какого именно поля определяется каждым ключевым словом, можно понять из перевода этого ключевого слова. Некоторые случаи требуют пояснений.
header определяет цвет заголовка панели, строку, содержащую заголовки панелей и индикатор сортировки.
input определяет цвета в строке ввода в диалоговых окнах;
inputmark цвет выделенного текста в строке ввода в диалоговых окнах;
inputunchanged цвет текста в строке ввода до первого изменения или до перемещения курсора;
commandlinemark цвет выделенного текста в командной строке;
gauge определяет цвет заполненной части полоски (progress bar), при графическом отображении хода выполнения файловых операций (копирование и др.). disabled определяет цвет элемента диалога, который не может по каким-то причинам быть выбран для работы с ним.
Диалоговые окна используют следующие цвета: dnormal используется для нормального текста, dfocus - цвет, используемый для выделенного в данный момент компонента окна, dhotnormal - цвет, используемый для выделения "горячих" клавиш в обычных компонентах, в то время как цвет dhotfocus используется для выделения "горячих" клавиш в выбранных в данный момент компонентах окна.
В меню используется та же самая схема, только в качестве названий элементов используются menunormal, menusel, menuhot, menuhotsel и menuinactive.
Окно подсказки использует следующие цвета: helpnormal - для отображения простого текста, helpitalic - для вывода текста, выделенного в man-страницах курсивом, helpbold - для вывода текста, выделенного в man-страницах жирным шрифтом, helplink - для выделения неактивных гиперссылок, helpslink - для выделения активной в данный момент гиперссылки.
Во всплывающем меню используются следующие цвета: pmenunormal - для невыбранных пунктов меню и как основной цвет окна, pmenusel - для выбранного пункта меню, pmenutitle - для заголовка окна меню.
Возможные цвета: black, gray, red, brightred, green, brightgreen, brown, yellow, blue, brightblue, magenta, brightmagenta, cyan, brightcyan, lightgray и white. Для прозрачного фона используются специальное ключевое слово "default". Слово "default" можно использовать только при задании цвета фона. Для основных цветов MC используется другое специальное ключевое слово: "base". Если терминал поддерживает 256 цветов, то для них могут использоваться обозначения: от color16 до color255 или от rgb000 до rgb555 и от gray0 до gray23. Пример:
[Colors] base_color=normal=white,default:marked=magenta,default
Атрибуты обозначаются словами "bold", "italic", "underline", "reverse" и "blink". Чтобы использовать несколько атрибутов, их надо перечислить через символ "+". The special word "none" menas no attributes, without attempting to fall back to base_color. Пример:
menuhotsel=yellow;black;bold+underline
Если скин содержит описание любого из 256-ти цветов, то необходимо установить опцию '256colors' со значением TRUE в секции [skin].
Поиск скин-файла производится по следующему алгоритму (до первого нахождения файла):
Параметры в трёх первых случаях могут содержать абсолютный путь к скин-файлу либо просто название скина (с расширением .ini либо без него). В данном случае поиск скин-файла будет происходить по следующим каталогам (до первого нахождения):
Для получения расширенной информации, обратитесь к подразделам:
Секция [filehighlight] содержит описания цветовых пар для групп подсветок имен файлов. Названия параметров в секции должно совпадать с названиями секций в файле подсветки. Смотрите раздел Подсветка имён файлов для получения подробной информации.
Секция [core] содержит описание элементов, используемых повсеместно.
Секция [dialog] содержит описания элементов диалоговых окон (кроме сообщений об ошибках).
Секция [error] содержит описания элементов диалога-сообщения об ошибках.
Секция [menu] содержит описание элементов, отображающихся в меню. Это касается как системного меню (вызываемого клавишей F9), так и пользовательских меню (F2 в панелях или F11 в редакторе).
Секция [help] содержит описания цветов для окна отображения помощи.
Секция [editor] содержит описания элементов редактора
Секция [viewer] содержит описания элементов редактора
Цветовые пары описываются как два цвета и необязательные атрибуты, разделённые символом ";". Первый цвет задаёт цвет написания символов, второй - цвет фона. Любой из цветов и атрибуты могут быть пропущены, в этом случае будет взят цвет по умолчанию (глобальный или для данной секции).
Например:
[core] # зелёным по чёрному _default_=green;black # зелёным (умолч.) по синему selected=;blue # жёлтым по чёрному (умолч.) с подчёркиванием marked=yellow;;underline
Возможные цвета (названия) и атрибуты описаны в секции Цвета.
Например:
[aliases] myfavfg=green myfavbg=black myfavattr=bold+italic [core] _default_=myfavfg;myfavbg;myfavattr
ВНИМАНИЕ!!! При сборке Midnight Commander с библиотекой Ncurses использование линий ограничено! Возможна только отрисовка одинарных линий. По всем вопросам и предложениям обращайтесь к разработчикам Ncurses.
Описание параметров секции [Lines]:
В данном случае переназначение цветов имеет приоритет над скин-файлами и носит дополняющий характер.
Правила подсветки находятся в файле /usr/local/etc/mc/filehighlight.ini (~/.config/mc/filehighlight.ini). Названия групп должны совпадать с названиями параметров в секции [filehighlight] в текущем скин-файле.
Ключи в группах могут принимать следующие значения:
Параметр 'type' (тип файла) может принимать значения:
- FILE (все файлы) - FILE_EXE - DIR (все каталоги) - LINK_DIR - LINK (все ссылки (линки), исключая "битые" линки) - HARDLINK - SYMLINK - STALE_LINK - DEVICE (все файлы устройств) - DEVICE_BLOCK - DEVICE_CHAR - SPECIAL (все специальные файлы) - SPECIAL_SOCKET - SPECIAL_FIFO - SPECIAL_DOOR
clear_before_exec
confirm_view_dir
ftpfs_retry_seconds
ftpfs_use_passive_connections
max_dirt_limit
mouse_move_pages_viewer
only_leading_plus_minus
show_output_starts_shell
torben_fj_mode
use_file_to_guess_type
xtree_mode
clipboard_store=xclip -i
clipboard_paste=xclip -o
autodetect_codeset
Например:
autodetect_codeset=russian
%filename Имя файла для редактирования или просмотра.
%lineno Номер начальной строки в открываемом файле.
Пример:
[External editor or viewer parameters] vi=%filename +%lineno joe=%filename +%lineno more=%filename +%lineno
Начальная строка передаётся в во внешнюю программу редактирования или просмотра только в том случае, если она вызывается из окна результатов поиска файлов.
Если внешняя программа редактирования или просмотра запускается по клавишам F4 или F3, MC надеется, что она имеет собственную функцию открытия файла в том же самом месте, где он был закрыт в предыдущий раз. Такую функцию имеет, например, редактор "joe" и многие другие. MC не препятствует внешней программе редактирования или просмотра самостоятельно сохранять и восстановливать позиции в открываемых файлах.
В качестве ключевых слов используются:
f0 - f20 определяет последовательность символов, генерируемых при нажатии на функциональные клавиши f0-f20 bs определяет последовательность символов, которая будет использоваться вместо клавиши backspace home то же для клавиши Home end то же для клавиши end up то же для клавиши "стрелка вверх" down то же для клавиши "стрелка вниз" left то же для клавиши "стрелка влево" right то же для клавиши "стрелка вправо" pgdn то же для клавиши page down pgup то же для клавиши page up insert то же для клавиши insert delete то же для клавиши delete complete комбинация клавиш для выполнения операции "завершение ввода"
Например, для того, чтобы задать, что клавише insert соответствует экранирующая последовательность Escape + [ + O + p нужно в файле ini прописать строку:
insert=\e[Op
Операция "завершение ввода" обычно вызывается по клавишам M-tab, но задав значение ключевого слова complete можно вызывать такую же реакцию системы по другой комбинации клавиш (почему бы не сделать это, если у вас клавиатура, имеющая массу неиспользуемых клавиш!).
/usr/local/share/mc/help/mc.hlp
/usr/local/share/mc/mc.ext
~/.config/mc/mc.ext
/usr/local/etc/mc/mc.ini /usr/local/share/mc/mc.ini
/usr/local/share/mc/mc.lib
~/.config/mc/ini
/usr/local/share/mc/hints/mc.hint
/usr/local/share/mc/mc.menu
~/.config/mc/menu
~/.cache/mc/Tree
find / -type d -print | sort > ~/.cache/mc/Tree
./.mc.menu
Для того, чтобы изменить корневой каталог MC, установленный по умолчанию, можно использовать переменную окружения MC_PROFILE_ROOT. Значением этой переменный должен быть абсолютный путь. Если переменная MC_PROFILE_ROOT не определена или пуста, используется переменная окружения HOME. Если и HOME не определена или пуста, каталоги MC определяются средствами библиотеки GLib.
Страница, посвященная Midnight Commander, в World Wide Web: http://www.midnight-commander.org/
Данная страница оперативного руководства содержит информацию, актуальную для версии 4.6.0 (январь 2003 года). Если вы используете более свежую версию программы, оригинальная страница на английском языке может содержать более полную и актуальную информацию. Для просмотра оригинальной страницы в оболочке bash можно использовать команду
LANG= man mc
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 г.
Если вы обнаружили в программе какие-то недостатки или недоработки, оформите, пожалуйста, ваши замечания по адресу http://www.midnight-commander.org/.
Дайте подробное описание обнаруженных недостатков (и/или ваших предложений по усовершенствованию программы), сообщите версию программы с которой вы работаете (для получения номера версии используйте команду mc -V), в какой операционной системе вы запускали программу. В случае фатальной ошибки программы мы будем очень благодарны, если вы пришлете след вызовов.