Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -460,6 +460,10 @@ Environment variables[^2] can be used for configuration. They must be set before
- `_ZO_RESOLVE_SYMLINKS`
- When set to 1, `z` will resolve symlinks before adding directories to the
database.
- `_ZO_DISABLE_EXISTENCE_CHECK`
- When set to 1, `z` will not filter the list for the existing files.
This improves the performance when the files on the list are on
a slow drive, such as a network drive.

## Third-party integrations

Expand Down
5 changes: 5 additions & 0 deletions man/man1/zoxide.1
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,11 @@ the database. By default, this is set to 10000.
.B _ZO_RESOLVE_SYMLINKS
When set to 1, \fBz\fR will resolve symlinks before adding directories to
the database.
.TP
.B _ZO_DISABLE_EXISTENCE_CHECK
When set to 1, \fBz\fR will not filter the list for the existing files.
This improves the performance when the files on the list are on a slow drive,
such as a network drive.
.SH ALGORITHM
.TP
.B AGING
Expand Down
3 changes: 2 additions & 1 deletion src/cmd/cmd.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ https://github.com/ajeetdsouza/zoxide
{tab}<bold>_ZO_EXCLUDE_DIRS</bold> {tab}List of directory globs to be excluded
{tab}<bold>_ZO_FZF_OPTS</bold> {tab}Custom flags to pass to fzf
{tab}<bold>_ZO_MAXAGE</bold> {tab}Maximum total age after which entries start getting deleted
{tab}<bold>_ZO_RESOLVE_SYMLINKS</bold>{tab}Resolve symlinks when storing paths").into_resettable()
{tab}<bold>_ZO_RESOLVE_SYMLINKS</bold>{tab}Resolve symlinks when storing paths
{tab}<bold>_ZO_DISABLE_EXISTENCE_CHECK</bold>{tab}Do not filter the list by existing files").into_resettable()
}
}

Expand Down
4 changes: 4 additions & 0 deletions src/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -60,3 +60,7 @@ pub fn maxage() -> Result<Rank> {
pub fn resolve_symlinks() -> bool {
env::var_os("_ZO_RESOLVE_SYMLINKS").is_some_and(|var| var == "1")
}

pub fn disable_existence_filter() -> bool {
env::var_os("_ZO_DISABLE_EXISTENCE_CHECK").is_some_and(|var| var == "1")
}
3 changes: 2 additions & 1 deletion src/db/stream.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ use std::{fs, path};

use glob::Pattern;

use crate::config;
use crate::db::{Database, Dir, Epoch};
use crate::util::{self, MONTH};

Expand Down Expand Up @@ -65,7 +66,7 @@ impl<'a> Stream<'a> {
}

fn filter_by_exists(&self, path: &str) -> bool {
if !self.options.exists {
if !self.options.exists || config::disable_existence_filter() {
return true;
}

Expand Down
Loading