A faster way to navigate your filesystem

Overview

zoxide

crates.io .github/workflows/release.yml

A faster way to navigate your filesystem

Table of contents

Introduction

zoxide is a blazing fast alternative to cd, inspired by z and z.lua. It keeps track of the directories you use most frequently, and uses a ranking algorithm to navigate to the best match.

demo

Examples

z foo       # cd to highest ranked directory matching foo
z foo bar   # cd to highest ranked directory matching foo and bar

z foo/      # can also cd into actual directories

zi foo      # cd with interactive selection using fzf

zq foo      # echo the best match, don't cd

za /foo     # add /foo to the database
zr /foo     # remove /foo from the database

Getting started

Step 1: Install zoxide

zoxide works across all major platforms. If your distribution isn't included in the list below, you can directly install the binary from GitHub:

curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/ajeetdsouza/zoxide/master/install.sh | sh

If you would rather not run a script, you can download the binary from the Releases page and add it anywhere in your $PATH.

On Linux

Distribution Repository Instructions
Any crates.io cargo install zoxide
Any Linuxbrew brew install zoxide
Alpine Linux Alpine Linux Packages apk add zoxide
Arch Linux AUR yay -Sy zoxide-bin
CentOS Copr dnf copr enable atim/zoxide
dnf install zoxide
Debian Testing Debian Packages apt install zoxide
Fedora Fedora Packages dnf install zoxide
NixOS nixpkgs nix-env -iA nixpkgs.zoxide
Parrot OS apt install zoxide
Void Linux Void Linux Packages xbps-install -S zoxide

On macOS

Repository Instructions
crates.io cargo install zoxide
Homebrew brew install zoxide
MacPorts port install zoxide

On Windows

Repository Instructions
crates.io cargo install zoxide
Scoop scoop install zoxide

On BSD

Distribution Repository Instructions
Any crates.io cargo install zoxide
DragonFly BSD DPorts pkg install zoxide
FreeBSD FreshPorts pkg install zoxide
NetBSD pkgsrc pkgin install zoxide

On Android

Repository Instructions
Termux pkg install zoxide

Step 2: Install fzf (optional)

fzf is a command-line fuzzy finder, used by zoxide for interactive selection. Installation instructions can be found here.

Step 3: Add zoxide to your shell

If you currently use z, z.lua, or zsh-z, you may want to first import your existing entries into zoxide:

zoxide import /path/to/db

Alternatively, for autojump:

zoxide import --from autojump /path/to/db

bash

Add the following line to your ~/.bashrc:

eval "$(zoxide init bash)"

fish

Add the following line to your ~/.config/fish/config.fish:

zoxide init fish | source

PowerShell

Add the following line to your profile:

Invoke-Expression (& {
    $hook = if ($PSVersionTable.PSVersion.Major -lt 6) { 'prompt' } else { 'pwd' }
    (zoxide init --hook $hook powershell) -join "`n"
})

xonsh

Add the following line to your profile (usually ~/.xonshrc):

execx($(zoxide init xonsh), 'exec', __xonsh__.ctx, filename='zoxide')

zsh

Add the following line to your ~/.zshrc:

eval "$(zoxide init zsh)"

Any POSIX shell

Add the following line to your shell's configuration file:

eval "$(zoxide init posix --hook prompt)"

Configuration

init flags

  • --cmd: change the z command (and corresponding aliases) to something else
  • --hook <HOOK>: change the event that adds a new entry to the database (default: pwd)
    • none: never add entries (this will make zoxide useless unless you manually configure a hook)
    • prompt: add an entry at every prompt
    • pwd: add an entry whenever the current directory is changed
  • --no-aliases: don't define extra aliases like zi, zq, za, and zr

