Terminal: MEGATHREAD:版本0.11中的重大设置更改!

创建于 2020-04-22  ·  72评论  ·  资料来源: microsoft/terminal

中断设置在0.11中变化

  • BREAKING CHANGE我们已经删除了许多旧设置的处理方法(#5190)

    • 有关更多信息,请参阅我们的博客文章最新状态更新

    • 如果globals词典中有设置挂出,则需要将其移出。



      • 补救措施:将所有内容从globals到设置文件的根目录,然后删除空的globals对象。


      • 否则,我们将忽略您的默认配置文件,启动模式等。


      • 包括defaultProfile



    • requestedTheme已重命名为theme (#5265)

  • profiles.json已重命名为settings.json 。 这应该对您透明,因为我们会在首次启动时对其进行重命名(#5199)

    • 副作用是,我们最终将停止恢复_old_ pre-version-0.3漫游配置文件。

  • 如果您未指定splitPane split模式,则默认为automatic (#5194)
  • copy的原始trimWhitespace参数现在称为singleLine ,表示实际上将以单行形式复制文本(#5216)
  • 现在,未指定字体的所有配置文件的默认字体为_ Cascadia Mono _(#5121)

您的设置看起来像这样吗?

{
    "globals": {
        "defaultProfile": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
        "initialCols": 200,
        "initialRows": 65,
        "initialPosition": "0,0",
        "wordDelimiters" : " ()\"'-:,;<>~!@#$%^&*|+=[]{}~?\u2502",
        "confirmCloseAllTabs": true,
        "keybindings": [
            ...
        ]
    },
    "profiles": {
        ...
    }
}

然后将其更改为如下所示:

{
    "defaultProfile": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
    "initialCols": 200,
    "initialRows": 65,
    "initialPosition": "0,0",
    "wordDelimiters" : " ()\"'-:,;<>~!@#$%^&*|+=[]{}~?\u2502",
    "confirmCloseAllTabs": true,
    "keybindings": [
        ...
    ],
    "profiles": {
        ...
    }
}

甚至更好的是,备份设置文件,然后完全删除其中的内容。 我们将使用更好的格式和更合理的默认值重新生成文件,然后您可以复制所需的修改。

Area-Settings Issue-Question Needs-Tag-Fix Product-Terminal

最有用的评论

出于好奇,为什么在升级后settings.jsonglobal值没有自动移到根级别? 您可以多次迁移配置,这很好,但是这次不行。

我自己遇到了这个问题,即使我在升级之前扫描了变更日志,也进入了#5489的行列,但是却没有意识到实际上必须在配置中进行一些更改:slightly_smiling_face:

所有72条评论

出于好奇,为什么在升级后settings.jsonglobal值没有自动移到根级别? 您可以多次迁移配置,这很好,但是这次不行。

我自己遇到了这个问题,即使我在升级之前扫描了变更日志,也进入了#5489的行列,但是却没有意识到实际上必须在配置中进行一些更改:slightly_smiling_face:

如果您在全局字典中挂出了设置,则需要将其移出。
否则,我们将忽略您的默认配置文件,启动模式等。
这包括defaultProfile

您可能想用“将它们移出”来重新措辞,因为这实际上对任何人来说还不够。 请明确点:

...您将需要将它们移至settings.json的根对象。

@bmarkovic ,这是一个很好的建议,谢谢。 感谢您修改了评论。

在我的特殊情况下,这不能恢复键绑定的功能,格式(或JSON密钥名称)是否有所变化?

有趣。 如果向下滚动,是否碰巧有keybindings的单独副本? 这可能是所有这些☹️之上的令人讨厌的陷阱

抱歉不行。

我在#3600中看到“命令”现在是对象,是强制性的(即“命令”为字符串的旧格式不再起作用)吗?

同样在我的配置中,“键”是一个数组,在这里是一个字符串。

例如

        {
            "command" : "newTab",
            "keys" : 
            [
                "ctrl+t"
            ]
        },

不,动作+命令(对象格式)不是强制性的,键可以是字符串或数组...您可以共享设置要点吗?

当然不是。

https://gist.github.com/bmarkovic/485363256672f4be66379c4d9a604c81

编辑:如果其他人遇到类似问题,则问题是这些设置中有很多已更改且不再有效。 如果您使用的是VS.Code,它将遵循新的JSON模式,对不再有效的内容加下划线,您将必须参考:

https://github.com/microsoft/terminal/blob/master/doc/cascadia/SettingsSchema.md

有关新设置的格式。

啊,我猜想那些不起作用的键绑定是Ctrl + Shift +# 。 抱歉,我们的文档在这里使您失败-这些已包含在#5190中的旧设置删除中。 现在,我认为这些旧绑定正在用不再有效的旧版本替换默认绑定,您可以删除它们。

不过,这是一个更好的出路:

从所有键绑定,格式和包含每个config选项的配置文件来看,设置文件看起来早于0.2。 我真的很高兴您已经在我们这里呆了这么长时间(自首次公开发布以来!)谢谢! 0.5之后的Terminal版本提供了一个很酷的新设置模板,该模板更加精简,并且文档记录得更好。 现在在终端程序包中存在一组“默认”设置,您的设置将应用在这些设置中。

无论如何,这都不是必需的,但是如果您花几分钟的时间进行迁移,总体上可能会更快乐。

  1. 将旧的设置文件移到一边
  2. 让Terminal制作一个新的(启动时自动)
  3. 复制您关心的键绑定(因为您使用的是0.2之前的设置,因此您可能会担心Ctrl + WCtrl + T绑定到了“关闭/打开”选项卡(这是我们将近一年前做出的错误决定) )。
  4. 复制您关心的一些个人资料。

设置模型从0.5更改为,意味着您无需在每个配置文件中指定每个选项,并且在定制所有内容时也不必如此积极。

我对此表示怀疑-这应该与您的旧设置相同,但是删除了一大堆旧有的东西。

https://gist.github.com/DHowett-MSFT/ec2d24cf2b84e1555fb56a1192e4fb94

我不知道您是否使用alt + N来切换选项卡,但是那是您设置中的一些旧键绑定,我不想踩它们:smile:
一堆“重复”设置已移到“默认”组中。.肯定会减少重复行。

旧的(版本0.2)设置文件的标志是ctrl + w已绑定,并绑定到closeTab (即使其中包含窗格,它也会关闭整个选项卡)。 现代绑定是closePane Ctrl + Shift + W ,它仅关闭活动的焦点窗格。

嗯,与此同时,我也自己做了(我更新了alt +选项卡开关,因为我确实使用过它们)。 我也会看一下你对此的看法。 这台机器并不是真正的日常工作驱动程序(与大多数人相反,我认为Windows机器很有趣,我在Linux台式机上赚了很多钱),所以这也许就是为什么我没有更新所有这一切。

是我的设置文件到新模式的逐字翻译,它是经过快速测试的,在我更改了目标命令和格式后,它们都可以正常工作。 我还将查看您粘贴的“无遗留问题”版本(我不希望附加我的非标准绑定),并且可能会做一些组合以供将来使用。

感谢您的帮助,我非常喜欢该程序。 对于我来说,它已完全取代ConEmu成为Windows上的首选终端模拟器。

感谢您的帮助,我非常喜欢该程序。 对于我来说,它已完全取代ConEmu成为Windows上的首选终端模拟器。

很高兴听到这个消息,对不起,在预览火车上,这里的行驶有点颠簸😅

开始更新时,它询问“关闭所有窗口”,我按了“取消”。
无论如何它关闭了WT。

这与这个问题无关,但是我认为我们无法避免。 我努力寻找一个API来告诉系统我们不应该为了更新而被杀死☹️

因此,如何立即删除Azure Cloud Shell? “ disabledProfileSources”已被删除。

无论如何,这都不是必需的,但是如果您花几分钟的时间进行迁移,总体上可能会更快乐。

1. move your old settings file aside

2. let Terminal make a new one (automatic on startup)

3. copy over key bindings that you care about (since you're using pre-0.2 settings, you might care that Ctrl+W and Ctrl+T are bound to close/open tab (which was a bad decision we made almost a whole year ago).

4. copy over some profiles you care about.

我遵循了此程序,效果很好,谢谢🙏

PS在json文件中的评论,我已经看到了未来!
Snag_3427ce

@ Naomi010Sentzke

"hidden": true,

或者,继续按照该线程顶部描述的要求继续使用disabledProfileSources

在此更新之后,我的默认字体已更改,最重要的是我无法使用switchToTab0, switchToTab1...键绑定

我将ctrl + Num设置为switch选项卡,但是它不起作用。 只有默认设置ctrl+alt+Num可以切换标签页...

@GrayXu,您只需要打开settings.json并将globals键下的所有设置移到顶层。

@GrayXu,您只需要打开settings.json并将globalSettings键下的所有设置移到顶层。

我遵循了UsingJsonSettings.md#key-bindings ,我认为我将keybindings放在Global Settings
这是我的配置:

{
"$schema": "https://aka.ms/terminal-profiles-schema",
...
"keybindings": [
        ...
        {
            "command": "switchToTab0",
            "keys": [
                "ctrl+1"
            ]
        },
        ...
]
...
}

此配置中的某些键绑定正常工作,包括nextTabclosePane等。 但是switchToTab0无效。

switchToTab0 .. switchToTab9的键盘绑定被破坏

@TeoTN当然是-检查此帖子以获取更多详细信息: https :

弃用的设置| 更换设定
-| -
switchToTab0 - switchToTab8 | { "command": { "action": "switchToTab", "index": NUMBER }, "keys": "ctrl+alt+NUMBER" }

@TeoTN Sure #3600(评论)

弃用的设置
更换设定

switchToTab0 - switchToTab8
{ "command": { "action": "switchToTab", "index": NUMBER }, "keys": "ctrl+alt+NUMBER" }

谢谢! 我不知道新设置。 但是,当我尝试使用{ "command": { "action": "switchToTab", "index": 1}, "keys": "ctrl+2" } ,它不起作用。
{ "command": { "action": "switchToTab", "index": 0}, "keys": "ctrl+1" }可以正常工作

@TeoTN Sure #3600(评论)

弃用的设置
更换设定
switchToTab0 - switchToTab8
{ "command": { "action": "switchToTab", "index": NUMBER }, "keys": "ctrl+alt+NUMBER" }

谢谢! 我不知道新设置。 但是,当我尝试使用{ "command": { "action": "switchToTab", "index": 1}, "keys": "ctrl+2" } ,它不起作用。
{ "command": { "action": "switchToTab", "index": 0}, "keys": "ctrl+1" }可以正常工作

感谢您的提出。

我也经历了switchToTab动作的奇怪行为。 但是,这归结为我的错误。 我最终发现一个不赞成使用的密钥(与switchToTab操作无关)被(我)意外复制了。 删除所有不推荐使用的设置后,一切(包括switchToTab都可以继续使用。IMO的新命令结构更加清晰👍

我会说,需要增加"keys"键的NUMBER值与"index"键的值,例如

// working snippet
   { 
        "command": {
            "action":  "switchToTab", 
            "index": 0 
        }, 
        "keys": "alt+1"
    },
    {
        "command" :  {
            "action": "switchToTab",
            "index": 1
        }, 
        "keys" :  "alt+2"
    },
    ...

有点奇怪,但是,我怀疑这种选择有充分的理由。 如果不是这种情况,请在此处记录。

我要说的是,需要增加“键”键和“索引”键的NUMBER值,这有点奇怪,但是,我怀疑这种选择有充分的理由。

有! 我们希望索引为0的参数是因为_我们不是monsters_,但我们也想将alt + 1用作“转到第一个标签”,因为(至少在使用中的键盘布局上) 1是剩下。 这样,第一个选项卡在第一个数字键上,第二个选项卡在第二个数字键上,依此类推。

@TeoTN Sure #3600(评论)

弃用的设置
更换设定

switchToTab0 - switchToTab8
{ "command": { "action": "switchToTab", "index": NUMBER }, "keys": "ctrl+alt+NUMBER" }

这就是Windows Terminal推广的经验吗? 您是否想象过,例如,MacOS上的iTerm2会通过自动更新静默破坏您的设置,并说“是的,我们已经破坏了它,您就可以使用”? 您为什么不自动为用户迁移呢?

这就是Windows Terminal推广的经验吗?

_iTerm2不是预览软件。 Windows终端(预览)为。_

这就是Windows Terminal推广的经验吗?

_iTerm2不是预览软件。 Windows终端(预览)为。_

因此,您没有让用户习惯于此的方法,您可以静静地破坏他们的环境,因为“这是一个预览”,也许是“如果您在GitHub页面上阅读了所有评论和更新,您可能会发现它”?

甚至这个线程的名字……您都知道您将破坏人们的环境,并且在更新之前没有警告,没有消息帮助您入门,也没有_auto-migrate_的努力。 这只是“我们打破现状并加以处理”。 我认为这是一种糟糕的用户体验。

我只是以为id说我的个人资料没有被破坏-ctrl-shift-v的行为现在导致崩溃。 wsl一直在后台运行,但终端崩溃并感到有些烦人的哈哈哈。 作为linuxy人ctrl shift v是肌肉记忆:(大声笑

哇,那绝对不应该发生。

要我做什么?

可以当前一致地重现它(已重启)

请另外提出一个问题。 谢谢! 如果可能,请提供反馈中心链接。

实际上是nvm-我的坏! 我只是意识到这是由于我的未使用案例引起的。 它不会在第一次运行时执行此操作-它是由于使用ctrl shift v从xming上的x会话内部复制并粘贴到控制台中而导致的,现在暂时不进行bug报告,直到获得准确的信息为止。 感谢您的快速回复!

@ DHowett-MSFT(re:问题标题)哈哈,这正是我的感受,但我发现了这一点并把它整理了一下。 重组看起来要干净得多。

在此更新之后,我的默认字体已更改,最重要的是我无法使用switchToTab0, switchToTab1...键绑定

我将ctrl + Num设置为switch选项卡,但是它不起作用。 只有默认设置ctrl+alt+Num可以切换标签页...

通过引用https://raw.githubusercontent.com/microsoft/terminal/release-0.11/doc/cascadia/profiles.schema.json

以下配置可以成功启动新标签页

{
       "command" : {
        "action": "newTab",
        "index": 0
    },
        "keys" : ["ctrl+shift+1"]
},

为什么我的WSL Ubuntu控制台主题/颜色消失了?

我删除了设置文件,但仍然:

image

这看起来像是您的Shell配置中的问题。 WT尚未更改其启动WSL的方式,WSL也未更改其生成shell的方式。

请参阅此页面以获取更多信息...同时,此页面上没有任何有关如何修复警告错误的文档....#3145

同时,此页面上没有有关如何修复警告错误的任何文档

??

image

image

image

???

文件位置?

您通常会在同一位置配置设置-在Settings菜单项打开的文件或%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json

我们在这里的文档中省略了它,因为我们假设人们知道如何访问他们的设置文件。

我想我很迟钝,因为我不知道Windows终端机0.11.1191.0的内容,或者您​​可以做更好的文档。.#justsayin

如何确定Windows终端尝试加载的包含不赞成使用的全局设置的用户设置文件? 我搜索了Profile.ps1和Microsoft.PowerShell_profile.ps1无济于事。

您可以通过打开+v菜单(单击v )进入终端设置文件。

您可以通过打开+v菜单(单击v )进入终端设置文件。

感谢您的及时答复。 但是settings.json文件看起来不错。 当我启动Windows Terminal并显示以下内容时,提示的错误是。

“ globals”属性已弃用-您的设置可能需要更新。 有关更多信息,请参见此网页。
terminal

因此,如果您从未在Terminal中编辑过设置,那么删除该文件的内容可能会更快乐。 如果有,并且希望保留自定义内容,则可以删除全局变量末尾的“ globals {”行和等效的“}”。 查看页面顶部的“如果您的文件看起来像这样...”部分。

因此,如果您从未在Terminal中编辑过设置,那么删除该文件的内容可能会更快乐。 如果有,并且希望保留自定义内容,则可以删除全局变量末尾的“ globals {”行和等效的“}”。 查看页面顶部的“如果您的文件看起来像这样...”部分。

解决,谢谢您的及时支持!

该警告对话框确实可以使用直接链接到设置文件的方式来使其无缝打开以进行编辑。 同样,检测到何时只有对设置文件进行更改才能使其再次有效,该更改是从globals起吊起东西,并自动修补了设置文件。 总体上来说并没有什么大不了的,但是就UX / DX而言却是一种错过。

该警告对话框确实可以使用直接链接到设置文件的方式来使其无缝打开以进行编辑。 同样,检测到何时只有对设置文件进行更改才能使其再次有效,该更改是从globals起吊起东西,并自动修补了设置文件。 总体上来说并没有什么大不了的,但是就UX / DX而言却是一种错过。

您也可以只从“终端”选项卡的向下箭头中访问它,然后单击“设置”。

该警告对话框确实可以使用直接链接到设置文件的方式来使其无缝打开以进行编辑。 同样,检测到何时只有对设置文件进行更改才能使其再次有效,该更改是从globals起吊起东西,并自动修补了设置文件。 总体上来说并没有什么大不了的,但是就UX / DX而言却是一种错过。

您也可以只从“终端”选项卡的向下箭头中访问它,然后单击“设置”。

这是对我有帮助的作品,我希望能在原始帖子中提及。 谢谢。

我从Microsoft Store获得终端机,并设法通过复制原始settings.json内容,删除它并将“配置文件”块中的行粘贴到新的JSON中来解决此问题,同时保留了控制台主题:

[
        {
            "acrylicOpacity" : 0.5,
            "background" : "#012456",
            "closeOnExit" : true,
            "colorScheme" : "Campbell",
            "commandline" : "powershell.exe",
            "cursorColor" : "#FFFFFF",
            "cursorShape" : "bar",
            "fontFace" : "Consolas",
            "fontSize" : 10,
            "guid" : "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
            "historySize" : 9001,
            "icon" : "ms-appx:///ProfileIcons/{61c54bbd-c2c6-5271-96e7-009a87ff44bf}.png",
            "name" : "Windows PowerShell",
            "padding" : "0, 0, 0, 0",
            "snapOnInput" : true,
            "startingDirectory" : "%USERPROFILE%",
            "useAcrylic" : false
        },
        {
            "acrylicOpacity" : 0.75,
            "closeOnExit" : true,
            "colorScheme" : "Campbell",
            "commandline" : "cmd.exe",
            "cursorColor" : "#FFFFFF",
            "cursorShape" : "bar",
            "fontFace" : "Consolas",
            "fontSize" : 10,
            "guid" : "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
            "historySize" : 9001,
            "icon" : "ms-appx:///ProfileIcons/{0caa0dad-35be-5f56-a8ff-afceeeaa6101}.png",
            "name" : "cmd",
            "padding" : "0, 0, 0, 0",
            "snapOnInput" : true,
            "startingDirectory" : "%USERPROFILE%",
            "useAcrylic" : true
        },
        {
            "guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b8}",
            "hidden": false,
            "name": "Azure Cloud Shell",
            "source": "Windows.Terminal.Azure"
        }
    ],
    "schemes" : 
    [
        {
            "background" : "#0C0C0C",
            "black" : "#0C0C0C",
            "blue" : "#0037DA",
            "brightBlack" : "#767676",
            "brightBlue" : "#3B78FF",
            "brightCyan" : "#61D6D6",
            "brightGreen" : "#16C60C",
            "brightPurple" : "#B4009E",
            "brightRed" : "#E74856",
            "brightWhite" : "#F2F2F2",
            "brightYellow" : "#F9F1A5",
            "cyan" : "#3A96DD",
            "foreground" : "#CCCCCC",
            "green" : "#13A10E",
            "name" : "Campbell",
            "purple" : "#881798",
            "red" : "#C50F1F",
            "white" : "#CCCCCC",
            "yellow" : "#C19C00"
        },
        {
            "background" : "#282C34",
            "black" : "#282C34",
            "blue" : "#61AFEF",
            "brightBlack" : "#5A6374",
            "brightBlue" : "#61AFEF",
            "brightCyan" : "#56B6C2",
            "brightGreen" : "#98C379",
            "brightPurple" : "#C678DD",
            "brightRed" : "#E06C75",
            "brightWhite" : "#DCDFE4",
            "brightYellow" : "#E5C07B",
            "cyan" : "#56B6C2",
            "foreground" : "#DCDFE4",
            "green" : "#98C379",
            "name" : "One Half Dark",
            "purple" : "#C678DD",
            "red" : "#E06C75",
            "white" : "#DCDFE4",
            "yellow" : "#E5C07B"
        },
        {
            "background" : "#FAFAFA",
            "black" : "#383A42",
            "blue" : "#0184BC",
            "brightBlack" : "#4F525D",
            "brightBlue" : "#61AFEF",
            "brightCyan" : "#56B5C1",
            "brightGreen" : "#98C379",
            "brightPurple" : "#C577DD",
            "brightRed" : "#DF6C75",
            "brightWhite" : "#FFFFFF",
            "brightYellow" : "#E4C07A",
            "cyan" : "#0997B3",
            "foreground" : "#383A42",
            "green" : "#50A14F",
            "name" : "One Half Light",
            "purple" : "#A626A4",
            "red" : "#E45649",
            "white" : "#FAFAFA",
            "yellow" : "#C18301"
        },
        {
            "background" : "#002B36",
            "black" : "#073642",
            "blue" : "#268BD2",
            "brightBlack" : "#002B36",
            "brightBlue" : "#839496",
            "brightCyan" : "#93A1A1",
            "brightGreen" : "#586E75",
            "brightPurple" : "#6C71C4",
            "brightRed" : "#CB4B16",
            "brightWhite" : "#FDF6E3",
            "brightYellow" : "#657B83",
            "cyan" : "#2AA198",
            "foreground" : "#839496",
            "green" : "#859900",
            "name" : "Solarized Dark",
            "purple" : "#D33682",
            "red" : "#DC322F",
            "white" : "#EEE8D5",
            "yellow" : "#B58900"
        },
        {
            "background" : "#FDF6E3",
            "black" : "#073642",
            "blue" : "#268BD2",
            "brightBlack" : "#002B36",
            "brightBlue" : "#839496",
            "brightCyan" : "#93A1A1",
            "brightGreen" : "#586E75",
            "brightPurple" : "#6C71C4",
            "brightRed" : "#CB4B16",
            "brightWhite" : "#FDF6E3",
            "brightYellow" : "#657B83",
            "cyan" : "#2AA198",
            "foreground" : "#657B83",
            "green" : "#859900",
            "name" : "Solarized Light",
            "purple" : "#D33682",
            "red" : "#DC322F",
            "white" : "#EEE8D5",
            "yellow" : "#B58900"
        }
    ]

真痛苦感谢新生成的settings.json的评论,但旧版本中的直接复制/粘贴无效。 无法使用配色方案,现在它们迫使您启用已启用的Azure Cloud Shell配置文件。 将其注释掉,保存,然后立即弹出。
image

从#5611

哇,如果您的设置文件中包含colorscheme,则必须在很长一段时间以前安装了Terminal。 感谢您在预览过程中坚持这么长时间❤️!

如您所知,不赞成使用colorscheme键,而推荐使用colorScheme。 在很大程度上,我们使用#5458跟踪所有“升级到0.11破坏了我的设置”错误,因此,我将关闭该线程作为副本。

谢谢!


也许尝试从#5684更改"hidden": false 🤔:

注意:启动时,如果启用了动态配置文件生成器,它将始终将检测到的新配置文件添加到您的配置文件列表中。 如果您从配置文件列表中删除动态生成的配置文件,它将在下次启动终端时重新添加! 要从配置文件列表中删除动态配置文件,请确保在配置文件中设置"hidden": true

黑色是新的默认设置吗? 重新生成的settings.json不包含任何配色方案。

@ tomm1e这完全是故意的。 我们认为每个用户都不需要在其设置文件中看到每个默认方案的完整副本,因此我们将其移至defaults.json 。 您仍然可以在该文件中使用这些方案。

因此,在全新安装Terminal之后, settings.json文件包含一堆URL引用。 但是,大多数方法都无济于事。 自1.0临近以来,是否可以为了人们实际尝试这些URL而进行这些更改? :)

| 参考网址| 导致| 应该是
| --- | --- | --- |
| https://aka.ms/terminal-documentation | https://github.com/microsoft/terminal/blob/master/doc/user-docs/index.md | https://github.com/microsoft/terminal/blob/master/doc/user-docs/UsingJsonSettings.md |
| https://aka.ms/terminal-global-settings | https://github.com/microsoft/terminal/blob/master/doc/user-docs/index.md | https://github.com/microsoft/terminal/blob/master/doc/user-docs/UsingJsonSettings.md#global -settings |
| https://aka.ms/terminal-profile-settings | https://github.com/microsoft/terminal/blob/master/doc/user-docs/index.md | https://github.com/microsoft/terminal/blob/master/doc/user-docs/UsingJsonSettings.md#profiles |
| https://aka.ms/terminal-color-schemes | https://github.com/microsoft/terminal/blob/master/doc/user-docs/index.md | https://github.com/microsoft/terminal/blob/master/doc/user-docs/UsingJsonSettings.md#color -schemes |
| https://aka.ms/terminal-keybindings | https://github.com/microsoft/terminal/blob/master/doc/user-docs/index.md | https://github.com/microsoft/terminal/blob/master/doc/user-docs/UsingJsonSettings.md#key -bindings |
| https://aka.ms/terminal-selection | https://github.com/microsoft/terminal/blob/master/doc/user-docs/index.md | https://github.com/microsoft/terminal/blob/master/doc/user-docs/index.md#selecting -and-copying-text-in-windows-terminal |
| https://aka.ms/terminal-panes | https://github.com/microsoft/terminal/blob/master/doc/user-docs/index.md | ? |

这些链接_going_去的地方有用很快TM。 在我们对实际文档进行最后修饰时,请忍受我们us

@ zadjii-msft感谢您的更新。 作为我自己的技术作家,当文档似乎被遗忘时,我总是会感到恼火。 😅

我注意到该博客文章谈论使用{ "command": { "action": "copy", "singleLine": true ), "keys": "ctrl+alt+c" }来恢复单行复制功能,但是没有指示如何像以前那样由copyFormatting进行选择时恢复它的复制。 是否可以单行复制但保留copyFormatting: false

例如。

  • 选择由于窗口大小而分成多行的文本
  • 粘贴ctrl-shift-v
  • 它分成换行符

我们应该将其记录为IMO,但尚不清楚copyFormatting会影响单行粘贴,以及在可能的情况下如何修复它。

copyFormatting不会影响select上的单行粘贴或复制。 copyOnSelect影响所选内容的副本。

由于窗口大小而将文本分成换行符的原因是_bug_,因此解决方案不是将singleLine为true。

您是否有特定的复制程序导致多行文本损坏?

(有三个独立的复制标志。 copyOnSelect确定是否在释放鼠标左键时复制文本, copyFormatting确定是否复制带有颜色信息的文本, singleLine确定是否复制文本。 _所有换行符都被删除,即使它们是有意的_。)

@ DHowett-MSFT我理解关于不同选项的情况,但是似乎有一个错误会通过将copyFormattingtrue来影响它及其“修复”。

对我来说,Repro对我来说真的很简单,我什至可以动态地切换它并使其损坏/修复。

~
❯ echo this is a really long command that shouldnotbe breaking when copy paste
this is a really long command that shouldnotbe breaking when copy paste

~
❯ echo this is a really long command that shouldnotbe breakin

this is a really long command that shouldnotbe breakin

~
❯ g when copy paste
git: 'when' is not a git command. See 'git --help'.

The most similar commands are
        clean
        clone
        prune
        shell

~
❯

如您在该输出上看到的,粘贴时,该行被拆分为多行,并作为2条命令运行。

  • 在控制台中键入一个很长的行,该行会折断成多行(或制作一个较小的控制台)
  • 选择文字
  • 粘贴为ctrl+shif+vctrl-vright click或任何粘贴
  • 它运行2个命令

  • copyFormatting切换true

  • 照着做
  • 不破

请注意,即时消息不是使用ctrl+cctrl+shift+c复制,而是选择复制。

供参考,这是我的相关配置:

{
  "$schema": "https://aka.ms/terminal-profiles-schema",
  "defaultProfile": "{01751d96-d6f8-573f-8029-e581f2f7c955}",
  "copyFormatting": false,
  "profiles": {
    "defaults": {
      "historySize": 9001,
      "fontFace": "Fira Code",
      "fontSize": 12,
      "useAcrylic": true,
      "acrylicOpacity": 0.85
    },
    "list": [
      ...
    ]
  },
  "schemes": [
    ...
  ],
  "keybindings": [
    {
      "command": {
        "action": "copy",
        "singleLine": true
      },
      "keys": "ctrl+c"
    },
    {
      "command": {
        "action": "adjustFontSize",
        "delta": -1
      },
      "keys": "ctrl+-"
    },
    {
      "command": {
        "action": "adjustFontSize",
        "delta": 1
      },
      "keys": "ctrl+="
    }
  ]
}

好的,很奇怪,当我在创建此注释时刚刚执行此操作时,它导致我粘贴了输出(虚线),并且自更新以来发生了多次。 之后,我再次运行它,只是为了检查其他情况,它是否正常运行,这让我现在真的很困惑。

为什么还没有用于更改设置的GUI的任何原因?

@ScribbleNerd,因为要花很

是的,听起来并不屈尊,但它是cli主管人员的cli工具,因此,对核心功能和cli用户功能进行操作要有意义得多,而不是试图使其简单易用,只需点一下即可漂亮-至少直到所有主要的事情都做完了,为html链接处理程序投票haha

我仅在上一版本中将默认配置文件更改为cmd.exe。 然后今天更新后,它一次又一次地向我显示全局弃用的错误。

如果检测到较旧的格式,如何自动转换文件:查看格式更改似乎是可能的。

看到这个问题有多评论,我认为这可以解决很多人的问题。

不得不说,我发现这对处于GA状态的产品造成了极大的打击。
对于具有破坏性的变更版本,自动迁移这些东西似乎是最低限度的。

处于GA状态

只有使用预览版的人会遇到重大更改。 预览版本不提供任何担保(明示或暗示)。

对不起,这很烦人。 已计划对需要设置模型更改的对稳定通道的任何更新进行设置迁移。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

mrmlnc picture mrmlnc  ·  3评论

carlos-zamora picture carlos-zamora  ·  3评论

waf picture waf  ·  3评论

warpdesign picture warpdesign  ·  3评论

ghvanderweg picture ghvanderweg  ·  3评论