Terminal: MEGATHREAD: Критические изменения настроек в версии 0.11!

Созданный на 22 апр. 2020  ·  72Комментарии  ·  Источник: microsoft/terminal

ВЫКЛЮЧЕНИЕ ИЗМЕНЕНИЙ НАСТРОЕК В 0.11

  • ПРЕРЫВАНИЕ ИЗМЕНЕНИЙ Мы удалили много устаревших настроек обработки (# 5190)

    • Пожалуйста, прочтите нашу запись в блоге и самое последнее обновление статуса для получения дополнительной информации.

    • Если у вас были настройки в словаре globals , вы захотите переместить их.



      • УСТРАНЕНИЕ : переместите все из globals в корень файла настроек и удалите пустой объект globals .


      • Если этого не сделать, мы проигнорируем ваш профиль по умолчанию, режим запуска и т. Д. И т. Д.


      • ЭТО ВКЛЮЧАЕТ defaultProfile



    • requestedTheme был переименован в theme (# 5265)

  • profiles.json переименовано в settings.json . Это должно быть прозрачно для вас, поскольку мы переименуем его при первом запуске (# 5199).

    • В качестве побочного эффекта мы, наконец, перестанем восстанавливать старые перемещаемые профили до версии 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.json global не были автоматически перемещены на корневой уровень после обновления? Вы переносите конфигурацию несколько раз, что хорошо, но не в этот раз.

У меня самого была эта проблема, и я попал в # 5489, хотя я просмотрел журнал изменений перед обновлением, но не заметил, что мне действительно нужно что-то изменить в моей конфигурации: немного_smiling_face:

Все 72 Комментарий

Из любопытства, по какой причине значения settings.json global не были автоматически перемещены на корневой уровень после обновления? Вы переносите конфигурацию несколько раз, что хорошо, но не в этот раз.

У меня самого была эта проблема, и я попал в # 5489, хотя я просмотрел журнал изменений перед обновлением, но не заметил, что мне действительно нужно что-то изменить в моей конфигурации: немного_smiling_face:

Если у вас были настройки в глобальном словаре, вы захотите переместить их.
Если этого не сделать, мы проигнорируем ваш профиль по умолчанию, режим запуска и т. Д. И т. Д.
ЭТО ВКЛЮЧАЕТ профиль по умолчанию

Возможно, вы захотите перефразировать это словосочетанием «убрать их», поскольку это никому не говорит достаточно. Быть конкретной:

... вам нужно будет переместить их в корневой объект 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. Прямо сейчас я думаю, что эти старые привязки заменяют привязки по умолчанию их более неэффективными устаревшими версиями, и вы можете просто удалить их.

Но вот выход получше:

Судя по всем привязкам клавиш, формату и профилям, содержащим все параметры конфигурации, похоже, что этот файл настроек предшествует версии 0.2. Я действительно думаю, что это здорово, что вы были с нами так долго (с момента нашего первого публичного релиза!) Спасибо! Версии Терминала после 0.5 содержат новый крутой шаблон настроек, который более оптимизирован и немного лучше документирован. Теперь есть набор «стандартных» настроек, которые находятся в пакете терминала, и ваши настройки применяются поверх них.

Это ни в коем случае не является обязательным требованием, но в целом вы можете быть немного счастливее, если потратите пару минут на миграцию.

  1. переместите свой старый файл настроек в сторону
  2. пусть Терминал создаст новый (автоматически при запуске)
  3. скопируйте привязки клавиш, которые вам нужны (поскольку вы используете настройки до 0.2, вам может быть небезразлично, что Ctrl + W и Ctrl + T привязаны к закрытию / открытию вкладки (это было плохое решение, которое мы приняли почти год назад ).
  4. скопируйте некоторые профили, которые вам интересны.

Изменение модели настроек с 0.5 означает, что вам не нужно указывать каждую опцию в каждом профиле, и вам не нужно быть настолько агрессивным при настройке всего.

Я попытался это сделать - это должно быть эквивалентно вашим старым настройкам, но с удалением целой кучи устаревшего мусора.

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

Я не знал, использовали ли вы alt + N для переключения вкладок, но это были некоторые из старых привязок клавиш в ваших настройках, и я не хотел их топтать: smile:
Куча ваших "дублированных" настроек перемещена в группу "defaults" ... точно сокращает повторяющиеся строки.

Отличительной чертой старого (версия 0.2) файла настроек является привязка ctrl + w к closeTab (она закрывает всю вкладку, даже если внутри нее есть панели). Современная привязка - Ctrl + Shift + W для closePane , которая закрывает только активную область с фокусом.

Ха, я тоже тем временем сделал это (я обновил переключатели alt + tab, поскольку я их использовал). Я тоже посмотрю на ваше мнение. Эта машина на самом деле не является моим драйвером для повседневной работы (в отличие от, я полагаю, большинства людей, коробка Windows - это игра, и я зарабатываю себе на хлеб с маслом на рабочем столе Linux), так что, возможно, я не обновил все это раньше.

Вот довольно дословный перевод моего файла настроек на новую схему (с изменениями здесь и там, чтобы использовать некоторые новые, ранее недоступные настройки), из моего быстрого теста все они работают после того, как я изменил целевые команды и формат. Я также посмотрю на вставленную вами "не устаревшую" версию (я не хочу, чтобы мои нестандартные привязки привязывались) и, возможно, сделаю какую-нибудь комбинацию для будущего использования.

Спасибо за помощь, и мне очень нравится программа. Он полностью заменил ConEmu в качестве эмулятора терминала для меня в Windows.

Спасибо за помощь, и мне очень нравится программа. Он полностью заменил ConEmu в качестве эмулятора терминала для меня в Windows.

Рад это слышать, и мне очень жаль, что поездка на предварительном поезде была ухабистой 😅

При запуске обновления он попросил «Закройте все Windows», я нажал «Отмена».
Все равно закрылось ... W

Это не связано с этой проблемой, но я не думаю, что мы можем избежать этого. Я внимательно искал 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 для переключения вкладки, но это не работает. Только настройка по умолчанию, 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"
            ]
        },
        ...
]
...
}

