[建议] 在 Projects 路径设置项中相对路径以当前目录为基点

方案一:在 Actions、Keywords、Projects、Menu 功能中设置路径时,相对路径统一以当前目录为基点。

经过测试,目前 Listary 解析路径的基点位置是这样的:

  1. 在 Actions 和 Menus 中是当前目录,这就是本建议想要的效果。
  2. 在 Keywords 中也是当前目录,除非设定了工作目录,这也很好。
  3. 在 Projects 中是用户曾访问过的某个固定目录,很奇怪,这个目录并不特别。

所以问题就在 Projects 了。

方案二:在 Path 项中解析 {current_folder} 等 Listary 内置变量。这样就可以让用户显式地输入当前路径。

两个方案可以同时实现。

产生这个想法是因为这个帖子提的需求。楼主希望能仅显示当前目录下的搜索结果,虽然经过我对 Listary 分类排序的做法的解释,他已经表示满意,但「仅显示」和「置顶显示」毕竟还是有区别。如果 Projects 的路径改为以当前目录为基点,那么就可以通过该功能完全实现「仅在当前目录搜索」,例如设一个 Project:

Name:      Current folder
Keyword:   .|
Path:      .                  // 方案一
Path:                         // 方案一,如果程序适当配置以解释留空情形
Path:      {current_folder}   // 方案二

就可以通过输入 .| 搜索词 来将搜索限制在当前目录了。
这里如果把 keyword 设为 ..\ 则语义上更完美,但这两者本身是合法搜索词,不宜作为 keyword,这就引出了我的——

另一个建议:

前缀一个空格以临时禁用 Project
这与 Listary 默认的前缀 ! 以临时禁用即时搜索是类似的,同样可以考虑设计成可定制字符。

这样就可以允许一个关键字同时作为功能关键字 (无前缀空格) 和搜索关键字 (有前缀空格) 了。当然,这要求 Project 的 keyword 项本身不是以空格开头的,而目前是允许在任意位置包含空格的,所以这一点也要随着更改,加一个限制。

感谢建议!新版本中会提供一系列的关键字自动高亮补全,所以即便是设置一个限定仅搜索当前目录的特殊filter的关键字为current-folder,也能很方便的输入。

现在版本中应该就可以。

确实可以,是我混淆了,虽然 Project 的 keyword 本身可以以空格开头,但只要搜索时在开头多加一个空格就可以临时禁用。