介绍

z.lua 是一个功能强大并带学习功能的快速路径切换工具。如果你在工作中需要经常使用命令行,那么这是一个大幅提升效率的好帮手。

下面摘录一段 README 中的特性说明:

特性说明:

性能比 z.sh 快三倍,比 fasd / autojump 快十倍以上。
支持 Posix Shell:bash, zsh, sh, ash, ksh, busybox 等等。
支持 Fish Shell,Power Shell 和 Windows cmd。
增强匹配算法,更准确的带你去到你想去的地方。
交互选择模式,如有多个匹配结果,cd 前允许你进行选择。
支持 fzf (可选)进行可视化结果筛选或者补全。
快速回到父目录,代替反复 “cd ../../..” 。
高性能,地占用,为不同 Shell 提供统一的使用体验。
兼容 lua 5.1, 5.2 和 5.3 以上版本,兼容 LuaJit。
自包含且无额外依赖,单个 z.lua 文件完成所有工作。

环境

  • macOS 10.14.6
  • zsh 5.7.1
  • z.lua v1.8.4

常用功能

快速回到父目录:

-b 选项可快速回到父目录,避免重复输入 cd ../../..,先把 z -b 别名成 zb :

  • (没有参数):cd 到项目根目录,即跳转到父目录中包含 (.git/.svn/.hg) 的地方。
  • (单个参数):cd 到最近一级以关键字开头的父目录中。

点评:当在仓库的子目录下需要回到仓库根目录,或者需要跳到某一级父目录时使用此功能。

补全功能

zsh/fish 的补全系统是比较完善的,使用 z foo 就能触发补全,显示一个候选项列表。

再次按 键,就可以用可视化的方式对列表进行选择。

点评:补全可以极大的降低记忆的负担。

心智模型

通过模糊匹配可以快速地找到曾经访问过的东西,这就是一个简单的心智模型,可以有效地提升效率。

作为对比,现在的大部分浏览器都只有一个输入框,输入文字后既可以搜索也可以前往网址。

文档

在使用前强烈建议仔细阅读文档,了解所有功能与细节: