English | 日本語
XeFM(Xenolith File Manager)は、ネイティブのデスクトップアプリ(Windows、macOS)としても、ターミナル(Windows、macOS、Linux)でも動作する、強力な 2 画面ファイルマネージャーです。クラウドストレージとの連携、高度な検索機能、豊富なカスタマイズオプションによって、効率的なファイル管理ができます。
config.py に書く Python のアクション、インストールできる拡張パッケージデスクトップアプリ(Windows、macOS)。 Windows では Microsoft Store からインストールします。macOS では最新リリースから -macos.dmg をダウンロードするか、brew install --cask crftwr/tap/xefm を実行します。Python は同梱されています。デスクトップで XeFM を使うにはこれがおすすめの方法です。デスクトップモードガイドを参照してください。
ターミナルアプリ(Windows、macOS、Linux)。 PyPI からインストールします。
pipx install xefm # or: uv tool install xefm, or: pip install xefm
xefm
pipx と uv は、XeFM を専用の環境に入れたうえで xefm コマンドを PATH に置いてくれます。アプリケーションにはこの形が適しています。uvx xefm なら何もインストールせずに一度だけ試せます。必要なのは Python 3.10 以上だけで、プラットフォーム固有のものも含めて、依存関係はすべて一緒にインストールされます。
Homebrew でターミナルアプリ(macOS、Linux)。
brew install crftwr/tap/xefm
config.py で XeFM に同梱されていないライブラリを import している場合や、pillow-heif のような Pillow プラグインを使いたい場合は、~/.xefm/requirements.txt に書いて xefm deps sync(または Tools → Advanced → Sync Python Packages)を実行してください。Homebrew やデスクトップアプリを含むどのインストール方法でも動作し、アップグレード後も残ります。追加の Python ライブラリを参照してください。
2 つのインストールは共存でき、~/.xefm/ を共有します。両方をインストールするのはごく普通の使い方です。ソースのチェックアウトからの使い方は README で説明しています。
インストールしたときと同じツールを使ってください。 最初に使った方法の行を選びます。
| インストール方法 | アップグレード | アンインストール |
|---|---|---|
pipx install xefm |
pipx upgrade xefm |
pipx uninstall xefm |
uv tool install xefm |
uv tool upgrade xefm |
uv tool uninstall xefm |
pip install xefm |
pip install --upgrade xefm |
pip uninstall xefm |
brew install crftwr/tap/xefm |
brew upgrade xefm |
brew uninstall xefm |
brew install --cask crftwr/tap/xefm |
brew upgrade --cask xefm |
brew uninstall --cask xefm |
これらは互いに置き換えられません。どのツールも自分でインストールしたものしか知らないからです。pipx や pip でインストールしたコピーに uv tool upgrade xefm を実行すると `xefm` is not installed で失敗します。また、uvx xefm は何もインストールしないので、アップグレードするものはありません。
デスクトップ版のパッケージは、それぞれの経路でアップグレードします。Microsoft Store 版は自動で更新されます。macOS では、新しい DMG を古いアプリの上にインストールします(Homebrew でインストールした場合は brew upgrade --cask xefm を実行します)。すでに アプリケーション にある DMG 版のコピーは、brew install --cask --adopt crftwr/tap/xefm で Homebrew の管理に移せます。
pip install xefm のあとに xefm: command not found と表示される — コンソールスクリプトが PATH にない環境にインストールされています。pipx install xefm や uv tool install xefm ならこれを自動で処理してくれます(または python3 -m xefm として実行します)error: externally-managed-environment と表示される — PEP 668 がシステムの Python(Homebrew、Debian/Ubuntu)を保護しています。pipx、uv、または virtualenv を使ってくださいuv tool upgrade xefm から `xefm` is not installed と表示される — uv が管理するのは uv tool install でインストールしたものだけなので、そのコピーは pipx か pip の管理下にあります(または uvx がインストールせずに実行しました)。インストールしたときと同じツールでアップグレードしてください。上の表を参照してください初回起動時: XeFM が使うキーマッププリセットを尋ねます(キーマッププリセットを参照)。そのあとは矢印キーで移動、Tab でペインの切り替え、F1 でヘルプ、File → Quit で終了です。
XeFM は、GPU アクセラレーションを使うネイティブのデスクトップアプリケーションとして動作できます。同じキーボード中心のインターフェースはそのままに、モダンなウィンドウ環境で使えます。
デスクトップ版のパッケージをインストールし(インストールを参照)、macOS では Launchpad/Spotlight から、Windows ではスタートメニューから XeFM を開きます。
ターミナルから xefm --backend gui を実行しても同じウィンドウが開きますが、これは開発用の方法です。アプリのアイコンが正しく表示されず、macOS ではファイルのアクセス権限が XeFM ではなくターミナルのものとして扱われます。Why not xefm --backend gui? を参照してください。
デスクトップモードには、ターミナルモードに比べていくつかの利点があります。
デスクトップモードのフォントの設定は ~/.xefm/config.py にあります(ターミナルモードでは無視されます)。
# GUI fonts and size — the grid is derived from the monospace face
MONO_FONT_NAME = 'Menlo' # monospaced face for aligned columns (None = bundled default)
UI_FONT_NAME = None # proportional face for names/labels (None = bundled/OS default)
FONT_SIZE = 12 # point size applied to both faces (8–72)
ウィンドウのサイズと位置は、実行をまたいで自動的に記憶されます(macOS ネイティブのウィンドウ自動保存を使います)。ウィンドウの位置やサイズを指定する設定キーはありません。
macOS でよく使われる等幅フォントは次のとおりです。
Menlo(既定) - Apple の既定の等幅フォントMonaco - 昔からある Mac の等幅フォントSF Mono - San Francisco Mono(インストールされている場合)Courier New - 伝統的な等幅フォントFira Code - 人気のプログラミング用フォント(インストールされている場合)JetBrains Mono - モダンなプログラミング用フォント(インストールされている場合)バックエンドは --backend フラグだけで選びます。設定ファイルで指定する項目はありません。既定はターミナルモードです。
--backend tui — ターミナル。既定です(--backend curses を指定すると、普通でないターミナル向けの代替手段として、従来の curses による描画を使います)--backend gui — Windows(別名 windows)または macOS(別名 macos)のネイティブのウィンドウLinux にはデスクトップのバックエンドがないので、ターミナルモードを使ってください。
ターミナルモードとデスクトップモードのキーマップは 1 つです。デスクトップのウィンドウでは、2 つのアクション(OS のアプリでファイルを開く操作と、macOS でのテキストのコピー)に、プラットフォーム標準のキーの組み合わせがもう 1 つ割り当てられます。それ以外はすべて共通です。~/.xefm/config.py の “Three cases” を参照してください。
F1 を押せば、いつでも内蔵のヘルプを表示できます。ヘルプは自分の KEY_BINDINGS から作られるので、常にその設定のとおりです。
デスクトップモードは非常に良好なパフォーマンスを発揮します。
デスクトップモードが起動しない:
ウィンドウが表示されない:
python3 -c "import objc; print('OK')"python3 -m xefmフォントの問題:
Font Book.app でインストールされているフォントを確認しますMONO_FONT_NAME を削除します(または None にします)パフォーマンスの問題:
XeFM を初めて起動すると、次のものが表示されます。
switch_pane:左右のペインを切り替えopen_item:ディレクトリに入る、またはテキストファイルを表示go_parent:親ディレクトリへ移動go_root:現在のドライブや場所のルートへ移動help:ヘルプダイアログを表示。ほかのすべてのアクションのキーもここでわかります最初に F1(help)を押してください。このダイアログは自分の KEY_BINDINGS から作られるので、常にその設定に合ったキーの一覧です。
quit:XeFM を終了(File → Quit)詳しいドキュメント:ステータスバー
toggle_hidden で隠しファイルの表示/非表示を切り替え。どのプラットフォームでもドットで始まる名前が対象で、Windows では隠し属性を持つファイルやフォルダーも対象になります詳しいドキュメント:
| アクション | 動作 |
|---|---|
toggle_select_down |
ファイルを選択/解除して 1 つ下に移動 |
select_range |
最も近い選択項目からカーソルまでをすべて選択 |
copy_files |
選択したファイルを反対側のペインにコピー |
move_files |
選択したファイルを移動 |
copy_files_to / move_files_to |
選択したファイルを、入力したディレクトリにコピー/移動 |
create_directory |
ディレクトリを作成(何も選択していないときの同じキー) |
delete_files |
選択したファイルを削除 |
rename |
ファイルの名前を変更(複数なら一括リネーム) |
edit_file |
選択項目(またはフォーカスのあるファイル)を外部エディターで編集 |
create_file |
新しいファイルを作成 |
詳しいドキュメント:
toggle_select_down でファイルを 1 つずつ選択しますselect_range でひと続きの範囲をまとめて選択します。最初のファイルに印を付け、最後のファイルにカーソルを移動すると、その間がすべて選択されますtoggle_select_files ですべてのファイルを選択/解除しますtoggle_select_items ですべての項目(ファイルとディレクトリ)を選択/解除しますselect_by_pattern / unselect_by_pattern でパターン(*.jpg *.png)にマッチするファイルを選択/解除し、select_same_extension でカーソル位置のファイルと同じ拡張子のファイルをすべて選択します。パターンで選択を参照してくださいcursor_next_selected / cursor_prev_selected で選択した項目の間を移動しますselect_range は、カーソルより上にある最も近い選択項目を起点にします。上に選択項目がなければ、下にある最も近いものを使います。そのため、印を付けたファイルから下に移動しても上に移動しても同じように動作します。この操作は選択を追加するだけです。範囲外の項目の状態は変わらないので、複数の範囲を積み重ねられます。
範囲の反対の端までカーソルを移動するには、矢印キーだけでなく検索も使えます。isearch を実行して名前を必要なだけ入力し、isearch.accept(Enter)を押すと、見つかったファイルにカーソルを置いたまま検索を終了します。そこで select_range を実行すれば範囲が選択されます。検索バーには意図的に範囲選択のキーがありません。検索バーのカーソルはマッチした項目にありますが、先に印を付けた項目はマッチしていないので、そこで範囲を選択すると、パターンにマッチしなかったファイルまで含まれてしまうからです。先に検索を終了すれば、キーは文字どおりの意味で動作します。
既定のキーは Shift-Space ですが、ターミナルはこのキーを伝えられません。印字可能なキーには修飾キーを載せる余地がないので、POSIX のターミナルは単なるスペースとして伝え、1 つの項目の選択を切り替えてしまいます。Terminal.app、iTerm2、Linux のターミナルでは、ターミナルが伝えられるキーの組み合わせに割り当てるか、Select → Select to Cursor を使ってください。
KEY_BINDINGS = {
'select_range': ['Ctrl-LEFT'], # or 'F6', 'Ctrl-Y' …
}
詳しいドキュメント:キーバインド
create_archive)extract_archive)詳しいドキュメント:一括リネーム
詳しいドキュメント:ファイル操作
矢印キーでカーソルを動かし、nav_left / nav_right でペインの間を移動したり、ディレクトリに出入りしたりします。open_item はディレクトリに入るかファイルを表示し、go_parent は上の階層に移動し、go_root は現在のドライブや場所のルートに移動し、cursor_top / cursor_bottom は最初/最後の項目に移動します。
| アクション | 開くもの |
|---|---|
favorites |
お気に入りのディレクトリとファイル |
jump_to_path |
パスへ移動(ファイルのパスならそのファイルにカーソルを置く) |
history |
このペインで訪れたディレクトリ |
sync_current_to_other |
反対側のペインをこのペインのディレクトリにする |
sync_other_to_current |
このペインを反対側のペインのディレクトリにする |
詳しいドキュメント:
| アクション | 動作 |
|---|---|
isearch |
インクリメンタルサーチ(入力しながらマッチ) |
find_files |
別スレッドで動くファイル名検索のダイアログ |
find_in_files |
内容検索(grep)のダイアログ |
filter |
ペインを絞り込む(パターン、または設定で定義したフィルター) |
clear_filter |
現在のフィルターを解除 |
sort でソートのダイアログ(キーと順序)を開きます。quick_sort_name、quick_sort_ext、quick_sort_size、quick_sort_date は、それぞれ 1 回押すだけでソートします。
ダイアログの操作方法(キーは頭文字で選び、Left/Right で昇順/降順を選ぶ)はソートダイアログを参照してください。
isearch を実行してから入力します。検索バーが開いている間は、次のアクションが使えます。
| アクション | 動作 |
|---|---|
isearch.prev_match / isearch.next_match |
前/次のマッチ |
isearch.toggle_select_down |
ファイルを選択して、次のマッチに移動 |
isearch.select_matches |
すべてのマッチを一度に選択。もう一度で解除 |
isearch.accept |
現在のマッチで止まる |
isearch.cancel |
キャンセルして、カーソルを元の位置に戻す |
検索はマッチがあるところで止まります。入力するとマッチがなくなってしまう文字は受け付けられないので、パターンは空のリストに進むことなく、最後に見つかったファイルにとどまります。Backspace を押せばいつでも戻れます。(ローマ字で日本語を入力するときは数文字の余裕があります。ni は nih になって初めて日本語にマッチするからです。Migemo 検索を参照してください。)
Space はスペースを入力します。スペースはパターンの単語を区切ります(re 24 で report_2024.txt が見つかります)。そのため、ここでファイルに印を付けるキーは、多くのプリセットでファイルリストの印付けに使う Space だけではなく Ctrl-Space です。ここでは Space は文字を入力するので、Ctrl を付けることで、普通なら文字を入力するキーがコマンドになります。逆方向に印を付けるキーは、どちらにも既定では割り当てられていません。使いたい場合は isearch.toggle_select_up を割り当ててください。
isearch.select_matches は、右側のカウンターが示しているマッチ全体に印を付けます。.log と入力してこれを実行すれば、すべてのログファイルが選択されます。検索の外で選択したファイルはそのままなので、2 回目の検索の結果はそれに追加されます。これらのキーはすべて割り当て直せます。カスタマイズを参照してください。
kensaku と入力すると 検索 も見つかります。IME は必要ありません。Migemo 検索を参照してください。*.txt や test_* のようなワイルドカードを使います。スペース(または ;)で区切って複数のパターンを書くと、どれかにマッチするファイルが表示されます(*.jpg *.png *.svg)。スペースを含むパターンは引用符で囲みます:"my file*"filter の入力欄には、設定で定義したフィルターも clear filter の下に並びます。名前だけでなく、ファイルのあらゆる情報でマッチできます(「今日更新したもの」「100 MB 超」など)。カスタマイズを参照してください。find_files):検索語はファイル名全体に完全一致する glob です。report.txt はその名前にしかマッチしません。部分一致させるにはワイルドカードを加えます:report*、*.py、以前の「含む」動作なら *report*。*.txt で絞り込んでいれば、grep されるのは .txt ファイルだけです(サブディレクトリはそれでもたどります)。フィルターが適用されている間は、ダイアログのタイトルにパターンが表示されます。BOM 付きの Unicode ファイル(UTF-8、UTF-16、UTF-32)は、バイナリとして飛ばされずにテキストとして検索されます。quick_sort_* アクションは 1 回押すだけでソートします詳しいドキュメント:検索アニメーション
view_file は、フォーカスのあるファイルを内蔵のビューアーで開きます。独自の enter ルールがないファイルなら、open_item でも開きます。
矢印キー、ページ送り、Home/End でスクロールします。toggle_wrap は行の折り返しのオン/オフを切り替え、toggle_view_mode は Markdown などのリッチなファイルの整形表示と生テキストの表示を切り替え、change_encoding はテキストのエンコーディングを選び、isearch はファイルの中を検索し、edit_file はファイルをエディターに渡します。quit(または Esc)でビューアーを閉じます。ビューアーは下部に自分のキーを表示し、ビューアーの中で F1 を押すとすべてのキーが一覧されます。テキストビューアーを参照してください。
edit_file は選択項目(またはフォーカスのあるファイル)を編集し、create_file は新しいファイルを作ります。
複数のファイルを選択していると、edit_file はそれらをすべて開きます。同じエディターで開くファイルは、1 回の起動でまとめて渡されます(vim a.txt b.txt)。
使いたいエディターは ~/.xefm/config.py で設定します。
TEXT_EDITOR = 'vim' # or 'nano', 'code', etc.
詳しいドキュメント:テキストエディター
subshell は、カレントディレクトリでシェルを開きます。
ターミナルモードでは、シェルを終了すると XeFM に戻ります。デスクトップアプリには引き渡せる自前のターミナルがないので、代わりにターミナルのウィンドウでシェルを開きます。外部ターミナルを参照してください。シェルからは XEFM_* 環境変数(ペインのディレクトリと選択項目)が見え、プロンプトの先頭に [XeFM] が付きます。
この先頭の文字列は PS1/PROMPT 環境変数で渡されるので、起動ファイルで独自のプロンプトを設定するシェルでは上書きされます。zsh は必ずそうなります。macOS では、~/.zshrc がなくても、/etc/zshrc が対話シェルのたびにプロンプトをリセットするからです。その場合は、代わりに ~/.zshrc の最後で XEFM_ACTIVE を見て設定してください。
if [[ -n $XEFM_ACTIVE ]]; then
PROMPT="[XeFM] $PROMPT"
fi
コマンドを実行するたびにプロンプトを作り直すフレームワーク(powerlevel10k、starship)では、これでも上書きされます。その場合は、フレームワーク自身の設定に目印を入れてください。たとえば starship の env_var モジュールや、powerlevel10k の独自のセグメントです。
どの変数で先頭の文字列を渡すかは、起動するシェルによって決まります。cmd.exe は PROMPT を独自の $ コードの構文で読むので、[XeFM] $P$G(または既存の PROMPT の先頭に付けたもの)が渡されます。PowerShell は prompt 関数でプロンプトを作り、環境変数ではそれに手が届かないので、先頭の文字列は付きません。プロファイルで XEFM_ACTIVE を見て関数を定義してください。
if ($env:XEFM_ACTIVE) {
function prompt { "[XeFM] $($executionContext.SessionState.Path.CurrentLocation)$('>' * ($nestedPromptLevel + 1)) " }
}
XeFM は既定で $SHELL を起動し、それがなければプラットフォームの既定(Windows では cmd.exe、それ以外では /bin/sh)を使います。~/.xefm/config.py で変更できます。
SUBSHELL = 'zsh' # a single command...
SUBSHELL = ['powershell', '-NoLogo'] # ...or a command with arguments
XeFM は AWS S3 にネイティブに対応していて、クラウドストレージをシームレスに管理できます。セットアップ、使い方、トラブルシューティング、高度な機能を含む S3 の詳しい説明は、AWS S3 対応の機能ガイド を参照してください。
aws configure、AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY / AWS_DEFAULT_REGION 環境変数、または IAM ロール(EC2 では設定不要)を使います# Navigate to S3 bucket
s3://my-bucket/
# Navigate to specific path
s3://my-bucket/path/to/files/
# Copy local files to S3
# 1. Select files in left pane (local directory)
# 2. Navigate right pane to s3://bucket/path
# 3. Run copy_files (File → Copy to Other Pane)
# View S3 text file
# 1. Navigate to s3://bucket/file.txt
# 2. Run view_file (File → View File); editing needs a local copy
subshell でサブシェルモードに入ります(デスクトップアプリではターミナルのウィンドウで開きます。外部ターミナルを参照してください)。次の環境変数が設定されます。
XEFM_LEFT_DIR:左ペインのディレクトリXEFM_RIGHT_DIR:右ペインのディレクトリXEFM_THIS_DIR:アクティブなペインのディレクトリXEFM_OTHER_DIR:反対側のペインのディレクトリXEFM_THIS_SELECTED:アクティブなペインで選択したファイル。何も選択していなければ空ですXEFM_THIS_FOCUSED:選択にかかわらず、アクティブなペインでカーソル位置にある項目(*_FOCUSED はほかの 3 つのペインの変数にもあります)programs で外部プログラムのメニューを表示します。プログラムからは XeFM の環境変数を使えます。
詳しいドキュメント:外部プログラム
adjust_pane_left / adjust_pane_right でペインの境界を動かし、reset_pane_boundary で 50/50 に戻します。adjust_log_up / adjust_log_down でログペインの高さを変え、reset_log_height で元に戻します。
diff_files は選択した 2 つのテキストファイルの差分を表示し、diff_directories は 2 つのペインのカレントディレクトリを再帰的に比較し、compare_selection はファイルとディレクトリの比較オプションを開きます。
詳しいドキュメント:差分ビューアー(ファイルとディレクトリの差分)
toggle_hidden で隠しファイルの表示/非表示を切り替えます。
そのほかの表示の設定(ソート、隠しファイル、テーマ)も、メニューバーの View にあります。
配色のテーマはメニューバー(View → Theme)で切り替えます。キーボードで順に切り替えたい場合は、~/.xefm/config.py で toggle_color_scheme にキーを割り当ててください。
ファイルの検索のような時間のかかる操作の間、XeFM は進捗をアニメーションで表示します。
詳しいドキュメント:検索アニメーション
XeFM は初回起動時に ~/.xefm/config.py を作成します。次の方法で開けます。
~/.xefm/config.py を直接編集設定の詳しいドキュメントは、使えるすべてのオプション、例、おすすめの使い方を網羅した 設定機能ガイド を参照してください。
XeFM のキーバインドは、修飾キーや、1 つのアクションへの複数のキーの割り当てを含めて、柔軟にカスタマイズできます。
KEY_BINDINGS = {
# An action can have several keys — add your own alongside the defaults
'quit': ['Q'],
'help': ['F1'],
# e.g. add vim-style movement next to the arrow keys
'cursor_up': ['UP', 'k'],
'cursor_down': ['DOWN', 'j'],
# Modifier key combinations
'page_up': ['PAGE_UP', 'Shift-UP'],
'page_down': ['PAGE_DOWN', 'Shift-DOWN'],
# Extended form with a selection requirement
'delete_files': {
'keys': ['K', 'DELETE'],
'selection': 'required' # only when files are selected
},
'create_directory': {
'keys': ['M'],
'selection': 'none' # only when nothing is selected
},
}
主な特長:
詳しいドキュメント:キーバインド
XeFM には複数の内蔵テーマ(Dark+、Light+、Monokai、Dracula、Nord、Solarized、Gruvbox Dark、Solarized Light)が付属していて、最後に使ったテーマを覚えています。実行中は View → Next Theme で順に切り替えるか、View → Theme から選びます。独自のテーマは設定の THEMES 辞書で定義します。
詳しいドキュメント:配色
FAVORITES = [
{'name': 'Projects', 'path': '~/dev'},
{'name': 'Documents', 'path': '~/Documents'},
{'name': 'S3 Bucket', 'path': 's3://my-bucket/'},
]
詳しいドキュメント:ナビゲーションダイアログ
PROGRAMS = [
{'name': 'Git Status', 'command': ['git', 'status']},
{'name': 'Open in VSCode', 'command': ['code', '.']},
{'name': 'View with less', 'command': ['less'],
'options': {'terminal': True}},
]
詳しいドキュメント:外部プログラム
ここで説明するオプションは、ターミナル版のインストールとソースのチェックアウトで使えます。デスクトップ版のパッケージはコマンドラインの引数を取りません。ランチャーがネイティブのバックエンドを直接起動します。
python3 -m xefm # Terminal mode — the default
python3 -m xefm --left ~/projects # Set the left pane's startup directory
python3 -m xefm --right ~/docs # Set the right pane's startup directory
--backend で描画のバックエンドを選びます。
python3 -m xefm --backend tui # Terminal — default (--backend curses: classic curses fallback)
python3 -m xefm --backend gui # Native window (aliases: --backend macos / windows)
--backend gui はデスクトップモードの開発用の方法です。普段使いには、代わりにデスクトップ版のパッケージをインストールしてください(理由)。
--backend {tui,curses,gui,macos,windows} # Rendering backend (default: tui)
--left DIR # Left pane startup directory
--right DIR # Right pane startup directory
--version # Show version and exit
--help # Show help and exit
# Desktop window with custom startup directories (from a checkout)
python3 -m xefm --backend gui --left ~/projects --right ~/docs
--left/--right で指定した起動時のディレクトリは、そのセッションでは保存されたペインの履歴より優先されます。無効なパスを指定した場合は、保存されたディレクトリ(またはホームディレクトリ)が使われます。
python3 --version(3.10 以上が必要です)xefmデスクトップモードは macOS でのみ動作します。ほかのプラットフォームでは、XeFM は自動的にターミナルモードで起動します。
ターミナルの色の対応状況と TERM 環境変数を確認してください
ターミナルの Unicode 対応とロケールの設定を確認してください
詳しいドキュメント:全角文字への対応
ターミナルのキーの対応付けと ESCDELAY の設定を確認してください
AWS の認証情報とバケットの権限を確認してください
ファイルの権限とディスクの空き容量を確認してください
pygments をインストールすると、シンタックスハイライトが速くなります--help を使ってください詳しいドキュメント:ヘルプダイアログ
個々の機能の詳しい情報は、次の専用のガイドを参照してください。
config.py や拡張機能が必要とするライブラリを ~/.xefm/requirements.txt からxefm try:一時的なホームで XeFM を実行し、自分の ~/.xefm には手を付けないリファレンスは XeFM の中にあります。 F1 を押すとヘルプダイアログが開きます。ヘルプは設定から実際に作られたキーマップからアクションごとに生成されるので、キーの実際の動作とずれることはありません。メニューバーにも、各項目の横に同じキーが表示されます。
そのため、このガイドではキーではなくアクションの名前(copy_files、find_files、jump_to_path)で説明しています。キーは選んだキーマッププリセットによって変わるからです。すべてのプリセットのすべてのキーは、キーマッププリセットに並べて載せています。キーを変えるには、~/.xefm/config.py の KEY_BINDINGS にアクションを追加します。
すべてのキーバインドは設定ファイル(~/.xefm/config.py)でカスタマイズできます。拡張されたキーバインドのしくみは、次のものに対応しています。
ENTER)と英字だけのキー(q = Q)は同じ物理キーに割り当てられます。Shift を押した方には Shift-Q を使います例:
KEY_BINDINGS = {
'page_up': ['PAGE_UP', 'Shift-UP'], # Two ways to page up
'cursor_up': ['UP', 'k'], # add a vim-style alternative
'delete_files': {
'keys': ['K', 'DELETE'],
'selection': 'required' # Only when files selected
},
}
toggle_select_down で複数のファイルを選択してから操作しますisearch(View → Find…)を実行して入力を始めると、ファイルが絞り込まれますtoggle_select_down でファイルを選択しますedit_file(File → Edit File)でファイルを編集しますこのユーザーガイドでは、XeFM を効果的に使うためのあらゆる側面を網羅しています。技術的な実装の詳細は、doc/dev/ ディレクトリの開発者向けドキュメントを参照してください。