Skip to main content

Tmux integration for ranger

Project description

ranger-tmux

Tmux integration for ranger

Install

To install this plugin, clone the respository into ranger's plugins folder, or install it with pip:

pip install ranger-tmux
# Then run this to install the package as a ranger plugin:
python -m ranger_tmux install

Features

  • Open files from ranger in a new tmux window or pane
  • Make your terminal track ranger's directory
  • Make ranger track your terminal's directory
  • Set tmux window title to show ranger is running
  • Drop down file-manager in your tmux session
  • Easily split a ranger pane to launch a shell in the current folder

Other pane tracking & syncing

This plugin enables syncing of the current working directory between ranger and other tmux panes in the same window.

The pane to be used for syncing or tracking is determined in the following order:

  1. A marked pane;
  2. The currently selected pane;
  3. The last selected pane;
  4. The next pane.

Ranger will only sync its working directory to another pane if the process running in another pane does not have any child processes. This prevents ranger typing cd commands if you have launched a text editor from the shell in the other pane.

Drop-down ranger

When installing the plugin, you will be asked if you want to install a key-binding in ~/.tmux.conf for drop-down ranger. This allows you to toggle ranger in a drop-down tmux pane in the current window. This can be run manually by running python -m ranger_tmux.drop in a tmux session.

The key binding can be installed by running python -m ranger_tmux --tmux install, or by running the :install_tmux_dropdown_shortcut command in ranger (or typing the xh shortcut). The default key-binding installed is prefix, backspace, but this can be changed by editing the lines added to ~/.tmux.conf.

Shortcut keys

Key Sequence Command
xc Change the current working directory in the other pane to the directory in ranger
xd Change ranger's current directory to the directory of the other pane
xs Toggle syncing of ranger's current directory to the other pane
xt Toggle tracking of the other pane's working directory to tmux
xw Toggle opening files in a new tmux window
xi Toggle setting the tmux window's title to "ranger" when ranger is running
xe Open the selected file with rifle in a new tmux window
x| Split ranger's current tmux pane vertially
x- Split ranger's current tmux pane horizontally
xh Adds the dropdown shortcut to ~/.tmux.conf

Settings

This plugin adds several settings to ranger:

Setting Type Default Meaning
tmux_cwd_sync bool False When True, ranger's current directory is synced to the other pane
tmux_cwd_sync_now_focus bool False When True, the other pane will be focused after manually syncing it with ranger
tmux_cwd_track bool False When True, ranger's current directory tracks the other pane
tmux_cwd_track_interval float 0.5 Time between checks of the directory of the other pane when tracking
tmux_open_in_window bool True When True, files opened with ranger will open in a new tmux window
tmux_set_title bool True When True, the tumx window will be renamed to "ranger" when ranger is running
tmux_dropdown_percent int 60 The height of the pane created when the drop-down tmux key-binding is installed and used
tmux_dropdown_animate bool True When True, dropped-down ranger will grow / shrink when summoned
tmux_dropdown_duration float 100 Drop-down animation time in miliseconds

The default values can be modified by setting them in ~/.config/ranger/rc.conf, e.g.:

set tmux_cwd_sync true
set tmux_cwd_track true
set tmux_set_title true
set tmux_open_in_window true
set tmux_dropdown_percent 60

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ranger_tmux-1.0.8.tar.gz (11.8 kB view details)

Uploaded Source

Built Distribution

ranger_tmux-1.0.8-py2.py3-none-any.whl (13.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ranger_tmux-1.0.8.tar.gz.

File metadata

  • Download URL: ranger_tmux-1.0.8.tar.gz
  • Upload date:
  • Size: 11.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.10.8 Linux/6.0.1-arch2-1

File hashes

Hashes for ranger_tmux-1.0.8.tar.gz
Algorithm Hash digest
SHA256 47651ad3197273e5ba22791261039fd972ed94960bba5be0cef522b34742586c
MD5 1e6f8249dc5654d089ff4e4edd034c14
BLAKE2b-256 338b2d59c5c0b696185bc32798760d0629505b9cf3b55df5c8c826db0f04fe17

See more details on using hashes here.

File details

Details for the file ranger_tmux-1.0.8-py2.py3-none-any.whl.

File metadata

  • Download URL: ranger_tmux-1.0.8-py2.py3-none-any.whl
  • Upload date:
  • Size: 13.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.10.8 Linux/6.0.1-arch2-1

File hashes

Hashes for ranger_tmux-1.0.8-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 24c09b3d9c767cd24537294c112db8a77d47a3cb6d3cdaa4e506abd09ed38fc1
MD5 f396a6bd9755741e6d69047cff7f671c
BLAKE2b-256 07e3944ab6f4f98cabfb0deedbb5cf9805137e120c309be65746be5dd9a8461d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page