问题标签 [vscode-snippets]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
904 浏览

regex - vscode 片段 - 转换和替换文件名

我的文件名是

一些花哨的ui.component.html

我想使用 vscode 片段将其转换为

SOME_FANCY_UI

所以基本上

  1. 将大写应用于每个字符
  2. 将所有 - 替换为 _
  3. 删除 .component.html

目前我有

'${TM_FILENAME/(. )(-)(. )/${1:/upcase}${2:/_}${3:/upcase}/g}'

这给了我这个

'设置-打印机-服务器-LIST.COMPONENT.HTML'

文档没有解释如何将替换与正则表达式组的转换结合使用。

0 投票
1 回答
577 浏览

visual-studio-code - 除了使用 TM_FILENAME_BASE 之外,还有没有办法修剪 TM_FILENAME?

我正在尝试为 redux 容器文件创建一个片段,该文件需要导入一些具有相同基本名称的反应文件。TM_FILENAME_BASE 非常适合从文件名中删除 .js,但在这种情况下,我的组件文件的扩展名是 fun-thing.component.js,并且容器将使用扩展名 fun-thing.container.js。

我用来在第一个时期之前选择所有内容的正则表达式是^([^.]+)

预期的

实际的

如您所见,它没有省略文件扩展名。

0 投票
3 回答
1046 浏览

regex - 如何使用正则表达式替换和片段将行填充到一定长度

// My Section -----------------------------------------------------------------

以上是想要的结果。


想象一下这个场景

可以使用例如这个 regex 将线条修剪到一定长度/(^.{20}).*$/$1/,这将给出

但是,如果我想在一次运行中将其他行填充到这样的设定长度怎么办?那可能吗?

  • 一个正则表达式仅用于正确填充,而不是修剪

很久以前,我在做一些正则表达式忍者挑战,我们应该做数学,所以....正则表达式很神奇。


我最终想要实现的是一个允许我编写的 VSCode 片段:My Section --
然后触发一个片段,将插入的文本转换为 80 个字符宽的注释,其中包含

https://code.visualstudio.com/docs/editor/userdefinedsnippets

0 投票
3 回答
105 浏览

regex - 我可以在 vscode 的代码段中排除积极的前瞻和后视吗?

我在排除 VSCode Snippet 中的部分字符串时遇到问题。本质上,我想要的是一条特定的路径,但我无法让正则表达式排除我需要排除的内容。

我最近问了一个关于类似问题的问题,您可以在这里找到:除了使用 TM_FILENAME_BASE 之外,有没有办法修剪 TM_FILENAME?

正如你所看到的,我主要被代码片段在 vscode 中的工作方式所困扰,而不是正则表达式本身

给定一个看起来像的文件路径abc/123/area/my-folder/state/...

预期的:

实际的:

0 投票
1 回答
54 浏览

visual-studio-code - 在 vscode 片段中编写几个正则表达式

我试图根据文件名构建 vscode 片段。例如:从first.actions.tsFirst = 42;通过const ${TM_FILENAME_BASE/(.*?).actions/${1:/capitalize}/g} = 42;.

但是,如果文件名是例如first-module.actions.ts我正在生成First-Module = 42;并且此代码包含语法错误。我想要const FirstModule = 42;

我正在寻找一些技巧来合并正则表达式以切割.actions和删除所有-标记。

0 投票
2 回答
947 浏览

visual-studio-code - 将自定义自动导入添加到 vscode

如果我autorun在代码中输入,vscode 建议我从 mobx 自动导入它:

在此处输入图像描述

我想为此定义一些自定义名称,例如,如果我_在代码中的某处键入,我希望 vscode 建议我导入lodash

或者如果类型PropTypes我希望 vscode 建议自动import PropTypes from 'prop-types'

这可能吗?

我还没有编写任何 vscode 扩展,但如果这是完成此功能所需要的,我可以尝试一下

在此先感谢您的帮助和指导!

0 投票
2 回答
274 浏览

visual-studio-code - 如何选择 TM_DIRECTORY 变量的一部分?

我想在 VScode 片段上选择 TM_DIRECTORY 变量的一部分。Tests\Setup我的意思是我想选择d:\Projects\Hakhsin\hakhsin\tests\Setupin code-snippet 文件。看这个:

我想得到这个结果:

但我得到了这个结果:

0 投票
1 回答
2452 浏览

visual-studio-code - vscode if/else 用户定义代码段中的条件

查看用户定义片段的vscode 文档,似乎使用正则表达式转换,您可以执行 if/else 条件。

但是,我似乎找不到任何这样的例子,而且我正在努力理解仅基于 BNF 的正确语法。

有人可以解释一下这个语法吗?

例如,

可以说我有一个这样的片段:

如果color==white,我想要十六进制输出#fff,否则如果是黑色#000

0 投票
1 回答
31 浏览

visual-studio-code - 对选定(突出显示)的字符串执行替换操作

在可视化代码中,假设我有一个字符串:

I need this feature urgently!

当我选择“紧急”文本并按 Cntrl + 1时,可视代码将更改所选字符串,如下所示:

I need this feature <span class="warn">urgently</span>!

可以在可视代码中使用吗?

0 投票
1 回答
197 浏览

visual-studio-code - 过滤 URL 和电子邮件的 VSCode 片段

下面的代码片段通过将 TeX 文件中的选定文本与剪贴板(希望是 URL)结合起来创建一个超链接,

有没有办法在执行片段时选择插入的剪贴板内容?此外,有没有办法检查剪贴板是否是有效的网络或电子邮件地址,然后才插入?

更新

这是使用正则表达式仅粘贴剪贴板内容的无效尝试,当它是 url 时。