Midnight CommanderはSSH経由で使用可能なCUIベースのファイルマネージャーです。
この記事ではMidnight Commanderの設定方法と使用方法を記載します。
Table of Contents
1 Midnight Commander
Windowsではエクスプローラ、OSXではFinder、UbuntuではNautilusとGUIベースのファイルマネージャーは数多く存在します。
Midnight CommanderはCUIベースのファイルマネージャーです。マウス操作なしで使うことができ(マウス操作でも使うことができます)、SSH経由でも使うことができます。
2 Midnight Commanderのインストール
apt、yum、homebrewでインストールできます。
$ sudo apt-get install -y mc
mcコマンドを実行します。
$ mc
3 設定
設定ファイルは${HOME}/.config/mcディレクトリに保存されます。'F9'を押すことでメニューにフォーカスが移ります。
3.1 スキンの変更
xterm-256color等の色が豊富でない環境ではデフォルトのスキンはとても見づらいものとなります。
modarcon16というスキンがおすすめです。
スキンは以下のメニューから変更できます。
Options -> Appearance -> Skin -> modarcon16
CentOS 7はmodarcon16を持っていないので、他からダウンロードする必要があります。
$ wget https://raw.githubusercontent.com/MidnightCommander/mc/master/misc/skins/modarcon16.ini $ sudo cp modarcon16.ini /usr/share/mc/skins/
modarcon16がAppearanceのメニューに出てこない場合は以下のファイルを直接編集してください。
$ grep "skin" ~/.config/mc/ini skin=modarcon16
3.2 パネル分割
パネルを上下か左右に分割できます。
Options -> Layout -> Panel split
3.3 パネルの表示内容
デフォルトだと分割されたパネルの両方ともFile listingとなっています。片方のパネルをQuick View等に変更します。
Above -> File lisint / Quick View Below -> File lisint / Quick View
設定を保存します。
Options -> Save setup
3.4 外部エディタと外部ビューアを使う
あらかじめ${HOME}/.bashrc等でEDITOR変数とVIEWER変数をexportしておきます。
$ export EDITOR=emacs $ export VIEWER=less
以下のメニューで"Use internal edit"と"Use internal view"のチェックを外します。
Options -> Configuration -> Other options -> Use internal edit / view
'F4'を押すとEDITORで設定したemacsが、'F3'を押すとVIEWERで設定したlessが起動します。
3.5 登録されていない拡張子向けのView/Edit/Open
Midnight Commanderは拡張子毎にView/Edit/Openというアクションを持ちます。'RET'は押しやすいので、特にOpenは重要です。
key | action |
---|---|
F3 | View |
F4 | Edit |
RET | Open |
Openは少し特殊で、*.sh向けにはスクリプトを実行し、*.zip向けにはzipファイルの展開を提供します。
Midnight Commanderは登録されていない拡張子のアクションはデフォルトで定義していません。"Edit extention file"メニューからアクションを変更する必要があります。
Command -> Edit extension file
default/*のOpenとViewを以下のように変更します。
diff -uprN ~/.config/mc/mc.ext{.org,} --- /Users/hiroom2/.config/mc/mc.ext.org 2015-09-06 17:00:34.000000000 +0900 +++ /Users/hiroom2/.config/mc/mc.ext 2015-09-06 17:12:12.000000000 +0900 @@ -744,8 +744,8 @@ type/^Parity\ Archive\ Volume\ Set # Default target for anything not described above default/* - Open= - View= + Open=${EDITOR} %f + View=${VIEWER} %f ### EOF ###
4 操作方法
4.1 カーソル操作
emacsのキーバインディングと同様に操作できます。
C-p | Move upper |
C-n | Move lower |
M-v | Scroll upper |
C-v | Scroll lower |
M-< | Move to the head |
M-> | Move to the tail |
4.2 パネル切り替え
'TAB'を押すことでフォーカスするパネルを切り替えることができます。
フォーカスしたパネルに対してカーソル操作が可能です。
4.3 ファイル操作
ファイルの新規作成用のショートカットは存在しません。
touchコマンドを実行してファイルを新規作成してください。
'C-x' 'q' | less | Quick view |
'C-x' 'i' | ls | File attribute view |
'C-x' 'o' | chown | Change owner and group |
'C-x' 'c' | chmod | Change exec/read/write |
'F5' | cp | Copy file |
'F6' | mv | Move file |
'F7' | mkdir | Create directory |
'F8' | rm | Remove file / directory |
4.4 サブシェル
キーボードをタイプすることで画面下部でコマンドを実行できます。
'M-TAB'でファイル名を補完し、'M-h'でコマンド履歴を閲覧できます。
'C-o'でサブシェルとファイルマネージャーを切り替えることができます。
サブシェルでは通常のシェルと同様の操作が可能です。
4.5 Midnight Commanderの終了
'F10'を押すか、exitコマンドを実行してください。
4.6 UTF-8環境にてMidnight CommanderとGNU Screen 4.1を使う
"cjkwidth off"を${HOME}/.screenrcに追加してください。