Udostępnij za pośrednictwem


Korzystanie z programu Visual Studio Code na potrzeby programowania w programie PowerShell

program Visual Studio Code (VS Code) to wieloplatformowy edytor skryptów firmy Microsoft. Wraz z rozszerzeniem programu PowerShellzapewnia zaawansowane i interaktywne środowisko edytowania skryptów, co ułatwia pisanie niezawodnych skryptów programu PowerShell. Program Visual Studio Code z rozszerzeniem programu PowerShell jest zalecanym edytorem do pisania skryptów programu PowerShell.

Obsługuje następujące wersje programu PowerShell:

  • Program PowerShell w wersji 7.2 lub nowszej (Windows, macOS i Linux)
  • Windows PowerShell 5.1 (tylko system Windows) z programem .NET Framework 4.8

Notatka

Program Visual Studio Code nie jest taki sam jak program Visual Studio.

Wprowadzenie

Przed rozpoczęciem upewnij się, że program PowerShell istnieje w systemie. W przypadku nowoczesnych obciążeń w systemach Windows, macOS i Linux zobacz następujące linki:

W przypadku tradycyjnych obciążeń programu Windows PowerShell zobacz Instalowanie programu Windows PowerShell.

Ważny

Windows PowerShell ISE jest nadal dostępny dla systemu operacyjnego Windows. Jednak nie jest już w aktywnym rozwoju funkcjonalności. Program ISE działa tylko z programem PowerShell 5.1 lub starszym. Jako składnik systemu Windows nadal jest on oficjalnie obsługiwany w przypadku poprawek dotyczących zabezpieczeń i o wysokim priorytecie. Nie planujemy usunięcia środowiska ISE z systemu Windows.

Instalowanie programu VS Code i rozszerzenia programu PowerShell

  1. Zainstaluj program Visual Studio Code. Aby uzyskać więcej informacji, zobacz omówienie Konfigurowanie programu Visual Studio Code.

    Istnieją instrukcje instalacji dla każdej platformy:

  2. Zainstaluj rozszerzenie programu PowerShell.

    1. Uruchom aplikację VS Code, wpisując code w konsoli lub code-insiders, jeśli zainstalowałeś Visual Studio Code Insiders.
    2. Uruchom Quick Open w systemie Windows lub Linux, naciskając Ctrl+P. W systemie macOS naciśnij Cmd+P.
    3. W obszarze Szybkie otwieranie wpisz ext install powershell i naciśnij Enter.
    4. Widok rozszerzenia otwiera się na pasku bocznym. Wybierz rozszerzenie programu PowerShell od firmy Microsoft.
    5. Kliknij przycisk Zainstaluj w rozszerzeniu programu PowerShell firmy Microsoft.
    6. Jeśli po instalacji przycisk Zainstaluj zmieni się na Załaduj ponownie, kliknij przycisk Załaduj ponownie.
    7. Po ponownym załadowaniu programu VS Code możesz przystąpić do edycji.

Aby na przykład utworzyć nowy plik, kliknij pozycję Plik > Nowy. Aby go zapisać, kliknij przycisk Plik > Zapisz, a następnie podaj nazwę pliku, taką jak HelloWorld.ps1. Aby zamknąć plik, kliknij X obok nazwy pliku. Aby zamknąć program VS Code, Plik > Zakończ.

Instalowanie rozszerzenia programu PowerShell w systemach z ograniczeniami

Niektóre systemy są skonfigurowane tak, aby wymagały weryfikacji wszystkich podpisów kodu. Może zostać wyświetlony następujący błąd:

Language server startup failed.

Ten problem może wystąpić, gdy zasady wykonywania programu PowerShell są ustawiane przez zasady grupy systemu Windows. Aby ręcznie zatwierdzić usługi Edytora programu PowerShell i rozszerzenie programu PowerShell dla programu VS Code, otwórz wiersz polecenia programu PowerShell i uruchom następujące polecenie:

Import-Module $HOME\.vscode\extensions\ms-vscode.powershell*\modules\PowerShellEditorServices\PowerShellEditorServices.psd1

Zostanie wyświetlony monit o Czy chcesz uruchomić oprogramowanie od tego niezaufanego wydawcy? wpisz A, aby uruchomić plik. Następnie otwórz program VS Code i sprawdź, czy rozszerzenie programu PowerShell działa prawidłowo. Jeśli nadal masz problemy z rozpoczęciem pracy, daj nam znać w problemie z usługą GitHub.

Wybieranie wersji programu PowerShell do użycia z rozszerzeniem

W przypadku instalowania programu PowerShell obok programu Windows PowerShell można teraz używać konkretnej wersji programu PowerShell z rozszerzeniem programu PowerShell. Ta funkcja analizuje kilka dobrze znanych ścieżek w różnych systemach operacyjnych w celu odnajdywania instalacji programu PowerShell.

Aby wybrać wersję, wykonaj następujące kroki:

  1. Otwórz paletę poleceń w systemie Windows lub Linux za pomocą Ctrl+Shift+P. W systemie macOS użyj cmd+Shift+P.
  2. Wyszukaj sesji.
  3. Kliknij PowerShell: Pokaż menu sesji.
  4. Wybierz wersję programu PowerShell, której chcesz użyć z listy.

