コンソールの2x2グリッドを作成し、それを私のデフォルト設定にしたいのです。つまり、ConEmuを開いたときに、この設定がスタートアップ設定になります。私は以下のようなタスクを書きました:
> * cmd -cur_console:n
* powershell -cur_console:s1TVn
cmd/A/Q/K "C:\ dev\msys64\msys2_Shell.bat" -cur_console:s1THn
ghci.exe -cur_console:s2THn
問題は最後のコマンドにあります。始めたいmsys2
ですが、タスクを実行すると、3行目でコンソールが表示されますが、ConEmu内では実行されず、別のウィンドウとして開きます。この構成を修正するにはどうすればよいですか?
また、ConEmuを起動したときにこの構成をデフォルトとして設定するにはどうすればよいのでしょうか。一方、起動すると、単一のcmdコンソールしか取得できません。
msys2_Shell.bat
の中を見て答えを見つけてください。このバッチは、bashシェルの代わりにminttyを実行します。役に立たない。 3行目をbash.exe -l -i
へのフルパスに変更します。
conEmuを起動するときに、この構成をデフォルトとして設定するにはどうすればよいですか
ConEmuに「スタートアップ」設定ページがありますね。
また、MSYS2、MinGW32、MinGW64シェル(v2016-12-07)をConEmu v161206で動作させるのにも問題がありました。
私が見つけた唯一の(ハーフポータブル)作業ソリューションは次のとおりです。
MinGW64シェルのConEmuで、{Shells::mingw-64}
という名前の新しいタスクと次のコマンドを作成します。
set MSYSTEM=MINGW64 & set MSYSCON=conemu64.exe & "%ConEmuDir%\..\..\..\msys64\usr\bin\bash.exe" --login -i -new_console:C:"%ConEmuDir%\..\..\..\msys64\mingw64.exe"
MinGW32シェルのConEmuで、{Shells::mingw-32}
という名前の新しいタスクと次のコマンドを作成します。
set MSYSTEM=MINGW32 & set MSYSCON=conemu64.exe & "%ConEmuDir%\..\..\..\msys64\usr\bin\bash.exe" --login -i -new_console:C:"%ConEmuDir%\..\..\..\msys64\mingw32.exe"
MSYS2シェルのConEmuで、{Shells::msys2-64}
という名前の新しいタスクと次のコマンドを作成します。
set MSYSTEM=MSYS & set MSYSCON=conemu64.exe & "%ConEmuDir%\..\..\..\msys64\usr\bin\bash.exe" --login -i -new_console:C:"%ConEmuDir%\..\..\..\msys64\msys2.exe"
注意:上記の相対パスを変更して、システム上のMSYS2へのパスと一致させます。
ソリューションは、ConEmu実行可能ファイルを明示的に示しているため(x86の場合はConEmu.exe
に変更して)、移植性が半分です。
MSYSCON
環境変数の値が重要かどうかはわかりません。 MSYS2バッチファイルmsys2_Shell.cmd
も設定するため、安全のためにのみ設定しました。
別の方法は、msys2_Shell.cmd
バッチスクリプトを使用することです。このアプローチには、msys2_Shell.cmd
がWindowsのSTART
コマンドを介して新しいプロセスを生成するという大きな欠点があるため、ConEmuに2つのタブが追加されます。
MinGW64シェルのConEmuで、{Shells::mingw-64}
という名前の新しいタスクと次のコマンドを作成します。
"%ConEmuDir%\..\..\..\msys64\msys2_Shell.cmd" -mingw64 -conemu -new_console:C:"%ConEmuDir%\..\..\..\msys64\mingw64.exe"
MinGW32シェルのConEmuで、{Shells::mingw-32}
という名前の新しいタスクと次のコマンドを作成します。
"%ConEmuDir%\..\..\..\msys64\msys2_Shell.cmd" -mingw32 -conemu -new_console:C:"%ConEmuDir%\..\..\..\msys64\mingw32.exe"
MSYS2シェルのConEmuで、{Shells::msys2-64}
という名前の新しいタスクと次のコマンドを作成します。
"%ConEmuDir%\..\..\..\msys64\msys2_Shell.cmd" -msys -conemu -new_console:C:"%ConEmuDir%\..\..\..\msys64\msys2.exe"
msys2_Shell.cmd
は、CMD.EXE
から直接使用するためのものであり、PATH
にはConEmu64.exe
/ConEmu.exe
が含まれています。
msys2_Shell -mingw64 -conemu
このコマンドは、ConEmuで新しいMinGW64タブを開きます。
tl; dr:最初のアプローチをお勧めします。これがConEmuでの証拠としてのスクリーンショットです。