Commit Graph

184 Commits

Author SHA1 Message Date
Ajeet D'Souza
20d62524bf Improve error handling on Xonsh 2020-10-20 23:29:28 +05:30
Ajeet D'Souza
314050f090 Use u64 for Epoch 2020-10-20 11:46:39 +05:30
Ajeet D'Souza
aca2477b68 Split crates 2020-10-18 14:52:13 +05:30
Ajeet D'Souza
eaf63bcc69 Fix clippy lints 2020-10-02 10:35:33 +05:30
Ajeet D'Souza
f230e75559 Avoid removing currently inaccessible directories 2020-09-18 01:00:37 +05:30
Ajeet D'Souza
5cfcd79c39 Support globs in _ZO_EXCLUDE_DIRS 2020-09-16 02:50:58 +05:30
Ajeet D'Souza
f4525db02f Rewrite init commands 2020-09-16 02:21:28 +05:30
Ajeet D'Souza
45b8ddb714 Call _zoxide_hook last in function list 2020-08-15 02:20:50 +05:30
Tom Moulard
abe049d5f4
Prevent zoxide from changing $? in $PROMPT_COMMAND 2020-08-14 22:26:25 +05:30
Greedwolf DSS
f6522d1cf8
fix: fish pwd usage (#92) 2020-07-04 13:28:42 +05:30
Ajeet D'Souza
1bc0454f84 Update dependencies 2020-07-03 23:06:24 +05:30
Anthony Ruhier
d49a2c1495 Add _ZO_RESOLVE_SYMLINKS to resolve or not symlinks (#85)
Fixes #80.

Disable by default the symlinks resolution, making a symlink and its
target 2 different entries in the database. Adds the
_ZO_RESOLVE_SYMLINKS env variable to re-enable it.

Example:
  /tmp/foo-target is a directory
  /tmp/foo symlinks to /tmp/foo-target

With _ZO_RESOLVE_SYMLINKS=1, `z add /tmp/foo` adds `/tmp/foo-target` in the database.

With _ZO_RESOLVE_SYMLINKS=0 or unset, `z add /tmp/foo` adds `/tmp/foo` in the database.
2020-07-03 12:12:47 +05:30
Ajeet D'Souza
c5bc49884d Fix imports 2020-07-03 12:12:47 +05:30
Ajeet D'Souza
11ba2af20e Rename $result to $_zoxide_result 2020-07-03 12:12:05 +05:30
Ajeet D'Souza
ba13b45940 Add --score flag to show score with query result 2020-06-28 00:12:49 +05:30
Ajeet D'Souza
19bac0b31a Add option to list all query results 2020-06-28 00:11:43 +05:30
Ajeet D'Souza
e8eb685e58 Add _ZO_FZF_OPTS to specify fzf options 2020-06-28 00:11:43 +05:30
Ajeet D'Souza
d8a29f4367 Fix zi function 2020-06-28 00:11:42 +05:30
Ajeet D'Souza
9b056fb58c Removed help menus for z and zri functions 2020-06-28 00:10:35 +05:30
Ajeet D'Souza
e1c1570174 Change zri to a shell function 2020-06-28 00:03:36 +05:30
Louis Feuvrier
5c107c23cf
Rename $result to $_zoxide_result to avoid conflicts (#87) 2020-06-27 14:27:39 +05:30
Stavros Korokithakis
1ce74baf3b
Increase the _ZO_MAXAGE default (#84) 2020-06-08 13:14:36 +05:30
Ajeet D'Souza
eaf6ef5900 Minor refactor 2020-05-25 00:39:27 +05:30
Ajeet D'Souza
edf3c68a7c Avoid long variable names 2020-05-16 18:23:38 +05:30
Ajeet D'Souza
dad0f60b28 Use util::path_to_str for path conversions 2020-05-16 17:59:21 +05:30
Ajeet D'Souza
208a6a9eb8 Convert paths to String 2020-05-16 17:31:11 +05:30
Ajeet D'Souza
efd615b910 Optimize query algorithm 2020-05-15 19:40:54 +05:30
Ajeet D'Souza
0c1143fe34 Remove streaming serde for database 2020-05-15 18:13:24 +05:30
Jason Shirk
5cdd8fd599
Add support for PowerShell (#65) 2020-05-06 11:33:06 +05:30
Ajeet D'Souza
0c3a8a79c3 Remove compatibility with v0.2.x databases 2020-05-04 01:09:01 +05:30
Ajeet D'Souza
0e936fede1 Rename --no-define-aliases flag to --no-aliases 2020-05-03 18:09:54 +05:30
Ajeet D'Souza
e0572a4569 Rename --z-cmd flag to --cmd 2020-05-03 15:15:40 +05:30
Fredrik Sommar
f19aa07145
Aliases respect the z-cmd arg (#70)
When changing the z-cmd to something like `j` instead, the aliases will also use `j` as a prefix, e.g. `ji`, `ja`.
2020-05-03 14:58:01 +05:30
Ajeet D'Souza
4731533352 $_ZO_ECHO must be set to 1 to be enabled 2020-05-03 02:42:42 +05:30
Ajeet D'Souza
e4dae1dd54 Improve interactive mode in zoxide remove 2020-05-03 02:12:58 +05:30
Ajeet D'Souza
f94d1375a8 Properly quote paths in POSIX 2020-05-02 21:57:46 +05:30
Ajeet D'Souza
7532fe98d8 Add PWD hook for POSIX shells 2020-05-02 16:31:53 +05:30
Ajeet D'Souza
7eed1ed9c3 Switch default hook to PWD. 2020-05-02 01:25:57 +05:30
Cole Helbling
58969e22a2
Fix cding home when no matching directory in fish (#64)
Fix `cd`ing into `$HOME` when no match is found in `fish` shell
2020-04-11 10:09:34 +05:30
Ajeet D'Souza
0d860503ae Remove unnecessary derive 2020-04-11 03:00:50 +05:30
Jason Shirk
a4b202f9da
Canonicalize to regular paths instead of UNC paths on Windows 2020-04-10 00:13:16 +05:30
Ajeet D'Souza
56218f35d3 Interactive mode for zoxide remove 2020-04-06 08:41:28 +05:30
Ajeet D'Souza
b21dbefa22 Don't show error if fzf exits gracefully 2020-04-05 22:31:32 +05:30
Ajeet D'Souza
2f73465d8d Saving DB should clear the modified flag 2020-04-05 21:39:21 +05:30
Ajeet D'Souza
342954cda0 Performance improvements 2020-04-05 20:44:23 +05:30
Ajeet D'Souza
ede121ef8b Add flag to change z command 2020-04-03 12:03:38 +05:30
Ajeet D'Souza
d3e49bde66 Remove 'query: ' prefix from 'zoxide query' 2020-04-03 02:22:50 +05:30
Ajeet D'Souza
fdf46d34b9 Check for top-level directory match 2020-04-03 02:20:59 +05:30
Cole Helbling
1e333dfb33
Show commit hash in version number 2020-04-01 03:24:45 +05:30
Ajeet D'Souza
9d0222383f Style nits 2020-03-30 06:49:41 +05:30
Ajeet D'Souza
3c7d100ab1 Guarantee unique file names for temporary database 2020-03-30 03:32:21 +05:30
Ajeet D'Souza
78a3d0a3d9 Remove indoc dependency 2020-03-30 03:32:21 +05:30
Cole Helbling
9af0251bd6 Rework database fallback for v0.3 (#47)
Support migration from old database
2020-03-30 03:32:21 +05:30
Ajeet D'Souza
d4c8297f9b Use UUID4 for temporary database file name 2020-03-30 03:32:21 +05:30
Ajeet D'Souza
057ed96c0a Refactor DB architecture 2020-03-30 03:32:21 +05:30
Cole Helbling
1190106849 Implement _ZO_EXCLUDE_DIRS
_ZO_EXCLUDE_DIRS is a list of paths (separated by colons, `:`, on
Unix-based systems, and semicolons, `;`, on Windows) that should be
excluded from the database. Example:

    _ZO_EXCLUDE_DIRS="$HOME:$HOME/something/super/secret:$HOME/caused/by/background/cds"
2020-03-30 03:32:21 +05:30
Ajeet D'Souza
f29b642ffc Remove FIXME 2020-03-30 03:32:21 +05:30
Ajeet D'Souza
d4fb1a05cf Manually parse environment variables 2020-03-30 03:32:21 +05:30
Ajeet D'Souza
5547fb4b80 Rename migrate command to import 2020-03-30 03:31:22 +05:30
Ajeet D'Souza
76dfaad9a1 Set max DB size to 8 MiB 2020-03-30 03:30:12 +05:30
Ajeet D'Souza
890185176e Store paths as PathBuf rather than String 2020-03-30 03:30:12 +05:30
Ajeet D'Souza
857e15c65f Remove conversion to i64 when sorting 2020-03-30 03:30:12 +05:30
Ajeet D'Souza
5d709bded5 Remove i32 conversion from fzf helper 2020-03-30 03:30:12 +05:30
Cole Helbling
dc5f965b0c
Add POSIX shell support (#43)
Add POSIX shell support

Any users of a shell that adheres to the POSIX standard should now be
supported. Shells that were tested while this feature was in development
include `mrsh`, `dash`, busybox `ash`, and `bash --posix`.

The hook works by defining a `_zoxide_hook` function and adding it to
the shell's `PS1` (causing it to be evaluated every time the prompt is
redrawn).

The PWD hook has been removed, because it is impossible to implement in
a POSIX-compliant and satisfactory way.
2020-03-30 03:24:37 +05:30
Ajeet D'Souza
b3470de799 Remove flock 2020-03-17 13:05:10 +05:30
Ajeet D'Souza
03e8cd47a2 Fix exit codes in z and fzf 2020-03-17 12:34:53 +05:30
Ajeet D'Souza
146e5709fb Fix exit codes in 'z' command 2020-03-16 14:26:59 +05:30
Ajeet D'Souza
a5369beaa4 Prepare for release v0.2.1 2020-03-16 00:08:28 +05:30
Cole Helbling
083a834310
Allow merging when migrating from z (#33)
If the user passes the `--merge` flag to the `migrate` subcommand, all
duplicate entries will have their ranks and epochs updated: the rank
will be the sum of the stored rank and the newly-parsed rank, while the
epoch will be the maximum of the stored epoch and the newly-parsed
epoch.

This allows one to import from the `z` database even after having used
`zoxide` for any amount of time. This also permits a user who has
already sourced the init script to import their old database without
needing to do something like `rm ~/.zo && zoxide migrate ~/.z`.
2020-03-15 23:48:59 +05:30
Ajeet D'Souza
f4cd1159c5 Add $_ZO_ECHO to echo match before navigating 2020-03-15 17:55:54 +05:30
Ajeet D'Souza
eb21727868 Use envy to parse environment variables 2020-03-13 14:12:20 +05:30
Ajeet D'Souza
41aabccb8f Add PWD hook for bash + fish 2020-03-13 07:09:21 +05:30
Ajeet D'Souza
9c8e8da71a Refactor + support PWD hook for zsh 2020-03-13 06:19:37 +05:30
Cole Helbling
4596716cc8
Migrate from z database (#29)
Migrate from `z` database

The new `migrate` subcommand takes in a path to the old `z` database and
naively parses it to add to the database. The command will fail if the user already has a database, so as to prevent tainting it in any way.
2020-03-13 05:15:06 +05:30
Ajeet D'Souza
65b37082b6 Add DB save to Drop trait 2020-03-12 23:07:50 +05:30
Ajeet D'Souza
e847847713 Fix spacing in z output 2020-03-12 01:04:52 +05:30
Ajeet D'Souza
ba5efffd24 Merge branch 'master' into v0.2.0 2020-03-11 04:42:28 +05:30
Ajeet D'Souza
15b30206df Add 'z -' capability to bash and zsh 2020-03-11 01:58:40 +05:30
Ajeet D'Souza
34ab8f3f8b Add --no-define-aliases flag to zoxide init 2020-03-11 01:23:49 +05:30
Ajeet D'Souza
f0c5e28fd7 * Add init subcommand for bash, fish, and zsh
* Migrate errors from failure to anyhow
* Migrate argument parsing from clap to structopt
* Empty z command now goes to $HOME
* DB updates are now atomic and isolated
2020-03-11 00:14:50 +05:30
Ajeet D'Souza
32ed84c27e Add README 2020-03-08 08:14:54 +05:30
Ajeet D'Souza
d28d566149 Improve query print dialog 2020-03-07 22:53:13 +05:30
Ajeet D'Souza
784ed10aad Add aging algorithm 2020-03-06 23:13:32 +05:30
Ajeet D'Souza
68a426216d Initial commit 2020-03-05 20:06:58 +05:30