Link to ranger-zoxide plugin
This commit is contained in:
parent
cf59aa1c0f
commit
84c9121f10
34
README.md
34
README.md
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
> A smarter cd command for your terminal
|
> A smarter cd command for your terminal
|
||||||
|
|
||||||
[![crates.io][crates.io-badge]][crates.io]
|
[![crates.io][crates-io-badge]][crates-io]
|
||||||
[![releases][releases-badge]][Releases]
|
[![releases][releases-badge]][Releases]
|
||||||
|
|
||||||
`zoxide` is a blazing fast replacement for your `cd` command, inspired by
|
`zoxide` is a blazing fast replacement for your `cd` command, inspired by
|
||||||
|
|
@ -232,11 +232,18 @@ Be sure to set these before calling `zoxide init`.
|
||||||
|
|
||||||
## Third-party integrations
|
## Third-party integrations
|
||||||
|
|
||||||
- [nnn], via [autojump plugin][nnn-autojump]
|
- [`nnn`][nnn] is a terminal file manager. You can use `zoxide` for navigation
|
||||||
- [telescope-zoxide]
|
with the official [`autojump`][nnn-autojump] plugin.
|
||||||
- [xxh], via [xxh-plugin-prerun-zoxide]
|
- [`ranger`][ranger] is a terminal file manager. You can use `zoxide` for
|
||||||
- [zoxide.vim]
|
navigation with the [`ranger-zoxide`][ranger-zoxide] plugin.
|
||||||
- [zsh-autocomplete]
|
- [`telescope.nvim`][telescope-nvim] is a fuzzy finder for `neovim`. You can
|
||||||
|
use it with `zoxide` via the [`telescope-zoxide`][telescope-zoxide] plugin.
|
||||||
|
- [`vim`][vim] / [`neovim`][neovim]. You can use `zoxide` for navigation with
|
||||||
|
the [`zoxide.vim`][zoxide-vim] plugin.
|
||||||
|
- [`xxh`][xxh] transports your shell configuration over SSH. You can use
|
||||||
|
`zoxide` over SSH via the [`xxh-plugin-prerun-zoxide`][xxh-zoxide] plugin.
|
||||||
|
- [`zsh-autocomplete`][zsh-autocomplete] adds realtime completions to `zsh`. It
|
||||||
|
supports `zoxide` out of the box.
|
||||||
|
|
||||||
[algorithm-aging]: https://github.com/ajeetdsouza/zoxide/wiki/Algorithm#aging
|
[algorithm-aging]: https://github.com/ajeetdsouza/zoxide/wiki/Algorithm#aging
|
||||||
[algorithm-matching]: https://github.com/ajeetdsouza/zoxide/wiki/Algorithm#matching
|
[algorithm-matching]: https://github.com/ajeetdsouza/zoxide/wiki/Algorithm#matching
|
||||||
|
|
@ -244,8 +251,8 @@ Be sure to set these before calling `zoxide init`.
|
||||||
[aur]: https://aur.archlinux.org/packages/zoxide-bin
|
[aur]: https://aur.archlinux.org/packages/zoxide-bin
|
||||||
[chocolatey]: https://community.chocolatey.org/packages/zoxide
|
[chocolatey]: https://community.chocolatey.org/packages/zoxide
|
||||||
[copr]: https://copr.fedorainfracloud.org/coprs/atim/zoxide/
|
[copr]: https://copr.fedorainfracloud.org/coprs/atim/zoxide/
|
||||||
[crates.io-badge]: https://img.shields.io/crates/v/zoxide
|
[crates-io-badge]: https://img.shields.io/crates/v/zoxide
|
||||||
[crates.io]: https://crates.io/crates/zoxide
|
[crates-io]: https://crates.io/crates/zoxide
|
||||||
[debian packages]: https://packages.debian.org/testing/admin/zoxide
|
[debian packages]: https://packages.debian.org/testing/admin/zoxide
|
||||||
[devuan packages]: https://pkginfo.devuan.org/cgi-bin/package-query.html?c=package&q=zoxide
|
[devuan packages]: https://pkginfo.devuan.org/cgi-bin/package-query.html?c=package&q=zoxide
|
||||||
[dm9pzcaq overlay]: https://github.com/gentoo-mirror/dm9pZCAq
|
[dm9pzcaq overlay]: https://github.com/gentoo-mirror/dm9pZCAq
|
||||||
|
|
@ -258,19 +265,24 @@ Be sure to set these before calling `zoxide init`.
|
||||||
[homebrew]: https://formulae.brew.sh/formula/zoxide
|
[homebrew]: https://formulae.brew.sh/formula/zoxide
|
||||||
[linuxbrew]: https://formulae.brew.sh/formula-linux/zoxide
|
[linuxbrew]: https://formulae.brew.sh/formula-linux/zoxide
|
||||||
[macports]: https://ports.macports.org/port/zoxide/summary
|
[macports]: https://ports.macports.org/port/zoxide/summary
|
||||||
|
[neovim]: https://github.com/neovim/neovim
|
||||||
[nixpkgs]: https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/zoxide/default.nix
|
[nixpkgs]: https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/zoxide/default.nix
|
||||||
[nnn-autojump]: https://github.com/jarun/nnn/blob/master/plugins/autojump
|
[nnn-autojump]: https://github.com/jarun/nnn/blob/master/plugins/autojump
|
||||||
[nnn]: https://github.com/jarun/nnn
|
[nnn]: https://github.com/jarun/nnn
|
||||||
[pkgsrc]: https://pkgsrc.se/sysutils/zoxide
|
[pkgsrc]: https://pkgsrc.se/sysutils/zoxide
|
||||||
[releases]: https://github.com/ajeetdsouza/zoxide/releases
|
[ranger-zoxide]: https://github.com/jchook/ranger-zoxide
|
||||||
|
[ranger]: https://github.com/ranger/ranger
|
||||||
[releases-badge]: https://img.shields.io/github/v/release/ajeetdsouza/zoxide
|
[releases-badge]: https://img.shields.io/github/v/release/ajeetdsouza/zoxide
|
||||||
|
[releases]: https://github.com/ajeetdsouza/zoxide/releases
|
||||||
[scoop]: https://github.com/ScoopInstaller/Main/tree/master/bucket/zoxide.json
|
[scoop]: https://github.com/ScoopInstaller/Main/tree/master/bucket/zoxide.json
|
||||||
|
[telescope-nvim]: https://github.com/nvim-telescope/telescope.nvim
|
||||||
[telescope-zoxide]: https://github.com/jvgrootveld/telescope-zoxide
|
[telescope-zoxide]: https://github.com/jvgrootveld/telescope-zoxide
|
||||||
[termux]: https://github.com/termux/termux-packages/tree/master/packages/zoxide
|
[termux]: https://github.com/termux/termux-packages/tree/master/packages/zoxide
|
||||||
[tutorial]: contrib/tutorial.webp
|
[tutorial]: contrib/tutorial.webp
|
||||||
[ubuntu packages]: https://packages.ubuntu.com/hirsute/zoxide
|
[ubuntu packages]: https://packages.ubuntu.com/hirsute/zoxide
|
||||||
|
[vim]: https://github.com/vim/vim
|
||||||
[void linux packages]: https://github.com/void-linux/void-packages/tree/master/srcpkgs/zoxide
|
[void linux packages]: https://github.com/void-linux/void-packages/tree/master/srcpkgs/zoxide
|
||||||
[xxh-plugin-prerun-zoxide]: https://github.com/xxh/xxh-plugin-prerun-zoxide
|
[xxh-zoxide]: https://github.com/xxh/xxh-plugin-prerun-zoxide
|
||||||
[xxh]: https://github.com/xxh/xxh
|
[xxh]: https://github.com/xxh/xxh
|
||||||
[zoxide.vim]: https://github.com/nanotee/zoxide.vim
|
[zoxide-vim]: https://github.com/nanotee/zoxide.vim
|
||||||
[zsh-autocomplete]: https://github.com/marlonrichert/zsh-autocomplete
|
[zsh-autocomplete]: https://github.com/marlonrichert/zsh-autocomplete
|
||||||
|
|
|
||||||
|
|
@ -1,47 +0,0 @@
|
||||||
import os.path
|
|
||||||
import subprocess
|
|
||||||
|
|
||||||
import ranger.api
|
|
||||||
import ranger.core.fm
|
|
||||||
import ranger.ext.signals
|
|
||||||
|
|
||||||
hook_init_old = ranger.api.hook_init
|
|
||||||
|
|
||||||
|
|
||||||
def hook_init(fm: ranger.core.fm.FM):
|
|
||||||
def zoxide_add(signal: ranger.ext.signals.Signal):
|
|
||||||
path = signal.new.path
|
|
||||||
process = subprocess.Popen(["zoxide", "add", path])
|
|
||||||
process.wait()
|
|
||||||
|
|
||||||
fm.signal_bind("cd", zoxide_add)
|
|
||||||
return hook_init_old(fm)
|
|
||||||
|
|
||||||
|
|
||||||
ranger.api.hook_init = hook_init
|
|
||||||
|
|
||||||
|
|
||||||
class z(ranger.api.commands.Command):
|
|
||||||
def execute(self):
|
|
||||||
try:
|
|
||||||
zoxide = subprocess.Popen(
|
|
||||||
["zoxide", "query"] + self.args[1:],
|
|
||||||
stdout=subprocess.PIPE,
|
|
||||||
stderr=subprocess.PIPE,
|
|
||||||
)
|
|
||||||
stdout, stderr = zoxide.communicate()
|
|
||||||
|
|
||||||
if zoxide.returncode == 0:
|
|
||||||
output = stdout.decode("utf-8").strip()
|
|
||||||
if output:
|
|
||||||
self.fm.notify(output)
|
|
||||||
if os.path.isdir(output):
|
|
||||||
self.fm.cd(output)
|
|
||||||
else:
|
|
||||||
self.fm.notify("zoxide: unexpected exit", bad=True)
|
|
||||||
else:
|
|
||||||
output = stderr.decode("utf-8").strip() or "zoxide: unknown error"
|
|
||||||
self.fm.notify(output, bad=True)
|
|
||||||
|
|
||||||
except Exception as e:
|
|
||||||
self.fm.notify(e, bad=True)
|
|
||||||
|
|
@ -8,6 +8,8 @@ pkgs.mkShell {
|
||||||
pkgs-master.cargo-audit
|
pkgs-master.cargo-audit
|
||||||
pkgs-master.elvish
|
pkgs-master.elvish
|
||||||
pkgs-master.nushell
|
pkgs-master.nushell
|
||||||
|
pkgs-master.shellcheck
|
||||||
|
pkgs-master.shfmt
|
||||||
pkgs-python
|
pkgs-python
|
||||||
pkgs.bash
|
pkgs.bash
|
||||||
pkgs.cargo
|
pkgs.cargo
|
||||||
|
|
@ -19,8 +21,6 @@ pkgs.mkShell {
|
||||||
pkgs.powershell
|
pkgs.powershell
|
||||||
pkgs.rustc
|
pkgs.rustc
|
||||||
pkgs.rustfmt
|
pkgs.rustfmt
|
||||||
pkgs.shellcheck
|
|
||||||
pkgs.shfmt
|
|
||||||
pkgs.xonsh
|
pkgs.xonsh
|
||||||
pkgs.zsh
|
pkgs.zsh
|
||||||
];
|
];
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue