feature<VSCode>: supports to open repository with Visual Studio Code

This commit is contained in:
leo 2021-09-13 14:22:25 +08:00
parent 4a676e094d
commit 4456019968
8 changed files with 65 additions and 19 deletions

View file

@ -56,6 +56,9 @@ namespace SourceGit.Views.Widgets {
InitializeComponent();
InitPages();
var vscode = Models.ExecutableFinder.Find("code.cmd");
if (vscode != null) btnOpenWithVSCode.Visibility = Visibility.Visible;
var watcher = Models.Watcher.Get(repo.Path);
watcher.Navigate += NavigateTo;
watcher.BranchChanged += UpdateBranches;
@ -309,6 +312,21 @@ namespace SourceGit.Views.Widgets {
e.Handled = true;
}
private void OpenInVSCode(object sender, RoutedEventArgs e) {
var vscode = Models.ExecutableFinder.Find("code.cmd");
if (vscode == null) return;
vscode = Path.Combine(Path.GetDirectoryName(vscode), "..", "Code.exe");
Process.Start(new ProcessStartInfo {
WorkingDirectory = repo.Path,
FileName = vscode,
Arguments = $"\"{repo.Path}\"",
UseShellExecute = false,
});
e.Handled = true;
}
private void Terminal(object sender, RoutedEventArgs e) {
var bash = Path.Combine(Models.Preference.Instance.Git.Path, "..", "bash.exe");
if (!File.Exists(bash)) {