ODRMVURU4WGZNYNFTK4ZR6YVA4V4R6EL2OK3PJLYE2HJJEMNISSQC
VP6KWIRTMOLWYL66Z5KE2UBZ725EHUNGEKR3XVNLUIJV3HQNKFRQC
6ONRFFRGQKTVXAV3URSA2QGMZYSEZBJ7BVMGVWW5M55MY57WFMQQC
B4SKYP3Y5R7UPPGLLZV7OK3SIN4TRAJ3IL6FS3T7ZFZF5HTEQARQC
YUVLBWV3UDNQG63DMTQQOBBL4WMK2J7ODPIZ5337X5PDBZYFQO6AC
ZGMIJNFVDK7R6AF56FNCA23W5KV3HVBUBPTWMLQADCEPB3MOPELQC
H6KYVQ2QJCVDTFB35I4RDFC6OT6HTRTU45RQEQMONBFS2NITP4MAC
FAMBRMO7FCFPW46BVLV43QN6QXXLBWZZXFKPALRDFGVL2DRXWVFQC
6H4B4UJQ4PQULICKBZ5U55QU2BWIH2VNGRCUVYR7KDYOGC7MQU7QC
ILH3GIVTVMKSU5TH5ZZSPB3URX622JA2BNBOO6K7ZTF4ISYDTJLAC
NCBEWRYEEJMJO37SHY7XCNFZYWLT5HUHCKN47UGSEY3FFWFX6QFQC
* Implementation of the TextDocumentContentProvider, uses the `pijul reset <file> --dry-run` CLI command
* to get the last recorded version of the file at the given URI, which VS Code can open as a text document.
* @param uri The URI, with scheme 'pijul', which will be used to retrieve the last recorded version of the file
* @param token A cancellation token for stopping the asynchronous child process execution
*/
async provideTextDocumentContent (uri: Uri, token: CancellationToken): Promise<string> {
// return stdout, which is the last recorded version of the file
return (await this._pijul.exec(this.repositoryRoot, ['reset', uri.path, '--dry-run'], { cancellationToken: token })).stdout;
}
/**
}
}
/**
* Open a diff comparison between a file and its last recorded version
* @param resourceStates The resources to open
*/
@command('pijul.openDiff')
async openDiff (...resourceStates: SourceControlResourceState[]): Promise<void> {
for await (const resourceState of resourceStates) {
const pijulUri = resourceState.resourceUri.with({ scheme: 'pijul' });
await commands.executeCommand('vscode.diff', pijulUri, resourceState.resourceUri);