Некоторые сочетания клавиш в этой конфигурации работают нормально, включая nextTab , closePane и так далее. Но switchToTab0 не сработало.

switchToTab0 .. switchToTab9 в привязке клавиш были нарушены

@TeoTN Конечно, было - проверьте этот пост для получения дополнительной информации: https://github.com/microsoft/terminal/issues/3600#issuecomment -608654738

Устаревшая настройка | Настройка замены
- | -
switchToTab0 - switchToTab8 | { "command": { "action": "switchToTab", "index": NUMBER }, "keys": "ctrl+alt+NUMBER" }

@TeoTN Конечно, было - проверьте этот пост для более подробной информации: # 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 Конечно, было - проверьте этот пост для более подробной информации: # 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 можно использовать с моей стороны. ИМО, новая структура команд более ясна 👍

Я скажу, что необходимо увеличить значение NUMBER для ключа "keys" сравнению с ключом "index" , например

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

Это немного странно, однако, я подозреваю, что у этого выбора есть веская причина. Документирование здесь на случай, если это не так.

Я скажу, что необходимость увеличивать ЧИСЛО для ключа "keys" по сравнению с ключом "index" ... немного странно, однако я подозреваю, что у этого выбора есть веская причина.

Есть! Нам нужны аргументы с нулевым индексом, потому что _мы не монстры_, но мы также хотели использовать alt + 1 как «перейти на первую вкладку», потому что (по крайней мере, на раскладках клавиатуры en-us) 1 - это _ первая_ цифровая клавиша на слева. Таким образом, первая вкладка находится на первой цифровой клавише, вторая вкладка - на второй цифровой клавише и т. Д.

