如何使用 VSCode API 打开文件和插入文本
Posted
技术标签:
【中文标题】如何使用 VSCode API 打开文件和插入文本【英文标题】:How to open file and insert text using the VSCode API 【发布时间】:2016-11-11 19:20:00 【问题描述】:如何在选项卡中打开一个新的只读文本文件并使用 Visual Studio Code API 在该文件中插入一些格式化文本?
我没有找到任何关于此添加简单文本的示例
以下是我打开一些无标题文件的代码。
var setting: vscode.Uri = vscode.Uri.parse("untitled:" + "C:\summary.txt");
vscode.workspace.openTextDocument(setting).then((a: vscode.TextDocument) =>
vscode.window.showTextDocument(a, 1, false);
, (error: any) =>
console.error(error);
debugger;
);
请给出可以添加到这些行以添加文本的简单示例。 因为官方的例子有点复杂。
【问题讨论】:
不要将Uri.parse
用于文件。使用Uri.file
。文件名/路径可能包含#
字符
【参考方案1】:
除了 DAXaholic 的回答,如果您想在活动编辑器中插入文本,可以使用vscode.window.activeTextEditor
。
function enterText(text: string)
const editor = vscode.window.activeTextEditor;
if (editor)
editor.edit(editBuilder =>
editBuilder.insert(editor.selection.active, text);
);
在我的示例中,文本被插入到当前光标位置。
【讨论】:
【参考方案2】:下面的内容应该会给你的想法
...
var setting: vscode.Uri = vscode.Uri.parse("untitled:" + "C:\summary.txt");
vscode.workspace.openTextDocument(setting).then((a: vscode.TextDocument) =>
vscode.window.showTextDocument(a, 1, false).then(e =>
e.edit(edit =>
edit.insert(new vscode.Position(0, 0), "Your advertisement here");
);
);
, (error: any) =>
console.error(error);
debugger;
);
...
【讨论】:
那么如何在活动文档中插入文本? @SaravanaKumar get editor usingconst e = vscode.window.activeTextEditor;
then you can use e.edit()
as in DAXaholic's answer
还有没有办法添加来自 API 的文本?以上是关于如何使用 VSCode API 打开文件和插入文本的主要内容,如果未能解决你的问题,请参考以下文章
vscode如何进行代码注释定制(koroFileHeader)