VS Code Hypersnips 扩展:数学上下文中定义的代码片段不适用于 rmarkdown (.Rmd) 文件

问题描述 投票:0回答:1

我尝试对 rmarkdown 文件使用 VS Code Hypersnips 扩展 (https://github.com/draivin/hsnips)。该扩展适用于 markdown 文件和乳胶文件,但由于某种原因我无法让它与 rmarkdown 一起正常工作。

例如,我首先在全局设置中定义以下数学上下文:

     function math(context) {
            return context.scopes.some(s => s.includes("math"));
        }

    // inline & block math

        function inline_math(context){
            return context.scopes.some(s => s.includes("math.inline"));
        }

        function block_math(context){
            return context.scopes.some(s => s.includes("math.block")) || context.scopes.some(s => s.includes("math.display"));
        }

但是,在这些数学上下文中定义的代码片段(例如以下内容)在键入触发器时不会激活:

context math(context)
snippet `(;;;|cdot)` "cdots" iA
``rv='\\cdots'``
endsnippet

context math(context)
snippet `par` "partial" iA
``rv="\\partial "``
endsnippet

相反,没有上下文定义的片段可以正确激活,例如:

snippet `\\dm` "display math" bA
$$
$1
$$
$0
endsnippet

我不明白为什么。我尝试将片段存储在指定目录中的 rmd.hsnips、Rmd.hsnips、rmarkdown.hsnips 和 Rmarkdown.hsnips 中,但上述问题仍然存在。

谢谢您的帮助。

r-markdown vscode-extensions code-snippets
1个回答
0
投票

我也遇到了类似的问题,请问你解决了吗?

© www.soinside.com 2019 - 2024. All rights reserved.