PowerShell / PowerShell/PowerShellEditorServices

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

オープン
#1,539 コメント 2 件 リアクション 4 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

Area-API Issue-Enhancement
主要言語
C#
スター
767
フォーク
266
平均マージ
3日 16時間
マージ済み PR(30日)
1

説明

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)

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず、エントリポイント $psEditor.GetEditorContext().CurrentFile と既存の Out-CurrentFile -AsNewFile の動作を追跡します。実装ファイルやテストは指定されていません。完了するには、API について合意し、現在のファイルに対する言語変更を実装し、要求された PowerShell と Markdown の例を検証する必要があります。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
csharp, typescript, vscode
領域
developer-experience, tooling
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。