Cmderは、Windowsに使用可能なコンソールエミュレータがないことをめぐる純粋なフラストレーションから作成したソフトウェアパッケージです。これは、主要な構成オーバーホールを備えたConemuに基づいており、Monokaiの配色、Amazing Clink(Clink Completionsによってさらに強化)、およびカスタムプロンプトレイアウトが付属しています。
CMDerの主な利点は、移植性です。外部依存関係なしで完全に自己完結型になるように設計されているため、 USBスティックやクラウドストレージに最適です。そのため、コンソール、エイリアス、バイナリ( wget 、 curl 、 gitなど)をどこでも持ち運ぶことができます。
CMDERのユーザーインターフェイスは、より目が快適になるように設計されており、CMDERとCONEMUの主な違いをここで比較できます。
C:Program Filesまたは他のどこにでもありません%cmder_root%binフォルダーに入れて、パスに注入します。Cmder.exeを実行します%cmder_root%binに配置します。参照:bin/readme.mdinit.bat 'テーブルの「コマンドライン引数」の/max_depth [1-5]を参照して、再帰的にサブディレクトリを追加します。%cmder_root%optに配置します。参照:opt/readme.md/Cコマンドライン引数を使用してCmder.exe実行します。例: cmder.exe /C %userprofile%cmder_configこれにより、欠落している場合、次のディレクトリ構造が作成されます。
c:users[username]cmder_config
├───bin
├───config
│ └───profile.d
└───opt
%userprofile%cmder_configbinに配置します。init.bat 'テーブルの「コマンドライン引数」の/max_depth [1-5]を参照して、再帰的にサブディレクトリを追加します。%user_profile%cmder_configoptに配置します。| 口論 | 説明 |
|---|---|
/C [user_root_path] | 個々のユーザーcmderルートフォルダー。例: %userprofile%cmder_config |
/M | user_conemu.xmlではなく、conemu設定ストレージにconemu-%computername%.xmlを使用します |
/REGISTER [ALL, USER] | Windowsシェルメニューショートカットを登録します。 |
/UNREGISTER [ALL, USER] | Windowsシェルメニューのショートカットを登録解除します。 |
/SINGLE | シングルモードでcmderを開始します。 |
/START [start_path] | 開始するフォルダーパス。 |
/TASK [task_name] | 起動後に開始するタスク。 |
/X [ConEmu extras pars] | パラメーターをConemuに転送します |
それで、あなたはCmderを少し実験し、より恒久的な家でそれを撃ちたいと思っています。
.cmder.exe /REGISTER ALLファイルのエクスプローラーウィンドウで、ディレクトリを右クリックして、コンテキストメニューの「CMDER」を表示します。
(いくつかのショートカットはまだ文書化されていませんが、それらは存在しています - ここに記録してください)
次のシェルのいずれかを含む複数のタブを開くことができます。
| タスク | シェル | 説明 |
|---|---|---|
| cmder | cmd.exe | Windows cmd.exeシェルは、Git、Git Aware Prompt、Clink(GNU Readline)、およびエイリアスで強化されました。 |
| 管理者としてのcmder | cmd.exe | 管理Windows cmd.exe Cmderシェル。 |
| Powershell | powershell.exe | Windows Powershellは、GitとGit認識プロンプトで強化されました。 |
| 管理者としてのPowerShell | powershell.exe | 管理Windows powershell.exe Cmderシェル。 |
| バッシュ | bash.exe | windowsで実行されているbashシェルのようなunix/linux。 |
| 管理者としてのバッシュ | bash.exe | Windowsで実行されているBashシェルなどの管理Unix/Linux。 |
| ミント | bash.exe | windowsで実行されているbashシェルのようなunix/linux。 Mintty構成の違いについては、以下を参照してください |
| 管理者としてのミント | bash.exe | Windowsで実行されているBashシェルなどの管理Unix/Linux。 Mintty構成の違いについては、以下を参照してください |
Cmder、Powershell、およびBashタブはすべて、WindowsコンソールAPIの上ですべて実行され、CONEMUのカラースキーム、キーバインディング、Conemu設定ダイアログで定義されたその他の設定を使用できるように、CMDerで予想されるように動作します。
注: CMDerの完全版のみには、ベンダーのGit-for-Windowsのインストールを使用して、事前にインストールされたBashが付属しています。事前に構成されたバッシュタブは、追加の構成なしでCMDer Mini Editionで動作しない場合があります。
ただし、MicrosoftのサブシステムLinux(WSLと呼ばれる)や、WindowsでPOSIXサポートを提供するCygwinプロジェクトなど、Bashの外部インストールを使用することを選択できます。
注: Mintty Tabsは、WindowsコンソールAPIに基づいていないターミナルエミュレータとして「Mintty」と呼ばれるプログラムを使用し、Conemuによってグラフでレンダリングされます。 Minttyは、Xterm/Xterm-256Colorの用語タイプをサポートしており、配色やキーバインディングなどのConemu設定では動作しないという点で、他のタブとは異なります。そのため、CMDERがシステム全体の構成を適用できないなど、機能のいくつかの違いが予想されます。
その結果、Mintty固有の構成は[%USERPROFILE%|$HOME]/.minttyrcファイルを介して実行されます。 Minttyとその構成ファイルの詳細については、こちらをご覧ください。
MinttyのCMDerポータブル端子色を設定する例:
バッシュ/ミントシェルから:
cd $CMDER_ROOT/vendor
git clone https://github.com/karlin/mintty-colors-solarized.git
cd mintty-colors-solarized/
echo source $CMDER_ROOT/vendor/mintty-colors-solarized/mintty-solarized-dark.sh>>$CMDER_ROOT/config/user_profile.sh
ここでは、MinttyがCmderに合うようにいくつかのMonokaiの配色を見つけることができます。
cmd.exeプロンプト構成ファイルの変更デフォルトのCMDerシェルcmd::Cmderプロンプトは、 Clinkを使用してカスタマイズされ、2つの場所のいずれかに存在する構成ファイルを編集することによって構成されます。
%CMDER_ROOT%configcmder_prompt_config.lua%CMDER_USER_CONFIG%cmder_prompt_config.lua cmderセットアップにこのファイルがない場合%CMDER_ROOT%vendorcmder_prompt_config.lua.defaultから作成します
カスタマイズは次のとおりです。
[user]@[host]プロンプトの先頭に。~ホームディレクトリ用。λ記号ドキュメントは、各設定のファイルにあります。
cmd.exeシェルスタートアップ動作タスク引数を使用して1. {cmd::Cmder as Admin}2. {cmd::Cmder}注:見積もりに注意してください!
cmd /s /k ""%ConEmuDir%..init.bat" [ADD ARGS HERE]"
init.batのコマンドライン引数| 口論 | 説明 | デフォルト |
|---|---|---|
/c [user cmder root] | 非共有環境のために「管理者として管理者として」セッションのユーザービンと構成フォルダーを有効にします。 | 設定されていません |
/d | デバッグ出力を有効にします。 | 設定されていません |
/f | cmder高速initモードを有効にします。これにより、いくつかの機能が無効になります。詳細については、プルリクエスト#1492を参照してください。 | 設定されていません |
/t | CMDERタイミングINITモードを有効にします。これにより、実行されたin initスクリプトが表示されます | 設定されていません |
/git_install_root [file path] | ユーザーが指定したgitインストールルートパス。 | %CMDER_ROOT%vendorGit-for-Windows |
/home [home folder] | ユーザー指定されたフォルダーパスを%HOME%環境変数を設定します。 | %userprofile% |
/max_depth [1-5] | %cmder_root%binおよび%cmder_user_bin%のパスを追加すると、maxの再発深さを定義します | 1 |
/nix_tools [0-2] | *nixツールがパスに追加される方法を定義します。 Windowsツールを好む:1、優先 *nixツール:2、no /usr/bin in %PATH% :0 | 1 |
/svn_ssh [path to ssh.exe] | SSH SVNリポジトリを使用してGit SVNを使用できるように、 %SVN_SSH%を定義します。 | %GIT_INSTALL_ROOT%binssh.exe |
/user_aliases [file path] | ユーザーエイリアスを指すファイルパス。 | %CMDER_ROOT%configuser_aliases.cmd |
/v | 冗長出力を有効にします。 | 設定されていません |
| (カスタム引数) | cexecによって処理されたユーザー定義の引数。タイプcexec /?より多くの使用方法。 | 設定されていません |
CMDer固有のシェル構成ファイルを使用して、単一のユーザーポータブル構成が可能です。以下のファイルを編集して、独自の構成を追加します。
| シェル | cmderポータブルユーザー構成 |
|---|---|
| cmder | %CMDER_ROOT%configuser_profile.cmd |
| Powershell | $ENV:CMDER_ROOTconfiguser_profile.ps1 |
| バッシュ/ミント | $CMDER_ROOT/config/user_profile.sh |
注: BASHおよびMINTTYセッションは、 $CMDER_ROOT/config/user_profile.shを調達した後に存在する場合、 $HOME/.bashrcファイルも調達します。
*.cmd|*.bat 、 *.ps1 、および*.shスクリプトを書くことができ、 %CMDER_ROOT%configprofile.dフォルダーにドロップして、起動configをcmderに追加します。
| シェル | cmder Profile.dスクリプト |
|---|---|
| cmder | %CMDER_ROOT%configprofile.d*.bat and *.cmd |
| Powershell | $ENV:CMDER_ROOTconfigprofile.d*.ps1 |
| バッシュ/ミント | $CMDER_ROOT/config/profile.d/*.sh |
cmderプロンプトのgitステータスをグローバルに無効にするには、以下を~/.gitconfigに追加するか、単一のリポジトリ[repo]/.git/configにローカルに追加し、新しいセッションを開始します。
注:この構成はポータブルではありません
[cmder]
status = false # Opt out of Git status for 'ALL' Cmder supported shells.
cmdstatus = false # Opt out of Git status for 'Cmd.exe' shells.
psstatus = false # Opt out of Git status for 'Powershell.exe and 'Pwsh.exe' shells.
shstatus = false # Opt out of Git status for 'bash.exe' shells.
Cmd.exe )エイリアスalias name=commandなどのコマンドでcmd.exeセッションのシンプルなエイリアスを定義できます。 CMD.exeエイリアスは$1-9または$*特殊文字を通じてオプションのパラメーターをサポートしているため、 vi [filename]としてvi=vim.exe $* vim.exeで[filename]を開きます。
CMD.exeエイリアスもより複雑になる可能性があります。参照:doskey.exeドキュメントcmd.exeの複雑なエイリアス/マクロに関する詳細については
alias.batコマンドを使用して定義されたエイリアスは%CMDER_ROOT%configuser_aliases.cmdファイルに自動的に保存されます
エイリアスやその他のプロファイル設定を永続的に作成するには、次のいずれかに追加します。
注:これらは、この順序で$CMDER_ROOT/vendor/init.batによってロードされます。 %CMDER_ROOT%に保存されているものはすべてポータブルな設定であり、CMDERを追跡して別のマシンになります。
%CMDER_ROOT%configprofile.d*.cmdおよび*.bat%CMDER_ROOT%configuser_aliases.cmd%CMDER_ROOT%configuser_profile.cmdBash Shellsは、オプションのパラメーターをネイティブに備えたシンプルで複雑なエイリアスをサポートしているため、少し異なります。 alias name=command現在の実行セッションに対してのみエイリアスを作成します。
エイリアスやその他のプロファイル設定を永続的に作成するには、次のいずれかに追加します。
注:これらは、この順序で$CMDER_ROOT/vendor/git-for-windows/etc/profile.d/cmder.shによってロードされます。 $CMDER_ROOTに保存されているものはすべてポータブルな設定であり、CMDerを追跡して別のマシンになります。
$CMDER_ROOT/config/profile.d/*.sh$CMDER_ROOT/config/user_profile.sh$HOME/.bashrc $CMDER_ROOT/config/user_profile.shにbashエイリアスを追加すると、ポータブルになり、別のマシンにコピーするとcmderフォルダーに従います。 $HOME/.bashrc定義されたエイリアスはポータブルではありません。
PowerShellには、 [new-alias | set-alias] alias command 、そのため、オプションのパラメーターを備えた複雑なエイリアスは、PowerShellセッションではサポートされていません。 get-help [new-alias|set-alias] -full -PowerShellエイリアスのヘルプのためのタイプ。
エイリアスやその他のプロファイル設定を永続的に作成するには、次のいずれかに追加します。
注:これらは$ENV:CMDER_ROOTvendoruser_profile.ps1によってこの順序でロードされます。 $ENV:CMDER_ROOTに保存されているものはすべて、ポータブルな設定であり、CMDerを追いかけて別のマシンになります。
$ENV:CMDER_ROOTconfigprofile.d*.ps1$ENV:CMDER_ROOTconfiguser_profile.ps1ベンダーのSSHエージェントを起動するにはvendor/git-for-windows/cmdフォルダーにあるstart-ssh-agent呼び出します。
起動時にSSHエージェントを実行する場合は、 @call "%GIT_INSTALL_ROOT%/cmd/start-ssh-agent.cmd" in %CMDER_ROOT%/config/user_profile.cmd (通常はそれを除外)を含めます。
Cmderは、デフォルトでベンダーのGitインストールで出荷されます。 CMDERの起動の各インスタンスでは、GITバイナリを提供する他のユーザーを見つける試みが行われます。 git.exeバイナリを見つけると、cmderはそのバージョンを実行してバージョンと比較します。ベンダー付きgit.exeバイナリは、ユーザーインストールされたものよりも最近の場合にのみ使用されます。
%PATH%環境変数にそのパスを含めることにより、GITのお気に入りのバージョンを使用できます。さらに、CMDerのミニ版(ダウンロードページにある)は、ベンダーのGitバイナリを除外しています。
次の手順を使用して、CMDerで外部的にBash(Linux、MacOS、およびGNU/Hurdで使用されるデフォルトシェル)を実行できます。
+ボタンをクリックしてタスクを追加します。cmd /c "[path_to_external_env]binbash --login -i" -new_consoleを追加しますCommands推奨されるオプションの手順:
vendor/cmder_exinitファイルをCygwin/babun、msys2、またはgit for windows sdk environments /etc/profile.d/フォルダーにコピーして、 $CMDER_ROOT/configフォルダーのポータブル設定を使用します。
注:initスクリプトにprofile.dが含まれている場合、MINGWは機能する可能性がありますが、これはテストされていません。
宛先ファイルの拡張機能は、その環境で使用するシェルによって異なります。例えば:
/etc/profile.d/cmder_exinit.shにコピーします/etc/profile.d/cmder_exinit.zsh cmder_exinit.zshにコピーしますスクリプトの下の行を編集して編集して、外部のCMDerから起動した場合でもCMDer構成を使用します。
# CMDER_ROOT=${USERPROFILE}/cmder # This is not required if launched from Cmder.
init.batカスタム引数を使用してユーザーセッションをカスタマイズします。カスタム引数をinit.batに渡し、 user_profile.cmdでcexec.cmdを使用してこれらの引数を評価し、検出されている特定のフラグに基づいてコマンドを実行できます。
init.bat 、プロファイルスクリプトでcexec.cmd使用するための2つのショートカットを作成します。
%ccall% - フラグを評価し、見つかった場合にコマンドを実行し、呼び出しスクリプトに戻して継続します。 ccall=call C:Usersusercmderdevvendorbincexec.cmd
例: %ccall% /startnotepad start notepad.exe
%cexec% - フラグを評価し、見つかった場合にコマンドを実行し、呼び出しスクリプトに戻りません。 cexec=C:Usersusercmderdevvendorbincexec.cmd
例: %cexec% /startnotepad start notepad.exe
cmder実行するための複数のタスクがあり、選択したタスクに応じてセッションを異なる方法で初期化する必要がある場合に役立ちます。
特定のcmderタスクを開始するときに条件付きでnotepad.exeを開始するには:
Win + Alt + Tを押します
+をクリックして新しいタスクを追加します。
以下をCommandsブロックに追加します。
cmd.exe /k " " %ConEmuDir% ..init.bat " /startnotepad "
以下を%cmder_root%configuser_profile.cmdに追加します
%ccall% " /startNotepad " " start " " notepad.exe " `
cexecの詳細な使用法を確認するには、 cexec /? cmderで。
CMDERは、ここに記載されているように、基礎となるターミナルエミュレータとしてベンダー付きCONEMUインストールが付属しています。
ただし、CMDERは実際、他のさまざまな端末エミュレーター、さらには統合されたIDEで実行できます。 CMDerの最新バージョンがあると仮定すると、次の指示に従って、CMDerに独自のターミナルエミュレータを使用してもらいます。
CMDerをIDEと統合する方法については、Wikiセクションをお読みください。
CMDerのアップグレードプロセスは、現在実行中のバージョン/ビルドに依存します。
[cmder_root]/config/user[-|_]conemu.xmlがある場合、CMDerの新しいバージョンを実行しています。以下のプロセスに従ってください。
すべてのcmderセッションを終了し、 [cmder_root]/cmder.exeを再起動します。これにより、既存の[cmder_root]/vendor/conemu-maximus5/conemu.xmlに[cmder_root]/config/user[-|_]conemu.xmlバックアップします。
[cmder_root]/config/user[-|_]conemu.xml 「セットアップタスク」設定ダイアログを使用して作成したカスタム設定が含まれています。すべてのcmderセッションを終了し、 [cmder_root]/vendorで手動で編集したファイルをバックアップします。
[cmder_root]/vendorの下でファイルを編集することは、アップグレード後にこれらの変更を再適用する必要があるため、お勧めしません。すべてのユーザーのカスタマイズは[cmder_root]/configフォルダーに移動する必要があります。 [cmder_root]/vendorフォルダーを削除します。
新しいcmder.zipまたはcmder_mini.zipを[cmder_root]/プロンプトが表示されたときにすべてのファイルを上書きします。
[cmder_root]/config/user[-|_]conemu.xml持っていない場合、cmderの古いバージョンを実行しています。以下のプロセスに従ってください。
すべてのcmderセッションとバックアップ[cmder_root]/vendor/conemu-maximus5/conemu.xml to [cmder_root]/config/user[-|_]conemu.xml終了します。
[cmder_root]/vendorで手動で編集したファイルをバックアップします。
[cmder_root]/vendorの下でファイルを編集することは、アップグレード後にこれらの変更を再適用する必要があるため、お勧めしません。すべてのユーザーのカスタマイズは[cmder_root]/configフォルダーに移動する必要があります。 [cmder_root]/vendorフォルダーを削除します。
新しいcmder.zipまたはcmder_mini.zipを[cmder_root]/プロンプトが表示されたときにすべてのファイルを上書きします。
次のリンクを介してAppveerに移動して、現在の開発ブランチのビルドをダウンロードできます。
GitHubアクションによる最新のダウンロードビルドは、以下のリンクからダウンロードできます。
含まれるすべてのソフトウェアは、独自のライセンスにバンドルされています
MITライセンス(MIT)
Copyright(c)2016 Samuel Vasko
このソフトウェアと関連するドキュメントファイル(「ソフトウェア」)のコピーを入手して、制限なしにソフトウェアを扱うために、このソフトウェアを制限する権利を含め、ソフトウェアのコピーをコピー、変更、公開、配布、販売する、ソフトウェアのコピーを許可する人を許可する人を許可することを含めて、許可が無料で許可されます。
上記の著作権通知とこの許可通知は、ソフトウェアのすべてのコピーまたはかなりの部分に含まれるものとします。
このソフトウェアは、商品性、特定の目的への適合性、および非侵害の保証を含むがこれらに限定されない、明示的または黙示的なものを保証することなく、「現状のまま」提供されます。いかなる場合でも、著者または著作権所有者は、契約、不法行為、またはその他の訴訟、ソフトウェアまたはソフトウェアの使用またはその他の取引に関連する、またはその他の契約、またはその他の請求、またはその他の責任について責任を負いません。