Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fragment extension doc inadequately describes profile UUID generation #10374

Closed
jeremyd2019 opened this issue Jun 9, 2021 · 6 comments
Closed
Labels
Area-Settings Issues related to settings and customizability, for console or terminal Issue-Docs It's a documentation issue that really should be on MicrosoftDocs/Console-Docs Priority-1 A description (P1) Product-Terminal The new Windows Terminal. Resolution-Fix-Committed Fix is checked in, but it might be 3-4 weeks until a release.
Milestone

Comments

@jeremyd2019
Copy link

In https://docs.microsoft.com/en-us/windows/terminal/json-fragment-extensions#how-to-determine-the-guid-of-an-existing-profile, it says:

To determine the GUID of the profile to be updated, use a Version 5 UUID generator with the following namespace GUID and name:

  • The namespace GUID: {2BDE4A90-D05F-401C-9492-E40884EAD1D8}
  • The name of the profile to be updated

As a sanity check, a profile called 'Ubuntu' will get the generated GUID: {2C4DE342-38B7-51CF-B940-2309A097F518}

If you go online and search for "version 5 UUID generator", you will find several webpages. None of these result in the {2C4DE342... UUID for "Ubuntu".

More research revealed #870 which says:

Canonical Form: Name of profile encoded in BOM-less UTF-8 BOM-less UTF-16LE

That's an apparently important piece of information that was missing from the fragment doc. OK, so we'll probably need some custom code after all

import uuid
uuid.uuid5(uuid.UUID("{2BDE4A90-D05F-401C-9492-E40884EAD1D8}"), "Ubuntu".encode("UTF-16LE"))

This works for python2 (but who uses that anymore?), but on python3 this gives

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python38\lib\uuid.py", line 787, in uuid5
    hash = sha1(namespace.bytes + bytes(name, "utf-8")).digest()
TypeError: encoding without a string argument

It seems that even Python hard-codes the fact that the name should be utf-8 encoded! Let's try a hack

import uuid
uuid.uuid5(uuid.UUID("{2BDE4A90-D05F-401C-9492-E40884EAD1D8}"), "Ubuntu".encode("UTF-16LE").decode("ASCII"))

That gives the expected answer.

So, to summarize, it seems like that doc should make it more clear that something unusual is going on in the UUID generation, rather than saying "just grab your nearest v5 UUID generator and plug these strings in".

@jeremyd2019 jeremyd2019 added the Issue-Docs It's a documentation issue that really should be on MicrosoftDocs/Console-Docs label Jun 9, 2021
@ghost ghost added Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting Needs-Tag-Fix Doesn't match tag requirements labels Jun 9, 2021
@skyline75489
Copy link
Collaborator

CC @PankajBhojwani.

@DHowett
Copy link
Member

DHowett commented Jun 9, 2021

Thanks for this. We'll make sure the docs get updated.

One note:

something unusual

I'm surprised by this characterization, but not offended. When I implemented the generator, I read this part of RFC4122 (excerpted below) to suggest that as the namespace owner we could define the layout of bytes inside it.

o  Convert the name to a canonical sequence of octets (as defined by
   the standards or conventions of its name space); 

I'm surprised Python specifies that the name is a string, actually. It precludes RFC4122 compliance! ☹️

@DHowett
Copy link
Member

DHowett commented Jun 9, 2021

UGH. Our documentation here is not correct¹.

The namespace GUID is actually based on the name of the folder/fragment name you're using, and it will be used to automatically generate a GUID if you haven't specified one.

Okay -- we can't change this because now we'll break compatibility with all user customizations on top of Fragments (grrr).

Here is the code that will generate the same GUID as Git Bash is already getting. You'll want to use this guid specifically, because doing anything else will separate the user's settings from your upstream document.

import uuid

# CALCULATE NAMESPACE BASED ON FRAGMENT FOLDER NAME
u = uuid.uuid5(uuid.UUID("{f65ddb7e-706b-4499-8a50-40313caf510a}"), "Git".encode("UTF-16LE").decode("ASCII"))

# CALCULATE FINAL BASED ON NAMESPACE
uuid.uuid5(u, "Git Bash".encode("UTF-16LE").decode("ASCII"))

# For Git/Git Bash: UUID('2ece5bfe-50ed-5f3a-ab87-5cd4baafed2b')

¹ The namespace GUID it provides is actually for the internal "Windows.Terminal.Wsl" namespace... which due to legacy reasons doesn't follow the same rules. It was authored in v0.5, and we didn't want to break user customizations back then either. 😬

@jeremyd2019
Copy link
Author

One note:

something unusual

I'm surprised by this characterization, but not offended. When I implemented the generator, I read this part of RFC4122 (excerpted below) to suggest that as the namespace owner we could define the layout of bytes inside it.
...

Yes, I chose that wording carefully. It's not "wrong" per the spec, but basically every generator I found seemed to not allow specifying the encoding, so it's apparently "unusual" to use something other than UTF-8.

I'm surprised Python specifies that the name is a string, actually. It precludes RFC4122 compliance! ☹️

Me too.

@Okeanos
Copy link

Okeanos commented Jun 10, 2021

This looks very much like the issue I was having with the documentation a while ago.

@zadjii-msft zadjii-msft added Area-Settings Issues related to settings and customizability, for console or terminal Product-Terminal The new Windows Terminal. labels Jul 6, 2021
@ghost ghost removed the Needs-Tag-Fix Doesn't match tag requirements label Jul 6, 2021
@zadjii-msft zadjii-msft added this to the Terminal v2.0 milestone Jul 6, 2021
@zadjii-msft zadjii-msft added Priority-1 A description (P1) and removed Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting labels Jul 6, 2021
@zadjii-msft zadjii-msft modified the milestones: Terminal v2.0, 22H1 Jan 4, 2022
mattwojo pushed a commit to MicrosoftDocs/terminal that referenced this issue Jan 20, 2022
Add information on GUID generation based on microsoft/terminal#10374
and improve wording to make the importance of a profile GUID clearer.
@Okeanos
Copy link

Okeanos commented Feb 3, 2022

@DHowett @jeremyd2019 changes to the documentation are now live 🎉 – I think this issue can be closed now.

Btw. @jeremyd2019 thanks for figuring in this out and getting the ball rolling – I took the liberty of adapting your initial approach and contribute it with some adaptions to the documentation repository.

@ghost ghost added the Needs-Tag-Fix Doesn't match tag requirements label Feb 4, 2022
@zadjii-msft zadjii-msft added the Resolution-Fix-Committed Fix is checked in, but it might be 3-4 weeks until a release. label Feb 4, 2022
@ghost ghost removed the Needs-Tag-Fix Doesn't match tag requirements label Feb 4, 2022
mattwojo added a commit to MicrosoftDocs/terminal that referenced this issue Feb 8, 2022
* Update dynamic-profiles.md (#438)

* Update dynamic-profiles.md

Create section for dynamic profile for `Developer Powershell for VS 2019`

* Update dynamic-profiles.md

Update name and remove `startingDirectory`

* Update dynamic-profiles.md

Explain a little better

* Update VS version info in 3rd party (#462)

* Update custom prompt tutorial w latest OMP steps (#467)

* Add themes link

* Bulk fix - Removing .localizationpriority (#469)

* Testing image (#474)

* Update new-tab-same-directory.md

* Update new-tab-same-directory.md

* Include note on how to save the directory of a pane (#473)

* Add decimal value note for pane size

Resolves #276

* Remove VS PowerShell and CMD for 3rd party 

..these are now officially dynamic profiles.. so no longer need to be added as 3rd party as of Terminal v. 1.12. :)

* Add faq for psreadline

* Fix formatting

* Remove space before code block

* Remove code block

* Fix link

* startingDirectory path for WSL no longer requires prefix

* Update custom-prompt-setup.md (#482)

* style: fix typo in new-tab-same-directory.md (#486)

"it's" should be "its" because it wouldn't make sense otherwise.

* Updated based on pull 9270 in Terminal repo

* GUID generation for dynamic fragments (#320) (#460)

Add information on GUID generation based on microsoft/terminal#10374
and improve wording to make the importance of a profile GUID clearer.

* FIx to close #484

* Typo

Resolves #483

* Add UTF8 note

Resolves #339

* Fix note formatting

* Merge release-1.13 into main (#492)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>

* Minor intro rewrite (#487)

* typo fix

* Remove start from PowerShell commands

* winget link fix

* Link fix

* link fix

* link fix

Co-authored-by: Shubham Gogna <36936863+shgogna@users.noreply.github.com>
Co-authored-by: Alma Jenks <v-alje@microsoft.com>
Co-authored-by: Jason Howell <5067358+JasonWHowell@users.noreply.github.com>
Co-authored-by: Schuyler Rosefield <Rosefield@users.noreply.github.com>
Co-authored-by: Sanam <31341013+sanamhub@users.noreply.github.com>
Co-authored-by: Haltarys <45515869+Haltarys@users.noreply.github.com>
Co-authored-by: Nikolas Grottendieck <git@nikolasgrottendieck.com>
Co-authored-by: Kayla Cinnamon <cinnamon@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>
mattwojo added a commit to MicrosoftDocs/terminal that referenced this issue Jun 9, 2022
* Update dynamic-profiles.md (#438)

* Update dynamic-profiles.md

Create section for dynamic profile for `Developer Powershell for VS 2019`

* Update dynamic-profiles.md

Update name and remove `startingDirectory`

* Update dynamic-profiles.md

Explain a little better

* Update VS version info in 3rd party (#462)

* Update custom prompt tutorial w latest OMP steps (#467)

* Add themes link

* Bulk fix - Removing .localizationpriority (#469)

* Testing image (#474)

* Update new-tab-same-directory.md

* Update new-tab-same-directory.md

* Include note on how to save the directory of a pane (#473)

* Add decimal value note for pane size

Resolves #276

* Remove VS PowerShell and CMD for 3rd party 

..these are now officially dynamic profiles.. so no longer need to be added as 3rd party as of Terminal v. 1.12. :)

* Add faq for psreadline

* Fix formatting

* Remove space before code block

* Remove code block

* Fix link

* startingDirectory path for WSL no longer requires prefix

* Update custom-prompt-setup.md (#482)

* style: fix typo in new-tab-same-directory.md (#486)

"it's" should be "its" because it wouldn't make sense otherwise.

* Updated based on pull 9270 in Terminal repo

* GUID generation for dynamic fragments (#320) (#460)

Add information on GUID generation based on microsoft/terminal#10374
and improve wording to make the importance of a profile GUID clearer.

* FIx to close #484

* Typo

Resolves #483

* Add UTF8 note

Resolves #339

* Fix note formatting

* Merge release-1.13 into main (#492)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>

* Minor intro rewrite (#487)

* typo fix

* Remove start from PowerShell commands

* winget link fix

* Link fix

* link fix

* link fix

* Add `bellsound` profile setting (#508)

* Fix typos found by codespell (#501)

* Change step to view themes on documentation site (#505)

* Set ms.topic: faq where YamlMime:FAQ (#506)

* Fix pkgmgr link

* troubleshooting: clarify WSL `startingDirectory` entry (#516)

* troubleshooting: Linux paths support in 'startingDirectory' was added in 1.11.2921.0

In 7cd48bc (startingDirectory path for WSL no longer requires prefix,
2022-01-07), the "Set your WSL distribution to start in the home
directory" section of the troubleshooting guide was updated to mention
that WSL paths can now be directly referenced, following
microsoft/terminal@a2a6050 (When launching wsl, promote the starting
directory to --cd (#9223), 2021-08-02).

The text mentions this feature was added in Windows Terminal
1.12.3472.0, but it actually dates back to v1.11.2421.0 (Preview) and
v1.11.2921.0 (Stable).

Update the text to mention the stable version, and link to this version
in the GitHub releases. Also slightly improve the wording (s/are now/can
now be/).

* troubleshooting: remove confusing 'Important' note about WSL 'startingDirectory'

In e7f739e (Docs updates for 1.11 release (#397), 2021-08-31), an
"Important" note was added to the "Set your WSL distribution to start in
the home directory" section of the troubleshooting page to mention that
'startingDirectory' now accepts Linux-style paths, following
microsoft/terminal@a2a6050 (When launching wsl, promote the starting
directory to --cd (#9223), 2021-08-02).

The note mentions that Linux-styled paths were accepted "on newer
versions of Windows", presumably meaning newer than 1903. Indeed, that
version was at the time mentioned in the text as the first Windows
vesion supporting the '//wsl$/' P9 prefix (it had been mentioned since
the WSL startingDirectory troubleshooting entry was created in da815cc
(Review troubleshooting page, 2020-05-04).

The text of the section was updated in 7cd48bc (startingDirectory path
for WSL no longer requires prefix, 2022-01-07) to add an example with a
Linux-style path, and to mention that this feature was added in Windows
Terminal itself (not in Windows), thus removing the mention of Windows
1903. However, the "Important" note was left, and it still confusingly
mentions that Linux-style paths are accepted on "newer" versions of
Windows, without mentioning newer than what.

Remove the note altogether.

* .gitattributes: mark '*.md' as Markdown files

Denote Markdown files as such with the 'diff' Git attribute [1]. This
allows various Git commands (diff [2, 3], grep [4, 5], log [6], blame
[7]) to show in which part of the "code" the changes are located in the
hunk header, i.e. the previous commit would be shown as

    diff --git a/TerminalDocs/troubleshooting.md
    b/TerminalDocs/troubleshooting.md
    index 4a880fa..2c9d14d 100644
    --- a/TerminalDocs/troubleshooting.md
    +++ b/TerminalDocs/troubleshooting.md
    @@ -40,8 +40,6 @@ ## Set your WSL distribution to start in the home `~` directory when launched
     }
     ```

    -> [!IMPORTANT]
    -> On newer versions of Windows, `startingDirectory` can accept Linux-style paths.

     ## Setting the tab title

Notice how the hunk header indicates the changes are in the "Set your
WSL distribution to start in the home" section.

The history of that specific entry can now be interrogated using

    git log -L:"Set your WSL distribution":TerminalDocs/troubleshooting.md

[1] https://git-scm.com/docs/gitattributes#_defining_a_custom_hunk_header
[2] https://git-scm.com/docs/git-diff#_generating_patch_text_with_p
[3] https://git-scm.com/docs/git-diff#Documentation/git-diff.txt--W
[4] https://git-scm.com/docs/git-grep#Documentation/git-grep.txt--p
[5] https://git-scm.com/docs/git-grep#Documentation/git-grep.txt--W
[6] https://git-scm.com/docs/git-log#Documentation/git-log.txt--Lltfuncnamegtltfilegt
[7] https://git-scm.com/docs/git-blame#Documentation/git-blame.txt--Lltfuncnamegt

* Remove version specifics relating to WSL paths

* New tab same directory (zsh) (#513)

* Add acrylic issues to troubleshooting (#518)

* Add acrylic issues to troubleshooting doc

* Add autohide cursor setting

* Add windows settings differentiator

* command-palette: simplify example for iterable commands (#511)

* Move iterable commands gif lower down

* Quoted the env-var for `setx PROMPT` (#502)

* Updated --title documentation to specify behavior for panes (#500)

* push (#520)

* json-fragment-extensions: output GUIDs in "registry format" (#515)

* fix(powerline): adjust docs to reflect oh-my-posh changes (#534)

* Merge release-1.14 into main (#544)

Co-authored-by: Kayla Cinnamon <cinnamon@microsoft.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>

* Fix link

* Add package id command for winget (#548)

Co-authored-by: Shubham Gogna <36936863+shgogna@users.noreply.github.com>
Co-authored-by: Alma Jenks <v-alje@microsoft.com>
Co-authored-by: Jason Howell <5067358+JasonWHowell@users.noreply.github.com>
Co-authored-by: Schuyler Rosefield <Rosefield@users.noreply.github.com>
Co-authored-by: Sanam <31341013+sanamhub@users.noreply.github.com>
Co-authored-by: Haltarys <45515869+Haltarys@users.noreply.github.com>
Co-authored-by: Nikolas Grottendieck <git@nikolasgrottendieck.com>
Co-authored-by: Kayla Cinnamon <cinnamon@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>
Co-authored-by: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com>
Co-authored-by: Shawn Melton <11204251+wsmelton@users.noreply.github.com>
Co-authored-by: Alex Buck <abuck@microsoft.com>
Co-authored-by: Philippe Blain <levraiphilippeblain@gmail.com>
Co-authored-by: Adrien Clairembault <42734840+AdrienClairembault@users.noreply.github.com>
Co-authored-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
Co-authored-by: Joshua Cook <me@joshuacook.dev>
Co-authored-by: Aaron Junker <aaron.junker@outlook.com>
Co-authored-by: Jan De Dobbeleer <2492783+JanDeDobbeleer@users.noreply.github.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>
cinnamon-msft added a commit to MicrosoftDocs/terminal that referenced this issue Jul 6, 2022
* Update dynamic-profiles.md (#438)

* Update dynamic-profiles.md

Create section for dynamic profile for `Developer Powershell for VS 2019`

* Update dynamic-profiles.md

Update name and remove `startingDirectory`

* Update dynamic-profiles.md

Explain a little better

* Update VS version info in 3rd party (#462)

* Update custom prompt tutorial w latest OMP steps (#467)

* Add themes link

* Bulk fix - Removing .localizationpriority (#469)

* Testing image (#474)

* Update new-tab-same-directory.md

* Update new-tab-same-directory.md

* Include note on how to save the directory of a pane (#473)

* Add decimal value note for pane size

Resolves #276

* Remove VS PowerShell and CMD for 3rd party 

..these are now officially dynamic profiles.. so no longer need to be added as 3rd party as of Terminal v. 1.12. :)

* Add faq for psreadline

* Fix formatting

* Remove space before code block

* Remove code block

* Fix link

* startingDirectory path for WSL no longer requires prefix

* Update custom-prompt-setup.md (#482)

* style: fix typo in new-tab-same-directory.md (#486)

"it's" should be "its" because it wouldn't make sense otherwise.

* Updated based on pull 9270 in Terminal repo

* GUID generation for dynamic fragments (#320) (#460)

Add information on GUID generation based on microsoft/terminal#10374
and improve wording to make the importance of a profile GUID clearer.

* FIx to close #484

* Typo

Resolves #483

* Add UTF8 note

Resolves #339

* Fix note formatting

* Merge release-1.13 into main (#492)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>

* Minor intro rewrite (#487)

* typo fix

* Remove start from PowerShell commands

* winget link fix

* Link fix

* link fix

* link fix

* Add `bellsound` profile setting (#508)

* Fix typos found by codespell (#501)

* Change step to view themes on documentation site (#505)

* Set ms.topic: faq where YamlMime:FAQ (#506)

* Fix pkgmgr link

* troubleshooting: clarify WSL `startingDirectory` entry (#516)

* troubleshooting: Linux paths support in 'startingDirectory' was added in 1.11.2921.0

In 7cd48bc (startingDirectory path for WSL no longer requires prefix,
2022-01-07), the "Set your WSL distribution to start in the home
directory" section of the troubleshooting guide was updated to mention
that WSL paths can now be directly referenced, following
microsoft/terminal@a2a6050 (When launching wsl, promote the starting
directory to --cd (#9223), 2021-08-02).

The text mentions this feature was added in Windows Terminal
1.12.3472.0, but it actually dates back to v1.11.2421.0 (Preview) and
v1.11.2921.0 (Stable).

Update the text to mention the stable version, and link to this version
in the GitHub releases. Also slightly improve the wording (s/are now/can
now be/).

* troubleshooting: remove confusing 'Important' note about WSL 'startingDirectory'

In e7f739e (Docs updates for 1.11 release (#397), 2021-08-31), an
"Important" note was added to the "Set your WSL distribution to start in
the home directory" section of the troubleshooting page to mention that
'startingDirectory' now accepts Linux-style paths, following
microsoft/terminal@a2a6050 (When launching wsl, promote the starting
directory to --cd (#9223), 2021-08-02).

The note mentions that Linux-styled paths were accepted "on newer
versions of Windows", presumably meaning newer than 1903. Indeed, that
version was at the time mentioned in the text as the first Windows
vesion supporting the '//wsl$/' P9 prefix (it had been mentioned since
the WSL startingDirectory troubleshooting entry was created in da815cc
(Review troubleshooting page, 2020-05-04).

The text of the section was updated in 7cd48bc (startingDirectory path
for WSL no longer requires prefix, 2022-01-07) to add an example with a
Linux-style path, and to mention that this feature was added in Windows
Terminal itself (not in Windows), thus removing the mention of Windows
1903. However, the "Important" note was left, and it still confusingly
mentions that Linux-style paths are accepted on "newer" versions of
Windows, without mentioning newer than what.

Remove the note altogether.

* .gitattributes: mark '*.md' as Markdown files

Denote Markdown files as such with the 'diff' Git attribute [1]. This
allows various Git commands (diff [2, 3], grep [4, 5], log [6], blame
[7]) to show in which part of the "code" the changes are located in the
hunk header, i.e. the previous commit would be shown as

    diff --git a/TerminalDocs/troubleshooting.md
    b/TerminalDocs/troubleshooting.md
    index 4a880fa..2c9d14d 100644
    --- a/TerminalDocs/troubleshooting.md
    +++ b/TerminalDocs/troubleshooting.md
    @@ -40,8 +40,6 @@ ## Set your WSL distribution to start in the home `~` directory when launched
     }
     ```

    -> [!IMPORTANT]
    -> On newer versions of Windows, `startingDirectory` can accept Linux-style paths.

     ## Setting the tab title

Notice how the hunk header indicates the changes are in the "Set your
WSL distribution to start in the home" section.

The history of that specific entry can now be interrogated using

    git log -L:"Set your WSL distribution":TerminalDocs/troubleshooting.md

[1] https://git-scm.com/docs/gitattributes#_defining_a_custom_hunk_header
[2] https://git-scm.com/docs/git-diff#_generating_patch_text_with_p
[3] https://git-scm.com/docs/git-diff#Documentation/git-diff.txt--W
[4] https://git-scm.com/docs/git-grep#Documentation/git-grep.txt--p
[5] https://git-scm.com/docs/git-grep#Documentation/git-grep.txt--W
[6] https://git-scm.com/docs/git-log#Documentation/git-log.txt--Lltfuncnamegtltfilegt
[7] https://git-scm.com/docs/git-blame#Documentation/git-blame.txt--Lltfuncnamegt

* Remove version specifics relating to WSL paths

* New tab same directory (zsh) (#513)

* Add acrylic issues to troubleshooting (#518)

* Add acrylic issues to troubleshooting doc

* Add autohide cursor setting

* Add windows settings differentiator

* command-palette: simplify example for iterable commands (#511)

* Move iterable commands gif lower down

* Quoted the env-var for `setx PROMPT` (#502)

* Updated --title documentation to specify behavior for panes (#500)

* push (#520)

* json-fragment-extensions: output GUIDs in "registry format" (#515)

* fix(powerline): adjust docs to reflect oh-my-posh changes (#534)

* Merge release-1.14 into main (#544)

Co-authored-by: Kayla Cinnamon <cinnamon@microsoft.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>

* Fix link

* Add package id command for winget (#548)

* clarify (#551)

* Merge release-1.15 into main (#554)

* Document keyboard selection (#552)

* minor tweaks

* Document scroll marks

* Fix warning

* Remove old preview labels

Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>

* Add selection to TOC

Co-authored-by: Shubham Gogna <36936863+shgogna@users.noreply.github.com>
Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>
Co-authored-by: Alma Jenks <v-alje@microsoft.com>
Co-authored-by: Jason Howell <5067358+JasonWHowell@users.noreply.github.com>
Co-authored-by: Schuyler Rosefield <Rosefield@users.noreply.github.com>
Co-authored-by: Sanam <31341013+sanamhub@users.noreply.github.com>
Co-authored-by: Haltarys <45515869+Haltarys@users.noreply.github.com>
Co-authored-by: Nikolas Grottendieck <git@nikolasgrottendieck.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>
Co-authored-by: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com>
Co-authored-by: Shawn Melton <11204251+wsmelton@users.noreply.github.com>
Co-authored-by: Alex Buck <abuck@microsoft.com>
Co-authored-by: Philippe Blain <levraiphilippeblain@gmail.com>
Co-authored-by: Adrien Clairembault <42734840+AdrienClairembault@users.noreply.github.com>
Co-authored-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
Co-authored-by: Joshua Cook <me@joshuacook.dev>
Co-authored-by: Aaron Junker <aaron.junker@outlook.com>
Co-authored-by: Jan De Dobbeleer <2492783+JanDeDobbeleer@users.noreply.github.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>
mattwojo added a commit to MicrosoftDocs/terminal that referenced this issue Aug 3, 2022
* Update dynamic-profiles.md (#438)

* Update dynamic-profiles.md

Create section for dynamic profile for `Developer Powershell for VS 2019`

* Update dynamic-profiles.md

Update name and remove `startingDirectory`

* Update dynamic-profiles.md

Explain a little better

* Update VS version info in 3rd party (#462)

* Update custom prompt tutorial w latest OMP steps (#467)

* Add themes link

* Bulk fix - Removing .localizationpriority (#469)

* Testing image (#474)

* Update new-tab-same-directory.md

* Update new-tab-same-directory.md

* Include note on how to save the directory of a pane (#473)

* Add decimal value note for pane size

Resolves #276

* Remove VS PowerShell and CMD for 3rd party 

..these are now officially dynamic profiles.. so no longer need to be added as 3rd party as of Terminal v. 1.12. :)

* Add faq for psreadline

* Fix formatting

* Remove space before code block

* Remove code block

* Fix link

* startingDirectory path for WSL no longer requires prefix

* Update custom-prompt-setup.md (#482)

* style: fix typo in new-tab-same-directory.md (#486)

"it's" should be "its" because it wouldn't make sense otherwise.

* Updated based on pull 9270 in Terminal repo

* GUID generation for dynamic fragments (#320) (#460)

Add information on GUID generation based on microsoft/terminal#10374
and improve wording to make the importance of a profile GUID clearer.

* FIx to close #484

* Typo

Resolves #483

* Add UTF8 note

Resolves #339

* Fix note formatting

* Merge release-1.13 into main (#492)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>

* Minor intro rewrite (#487)

* typo fix

* Remove start from PowerShell commands

* winget link fix

* Link fix

* link fix

* link fix

* Add `bellsound` profile setting (#508)

* Fix typos found by codespell (#501)

* Change step to view themes on documentation site (#505)

* Set ms.topic: faq where YamlMime:FAQ (#506)

* Fix pkgmgr link

* troubleshooting: clarify WSL `startingDirectory` entry (#516)

* troubleshooting: Linux paths support in 'startingDirectory' was added in 1.11.2921.0

In 7cd48bc (startingDirectory path for WSL no longer requires prefix,
2022-01-07), the "Set your WSL distribution to start in the home
directory" section of the troubleshooting guide was updated to mention
that WSL paths can now be directly referenced, following
microsoft/terminal@a2a6050 (When launching wsl, promote the starting
directory to --cd (#9223), 2021-08-02).

The text mentions this feature was added in Windows Terminal
1.12.3472.0, but it actually dates back to v1.11.2421.0 (Preview) and
v1.11.2921.0 (Stable).

Update the text to mention the stable version, and link to this version
in the GitHub releases. Also slightly improve the wording (s/are now/can
now be/).

* troubleshooting: remove confusing 'Important' note about WSL 'startingDirectory'

In e7f739e (Docs updates for 1.11 release (#397), 2021-08-31), an
"Important" note was added to the "Set your WSL distribution to start in
the home directory" section of the troubleshooting page to mention that
'startingDirectory' now accepts Linux-style paths, following
microsoft/terminal@a2a6050 (When launching wsl, promote the starting
directory to --cd (#9223), 2021-08-02).

The note mentions that Linux-styled paths were accepted "on newer
versions of Windows", presumably meaning newer than 1903. Indeed, that
version was at the time mentioned in the text as the first Windows
vesion supporting the '//wsl$/' P9 prefix (it had been mentioned since
the WSL startingDirectory troubleshooting entry was created in da815cc
(Review troubleshooting page, 2020-05-04).

The text of the section was updated in 7cd48bc (startingDirectory path
for WSL no longer requires prefix, 2022-01-07) to add an example with a
Linux-style path, and to mention that this feature was added in Windows
Terminal itself (not in Windows), thus removing the mention of Windows
1903. However, the "Important" note was left, and it still confusingly
mentions that Linux-style paths are accepted on "newer" versions of
Windows, without mentioning newer than what.

Remove the note altogether.

* .gitattributes: mark '*.md' as Markdown files

Denote Markdown files as such with the 'diff' Git attribute [1]. This
allows various Git commands (diff [2, 3], grep [4, 5], log [6], blame
[7]) to show in which part of the "code" the changes are located in the
hunk header, i.e. the previous commit would be shown as

    diff --git a/TerminalDocs/troubleshooting.md
    b/TerminalDocs/troubleshooting.md
    index 4a880fa..2c9d14d 100644
    --- a/TerminalDocs/troubleshooting.md
    +++ b/TerminalDocs/troubleshooting.md
    @@ -40,8 +40,6 @@ ## Set your WSL distribution to start in the home `~` directory when launched
     }
     ```

    -> [!IMPORTANT]
    -> On newer versions of Windows, `startingDirectory` can accept Linux-style paths.

     ## Setting the tab title

Notice how the hunk header indicates the changes are in the "Set your
WSL distribution to start in the home" section.

The history of that specific entry can now be interrogated using

    git log -L:"Set your WSL distribution":TerminalDocs/troubleshooting.md

[1] https://git-scm.com/docs/gitattributes#_defining_a_custom_hunk_header
[2] https://git-scm.com/docs/git-diff#_generating_patch_text_with_p
[3] https://git-scm.com/docs/git-diff#Documentation/git-diff.txt--W
[4] https://git-scm.com/docs/git-grep#Documentation/git-grep.txt--p
[5] https://git-scm.com/docs/git-grep#Documentation/git-grep.txt--W
[6] https://git-scm.com/docs/git-log#Documentation/git-log.txt--Lltfuncnamegtltfilegt
[7] https://git-scm.com/docs/git-blame#Documentation/git-blame.txt--Lltfuncnamegt

* Remove version specifics relating to WSL paths

* New tab same directory (zsh) (#513)

* Add acrylic issues to troubleshooting (#518)

* Add acrylic issues to troubleshooting doc

* Add autohide cursor setting

* Add windows settings differentiator

* command-palette: simplify example for iterable commands (#511)

* Move iterable commands gif lower down

* Quoted the env-var for `setx PROMPT` (#502)

* Updated --title documentation to specify behavior for panes (#500)

* push (#520)

* json-fragment-extensions: output GUIDs in "registry format" (#515)

* fix(powerline): adjust docs to reflect oh-my-posh changes (#534)

* Merge release-1.14 into main (#544)

Co-authored-by: Kayla Cinnamon <cinnamon@microsoft.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>

* Fix link

* Add package id command for winget (#548)

* clarify (#551)

* Merge release-1.15 into main (#554)

* Document keyboard selection (#552)

* minor tweaks

* Document scroll marks

* Fix warning

* Remove old preview labels

Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>

* Add selection to TOC

* Instructions for MINGW (#525)

* Instructions for MINGW

- Added instructions for MINGW
- Added a link to this file, so it's easier to find it for people who'd like to contribue

* Update TerminalDocs/tutorials/new-tab-same-directory.md

Co-authored-by: Philippe Blain <levraiphilippeblain@gmail.com>

Co-authored-by: Philippe Blain <levraiphilippeblain@gmail.com>

* Add missing [Shift] in key binding (#557)

* Fix PowerShell commands

Based on #527

* Add Starship example (#530)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Add Fish shell

Resolves #523

* Move Mingw under WSL section

* Add focus mode tip

Resolves #528

* Change bashrc config to bash_profile

Recommended in #556 so that the `PROMPT_COMMAND` variable isn't repeatedly appended on the start of every bash process.

Resolves #556

* [BULK UPDATE] DocuTune - Fix build validation issues: docs-link-absolute (#553)

* Update interaction.md (#562)

You left click to block select

Co-authored-by: Shubham Gogna <36936863+shgogna@users.noreply.github.com>
Co-authored-by: Alma Jenks <v-alje@microsoft.com>
Co-authored-by: Jason Howell <5067358+JasonWHowell@users.noreply.github.com>
Co-authored-by: Schuyler Rosefield <Rosefield@users.noreply.github.com>
Co-authored-by: Sanam <31341013+sanamhub@users.noreply.github.com>
Co-authored-by: Haltarys <45515869+Haltarys@users.noreply.github.com>
Co-authored-by: Nikolas Grottendieck <git@nikolasgrottendieck.com>
Co-authored-by: Kayla Cinnamon <cinnamon@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>
Co-authored-by: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com>
Co-authored-by: Shawn Melton <11204251+wsmelton@users.noreply.github.com>
Co-authored-by: Alex Buck <abuck@microsoft.com>
Co-authored-by: Philippe Blain <levraiphilippeblain@gmail.com>
Co-authored-by: Adrien Clairembault <42734840+AdrienClairembault@users.noreply.github.com>
Co-authored-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
Co-authored-by: Joshua Cook <me@joshuacook.dev>
Co-authored-by: Aaron Junker <aaron.junker@outlook.com>
Co-authored-by: Jan De Dobbeleer <2492783+JanDeDobbeleer@users.noreply.github.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>
Co-authored-by: Alexey Grigorev <alexeygrigorev@users.noreply.github.com>
Co-authored-by: Tobi <22715034+twobiers@users.noreply.github.com>
Co-authored-by: Hans Kilian <hkkilian@gmail.com>
mattwojo added a commit to MicrosoftDocs/terminal that referenced this issue Oct 6, 2022
* Update dynamic-profiles.md (#438)

* Update dynamic-profiles.md

Create section for dynamic profile for `Developer Powershell for VS 2019`

* Update dynamic-profiles.md

Update name and remove `startingDirectory`

* Update dynamic-profiles.md

Explain a little better

* Update VS version info in 3rd party (#462)

* Update custom prompt tutorial w latest OMP steps (#467)

* Add themes link

* Bulk fix - Removing .localizationpriority (#469)

* Testing image (#474)

* Update new-tab-same-directory.md

* Update new-tab-same-directory.md

* Include note on how to save the directory of a pane (#473)

* Add decimal value note for pane size

Resolves #276

* Remove VS PowerShell and CMD for 3rd party 

..these are now officially dynamic profiles.. so no longer need to be added as 3rd party as of Terminal v. 1.12. :)

* Add faq for psreadline

* Fix formatting

* Remove space before code block

* Remove code block

* Fix link

* startingDirectory path for WSL no longer requires prefix

* Update custom-prompt-setup.md (#482)

* style: fix typo in new-tab-same-directory.md (#486)

"it's" should be "its" because it wouldn't make sense otherwise.

* Updated based on pull 9270 in Terminal repo

* GUID generation for dynamic fragments (#320) (#460)

Add information on GUID generation based on microsoft/terminal#10374
and improve wording to make the importance of a profile GUID clearer.

* FIx to close #484

* Typo

Resolves #483

* Add UTF8 note

Resolves #339

* Fix note formatting

* Merge release-1.13 into main (#492)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>

* Minor intro rewrite (#487)

* typo fix

* Remove start from PowerShell commands

* winget link fix

* Link fix

* link fix

* link fix

* Add `bellsound` profile setting (#508)

* Fix typos found by codespell (#501)

* Change step to view themes on documentation site (#505)

* Set ms.topic: faq where YamlMime:FAQ (#506)

* Fix pkgmgr link

* troubleshooting: clarify WSL `startingDirectory` entry (#516)

* troubleshooting: Linux paths support in 'startingDirectory' was added in 1.11.2921.0

In 7cd48bc (startingDirectory path for WSL no longer requires prefix,
2022-01-07), the "Set your WSL distribution to start in the home
directory" section of the troubleshooting guide was updated to mention
that WSL paths can now be directly referenced, following
microsoft/terminal@a2a6050 (When launching wsl, promote the starting
directory to --cd (#9223), 2021-08-02).

The text mentions this feature was added in Windows Terminal
1.12.3472.0, but it actually dates back to v1.11.2421.0 (Preview) and
v1.11.2921.0 (Stable).

Update the text to mention the stable version, and link to this version
in the GitHub releases. Also slightly improve the wording (s/are now/can
now be/).

* troubleshooting: remove confusing 'Important' note about WSL 'startingDirectory'

In e7f739e (Docs updates for 1.11 release (#397), 2021-08-31), an
"Important" note was added to the "Set your WSL distribution to start in
the home directory" section of the troubleshooting page to mention that
'startingDirectory' now accepts Linux-style paths, following
microsoft/terminal@a2a6050 (When launching wsl, promote the starting
directory to --cd (#9223), 2021-08-02).

The note mentions that Linux-styled paths were accepted "on newer
versions of Windows", presumably meaning newer than 1903. Indeed, that
version was at the time mentioned in the text as the first Windows
vesion supporting the '//wsl$/' P9 prefix (it had been mentioned since
the WSL startingDirectory troubleshooting entry was created in da815cc
(Review troubleshooting page, 2020-05-04).

The text of the section was updated in 7cd48bc (startingDirectory path
for WSL no longer requires prefix, 2022-01-07) to add an example with a
Linux-style path, and to mention that this feature was added in Windows
Terminal itself (not in Windows), thus removing the mention of Windows
1903. However, the "Important" note was left, and it still confusingly
mentions that Linux-style paths are accepted on "newer" versions of
Windows, without mentioning newer than what.

Remove the note altogether.

* .gitattributes: mark '*.md' as Markdown files

Denote Markdown files as such with the 'diff' Git attribute [1]. This
allows various Git commands (diff [2, 3], grep [4, 5], log [6], blame
[7]) to show in which part of the "code" the changes are located in the
hunk header, i.e. the previous commit would be shown as

    diff --git a/TerminalDocs/troubleshooting.md
    b/TerminalDocs/troubleshooting.md
    index 4a880fa..2c9d14d 100644
    --- a/TerminalDocs/troubleshooting.md
    +++ b/TerminalDocs/troubleshooting.md
    @@ -40,8 +40,6 @@ ## Set your WSL distribution to start in the home `~` directory when launched
     }
     ```

    -> [!IMPORTANT]
    -> On newer versions of Windows, `startingDirectory` can accept Linux-style paths.

     ## Setting the tab title

Notice how the hunk header indicates the changes are in the "Set your
WSL distribution to start in the home" section.

The history of that specific entry can now be interrogated using

    git log -L:"Set your WSL distribution":TerminalDocs/troubleshooting.md

[1] https://git-scm.com/docs/gitattributes#_defining_a_custom_hunk_header
[2] https://git-scm.com/docs/git-diff#_generating_patch_text_with_p
[3] https://git-scm.com/docs/git-diff#Documentation/git-diff.txt--W
[4] https://git-scm.com/docs/git-grep#Documentation/git-grep.txt--p
[5] https://git-scm.com/docs/git-grep#Documentation/git-grep.txt--W
[6] https://git-scm.com/docs/git-log#Documentation/git-log.txt--Lltfuncnamegtltfilegt
[7] https://git-scm.com/docs/git-blame#Documentation/git-blame.txt--Lltfuncnamegt

* Remove version specifics relating to WSL paths

* New tab same directory (zsh) (#513)

* Add acrylic issues to troubleshooting (#518)

* Add acrylic issues to troubleshooting doc

* Add autohide cursor setting

* Add windows settings differentiator

* command-palette: simplify example for iterable commands (#511)

* Move iterable commands gif lower down

* Quoted the env-var for `setx PROMPT` (#502)

* Updated --title documentation to specify behavior for panes (#500)

* push (#520)

* json-fragment-extensions: output GUIDs in "registry format" (#515)

* fix(powerline): adjust docs to reflect oh-my-posh changes (#534)

* Merge release-1.14 into main (#544)

Co-authored-by: Kayla Cinnamon <cinnamon@microsoft.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>

* Fix link

* Add package id command for winget (#548)

* clarify (#551)

* Merge release-1.15 into main (#554)

* Document keyboard selection (#552)

* minor tweaks

* Document scroll marks

* Fix warning

* Remove old preview labels

Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>

* Add selection to TOC

* Instructions for MINGW (#525)

* Instructions for MINGW

- Added instructions for MINGW
- Added a link to this file, so it's easier to find it for people who'd like to contribue

* Update TerminalDocs/tutorials/new-tab-same-directory.md

Co-authored-by: Philippe Blain <levraiphilippeblain@gmail.com>

Co-authored-by: Philippe Blain <levraiphilippeblain@gmail.com>

* Add missing [Shift] in key binding (#557)

* Fix PowerShell commands

Based on #527

* Add Starship example (#530)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

* Add Fish shell

Resolves #523

* Move Mingw under WSL section

* Add focus mode tip

Resolves #528

* Change bashrc config to bash_profile

Recommended in #556 so that the `PROMPT_COMMAND` variable isn't repeatedly appended on the start of every bash process.

Resolves #556

* [BULK UPDATE] DocuTune - Fix build validation issues: docs-link-absolute (#553)

* Update interaction.md (#562)

You left click to block select

* Address changed wt.exe behavior as identified in #507

* Add note on upgrading Oh My Posh

* Add note about restoring CWD

Alternative way to set up is in issue #546. 
Adding this note to resolve #546.

* Add specific command for OMP install and version check

* Add FAQ for terminal vs shell

Resolves #405

* [BULK UPDATE] DocuTune - Fix build validation issues: docs-link-absolute (#577)

* Add missing code block closing backticks (#571)

Adds missing code block closing backticks on line 101 which was causing the following sections to render incorrectly.

* Update custom-schemes.md (#576)

Mis-placed semicolon.

* Merge release-1.16 into main (#584)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>
Co-authored-by: Sergey <45919738+serd2011@users.noreply.github.com>

* Merge release-1.16 into main (#586)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>
Co-authored-by: Sergey <45919738+serd2011@users.noreply.github.com>

* Release-1.16 into main (#587)

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>
Co-authored-by: Sergey <45919738+serd2011@users.noreply.github.com>

* [BULK UPDATE] DocuTune - Rebranding links (#592)

* Update with Windows SSH info, location, and image (#598)

* Adds missing `:::column-end::: :::row-end:::` (#566)

* Edit: Typo in Line 143 in `PROMPT_COMMAND` (#568)

* Add double quotes to $PWD on line 148 (#569)

This will help print the current working directory correctly if it has a space in its name. It was previously stated on line 109 in the WSL example.

* 1.17 - Add documentation for `--pos` and `--size` cmdline args (#591)

* 1.17 - Add documentation for `--pos` and `--size` cmdline args

* Add minor wording tweak

Co-authored-by: Matt Wojciakowski <mattwoj@microsoft.com>

Co-authored-by: Shubham Gogna <36936863+shgogna@users.noreply.github.com>
Co-authored-by: Alma Jenks <v-alje@microsoft.com>
Co-authored-by: Jason Howell <5067358+JasonWHowell@users.noreply.github.com>
Co-authored-by: Schuyler Rosefield <Rosefield@users.noreply.github.com>
Co-authored-by: Sanam <31341013+sanamhub@users.noreply.github.com>
Co-authored-by: Haltarys <45515869+Haltarys@users.noreply.github.com>
Co-authored-by: Nikolas Grottendieck <git@nikolasgrottendieck.com>
Co-authored-by: Kayla Cinnamon <cinnamon@microsoft.com>
Co-authored-by: Mike Griese <migrie@microsoft.com>
Co-authored-by: Dimitri Papadopoulos Orfanos <3234522+DimitriPapadopoulos@users.noreply.github.com>
Co-authored-by: Shawn Melton <11204251+wsmelton@users.noreply.github.com>
Co-authored-by: Alex Buck <abuck@microsoft.com>
Co-authored-by: Philippe Blain <levraiphilippeblain@gmail.com>
Co-authored-by: Adrien Clairembault <42734840+AdrienClairembault@users.noreply.github.com>
Co-authored-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
Co-authored-by: Joshua Cook <me@joshuacook.dev>
Co-authored-by: Aaron Junker <aaron.junker@outlook.com>
Co-authored-by: Jan De Dobbeleer <2492783+JanDeDobbeleer@users.noreply.github.com>
Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>
Co-authored-by: Alexey Grigorev <alexeygrigorev@users.noreply.github.com>
Co-authored-by: Tobi <22715034+twobiers@users.noreply.github.com>
Co-authored-by: Hans Kilian <hkkilian@gmail.com>
Co-authored-by: André Costa <andreccosta@me.com>
Co-authored-by: Haroon Ali Shah <jharoonalishah@gmail.com>
Co-authored-by: Sergey <45919738+serd2011@users.noreply.github.com>
Co-authored-by: Osemudiamhen Ughu <76438025+oseughu@users.noreply.github.com>
Co-authored-by: Ian O'Neill <ianjoneill@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Settings Issues related to settings and customizability, for console or terminal Issue-Docs It's a documentation issue that really should be on MicrosoftDocs/Console-Docs Priority-1 A description (P1) Product-Terminal The new Windows Terminal. Resolution-Fix-Committed Fix is checked in, but it might be 3-4 weeks until a release.
Projects
None yet
Development

No branches or pull requests

5 participants