8

VS Code で、新しいエディター (同じウィンドウ) で新しいドキュメントを作成したいのですが、保存しないでおく必要があります。このドキュメントが保存されていない状態のときに、プログラムでコンテンツを設定する方法が見つかりません。

私は使用しました: commands.executeCommand("workbench.action.files.newUntitledFile") が、ファイルにコンテンツを追加する方法がないようです。

新しい一時ファイルを作成して開くと、workspace.openTextDocument(path) ファイルは既に保存されています。

何かご意見は?

4

4 に答える 4

11

openTextDocumentドキュメントで を使用してuntitled、指定されたパスに保存されていないファイルを作成してから、 を使用WorkspaceEditしてテキストを追加してみてください。

import * as vscode from 'vscode';
import * as path from 'path';

const newFile = vscode.Uri.parse('untitled:' + path.join(vscode.workspace.rootPath, 'safsa.txt'));
vscode.workspace.openTextDocument(newFile).then(document => {
    const edit = new vscode.WorkspaceEdit();
    edit.insert(newFile, new vscode.Position(0, 0), "Hello world!");
    return vscode.workspace.applyEdit(edit).then(success => {
        if (success) {
            vscode.window.showTextDocument(document);
        } else {
            vscode.window.showInformationMessage('Error!');
        }
    });
});

新しいファイルは、最初に開いたときに保存されませんが、ユーザーが保存すると、指定されたパスに保存されます。

それが良い出発点になることを願っています。

于 2016-12-09T22:14:05.257 に答える