我希望 VSCode 具有以下功能,但不知道是否可行。例如,如果我有这一行:
I would like to emphasize this.
Run Code Online (Sandbox Code Playgroud)
我只需选择this并单击类似的快捷方式ctrl+i,然后就会出现以下内容:
I would like to emphasize {i}this{/i}.
Run Code Online (Sandbox Code Playgroud)
我在我的项目中使用了很多{i}和{/i}标签,因此这将帮助我节省大量时间!
我知道当你选择一个单词并点击时 VSCode 已经做了类似的事情"
我在 VS Code 中有一个代码片段,看起来像这样
"JS arrow function": {
"scope": "javascript, typescript",
"prefix": "af",
"body": [
"const ${1:name} = (${2:props}) => {",
" $3",
"}"
],
"description": "Create arrow function"
}
Run Code Online (Sandbox Code Playgroud)
我想要在制表位tabulation之前有$3,但 VS Code 显示错误:
字符串中的无效字符。控制字符必须进行转义。
同时放在4 spaces前面$3工作得很好,但我需要tabulation我的 eslint 配置。
有办法放在tabulation那里吗?
javascript code-snippets eslint visual-studio-code vscode-snippets
我已经尝试解决这个问题好几个星期了,但我最终放弃了并决定寻求帮助。
我为我的 Web 项目编写了很多代码片段(HTML、PHP、JS、VUE、Laravel Blade 等),并且创建了几个全局 .code-snippet 文件,它们出现在我在 VSCode 中打开的每个项目或文件中,这这不是一个理想的行为,我会向你解释原因。
当我打开 C++ 项目时,我不希望编辑器提示我 HTML 内容或 Bootstrap 图标,我制作了特定的 C++ 脚本(并向 C++ 语言模式添加了 .h 扩展名,否则它们只能处理带有 .cpp 扩展名的文件) ,不幸的是我不能用我之前提到的语言做同样的事情,因为它们确实是不同的语言。
在我的\AppData\Roaming\Code\User\snippets文件夹中,我可以看到有两种类型的文件,我的自定义片段具有 .code-snippets 扩展名,特定于语言的片段具有 .json 扩展名(示例cpp.json),语法是相同的。
我可以为每个文件扩展名创建一个副本,并将其与我需要的每种语言配对(custom.code-snippets例如html.json,,,等),但这对我来说看起来非常愚蠢,因为如果我想添加一个片段,我必须将其添加到每个手动归档。php.jsonblade.json
先感谢您,
我在 vscode 工作,最近开始了解 snippets。我使用代码片段生成器网站来执行此操作。但我面临的问题是在代码中插入代码片段后,光标实际上设置在代码片段的最后。但我希望它应该将光标保持在某个位置或选择应该在代码片段中更改的变量。是否可以?如果是,我可以知道该怎么做吗?
这是一个有趣的谜题.
我下载了Snippet Compiler来尝试一些东西,并想编写以下代码:
using System;
using System.Collections.Generic;
public class MyClass
{
public static void RunSnippet()
{
HashSet<int> h = new HashSet<int>();
}
}
Run Code Online (Sandbox Code Playgroud)
但是上面的代码没有编译.我明白了:
"无法找到类型或命名空间名称'HashSet'(您是否缺少using指令或程序集引用?)"
显然,我不是.它似乎找不到HashSet,但它在Systems.Collections.Generic命名空间中找到其他类型(例如List,SortedDictionary).
对此有何解释?假设Snippet Compiler正在使用标准的Framework编译器......
我很想知道为什么这不起作用.
我正在寻找使用会话(用户登录,经过身份验证的表单和页面)的基本内容,我只是想知道什么是最好的包装器/帮助器类来执行此操作.
如果你有一个你已经写过或者非常喜欢的,你想与一些片段分享,我会非常感激.
任何人都可以建议使用.NET的MongoDB的一些基本操作和连接代码片段?如果他们也使用C#会很棒.
使用Visual Studio控制台应用程序时,我经常使用以下代码行:
Console.WriteLine("press [enter] to exit");
Run Code Online (Sandbox Code Playgroud)
有没有办法在Visual Studio中设置快捷键,这样我每次都不需要输入它?
由于某种原因我可能会经常使用其他代码行,因此快捷功能将是有益的.
有没有办法在下面这个↓↓↓可以作为一个片段插入?
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>
</head>
<body>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我尝试使用首选项 - >键绑定 - 用户,但引号确实很重要.
https://code.visualstudio.com/docs/editor/userdefinedsnippets#_placeholdertransform
我的目的是在要插入的代码段的上下文中自动设置类名称。VSCode本身不支持类名或方法名,但支持文件名。
我的文件名非常类似于类名:
foo-bar.ts为class FooBar。
这是我当前的代码片段,其中我可以转换"foo-bar"为"Foo-bar"使用VSCode提供的本机“大写”语法。
TM_FILENAME_BASE是一个原生变量,提取不带扩展名的文件名:
"My Snippet": {
"scope": "typescript",
"prefix": "snippet",
"body": [
"${1}() {",
"\treturn this.get(${TM_FILENAME_BASE/(.*)/${1:/capitalize}/}.FIELD.${3});",
"}",
"",
"$0"
],
"description": "Creates a function wrapper for a model's attribute."
}
Run Code Online (Sandbox Code Playgroud)
我想将“ foo-bar”转换为“ FooBar”。
code-snippets ×10
.net ×3
c# ×3
.net-3.5 ×1
class ×1
eslint ×1
generator ×1
javascript ×1
mongodb ×1
php ×1
scope ×1
session ×1
sublimetext ×1
text-cursor ×1