1
1
mirror of https://github.com/kahole/edamagit.git synced 2024-10-26 09:00:54 +03:00
This commit is contained in:
kahole 2019-12-03 22:26:53 +01:00
parent eb6b23948f
commit 564d0b73a0
6 changed files with 33 additions and 5 deletions

View File

@ -1,5 +1,7 @@
# magit README
Inspired/port by/of Magit https://magit.vc/
This is the README for your extension "magit". After writing up a brief description, we recommend including the following sections.
## Features

View File

@ -0,0 +1,11 @@
import { MagitStatus } from "../model/magitStatus";
export async function magitStatus() : Promise<MagitStatus> {
return {
head: "",
untrackedFiles: [],
unstagedChanges: [],
stashes: [],
recentCommits: []
};
}

View File

@ -1,8 +1,8 @@
import * as vscode from 'vscode';
import StatusDocument from './statusDocument';
import StatusDocument from './documents/statusDocument';
import { Repository } from './typings/git';
export default class Provider implements vscode.TextDocumentContentProvider {
export default class ContentProvider implements vscode.TextDocumentContentProvider {
static scheme = 'magit';
@ -71,7 +71,7 @@ let seq = 0;
export function encodeLocation(uri: string): vscode.Uri {
const query = uri;
return vscode.Uri.parse(`${Provider.scheme}:status.magit?${query}#${seq++}`);
return vscode.Uri.parse(`${ContentProvider.scheme}:status.magit?${query}#${seq++}`);
}
export function decodeLocation(uri: vscode.Uri): [vscode.Uri, vscode.Position] {

View File

@ -1,5 +1,5 @@
import * as vscode from 'vscode';
import { Repository } from './typings/git';
import { Repository } from '../typings/git';
export default class StatusDocument {
@ -18,6 +18,11 @@ export default class StatusDocument {
// Start with printing a header and start resolving
this._lines = [];
repository.getCommit(repository.state.HEAD!.commit!)
.then(c => {
console.log(c.message);
});
this._lines.push(`Head: ${repository.state.HEAD!.name} ${repository.state.HEAD!.commit!}`);
this._lines.push('');
this._lines.push(`Unstaged changes (${repository.state.workingTreeChanges.length})`);

View File

@ -1,7 +1,7 @@
// The module 'vscode' contains the VS Code extensibility API
// Import the module and reference it with the alias vscode in your code below
import { workspace, languages, window, extensions, commands, ExtensionContext, Disposable, ViewColumn, FileChangeType } from 'vscode';
import ContentProvider, { encodeLocation } from './provider';
import ContentProvider, { encodeLocation } from './contentProvider';
import { API as GitAPI, GitExtension, APIState, Status } from './typings/git';

10
src/model/magitStatus.ts Normal file
View File

@ -0,0 +1,10 @@
export interface MagitStatus {
head: string;
merge?: string;
push?: string;
untrackedFiles: string[];
unstagedChanges: string[];
stashes: string[];
recentCommits: string[];
}