# Midnight Commander (Русский)

Ссылки по теме

- File manager functionality
- ranger

Эта страница нуждается в сопроводителе

Статья не гарантирует актуальность информации. Помогите русскоязычному сообществу поддержкой подобных страниц. См. Команда переводчиков ArchWiki
Состояние перевода: На этой странице представлен перевод статьи Midnight Commander. Дата последней синхронизации: 10 сентября 2015‎. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Midnight Commander — графический файловый менеджер, позволяющий копировать, перемещать и удалять файлы и деревья каталогов, производить поиск по файлам и запускать команды в командной оболочке. Он включает в себя встроенный просмотрщик и редактор файлов.

Midnight Commander имеет графический интерфейс, который отображается в текстовом режиме. Он работает в обычной консоли, внутри терминала X и через SSH-соединение на всех видах терминалов.

## Установка

Установите пакет mc.

Последняя нестабильная версия доступна в пакете mc-gitAUR.

### Дополнительные темы

- mc-solarized-git — Цветовая схема Solarized

  https://github.com/nkulikov/mc-solarized-skin || mc-solarized-gitAUR

- mc-skin-candy — Цветовая схема Candy

  https://github.com/izmntuk/archiso/blob/master/configs/alter/root-image/usr/share/mc/skins/candy.ini || not packaged? search in AUR

## Usage

The below section provides a short overview on usage of Midnight commander. References to `man mc` and the Help function (`F1`, available in every dialog) are made in this article as `Section`.

Tip: All hints are available in `/usr/share/mc/hints/`.

### Interface

In prominent view are two vertical panes. Either can list directory contents, show a plain text preview, file details, or a directory tree (see `Directory Tree`). File operations are accessible through the function keys or the mouse. More options are visible in a dynamic user menu (`F2`) and option menu (`F9`). Keys above `F12` (`F13` up to `F20`) are accessible through `Shift`. Menu and dialog options have one letter highlighted - pressing this letter (or `Alt+Letter` inside a text entry) directly activates the respective option.

Below, a command line is visible, connected to a subshell. This shell is generally of the same type mc was launched from, and may be switched to at will (`Ctrl-O`), see `The subshell support`. On this command line, cd is interpreted by Midnight Commander, and not passed to the shell for execution. As such, special completion (such as from Zsh) is unavailable. Files in the pane interact with the command line; for example, `Alt+Enter` copies the name of a (selected) file to the command line.

Keybindings are generally similar to GNU Emacs. A more strict emacs keymap can be enabled (see `Redefine hotkey bindings`). New users may however use Lynx-like (arrow) keybindings (enabled in `F9 > Options > Panel options`) and mouse clicks for navigation.

### Modules

These can be called via the mc interface (with Use internal enabled in `F9 > Options > Configuration`), or separately as symbolic links to the mc binary.

- mcedit - Text and binary file editor, with regex replace, syntax highlighting, macros and shell piping, see `man mcedit`
- mcview - Text and hex viewer with goto marks and regex search
- mcdiff - Compares and edits two files in-place (`C-x d`)

