vscode-markdown-editor icon indicating copy to clipboard operation
vscode-markdown-editor copied to clipboard

有没有办法触发vscode的代码提示功能

Open xmu714 opened this issue 4 years ago • 5 comments

我现在用vscode写所有markdown笔记,主要就是馋它的snippet功能,尤其是在快速插入latex公式的时候,按快捷键触发提示以后可以按关键字自动补全公式结构,只需要按tab填数字就行了。

但是用这个编辑的话,似乎无法触发提示,开始我以为是它的快捷键Ctrl+iCtrl+Space有冲突,但是我改了别的也不行,然后意识到可能是需要触发内置编辑器的某个特定事件才行。

我查了一下,这个提示功能Trigger suggest的触发条件是editorHasCompletionItemProvider && textInputFocus && !editorReadonly,有没有办法在这个插件里面触发它?

xmu714 avatar May 17 '21 00:05 xmu714

大概率是不行的,因为这个编辑器是基于vscode的webview panel的,和内置编辑器是完全不同的panel, snippets功能需要单独实现。。

zaaack avatar May 17 '21 00:05 zaaack

那要是单独实现的话难吗,我只需要设计一个能匹配关键字然后按下快捷键可以提示补全结构的就行,例如vscode这样:

"Latex - bmatrix (alias)": {
        "prefix": "bmatrix",
        "body": ["\\begin{bmatrix}","\t$1 & $2 \\\\\\\\","\t$3 & $4 \\\\\\\\$5","\\end{bmatrix} $0"]
    }

根据关键字,按给定格式填充,至于按tab切换$+数字位置的功能,不好做的话可以直接用空格占位置

xmu714 avatar May 17 '21 00:05 xmu714

@xmu714 我有空再看看,可以先尝试使用 第三方 工具实现,比如 alfred 的 snippets 扩展, https://zhuanlan.zhihu.com/p/33753656

zaaack avatar May 17 '21 02:05 zaaack

我是Linux和Windows用户,没得Alfred用,不过找到一个espanso,折腾了一番倒是不错,甚至触发关键词之后全局可替换,连快捷键都省了

xmu714 avatar May 19 '21 13:05 xmu714

同样求这个功能,是否有可能为这个插件开发snippets功能(或者能够通过某种办法调用vscode的snippets)?

可能很多人转到vscode来写markdown都是为了snippets吧。当然我在用hyper snips插件,看起来比内置的snippets更加强大,但是同样的在使用这个插件时不起作用😂

感谢!

yfzhao20 avatar Jul 27 '21 14:07 yfzhao20