Сочетание клавиш VSCode для опционального запуска keepEditor при использовании quickOpen? - PullRequest
0 голосов
/ 04 октября 2018

VSCode по умолчанию связывает cmd+p с workbench.action.quickOpen.Что хорошо.Моя единственная проблема заключается в том, что когда вы подтверждаете quickOpen в файле, используя enter, он открывает файл в режиме «предварительного просмотра» (обозначается именем вкладки с курсивным шрифтом).Этот режим «предварительного просмотра» означает, что если я открою два файла подряд, используя cmd+p, действие по открытию второго займет слот «предварительного просмотра», что фактически закроет предварительный просмотр первого файла.

VSCode имеет настройку под названием workbench.editor.enablePreviewFromQuickOpen, которую можно использовать для глобального изменения этого поведения.Но я не хочу менять это глобально.Вы также можете вручную переместить файл из режима предварительного просмотра, используя workbench.action.keepEditor, который по умолчанию связан с cmd+k+enter.Но это отвратительный дополнительный шаг.

Я хотел бы выборочно решить, когда я хочу открыть в режиме «предварительного просмотра» или в режиме «редактирования».В идеале я хотел бы связать что-то вроде shift+enter, чтобы сделать это.В моем keybindings.json пробовали варианты на

{
    "key": "shift+enter",
    "command": "workbench.action.keepEditor",
    "when": "inFilesPicker && inQuickOpen"
}

, но безуспешно: (

Ответ на этот вопрос ПОЧТИ делает то, что я хочу: vscode: открыть файл вместопредварительный просмотр файла из быстрого открытия

Предлагаемое решение использования alt+enter открывает файл в новом окне. Нет bueno.

Предлагаемое решение использования клавиши со стрелкой вправо для открытияфайл работает ... но он не закрывает палитру команд, как при нажатии Enter. No bueno.

1 Ответ

0 голосов
/ 01 февраля 2019

Полагаю, вам придется использовать расширение макроса, например multi-command .В вашем файле settings.json:

"multiCommand.commands": [
  {
    "command": "multiCommand.openFileNotInPreview",
    "sequence": [
      "workbench.action.acceptSelectedQuickOpenItem",
      "workbench.action.keepEditor",
    ]
  }
]

В файле keybindings.json определенное связывание клавиш:

{
  "key": "shift+right",
  "command": "multiCommand.openFileNotInPreview",    
  "when": "inFilesPicker && inQuickOpen"
},

Я использовал "shift+right", ваш "shift+enter", похоже, столкнулся с конфликтами и не будетработа.

Откроется выбранный файл на панели Ctrl - P в новом редакторе в той же группе редакторов, и он не будет находиться в режиме предварительного просмотра.

...