GNQD74OZ56J2R23GVUGFP3G5KVML2KDZ4OUZK6SVLSM7HVO2WOCAC
WCQM6IOKVTDHAVVFMQKGILO4TMKC5L636AR2Q7IT5UXUHUI7XG5AC
L3VOQYAF3HCAFWJ7QFULL54WUZ35B4K3MWU5YDRW7R4VTXSDWJUQC
ODRMVURU4WGZNYNFTK4ZR6YVA4V4R6EL2OK3PJLYE2HJJEMNISSQC
OXW4KMVURSBSSHOFK4DADOGVBRCURJ6EFFU6BBZE6IQC7BUBR5IQC
B4SKYP3Y5R7UPPGLLZV7OK3SIN4TRAJ3IL6FS3T7ZFZF5HTEQARQC
ZGMIJNFVDK7R6AF56FNCA23W5KV3HVBUBPTWMLQADCEPB3MOPELQC
YUVLBWV3UDNQG63DMTQQOBBL4WMK2J7ODPIZ5337X5PDBZYFQO6AC
L44OILGKTGXSLQ3A4UQH44AMJXAVZSFISAB6ICHCDB6D42NKUWBQC
ILH3GIVTVMKSU5TH5ZZSPB3URX622JA2BNBOO6K7ZTF4ISYDTJLAC
6H4B4UJQ4PQULICKBZ5U55QU2BWIH2VNGRCUVYR7KDYOGC7MQU7QC
NCBEWRYEEJMJO37SHY7XCNFZYWLT5HUHCKN47UGSEY3FFWFX6QFQC
collapsibleState: TreeItemCollapsibleState.None
collapsibleState: TreeItemCollapsibleState.None,
contextValue: 'pijulChange',
resourceUri: resourceUri,
command: {
command: 'vscode.open',
title: 'Open Change TOML',
arguments: [resourceUri]
}
* 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
* Implementation of the TextDocumentContentProvider. Depending on the scheme of the given URI, either returns
* a the last recorded version of a file using `pijul reset` or the stdout of the `pijul change` command.
* @param uri The URI, with scheme 'pijul' or 'pijul-change', which will be used to determine which text document should be returned.
// 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;
if (uri.scheme === 'pijul-change') {
return (await this._pijul.exec(this.repositoryRoot, ['change', uri.path], { cancellationToken: token })).stdout;
} else {
// return stdout of a pijul reset dry run, which is the last recorded version of the file
return (await this._pijul.exec(this.repositoryRoot, ['reset', uri.path, '--dry-run'], { cancellationToken: token })).stdout;
}
* Opens the output of `pijul change` for a given change
* @param resourceStates The resources to open
*/
@command('pijul.openChange')
async openChange (change: PijulChange): Promise<void> {
const changeUri = Uri.parse('pijul-change:' + change.hash);
console.log(changeUri);
await commands.executeCommand('vscode.open', changeUri);
}
/**