尝试写入完成,然后 cd
Trying to write completion, then cd
这对我来说似乎很基础,但我一直无法弄明白。所以我写了一个自动完成我的代码目录的完成,如下所示:
complete --command dev --exclusive --arguments '(__fish_complete_directories (~/Code/))'
现在我正在尝试编写一个函数,将 cd 放入上面开发完成时选择的目录中。
这行不通,但我希望你明白我想做的事情:
function c
cd dev
end
所以当键入 c 时,我想将我在 ~/Code/ 目录中的所有目录作为选项卡完成选项,然后当我 select 一个时,我希望将我当前的路径带到所选的目录。
顺便说一句 - fish 需要更多文档:)
所以您正在尝试做两件事:
- 创建一个函数
c
cd 到它的参数
- 使制表符完成
c
在 ~/Code 中显示路径
这很简单:
function c
cd $argv
end
complete --command c --exclusive --arguments '(__fish_complete_directories ~/Code/)'
我不确定 dev
是什么意思,但需要明确的是,complete
的 --command
选项会向现有命令添加补全。它没有定义新命令。
关于文档,http://fishshell.com/docs/current/index.html. If there's areas you think need more coverage please open an issue at https://github.com/fish-shell/fish-shell/issues 有很多。
这对我来说似乎很基础,但我一直无法弄明白。所以我写了一个自动完成我的代码目录的完成,如下所示:
complete --command dev --exclusive --arguments '(__fish_complete_directories (~/Code/))'
现在我正在尝试编写一个函数,将 cd 放入上面开发完成时选择的目录中。
这行不通,但我希望你明白我想做的事情:
function c
cd dev
end
所以当键入 c 时,我想将我在 ~/Code/ 目录中的所有目录作为选项卡完成选项,然后当我 select 一个时,我希望将我当前的路径带到所选的目录。
顺便说一句 - fish 需要更多文档:)
所以您正在尝试做两件事:
- 创建一个函数
c
cd 到它的参数 - 使制表符完成
c
在 ~/Code 中显示路径
这很简单:
function c
cd $argv
end
complete --command c --exclusive --arguments '(__fish_complete_directories ~/Code/)'
我不确定 dev
是什么意思,但需要明确的是,complete
的 --command
选项会向现有命令添加补全。它没有定义新命令。
关于文档,http://fishshell.com/docs/current/index.html. If there's areas you think need more coverage please open an issue at https://github.com/fish-shell/fish-shell/issues 有很多。