9 个版本
0.1.8 | 2020 年 8 月 19 日 |
---|---|
0.1.7 | 2020 年 2 月 22 日 |
0.1.5 | 2020 年 1 月 11 日 |
0.1.4 | 2019 年 12 月 29 日 |
0.1.1 | 2018 年 11 月 22 日 |
#1219 在 开发工具
25KB
611 代码行
zrs
zrs
是一个基于 rupa 的 z 的目录切换助手。
它跟踪你经常访问的目录以及你最近使用它们的时间。它将尝试根据一些输入带你去最佳匹配的目录。
例如,z bar
可能会带你去 /home/you/code/bar
,而 z foo bar
可能会带你去 /var/lib/dogfood/libs/bombard
。
安装
zrs
由两部分组成。
-
zrs
是一个需要放在你的路径中的 Rust 二进制文件。如果你有~/.cargo/bin
在你的路径中,则cargo install zrs
应该可以工作。 -
z.sh
是一个必须在你的 shell 中source
的辅助脚本。
zrs
可以为你添加这些
$ zrs --add-to-profile
written helper script to "/home/faux/.local/share/zrs/z.sh"
couldn't append to "/home/faux/.bashrc": Os { code: 2, kind: NotFound, message: "No such file or directory" }
appended '. .../z.sh' to "/home/faux/.zshrc"
为什么?
rupa 的 shell 实现 z
存在一些性能和安全问题。通过作为单个二进制文件编写,并且更加小心地接触文件系统,并在执行任何缓慢的操作之前进行 fork
(释放 shell),zrs
解决了这些问题。
显著差异
- 一些功能缺失
- 速度更快,且不太可能丢失数据文件写入(试着在 shell 中按住回车键一段时间)
- 正则表达式语法是 PCRE
- 只有在使用显式的
--clean
时才会消除缺失的目录
依赖项
~6–16MB
~210K SLoC