統合端末をCMDER
に変更したい。Windows8.1でVscodeを使用する
//外部端末
// Customizes which terminal to run on Windows.
"terminal.external.windowsExec": "%COMSPEC%",
// Customizes which terminal application to run on OS X.
"terminal.external.osxExec": "Terminal.app",
// Customizes which terminal to run on Linux.
"terminal.external.linuxExec": "xterm",
//統合ターミナル
// The path of the Shell that the terminal uses on Linux.
"terminal.integrated.Shell.linux": "sh",
// The command line arguments to use when on the Linux terminal.
"terminal.integrated.shellArgs.linux": [],
// The path of the Shell that the terminal uses on OS X.
"terminal.integrated.Shell.osx": "sh",
// The command line arguments to use when on the OS X terminal.
"terminal.integrated.shellArgs.osx": [],
// The path of the Shell that the terminal uses on Windows. When using shells shipped with Windows (cmd, PowerShell or Bash on Ubuntu), prefer C:\Windows\sysnative over C:\Windows\System32 to use the 64-bit versions.
"terminal.integrated.Shell.windows": "C:\\Windows\\system32\\cmd.exe",
// The command line arguments to use when on the Windows terminal.
"terminal.integrated.shellArgs.windows": [],
// Controls the font family of the terminal, this defaults to editor.fontFamily's value.
"terminal.integrated.fontFamily": "",
// Controls whether font ligatures are enabled in the terminal.
"terminal.integrated.fontLigatures": false,
// Controls the font size in pixels of the terminal, this defaults to editor.fontSize's value.
"terminal.integrated.fontSize": 0,
// Controls the line height of the terminal, this number is multipled by the terminal font size to get the actual line-height in pixels.
"terminal.integrated.lineHeight": 1.2,
// Controls whether the terminal cursor blinks.
"terminal.integrated.cursorBlinking": false,
// Controls whether locale variables are set at startup of the terminal, this defaults to true on OS X, false on other platforms.
"terminal.integrated.setLocaleVariables": false,
// A set of command IDs whose keybindings will not be sent to the Shell and instead always be handled by Code. This allows the use of keybindings that would normally be consumed by the Shell to act the same as when the terminal is not focused, for example ctrl+p to launch Quick Open.
"terminal.integrated.commandsToSkipShell": [
"editor.action.toggleTabFocusMode",
"workbench.action.debug.continue",
"workbench.action.debug.restart",
"workbench.action.debug.run",
"workbench.action.debug.start",
"workbench.action.debug.stop",
"workbench.action.quickOpen",
"workbench.action.showCommands",
"workbench.action.terminal.clear",
"workbench.action.terminal.copySelection",
"workbench.action.terminal.focus",
"workbench.action.terminal.focusNext",
"workbench.action.terminal.focusPrevious",
"workbench.action.terminal.kill",
"workbench.action.terminal.new",
"workbench.action.terminal.paste",
"workbench.action.terminal.runSelectedText",
"workbench.action.terminal.scrollDown",
"workbench.action.terminal.scrollDownPage",
"workbench.action.terminal.scrollToBottom",
"workbench.action.terminal.scrollToTop",
"workbench.action.terminal.scrollUp",
"workbench.action.terminal.scrollUpPage",
"workbench.action.terminal.toggleTerminal"
],
Windowsで統合端末を変更するには、terminal.integrated.Shell.windows
行を変更するだけです。
"terminal.integrated.Shell.windows": "C:\\Bin\\Cmder\\Cmder.exe"
設定を右側のユーザー設定文書に追加します(まだない場合)。これは、デフォルト設定を直接編集するのではなく、代わりに追加するためです。その後、キーを使用してアクセスできます Ctrl+backtick デフォルトで。
これをVS Codeで動作させ、Cmderターミナルを統合する(ポップアップではない)ことができます。
そうするために:
"terminal.integrated.Shell.windows": "cmd.exe"
"terminal.integrated.shellArgs.windows": ["/k", "%CMDER_ROOT%\\vendor\\init.bat"]
遅れていることはわかっていますが、Ctrl + Shift + pを入力してからdefaultと入力するだけで、すぐにそれを達成できます。
ターミナル:デフォルトのシェルを選択
、利用可能なすべての端末が表示されます。
公式ドキュメント から
Windowsでシェルを正しく構成するには、適切な実行可能ファイルを見つけて設定を更新する必要があります。以下は、一般的なシェル実行可能ファイルとそのデフォルトの場所のリストです。
また、便利なコマンドがあり、これを検出して設定できるコマンドパレットからアクセスできるデフォルトシェルを選択します。
したがって、ctrl+shift+p
を使用してコマンドパレットを開き、コマンドを使用します。デフォルトシェルを選択して、使用可能なすべてのコマンドラインインターフェイスを表示し、選択します。あなたが望むものは何でも、VSコードはそれを自動的にデフォルトの統合端末として設定します。
手動で設定する場合は、CLIの実行可能ファイルの場所を見つけて、vscode(ctrl+,
)のユーザー設定を開き、設定します
"terminal.integrated.Shell.windows":"path/to/executable.exe"
Windows7でのgitbashの例:
"terminal.integrated.Shell.windows":"C:\\Users\\stldev03\\AppData\\Local\\Programs\\Git\\bin\\bash.exe",
公式の方法は VS Code docs で説明されています。これはkhernandsの回答に似ています。
CMDER_ROOT
をグローバル環境変数として設定したくない場合は、このバッチファイルで設定できます。さらに、最後の現在の作業ディレクトリへのcd
は、パスの問題を解決しました。
ただし、デフォルトの統合端末としてCMDER
の制限が1つありました。コマンドパレット-> VS Code UIの[タスクの実行]コマンド([ビルドタスクの実行]など)でタスクを実行する場合、機能しません。 。これについての詳細 here および here 。
この場合、特定のタスクにShell
を設定するだけです:
"tasks": [
{
"type": "TypeScript",
"tsconfig": "tsconfig.json",
"problemMatcher": [
"$tsc"
],
"options": {
"Shell": {
"executable": "cmd.exe",
"args": [
"/d", "/c"
]
}
}
}
]