gpt4 book ai didi

visual-studio-code - 是否有用于从选定代码或剪贴板代码创建新文件的 VS 代码快捷方式?

转载 作者:行者123 更新时间:2023-12-05 02:11:22 30 4
gpt4 key购买 nike

我处理大型 html 文件,我想将它们分成单独的文件。这样做的过程非常繁琐,因为它需要复制代码,创建一个新文件,将其粘贴到新文件中,然后选择一个文件夹和一个新名称来保存它。

是否有用于 VS Code 的内置快捷方式、宏或扩展来简化此操作?

最佳答案

请注意,由于这是一个 html 文件,因此新的重构 Move to a new file 不可用。它做你想做的事,并且可以用许多其他语言工作,但不能用 html。您可以通过选择要移动的文本并在上下文菜单中选择 Refactor.. 来访问它 - 如果支持,它甚至可以将导入语句添加到旧文件。


这是一个可以执行您想要的操作的宏。我正在使用宏扩展 multi-command但还有其他的。

在 settings.json 中:

 "multiCommand.commands": [

{
"command": "multiCommand.newFileWithContent",
"sequence": [

// choose which one you want
"editor.action.clipboardCutAction",
// "editor.action.clipboardCopyAction",

"workbench.action.files.newUntitledFile",
"editor.action.clipboardPasteAction",

// prompt for save immediately?
"workbench.action.files.saveAs",

]
},

然后通过命令选项板(搜索“multi”)或使用键绑定(bind) (keybindings.json) 触发它:

{
"key": "strl+alt+b", // your keybinding choice
"command": "extension.multiCommand.execute",
"args": { "command": "multiCommand.newFileWithContent" }
},

我不知道如何自动执行问题的“选择一个文件夹和一个新名称以将其保存在”部分。我认为您仍然需要手动执行此操作,但在“另存为”对话框中有一些方便的“智能感知”。


2020年更新

在我得出这个答案后,请参阅 in vscode how can I quickly generate a new file with datetime in the name?

我认为可能有更好的方法来处理通过任务创建文件并一次性提示输入文件夹和文件名。您在文件夹结构上丢失了 saveAs 智能感知,但无论如何了解它都是一项非常好的技术。而且不需要宏。在 bash shell 中:

{
"version": "2.0.0",
"tasks": [
{
"label": "newFile",

// assuming your folder name isn't static
"command": "echo '${selectedText}' > ${input:folderName}/${input:fileName}.html",
"type": "shell",
"problemMatcher": [],
"presentation": { // terminal handling which you may not care about and could delete
"echo": false,
"reveal": "silent",
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
},
"promptOnClose": false
}
],

"inputs": [
{
"type": "promptString",
"id": "folderName",
"description": "Complete my folder name.",
"default": "folder"
},
{
"type": "promptString",
"id": "fileName",
"description": "Complete my file name.",
"default": "new file name"
}
]
}

运行该任务的一些键绑定(bind)(或者只是从命令面板 Run Task 命令运行它):

{
"key": "alt+r", // whatever you choose
"command": "workbench.action.tasks.runTask",
"args": "newFile"
},

就是这样,选择您的任务,然后运行任务 Alt+R

selection to new file

关于visual-studio-code - 是否有用于从选定代码或剪贴板代码创建新文件的 VS 代码快捷方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57611402/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com