ZSH 片段 - 多个占位符?

ZSH 片段 - 多个占位符?

我试图用 zsh 模拟 ultisnips 的行为,主要是具有多个占位符的功能。例如,我经常使用taskwarrior,但总是具有相同的结构:

taskwarrior add p:PROJECT due:DATE TASKDescription

为了加快速度,我想要一个带有键(例如“tadd”)的片段扩展为:

taskwarrior add p: due: 

在“p:”之后使用占位符,当我按下一个键(例如,ctrl+j)时,跳转到下一个占位符,即“due:”之后。在 Ultisnips 我可以做:

snippet tadd "Taskwarrio" b
taskwarrior add p:$1 due:$2 $3
endsnippet

知道如何在 ZSH 中实现吗?

答案1

我的印象是你想要一个像任何类似 Bourne 的 shell 中那样的函数:

定义如下:

tadd() taskwarrior add p:$1 due:$2 $3

被调用为:

tadd PROJECT DATE TASKDescription

相关内容