#搜索 #命令 #查找 #参数 #找到 #调用 #另一个

程序 roo-cli

一个简单的命令行工具,用于查找文件,并以找到的文件作为参数调用另一个应用程序

4 个版本

0.0.6 2022年1月22日
0.0.5 2021年8月27日
0.0.4 2021年8月25日
0.0.3 2021年8月14日

#67 in #找到

MIT/Apache

16KB
360 代码行

Roo (🦘) 代表“伸出援手,开放”

该工具将根据设置中使用的搜索参数查找文件夹或文件。然后找到后,将使用它或其文件夹作为参数调用我们想要的命令。

假设你在你的 .roo 文件中有这个配置

walkdir: fd
delay: 750
commands:
  - key: "vs"
    command: "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Professional\\Common7\\IDE\\devenv.exe"
    command_type: "File"
    search_by: "Extension"
    search_for: "sln"
  - key: "cs"
    command: "C:\\Program Files\\Microsoft VS Code\\Code.exe"
    command_type: "Directory"
    search_by: "Extension"
    search_for: "sln"

Walkdir可以是walkdir(这是我实现的,但非常慢)或fd,它将使用fd,因此需要安装

延迟是打开应用程序的延迟(毫秒)。默认为零,但如果你使用虚拟桌面,并在请求应用程序打开和打开它之间切换到另一个桌面,则可以在其中添加延迟。

如果你运行roo vsroo vs .它将在该路径上搜索所有具有扩展名.sln的文件,如果不止一个,它将询问你想要打开哪一个,然后将在 Visual Studio 中打开它。


故障排除

roo不是使用cargo安装的,而是安装roo-cli我希望在应用程序的0.0.5版本中修复了这个问题。

在哪里放置 .roo 文件?

要进入主目录,我正在使用dirs-next crate。这是一个来自他们文档的示例,假设用户名是Alice。

// Lin: Some(/home/alice)
// Win: Some(C:\Users\Alice)
// Mac: Some(/Users/Alice) 

我在mingw64中无法正确运行应用程序

如果你想在MINGW64(Git bash)中运行它,由于当有多个文件时选择器的原因,你将无法运行,因为终端类型是FILE_TYPE_PIPE而不是FILE_TYPE_CHAR。一种解决方法是用winpty。

所以如果你编辑~/.bashrc并添加以下内容

alias roo="winpty roo"

它应该可以工作。

依赖项

~5–15MB
~191K SLoC