Per `mc` instance, multiple modules can be run concurrently (`Ctrl-``) (see `Screen selector`). External editors may be used instead, and parameters configured accordingly.

## Configuration

Most of the Midnight Commander settings can be changed from the menus. However, a small number of settings such as clipboard commands, codeset detection and parameters for external editors can only be changed from `~/.config/mc/ini`. See `Special Settings` and following for a complete description of options.

Additionally, the following environment variables are respected: `MC_SKIN`, `MC_KEYMAP`, `MC_XDG_OPEN`, `MC_COLOR_TABLE`, `MC_DATADIR`, `MC_HOME`, `KEYBOARD_KEY_TIMEOUT_US`, `PAGER`, `EDITOR`, `VIEWER`.

See also `Files`.

### extfs

extfs allows to easily create new virtual filesystems for mc. See `/usr/lib/mc/extfs.d/README` for details.

## Советы и рекомендации

### Переназначение сочетаний клавиш

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

    cp /etc/mc/mc.keymap ~/.config/mc/

и отредактируйте файл под свои нужды. Вы можете использовать также другие файлы .keymap. Например, можно установить `/etc/mc/mc.emacs.keymap` при помощи переменной окружения `MC_KEYMAP`:

    export MC_KEYMAP=/etc/mc/mc.emacs.keymap

Смотрите также `man 1 mc` для получения более подробной информации.

### Навигация стрелками

Чтобы иметь возможность навигации по каталогам с помощью клавиш со стрелками как в Lynx, перейдите в меню Options (`F9`, `o`) > Panel Options (`p`) и установите флажок Lynx-like motion в группе Navigation (`y`), затем нажмите OK (`o`).

### Запуск из меню

Midnight Commander можно запускать из меню, создав файл desktop entry. Пример:

    [Desktop Entry]
    Type=Application
    Version=1.0
    Name=Midnight Commander
    Comment=Visual file manager
    Exec=mc
    Icon=folder
    MimeType=inode/directory
    Terminal=true
    Categories=Utility;

### Поддержка корзины

Midnight Commander не поддерживает функцию корзины.

#### Использование libtrash

Библиотека libtrash перехватывает вызовы функций удаления файлов и вместо удаления выполняет перемещение файлов в корзину.

Установите libtrashAUR из AUR и создайте псевдоним для mc в файле инициализации вашей командной оболочки (например, `~/.bashrc` или `~/.zshrc`):

    alias mc='LD_PRELOAD=/usr/lib/libtrash.so.3.3 mc'

Чтобы изменения вступили в силу, переоткройте сеанс терминала или просто выполните скрипт инициализации командой source.

Стандартные настройки библиотеки находятся в файле `/etc/libtrash.conf.sys`. Вы можете переопределить их для текущего пользователя, создав пользовательский файл настроек `~/.libtrash`, например:

    TRASH_CAN = .Trash
    INTERCEPT_RENAME = NO
    IGNORE_EXTENSIONS= o;exe;com

Теперь, после запуска mc, удаляемые файлы будут попадать в каталог корзины `~/.Trash`.

Важно:

- У этого способа существует побочный эффект: программы, запущенные из mc наследуют переменную окружения `LD_PRELOAD`, которая может вызывать проблемы в их работе. Смотрите [1] для более подробной информации.
- С установленной опцией `GLOBAL_PROTECTION = YES` (значение по умолчанию), файлы вне домашнего каталога будут попадать в корзину, даже если они находятся на другом разделе диска. Такие файлы фактически перемещаются копированием и удалением из исходного расположения, поэтому процедура удаления в корзину файла на другом разделе может занимать продолжительное время.

Смотрите также [2].

## Решение проблем

### Выход в текущий каталог

При выходе, командная оболочка вернет вас с тот каталог, в котором вы запустили Midnight Commander. Если вы хотите, чтобы оставался текущий каталог, выбранный в Midnight Commander, простым решением будет просто скрывать интерфейс, не прерывая сеанс программы, нажатием `Ctrl+O`.

### Искаженное изображение

Нажмите `Ctrl+L` для перерисовки интерфейса. Эта команда перерисует изображение, но не обновит список файлов в каталогах. Для обновления списка файлов на панелях используйте `Ctrl+R`.

### Opening files

mc uses xdg-open to open files by default, as shown in `/usr/lib/mc/ext.d/`. While stderr is redirected, stdout is not, which may result in a garbled screen.

    /usr/lib/mc/ext.d/*.sh

    [ -n "${MC_XDG_OPEN}" ] || MC_XDG_OPEN="xdg-open"
    ...
    open)
        "${MC_XDG_OPEN}" "${MC_EXT_FILENAME}" 2>/dev/null || \
            do_open_action "${filetype}"

Create a script to wrap xdg-open:

    ~/bin/xdg-open-null

    #!/bin/bash
    xdg-open "$@" >/dev/null

If mc is blocked until xdg-open ends, detach the process:

    ~/bin/xdg-open-null

    #!/bin/bash
    nohup xdg-open "$@" >/dev/null &

and make mc aware of it by setting the `MC_XDG_OPEN` environment variable:

    export MC_XDG_OPEN=~/bin/xdg-open-null

Tip: When #Using libtrash[broken link: invalid section], add `unset LD_PRELOAD` before xdg-open in the script.

### Find file shows no results

If the Find file dialog (accessible with `Alt+?`) shows no results, check the current directory for symbolic links. Find file does not follow symbolic links, so use bind mounts (see `man mount`) instead, or the External panelize command.

## Смотрите также

- Введение в Midnight Commander
- Руководство пользователя GNU Midnight Commander
- Руководство по Midnight Commander
- Учебник по Midnight Commander
- Сочетания клавиш для Midnight Commander

Categories:

- File managers (Русский)
- Русский

Hidden categories:

- Pages with missing package links
- Pages with broken section links