PowerShell / PowerShell/PowerShellEditorServices

Feature Request: Add ability to change the language through $psEditor

Offen
#1,539 2 Kommentare 4 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Area-API Issue-Enhancement
Vorherrschende Sprache
C#
Sterne
767
Forks
266
Ø Merge
3 T. 16 Std.
Gemergte PRs (30 T.)
1

Beschreibung

After some contemplation, I've realized there's no need to make a request to change/add to the PSES module, as I can just do it in my profile. However, what I would like to see is the ability to change the language (likely with a SetLanguage() method on one of the objects somewhere).

Would there be appetite for adding this in at some point? I understand the PowerShell team is busy on other areas of the codebase and I don't want to put forward a suggestion of anything that might set back that work or unnecessarily distract from it.

What I would like to see is the ability to run something like: $psEditor.GetEditorContext().CurrentFile.SetLanguage('markdown') and have the current file's language mode set to markdown.

Original request here for posterity:

I'm not entirely sure the best place for this, I found this when working on some things in vscode, but the underlying behaviour is in the PSES module, but also some of it depends on vscode... So I'll start it over here and it can be moved if needed.

I was doing some stuff in vscode, and I found myself with the need to take the output of my function Get-IntuneDetectionScript and output it into a new editor window. I found that I could do this with Out-CurrentFile -AsNewFile, however this output as a herestring. Thinking about this, I believe the reason is that typically when outputting to the current file this behaviour makes sense. However, in my opinion when outputting to a new file this doesn't make sense.

Based on my use case, I'd like to make two feature requests:

  1. Add a Out-NewFile function that does what Out-CurrentFile -AsNewFile currently does, only it doesn't do the herestring.
  2. Assuming it's not too much work: add a -Language parameter to Out-NewFile that takes in the language for the new file and sets it.
  • This is the part I'm not sure on complexity-wise. Setting the language in typescript is a minor adjustment

With these suggestions you could do things like:

Get-IntuneDetectionScript "Whatever App" | Out-NewFile -Language powershell
Get-IntuneAppDescription "Whatever App" | Out-NewFile -Language markdown

I've got a branch that includes the first feature request over here: https://github.com/corbob/PowerShellEditorServices/tree/out-newfile (To see the changes, they're all (currently) encapsulated in a single commit: https://github.com/corbob/PowerShellEditorServices/commit/3c33c968a03348f8678a3d45b1841250710ea055)

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, den Einstiegspunkt $psEditor.GetEditorContext().CurrentFile und das bestehende Verhalten von Out-CurrentFile -AsNewFile nachzuverfolgen. Es werden keine Implementierungsdateien oder Tests genannt; als abgeschlossen würde dies eine Einigung auf die API, die Implementierung von Sprachänderungen für die aktuelle Datei und die Validierung der angeforderten PowerShell- und Markdown-Beispiele erfordern.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
csharp, typescript, vscode
Bereich
developer-experience, tooling
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.