Jeśli program PowerShell został zainstalowany w lokalizacji innej niż typowa, może nie być początkowo wyświetlany w menu sesji. Menu sesji można rozszerzyć, dodając własne ścieżki niestandardowe zgodnie z poniższym opisem.

Dostęp do menu sesji programu PowerShell można również uzyskać z poziomu ikony {} w prawym dolnym rogu paska stanu. Umieszczenie wskaźnika myszy na ikonie lub wybranie tej ikony powoduje wyświetlenie skrótu do menu sesji i małej ikony pinezki. Jeśli wybierzesz ikonę pinezki, numer wersji zostanie dodany na pasku stanu. Numer wersji jest skrótem do menu sesji wymagającego mniejszej liczby kliknięć.

Notatka

Przypinanie numeru wersji replikuje zachowanie rozszerzenia w wersjach programu VS Code przed 1.65. Wersja 1.65 programu VS Code zmieniła interfejsy API używane przez rozszerzenie programu PowerShell i ustandaryzowała pasek stanu rozszerzeń języka.

Ustawienia konfiguracji programu Visual Studio Code

Po pierwsze, jeśli nie znasz sposobu zmiany ustawień w programie VS Code, zalecamy przeczytanie dokumentacji ustawień programu Visual Studio Code.

Po przeczytaniu dokumentacji możesz dodać ustawienia konfiguracji w settings.json.

{
    "editor.renderWhitespace": "all",
    "editor.renderControlCharacters": true,
    "files.trimTrailingWhitespace": true,
    "files.encoding": "utf8bom",
    "files.autoGuessEncoding": true
}

Jeśli nie chcesz, aby te ustawienia wpływały na wszystkie typy plików, program VS Code zezwala również na konfiguracje poszczególnych języków. Utwórz ustawienie specyficzne dla języka, umieszczając ustawienia w polu [<language-name>]. Na przykład:

{
    "[powershell]": {
        "files.encoding": "utf8bom",
        "files.autoGuessEncoding": true
    }
}

Napiwek

Aby uzyskać więcej informacji na temat kodowania plików w programie VS Code, zobacz Understanding file encoding. Zapoznaj się również z Jak replikować środowisko ISE w programie VS Code, aby uzyskać inne wskazówki dotyczące konfigurowania programu VS Code na potrzeby edytowania programu PowerShell.

Dodawanie własnych ścieżek programu PowerShell do menu sesji

Do menu sesji można dodać inne ścieżki wykonywalne programu PowerShell za pomocą ustawienia programu Visual Studio Code: powershell.powerShellAdditionalExePaths.

Można to zrobić przy użyciu graficznego interfejsu użytkownika:

  1. W palecie poleceń wyszukaj i wybierz pozycję Otwórz ustawienia użytkownika. Możesz też użyć skrótu klawiaturowego w systemie Windows lub Linux Ctrl+,. W systemie macOS użyj Cmd+,.
  2. W edytorze ustawień wyszukaj dodatkowe ścieżki exe programu PowerShell.
  3. Kliknij pozycję Dodaj element.
  4. W przypadku klucza (w obszarze elementu ) podaj wybraną nazwę dla tej dodatkowej instalacji programu PowerShell.
  5. W przypadku wartości (w obszarze Wartość) podaj ścieżkę bezwzględną do samego pliku wykonywalnego.

Możesz dodać dowolną liczbę dodatkowych ścieżek. Dodane elementy są wyświetlane w menu sesji z podanym kluczem jako nazwą.

Alternatywnie można dodać pary klucz-wartość do obiektu powershell.powerShellAdditionalExePaths w settings.json:

{
    "powershell.powerShellAdditionalExePaths": {
        "Downloaded PowerShell": "C:/Users/username/Downloads/PowerShell/pwsh.exe",
        "Built PowerShell": "C:/Users/username/src/PowerShell/src/powershell-win-core/bin/Debug/net6.0/win7-x64/publish/pwsh.exe"
    },
}

Notatka

Przed wersją 2022.5.0 rozszerzenia to ustawienie było listą obiektów z wymaganymi kluczami exePath i versionName. Wprowadzono zmianę łamiącą zgodność dla obsługi konfiguracji poprzez graficzny interfejs użytkownika. Jeśli to ustawienie zostało wcześniej skonfigurowane, przekonwertuj go na nowy format. Wartość podana dla versionName to teraz klucz, a wartość podana dla exePath to teraz wartość. Można to zrobić łatwiej, resetując wartość i używając interfejsu Ustawienia.

Aby ustawić domyślną wersję programu PowerShell, ustaw wartość powershell.powerShellDefaultVersion na tekst wyświetlany w menu sesji (tekst używany dla klucza):

{
    "powershell.powerShellAdditionalExePaths": {
        "Downloaded PowerShell": "C:/Users/username/Downloads/PowerShell/pwsh.exe",
    },
    "powershell.powerShellDefaultVersion": "Downloaded PowerShell",
}