@TeoTN Конечно, было - проверьте этот пост для более подробной информации: # 3600 (комментарий)

Устаревшая настройка
Настройка замены

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

Так это же опыт, который продвигает Windows Terminal? Вы представляете, например, что iTerm2 на MacOS молча нарушает ваши настройки с помощью автообновления и говорит: «Да, мы сломали это, вперед»? Почему бы вам не перенести это автоматически для пользователей?

Так это же опыт, который продвигает Windows Terminal?

_iTerm2 - это не предварительная версия программы. Терминал Windows (предварительная версия) ._

Так это же опыт, который продвигает Windows Terminal?

_iTerm2 - это не предварительная версия программы. Терминал Windows (предварительная версия) ._

Таким образом, у вас нет пользователей, пытающихся привыкнуть к этому, и вы можете молча сломать их среду, потому что «это предварительный просмотр» и, возможно, «вы могли бы найти это, если бы читали все комментарии и обновления на нашей странице GitHub»?

Даже название этой ветки ... Вы знали, что нарушите среду людей, и перед обновлением не было никаких предупреждений, никаких сообщений, помогающих подключиться, никаких усилий по _auto-migrate_. Это просто «мы ломаем вещи и разбираемся с этим». Я считаю, что это ужасный пользовательский опыт.

просто подумал, что id сказать, что хотя мой профиль не был сломан - поведение ctrl-shift-v теперь приводит к сбою. wsl продолжает работать в фоновом режиме, но терминал дает сбой, и это немного раздражает, хахаха. как Linux человек ctrl shift v - это мышечная память :( lol

Вау, этого точно не должно быть.

хотите, чтобы я что-нибудь сделал?

может воспроизводить его последовательно в настоящее время (хотя перезагружено не было)

Пожалуйста, отправьте отдельный вопрос. Благодаря! Если возможно, укажите ссылку на концентратор отзывов.

собственно nvm - это у меня плохо! Я только что понял, что это вызвано моим неподдерживаемым вариантом использования. он не делает этого при первом запуске - он делает это в результате копирования и вставки изнутри сеанса x при xming в консоль с помощью ctrl shift v. Я пока не сообщу об ошибке, пока у меня не будет точной информации. спасибо за быстрый ответ!

@ DHowett-MSFT (re: название выпуска) lol, это именно то, что я чувствовал, но я нашел это и все разобрал. Реорганизация кажется намного чище.

после этого обновления мой шрифт по умолчанию был изменен, и самое главное я не могу использовать switchToTab0, switchToTab1... сочетания клавиш

Я установил ctrl + Num для переключения вкладки, но это не работает. Только настройка по умолчанию, 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

Похоже, проблема в конфигурации вашей оболочки. WT не изменил способ запуска WSL, а WSL не изменил способ запуска вашей оболочки.

См. Эту страницу для получения дополнительной информации ... Между тем на этой странице нет документации о том, как исправить ошибку предупреждения .... # 3145

Между тем на этой странице нет документации о том, как исправить ошибку предупреждения.

А?

image

image

image

???

Расположение файла?

Там же, где вы обычно настраиваете свои параметры - в файле, открытом с помощью пункта меню Settings или %LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json .

Мы исключили это из документации, потому что предполагали, что люди знают, как получить доступ к своим файлам настроек.

Полагаю, я отсталый, потому что я не знаю, что входит и выходит из терминала Windows 0.11.1191.0, иначе вы могли бы просто сделать документацию лучше ..

Как я могу определить, какой файл пользовательских настроек, который Windows Terminal пытается загрузить, содержит устаревшие глобальные настройки? Я искал Profile.ps1 и Microsoft.PowerShell_profile.ps1 безрезультатно.

Вы можете перейти к файлу настроек терминала, открыв меню +v (нажав v )

Вы можете перейти к файлу настроек терминала, открыв меню +v (нажав v )

Спасибо за оперативный ответ. Однако файл settings.json выглядит нормально. Ошибка возникает при запуске Windows Terminal и отображается следующее.

Свойство "globals" устарело - возможно, потребуется обновить ваши настройки. Для получения дополнительной информации см. Эту веб-страницу.
terminal

Итак, если вы никогда не редактировали свои настройки в Терминале, возможно, будет лучше просто удалить содержимое этого файла. Если у вас есть, и вы хотите сохранить свои настройки, вы можете удалить строку «глобальные переменные {« и эквивалентную «}» в конце глобальных переменных. Посмотрите раздел «если ваш файл выглядит так ...» вверху страницы.

Итак, если вы никогда не редактировали свои настройки в Терминале, возможно, будет лучше просто удалить содержимое этого файла. Если у вас есть, и вы хотите сохранить свои настройки, вы можете удалить строку «глобальные переменные {« и эквивалентную «}» в конце глобальных переменных. Посмотрите раздел «если ваш файл выглядит так ...» вверху страницы.

Решено, спасибо за оперативную поддержку!

В этом диалоговом окне с предупреждением действительно можно было использовать прямую ссылку на файл настроек, чтобы его было проще открыть для редактирования. Кроме того, могло быть реализовано определение того, когда единственное изменение в файле настроек, необходимое для того, чтобы снова сделать его действительным, заключалось в том, чтобы поднять материал с globals up, и файл настроек был автоматически исправлен. В целом это не имеет большого значения, но с точки зрения UX / DX кажется упущением.

В этом диалоговом окне с предупреждением действительно можно было использовать прямую ссылку на файл настроек, чтобы его было проще открыть для редактирования. Кроме того, могло быть реализовано определение того, когда единственное изменение в файле настроек, необходимое для того, чтобы снова сделать его действительным, заключалось в том, чтобы поднять материал с globals up, и файл настроек был автоматически исправлен. В целом это не имеет большого значения, но с точки зрения UX / DX кажется упущением.

Вы также можете просто получить к нему доступ, нажав стрелку вниз на вкладке Терминал и щелкнув настройки.

В этом диалоговом окне с предупреждением действительно можно было использовать прямую ссылку на файл настроек, чтобы его было проще открыть для редактирования. Кроме того, могло быть реализовано определение того, когда единственное изменение в файле настроек, необходимое для того, чтобы снова сделать его действительным, заключалось в том, чтобы поднять материал с globals up, и файл настроек был автоматически исправлен. В целом это не имеет большого значения, но с точки зрения 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 устарел и заменен на colorScheme. В основном, мы отслеживаем все ошибки «обновление до 0.11 нарушило мои настройки» с # 5458, поэтому я закрою эту ветку как дублирующую.

Благодаря!


Возможно, попробуйте изменить "hidden": false 🤔 с # 5684:

👉 ПРИМЕЧАНИЕ . При запуске, если генератор динамических профилей включен, он всегда будет добавлять новые профили, которые он обнаруживает, в ваш список профилей. Если вы удалите динамически сгенерированный профиль из своего списка профилей, он будет снова добавлен при следующем запуске Терминала! Чтобы удалить динамический профиль из вашего списка профилей, обязательно установите в профиле "hidden": true .

Черный - новый вариант по умолчанию? Восстановленный файл settings.json не содержит цветовых схем.

@ tomm1e Это defaults.json . Вы все еще можете использовать схемы из этого файла.

Итак, после новой установки Терминала файл settings.json содержит кучу URL-ссылок. Однако большинство из них ни к чему не приводят. Могут ли эти изменения быть внесены для людей, которые действительно пробуют эти URL-адреса, поскольку приближается 1.0? :)

