ここにいくつかの素晴らしいツールがあります:tmux、ranger、vim ... tmux newpaneでファイルを開くようにレンジャーを構成するのは素晴らしいでしょうか(テキストが編集可能な場合)?それは簡単で、どのように行われますか?
調べてみたところ、それほど難しくはないことがわかりました。
アドホックな方法で新しいペイン(右側)のレンジャーで現在選択されているファイルを開くには、最初にレンジャーのコマンドラインに移動し(:)を押してから、_Shell tmux splitw -h 'vim %f'
_と入力してから_<Enter>
_キー。
キーバインディングを使用してこれを実現するには、レンジャーの構成ファイルに設定します。レンジャー1.6以降の場合、キーバインディングは_rc.conf
_で指定されます。したがって、_~/.config/ranger/rc.conf
_では、次のようなものを使用します。
_map ef eval if 'TMUX' in os.environ.keys(): fm.execute_console("Shell tmux splitw -h 'vim " + fm.thisfile.basename + "'")
_
Ranger 1.4では、次の内容のファイル_~/.config/ranger/keys.py
_が必要です。
_#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Customized key bindings.
from ranger.api.keys import *
map = keymanager.get_context('browser')
@map("ef")
def edit_file_in_new_tmux_pane(arg):
command = "Shell tmux splitw -h 'vim " + arg.fm.env.cf.basename + "'"
if 'TMUX' in os.environ.keys(): arg.fm.execute_console(command)
_
上記の設定で、レンジャーのブラウザでef
を押すと、vimが選択したファイルを編集する新しいtmuxペインが開きます。
コードは単にデモ用であり、ファイルタイプのチェックなど、より多くの保護を伴う必要がある場合があります。
クレジットはレンジャーのヘルプマニュアルと$(pythonpkginstalldir)/ranger/defaults/rc.conf
(レンジャー1.4の場合は$(pythonpkginstalldir)/ranger/defaults/keys.py
)に送られます。彼らは本当に役に立ちます。