Po skonfigurowaniu tego ustawienia uruchom ponownie program VS Code lub ponownie załaduj bieżące okno programu VS Code z palety poleceń, wpisz Developer: Reload Window.

Jeśli otworzysz menu sesji, zobaczysz teraz dodatkowe instalacje programu PowerShell.

Napiwek

Jeśli tworzysz program PowerShell ze źródła, jest to doskonały sposób na przetestowanie lokalnej kompilacji programu PowerShell.

Debugowanie za pomocą programu Visual Studio Code

Debugowanie bez obszaru roboczego

W programie VS Code w wersji 1.9 (lub nowszej) można debugować skrypty programu PowerShell bez otwierania folderu zawierającego skrypt programu PowerShell.

  1. Otwórz plik skryptu programu PowerShell za pomocą Plik > Otwórz plik...
  2. Ustawianie punktu przerwania — wybierz linię, a następnie naciśnij F9
  3. Naciśnij F5, aby rozpocząć debugowanie

Powinno zostać wyświetlone okienko Akcje debugowania, które umożliwia przerwanie w debuggerze, przechodzenie, wznawianie i zatrzymywanie debugowania.

Debugowanie obszaru roboczego

Debugowanie obszaru roboczego odnosi się do debugowania w kontekście folderu, który otwierasz z menu Plik przy użyciu Otwórz folder.... Otwierany folder jest zazwyczaj folderem projektu programu PowerShell lub katalogiem głównym repozytorium Git. Debugowanie obszaru roboczego umożliwia zdefiniowanie wielu konfiguracji debugowania innych niż tylko debugowanie aktualnie otwartego pliku.

Wykonaj następujące kroki, aby utworzyć plik konfiguracji debugowania:

  1. Otwórz widok debugowania w systemie Windows lub Linux, naciskając Ctrl+Shift+D. W systemie macOS naciśnij Cmd+Shift+D.

  2. Kliknij link utwórz plik launch.json.

  3. Z monitu Wybierz środowisko wybierz pozycję PowerShell.

  4. Wybierz typ debugowania, którego chcesz użyć:

    • Uruchom bieżący plik — uruchom i debuguj plik w aktualnie aktywnym oknie edytora
    • Uruchomienie skryptu — uruchamianie i debugowanie określonego pliku lub polecenia
    • Sesja interakcyjna — polecenia debugowania wykonywane z poziomu konsoli zintegrowanej
    • Dołącz — dołącz debugera do uruchomionego procesu hosta programu PowerShell

Program VS Code tworzy katalog i plik .vscode\launch.json w folderze głównym obszaru roboczego w celu przechowywania konfiguracji debugowania. Jeśli pliki znajdują się w repozytorium Git, zazwyczaj chcesz zatwierdzić plik launch.json. Zawartość pliku launch.json to:

{
  "version": "0.2.0",
  "configurations": [
      {
          "type": "PowerShell",
          "request": "launch",
          "name": "PowerShell Launch (current file)",
          "script": "${file}",
          "args": [],
          "cwd": "${file}"
      },
      {
          "type": "PowerShell",
          "request": "attach",
          "name": "PowerShell Attach to Host Process",
          "processId": "${command.PickPSHostProcess}",
          "runspaceId": 1
      },
      {
          "type": "PowerShell",
          "request": "launch",
          "name": "PowerShell Interactive Session",
          "cwd": "${workspaceRoot}"
      }
  ]
}

Ten plik reprezentuje typowe scenariusze debugowania. Po otwarciu tego pliku w edytorze zostanie wyświetlony przycisk Dodaj konfigurację.... Możesz kliknąć ten przycisk, aby dodać więcej konfiguracji debugowania programu PowerShell. Jedną z przydatnych konfiguracji do dodania jest PowerShell: Uruchom skrypt. Za pomocą tej konfiguracji można określić plik zawierający opcjonalne argumenty, które są używane za każdym razem, gdy naciskasz F5 bez względu na to, który plik jest aktywny w edytorze.

Po ustanowieniu konfiguracji debugowania możesz wybrać konfigurację, której chcesz użyć podczas sesji debugowania. Wybierz konfigurację z listy rozwijanej konfiguracja debugowania na pasku narzędzi Debuguj widok.

Rozwiązywanie problemów z rozszerzeniem programu PowerShell

Jeśli wystąpią problemy z tworzeniem skryptów programu VS Code w programie PowerShell, zapoznaj się z przewodnikiem rozwiązywania problemów w witrynie GitHub.

Przydatne zasoby

Istnieje kilka filmów wideo i wpisów w blogu, które mogą być przydatne, aby rozpocząć korzystanie z rozszerzenia programu PowerShell dla programu VS Code:

Nagrania wideo

Wpisy w blogu

Kod źródłowy projektu rozszerzenia programu PowerShell

Kod źródłowy rozszerzenia programu PowerShell można znaleźć w witrynie GitHub.

Jeśli interesuje Cię współtworzenie, pull requesty są mile widziane. Postępuj zgodnie z dokumentacją dewelopera w witrynie GitHub, aby rozpocząć pracę.