| ref 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 | ? |

Эти ссылки _ уходят_ в какое-нибудь полезное место Soon TM . Пожалуйста, проявите терпение, пока мы дорабатываем документы

@ zadjii-msft Спасибо за это обновление. Я, как технический писатель, всегда нервничаю, когда кажется, что о документации забывают. 😅

Я заметил, что в статье блога говорится об использовании таких вещей, как { "command": { "action": "copy", "singleLine": true ), "keys": "ctrl+alt+c" } для восстановления функции копирования одной строки, но нет указаний на то, как восстановить его для копирования при выборе, как это было ранее сделано copyFormatting . Можно ли скопировать как одну строку, но оставить copyFormatting: false ?

например.

  • Выделите текст, который разбивается на несколько строк из-за размера окна
  • Вставить с помощью ctrl-shift-v
  • Он разбивается на новые строки

Мы должны задокументировать это, поскольку ИМО не ясно, что copyFormatting влияет на вставку одной строки и, если возможно, как это исправить.

copyFormatting не влияет на однострочную вставку _или_ копирование при выборе. copyOnSelect влияет на копию при выборе.

Текст, разбитый на новые строки из-за размера окна, происходит из-за _bug_, и решение не состоит в том, чтобы установить для singleLine значение true.

У вас есть конкретная репродукция, которая вызывает битый многострочный текст?