Environment variables

  • $_ZO_DATA_DIR: directory where zoxide will store its data files (default: platform-specific; see the dirs documentation for more information)
  • $_ZO_ECHO: when set to 1, z will print the matched directory before navigating to it
  • $_ZO_EXCLUDE_DIRS: list of directories separated by platform-specific characters (":" on Linux/macOS, ";" on Windows) to be excluded from the database
  • $_ZO_FZF_OPTS: custom flags to pass to fzf
  • $_ZO_MAXAGE: sets the maximum total age after which entries start getting deleted
  • $_ZO_RESOLVE_SYMLINKS: when set to 1, z add will resolve symlinks.
Comments
  • zoxide: no match found

    zoxide: no match found

    OS: NetBSD_9.2 STABLE SHELL: ksh VERSION: v0.7.5

    1. zoxide was installed and working fine.
    2. I decided to change my system username with a few usermod commands. I also changed my home directory with usermod.
    3. After doing so, I get this error: zoxide: no match found
    4. zoxide still half works. I can use absolute paths: z ~/Downloads/movies/anime and then z to cd back to home. it is only then when I try z anime that I get the error.
    5. I've tried deleting the database and starting fresh.
    6. I've even tried uninstalling and reinstalling.
    7. the error persists.

    I have the standard eval statment in my .shrc - I did not change this since it was working previously.

    Any ideas? Are there other files I need to purge to start fresh?

    opened by pfr-dev 24
  • Database purged periodically?

    Database purged periodically?

    Hey, I love your tool so far, it works really great with nushell.

    But somehow the database is purged periodically. So basically over night the db.zo file in the zoxide is missing and it does not remember anything from the day before.

    Did you experience similar behaviour? Do you have any idea of how to solve this? When I print out the contents of the file after changing to this folder I can see that it correctly added the path to the folder there, but everything else is gone.

    Thanks in advance!

    opened by fellnerse 20
  • Add _ZO_RESOLVE_SYMLINKS to resolve or not symlinks

    Add _ZO_RESOLVE_SYMLINKS to resolve or not symlinks

    Linked to #80.

    _ZO_FOLLOW_SYMLINKS=0 disables the symlinks resolution, making a symlink and its target 2 different entries in the database.

    Example:

    • /tmp/foo-target is a directory
    • /tmp/foo symlinks to /tmp/foo-target

    With _ZO_FOLLOW_SYMLINKS=1 (default behavior), z add /tmp/foo adds /tmp/foo-target in the database.

    With _ZO_FOLLOW_SYMLINKS=0, z add /tmp/foo adds /tmp/foo in the database.

    opened by aruhier 20
  • [FR] Add `zoxide query --list-fast`

    [FR] Add `zoxide query --list-fast`

    I use my own "frontend" to jump between dirs, and I just zoixide's functionality of remembering directories I have been to. The problem is that zoxide query --list is not optimized to be fast; It seems to process the whole db and check whether dirs exist or not etc. I want a zoxide query --list-fast that just lists all the dirs, sorted by their score, as fast as possible.

    opened by NightMachinery 18
  • Import the entries from .z

    Import the entries from .z

    I started using zoxide and am very impressed by its speed compared to other utilities. Am currently using zsh-z. It would be nice if there was a way to import the entries from the earlier $HOME/.z to zoxide database. Any plans on using the existing data?

    opened by alaymari 17
  • could not create database c:\path\to\zoxide\db.zo: access is denied

    could not create database c:\path\to\zoxide\db.zo: access is denied

    nushell is failing tests with the error in the title. any ideas what's going on? i assume that it's running tests in parallel and trying to exclusively lock the db.zo file and getting denied, but i'm not sure.

    opened by fdncred 16
  • _ZO_FZF_OPTS reset to default if changed in fish shell

    _ZO_FZF_OPTS reset to default if changed in fish shell

    I changed the setting of _ZO_FZF_OPTS in my config.fish to _ZO_FZF_OPTS "--preview 'lsd {}' and now my zi command show a full screen fzf and says lsd: no such file or dir (os error 2) please let me know to reset _ZO_FZF_OPTS to default

    opened by jayrc2026 13
  • Update Nushell script to support engine-q

    Update Nushell script to support engine-q

    Nushell is upgrading to a new engine with numerous backward-incompatible changes, which breaks zoxide's initialization script. The script would have to be updated accordingly.

    CC @fdncred

    bug 
    opened by ajeetdsouza 13
  • zoxide fails to build using cargo

    zoxide fails to build using cargo

    Seems like clap version v3.0.0-beta.4 has changed AppSettings

       Compiling clap v3.0.0-beta.4
         Running `rustc --crate-name clap --edition=2018 C:\Users\matt\.cargo\registry\src\github.com-1ecc6299db9ec823\clap-3.0.0-beta.4\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"atty\"" --cfg "feature=\"cargo\"" --cfg "feature=\"clap_derive\"" --cfg "feature=\"color\"" --cfg "feature=\"default\"" --cfg "feature=\"derive\"" --cfg "feature=\"env\"" --cfg "feature=\"lazy_static\"" --cfg "feature=\"std\"" --cfg "feature=\"strsim\"" --cfg "feature=\"suggestions\"" --cfg "feature=\"termcolor\"" --cfg "feature=\"unicode_help\"" -C metadata=0bce4592aa7031ae -C extra-filename=-0bce4592aa7031ae --out-dir C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps -L dependency=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps --extern atty=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libatty-82f1b0838f239dfe.rmeta --extern bitflags=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libbitflags-97decd3e5ff078d7.rmeta --extern clap_derive=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\clap_derive-976768dc8f0255fe.dll --extern indexmap=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libindexmap-75a06404c85919f3.rmeta --extern lazy_static=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\liblazy_static-0a5b829d44796e9f.rmeta --extern os_str_bytes=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libos_str_bytes-6345461e4736957c.rmeta --extern strsim=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libstrsim-eab915007f0ee24b.rmeta --extern termcolor=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libtermcolor-3502bb32a0c02316.rmeta --extern textwrap=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libtextwrap-e519391d94a15a07.rmeta --extern vec_map=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libvec_map-5808d1c46f198e2b.rmeta --cap-lints allow`
         Running `rustc --crate-name clap --edition=2018 C:\Users\matt\.cargo\registry\src\github.com-1ecc6299db9ec823\clap-3.0.0-beta.4\src\lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C linker-plugin-lto -C codegen-units=1 --cfg "feature=\"atty\"" --cfg "feature=\"cargo\"" --cfg "feature=\"clap_derive\"" --cfg "feature=\"color\"" --cfg "feature=\"default\"" --cfg "feature=\"derive\"" --cfg "feature=\"env\"" --cfg "feature=\"lazy_static\"" --cfg "feature=\"std\"" --cfg "feature=\"strsim\"" --cfg "feature=\"suggestions\"" --cfg "feature=\"termcolor\"" --cfg "feature=\"unicode_help\"" -C metadata=3fbac080c01fbc87 -C extra-filename=-3fbac080c01fbc87 --out-dir C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps -L dependency=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps --extern atty=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libatty-c9171e92b4d1dd65.rmeta --extern bitflags=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libbitflags-229af4eb2a23e45e.rmeta --extern clap_derive=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\clap_derive-976768dc8f0255fe.dll --extern indexmap=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libindexmap-aa2a47a06db5bd89.rmeta --extern lazy_static=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\liblazy_static-8afa2efcdcccd1ee.rmeta --extern os_str_bytes=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libos_str_bytes-45feee6afb0c8ac6.rmeta --extern strsim=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libstrsim-b7e7ffcf43f437af.rmeta --extern termcolor=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libtermcolor-7dfd03214c6099ec.rmeta --extern textwrap=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libtextwrap-5f4e98ab818a0285.rmeta --extern vec_map=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libvec_map-f8373962f89a3c43.rmeta --cap-lints allow`
    

    and results in

       Compiling zoxide v0.7.2
         Running `rustc --crate-name build_script_build --edition=2018 C:\Users\matt\.cargo\registry\src\github.com-1ecc6299db9ec823\zoxide-0.7.2\build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debug-assertions=off --cfg "feature=\"default\"" -C metadata=b1b949cc5e60e9e1 -C extra-filename=-b1b949cc5e60e9e1 --out-dir C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\build\zoxide-b1b949cc5e60e9e1 -L dependency=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps --extern clap=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libclap-0bce4592aa7031ae.rlib --extern clap_generate=C:\Users\matt\AppData\Local\Temp\cargo-installA87g5B\release\deps\libclap_generate-6eb312e9dfec6ccf.rlib --cap-lints allow`
    error[E0599]: no variant or associated item named `GlobalVersion` found for enum `AppSettings` in the current scope
      --> C:\Users\matt\.cargo\registry\src\github.com-1ecc6299db9ec823\zoxide-0.7.2\src\app\_app.rs:21:33
       |
    21 |     global_setting(AppSettings::GlobalVersion),
       |                                 ^^^^^^^^^^^^^ variant or associated item not found in `AppSettings`
    
    error[E0599]: no variant or associated item named `VersionlessSubcommands` found for enum `AppSettings` in the current scope
      --> C:\Users\matt\.cargo\registry\src\github.com-1ecc6299db9ec823\zoxide-0.7.2\src\app\_app.rs:22:33
       |
    22 |     global_setting(AppSettings::VersionlessSubcommands),
       |                                 ^^^^^^^^^^^^^^^^^^^^^^ variant or associated item not found in `AppSettings`
    
    error: aborting due to 2 previous errors
    

    Looks like the two enums are there in the older betas

    opened by Matty666 13
  • Fish: Allow cd aliasing

    Fish: Allow cd aliasing

    Really cool plugin, just started using it with fish.

    Ran into issue trying to alias cd to z, where zoxide tries to call my alias, which calls zoxide, which calls my alias, until stack overflow.

    zoxide init fish outputs this internal command (among other things):

    function __zoxide_cd
        cd $argv
        and commandline -f repaint
    end
    

    However, it should be:

    function __zoxide_cd
        command cd $argv
        and commandline -f repaint
    end
    

    In fish, command makes sure to call out instead of calling functions.

    I'm not familiar with zoxide's codebase, so I didn't know where to put the fix, otherwise I'd PR myself.

    opened by fennewald 13
  • Detailed comparison of different hook options

    Detailed comparison of different hook options

    Sorry to annoy you with such simple issues. But the documentation is not too extensive and I did not look into the code myself so far. So while setting up zoxide on my PC (coming from fasd), I wonder which hook option I should choose during initialization. Let's disregard none option. For me it looks like the pwd option has the advantage that it does not run so often (depending on the user behavior) and therefore consumes less time (in total). So what is the point of prompt? What I could imagine is that the score of the current working directory increases with each command I run inside. This means the more I'm working inside a specific directory the more "important" it gets. Not sure it that is the case, but this could have a variety of advantages as I could imagine (e.g. git worktrees). Thanks for your help in advance.

    PS: Does it make sense to cache the initialization? That was recommended for fasd and I wonder if this is beneficial here as well to safe shell startup time.

    opened by weilbith 13
  • Tag New Version for 0.73 nushell compatibility

    Tag New Version for 0.73 nushell compatibility

    Hey! Thanks for the awesome package, love using it. Would it be possible to tag a new version off of the main branch so that the homebrew recipe can be bumped to support nushell 0.73?

    opened by jeremiahpslewis 0
  • Fuzzy matching with levenshtein: take 2

    Fuzzy matching with levenshtein: take 2

    #34 brought this up before, but was closed because search patterns are typically short, so there isn't much of a need. However, as some others have pointed out on the thread, it is definitely helpful when there are a small number of mistakes in a longer search

    A way to do this is with a levenshtein algorithm that exits if a limit is exceeded. I maintain a small crate that provides this with try_levenshtein(a, b, limit) -> Option<u32>, which returns None if a specified limit is exceeded (crate link: https://docs.rs/stringmetrics/latest/stringmetrics/, but you could also just copy the implementation if you don't want the dependency).

    Something basic like this would find the closest match within a percent difference of the query's length.

    possible_matches.iter()
        .filter_map(|m| try_levenshtein(query, m, floor(0.3 * query.len())))
        .max()
    

    I'm not sure how best this would fit into the current algorithm (or what exactly fzf currently does), but I'm happy to help & clarify anything needed

    opened by tgross35 0
  • Installation failed forarchitecture: x86_64-unknown-linux-musl

    Installation failed forarchitecture: x86_64-unknown-linux-musl

    On Ubuntu 20.04 server I am trying to install with below command, but it is failing

    curl -sS https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | bash
    

    Failed message:

    Detected architecture: x86_64-unknown-linux-musl
    Error: zoxide has not yet been packaged for your architecture (x86_64-unknown-linux-musl), please file an issue at https://github.com/ajeetdsouza/zoxide/issues
    
    opened by dhruvinsh 1
  • FISH - z error: Do you have an accidental infinite loop?

    FISH - z error: Do you have an accidental infinite loop?

    Hello, I'm using zoxide in FISH and I would like to use z as an alias for cd command. Today, when I tried to use z on FISH, I got the following weird input:

    $ z
    
    - (line 94): The function call stack limit has been exceeded. Do you have an accidental infinite loop?
        __zoxide_z $argv
        ^
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 54 of file -
    in function '__zoxide_z' with arguments '/home/athena'
    	called on line 94 of file -
    in function 'z' with arguments '/home/athena'
    in function '__zoxide_cd_internal' with arguments '/home/athena'
    	called on line 23 of file -
    in function '__zoxide_cd' with arguments '/home/athena'
    	called on line 50 of file -
    in function '__zoxide_z'
    	called on line 94 of file -
    in function 'z'
    

    How can I solve it?

    Note: in Bash it works well. Only in FISH I'm getting this issue.

    OS: Arch Linux 6.0.12-zen1-1-zen (linux-zen kernel) Fish: version 3.5.1 Zoxide: v0.8.3

    opened by D3vil0p3r 0
  • get the path as the argument for any command

    get the path as the argument for any command

    I want to use the path for cp/rm/awk/...

    for ex:

    cp $(zoxide query -i)<tab>
    

    then it will list the path as zi, I will input the key word and select the path, it becomes

    cp /some/path
    

    current, it will break the line. for ex.

    /hcp /home/harriszh/.config/nvim/init.lua
    

    I think it will extent zoxide's usage for smart jump, but path selection for any command.

    opened by zhuzhzh 1
  • How to remove the unwanted paths from zi

    How to remove the unwanted paths from zi

    For instance, I use zi abc to list and choose the path I needed, but there are a few other paths in the list that are not frequently accessed, I need to remove those paths from the db so I can jump to abc directly without interactively choosing one.

    But zoxide remove -i abc will list hundreds of paths, and it is difficult to filter the paths I needed.

    Is there anything can I do to remove the paths from zi abc without listing all the paths in db?

    opened by c02y 0
Releases(v0.8.3)
Owner
Ajeet D'Souza
Ajeet D'Souza
:stars: Manage your shell commands.

Pueue Pueue is a command-line task management tool for sequential and parallel execution of long-running tasks. Simply put, it's a tool that processes

Arne Beer 3.3k Jan 8, 2023
gt your desired path with minimal keystrokes

goto (gt) gt is a simple and user-friendly way to jump to your indexed directories. gt is short for "goto", which is basically what you want to do wit

Sylvester Chin 25 Nov 7, 2022
Count your code, quickly.

Tokei (時計) Tokei is a program that displays statistics about your code. Tokei will show the number of files, total lines within those files and code,

null 7.5k Jan 9, 2023
CLI utility to move (or rename) your files to a new location and redirect all of its symbolic links, to the new path

Move Links CLI utility to move (or rename) your files to a new location and redirect all of its symbolic links, to the new path (or name). Usage execu

Ben Mefteh 18 May 22, 2022
Your project’s nix-env [maintainer=@Profpatsch]

lorri https://github.com/nix-community/lorri lorri is a nix-shell replacement for project development. lorri is based around fast direnv integration f

Nix community projects 442 Jan 1, 2023
📊 Fetch & monitor your server's resource usage through Lua

?? gmsv_serverstat Simple serverside binary module which can expose information about system resource usage to Lua. Installation Download the relevant

William 21 Jul 30, 2022
subd - a place to reward your subscribers from any platform

subd subd's goal is to create a link between the various ways viewers support you as a live content creator, and the interactions that can be triggere

TJ DeVries 37 Jul 6, 2023
Broot - A new way to see and navigate directory trees

Broot A better way to navigate directories Installation Instructions Get an overview of a directory, even a big one br -s Notice the unlisted? That's

Canop 8k Jan 8, 2023
the file filesystem: mount semi-structured data (like JSON) as a Unix filesystem

ffs: the file filesystem ffs, the file filessytem, let's you mount semi-structured data as a fileystem---a tree structure you already know how to work

Michael Greenberg 176 Dec 31, 2022
Zellij plugin to quickly navigate your panes (clone of nvim's harpoon)

harpoon A Zellij plugin for quickly searching and switching between tabs. Copy of the original harpoon for nvim. Usage a to add pane to list Up and Do

null 13 Aug 11, 2023
A fully extensible command interface to navigate around your leptos application.

leptos-kbar A fully extensible command interface to navigate around your leptos application. See demo: https://leptos-kbar.vercel.app/ Roadmap leptos-

null 7 Mar 10, 2024
A filesystem driver that allows you to view your Blackboard course contents as if they were normal files and folders on your system!

BlackboardFS Blackboard: noun A website so bad that it might as well be a network drive. BlackboardFS is a filesystem driver that allows you to view y

null 22 Sep 4, 2023
`cd` alternative. Navigate by typing abbreviation of paths.

kn /n/ kn is an alternative to cd. It lets you navigate quickly by typing abbreviations. It doesn't track frecency or any other statistics. WARNING: T

Mikołaj Powierża 70 Dec 30, 2022
command line tool to navigate JSON files with basic SQL-like queries

navi-json command line tool to navigate JSON files with basic SQL-like queries. The name plays with the assonance with the word 'navigator', at least

Giulio Toldo 2 Oct 2, 2022
Navigate in the world of ESP32 with easy. Tool for maintaining development environment.

ESP Helm Get all important information for Embedded Development with ESP32 and mainitain the development environment. Check out releases for binary ve

Juraj Michálek 4 Aug 7, 2023
Lightweight command line tool to quickly navigate across folders.

slingshot 0.3.0 Slingshot is a lightweight tool to browse files in the terminal. It allows the user to quickly filter through files in any directory,

Caio Ishikawa 40 Sep 17, 2023
A crate to convert bytes to something more useable and the other way around in a way Compatible with the Confluent Schema Registry. Supporting Avro, Protobuf, Json schema, and both async and blocking.

#schema_registry_converter This library provides a way of using the Confluent Schema Registry in a way that is compliant with the Java client. The rel

Gerard Klijs 69 Dec 13, 2022
Learn-rust-the-hard-way - "Learn C The Hard Way" by Zed Shaw Converted to Rust

Learn Rust The Hard Way This is an implementation of Zed Shaw's Learn X The Hard Way for the Rust Programming Language. Installing Rust TODO: Instruct

Ryan Levick 309 Dec 8, 2022
rpg-cli —your filesystem as a dungeon!

rpg-cli is a bare-bones JRPG-inspired terminal game written in Rust. It can work as an alternative to cd where you randomly encounter enemies as you change directories.

Facundo Olano 1.2k Jan 4, 2023
fd is a program to find entries in your filesystem. It is a simple, fast and user-friendly alternative to find

fd is a program to find entries in your filesystem. It is a simple, fast and user-friendly alternative to find. While it does not aim to support all of find's powerful functionality, it provides sensible (opinionated) defaults for a majority of use cases.

David Peter 25.9k Jan 9, 2023