(Существует три независимых флага копирования. copyOnSelect определяет, копируется ли текст при отпускании левой кнопки мыши, copyFormatting определяет, копируется ли текст с информацией о цвете, а singleLine определяет, будет ли _все символы новой строки удаляются, даже если они были преднамеренными.)

@ DHowett-MSFT Я понимаю, что это относится к различным параметрам, но, похоже, есть ошибка, которая влияет на это и ее «исправляют», установив copyFormatting на true .

Воспроизведение для меня очень просто для меня, и я даже могу динамически переключать его, чтобы он сломался / исправился.

~
❯ 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+v или ctrl-v или right click или что-то еще.
  • Выполняет 2 команды

  • Переключить copyFormatting на true

  • Сделать то же самое
  • Не ломается

Обратите внимание, что я не копирую с помощью ctrl+c или ctrl+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+="
    }
  ]
}

Хорошо, как ни странно, хотя я только что сделал это при создании этого комментария, и это вызвало вставленный мной результат (прерывистая линия), и это происходило несколько раз с момента обновления. Я просто запустил его еще раз, просто чтобы проверить другие случаи, и он работал правильно, что меня сейчас действительно смущает.

По какой причине у нас еще нет графического интерфейса для изменения настроек?

@ScribbleNerd, потому что на это уйдут месяцы работы, которую мы не сможем завершить, пока не овладеем основами работы терминалом? Эта работа отслеживается в № 1564.

да, не хочу показаться снисходительным, но это инструмент cli для компетентных людей, поэтому гораздо больше смысла работать над основными функциями и функциями пользователя cli, а не пытаться упростить задачу и щелкнуть, чтобы сделать красивое - по крайней мере, пока все главное сделано, голосование за обработчик HTML-ссылок, ха-ха

Я только изменил профиль по умолчанию на cmd.exe в последней версии. затем сегодня после обновления он снова и снова показывает мне глобальную устаревшую ошибку.

Как насчет автоматического преобразования файла, если обнаружен более старый формат: видя изменения формата, это кажется возможным.

Видя, насколько полон комментариев по этой проблеме, я думаю, что это могло бы решить проблемы для многих людей.

Должен сказать, я нашел это чрезвычайно неприятным для продукта, который находится в статусе GA.
Автоматическая миграция таких вещей кажется довольно простым минимумом для выпуска критических изменений.

находится в статусе GA

Только люди, которые использовали предварительную сборку, столкнутся с критическими изменениями. Предварительная сборка предлагалась без каких-либо гарантий (явных или подразумеваемых).

Мне жаль, что это было неприятно. Перенос настроек планируется для любых обновлений стабильного канала, требующих изменения модели настроек.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги