From bf75f70181c800bc01ed6e3e3225588fbde9b2a9 Mon Sep 17 00:00:00 2001 From: "Dax T. Games" Date: Tue, 1 Mar 2016 20:35:24 -0600 Subject: [PATCH 1/7] added config/profile.d --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 41ab87b..9fa67af 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ Version v* *.bak config/user-* config/aliases +config/profile.d From 8a5c58e626f6cd2a3397ea1342cda0b1c8a8b32c Mon Sep 17 00:00:00 2001 From: "Dax T. Games" Date: Tue, 1 Mar 2016 20:35:55 -0600 Subject: [PATCH 2/7] fixed cmd profile.d support --- vendor/init.bat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vendor/init.bat b/vendor/init.bat index 72221e6..a3e7e7c 100644 --- a/vendor/init.bat +++ b/vendor/init.bat @@ -92,7 +92,7 @@ :: to run them at startup. @if not exist "%CMDER_ROOT%\config\profile.d" ( mkdir "%CMDER_ROOT%\config\profile.d" -} +) @pushd "%CMDER_ROOT%\config\profile.d" for /f "usebackq" %%x in ( `dir /b *.bat *.cmd` ) do ( From 32c1d4028ad28372a4a4aadfdaa6ddd86fec4898 Mon Sep 17 00:00:00 2001 From: "Dax T. Games" Date: Wed, 2 Mar 2016 15:17:43 -0600 Subject: [PATCH 3/7] added fully qualified path to cmd profile.d section --- vendor/init.bat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vendor/init.bat b/vendor/init.bat index a3e7e7c..3635906 100644 --- a/vendor/init.bat +++ b/vendor/init.bat @@ -97,7 +97,7 @@ @pushd "%CMDER_ROOT%\config\profile.d" for /f "usebackq" %%x in ( `dir /b *.bat *.cmd` ) do ( REM @echo Calling %CMDER_ROOT%\config\profile.d\%%x... - @call %%x + @call "%CMDER_ROOT%\config\profile.d\%%x" ) @popd From d6eec2f3a5000e69b1e14a9d724cb429576bed8c Mon Sep 17 00:00:00 2001 From: "Dax T. Games" Date: Wed, 2 Mar 2016 16:16:27 -0600 Subject: [PATCH 4/7] silence profile.d if profile.d is empty --- vendor/init.bat | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vendor/init.bat b/vendor/init.bat index 3635906..442ae9c 100644 --- a/vendor/init.bat +++ b/vendor/init.bat @@ -95,8 +95,8 @@ ) @pushd "%CMDER_ROOT%\config\profile.d" -for /f "usebackq" %%x in ( `dir /b *.bat *.cmd` ) do ( - REM @echo Calling %CMDER_ROOT%\config\profile.d\%%x... +@for /f "usebackq" %%x in ( `dir /b *.bat *.cmd 2^>nul` ) do @( + @REM echo Calling %CMDER_ROOT%\config\profile.d\%%x... @call "%CMDER_ROOT%\config\profile.d\%%x" ) @popd From 8dbbb902d989e324590f7c9fa6b8069e63825d53 Mon Sep 17 00:00:00 2001 From: "Dax T. Games" Date: Wed, 2 Mar 2016 17:52:12 -0600 Subject: [PATCH 5/7] fixed vendor\profile.ps1 profile.d - added post popd --- vendor/profile.ps1 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/vendor/profile.ps1 b/vendor/profile.ps1 index f549ed4..cbe7e19 100644 --- a/vendor/profile.ps1 +++ b/vendor/profile.ps1 @@ -99,9 +99,10 @@ if (-not (test-path "$ENV:CMDER_ROOT\config\profile.d")) { pushd $ENV:CMDER_ROOT\config\profile.d foreach ($x in ls *.ps1) { - # write-host Sourcing $ENV:CMDER_ROOT\config\profile.d\$x + # write-host write-host Sourcing $x . $x } +popd $CmderUserProfilePath = Join-Path $env:CMDER_ROOT "config\user-profile.ps1" if(Test-Path $CmderUserProfilePath) { From 722f8b77453d4cead391e1ccbbaa069b3e9a8b92 Mon Sep 17 00:00:00 2001 From: "Dax T. Games" Date: Sun, 6 Mar 2016 15:05:40 -0600 Subject: [PATCH 6/7] silenced bash profile.d when profile.d is empty --- vendor/cmder.sh | 2 +- vendor/cmder_exinit | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/vendor/cmder.sh b/vendor/cmder.sh index 2666f58..4fac0be 100644 --- a/vendor/cmder.sh +++ b/vendor/cmder.sh @@ -44,7 +44,7 @@ fi if [ -d "${CMDER_ROOT}/config/profile.d" ] ; then unset profile_d_scripts pushd ${CMDER_ROOT}/config/profile.d >/dev/null - profile_d_scripts=$(ls ${CMDER_ROOT}/config/profile.d/*.sh) 2>/dev/null + profile_d_scripts=$(ls ${CMDER_ROOT}/config/profile.d/*.sh 2>/dev/null) if [ ! "x${profile_d_scripts}" = "x" ] ; then for x in ${profile_d_scripts} ; do diff --git a/vendor/cmder_exinit b/vendor/cmder_exinit index 6c29423..7e83d64 100644 --- a/vendor/cmder_exinit +++ b/vendor/cmder_exinit @@ -58,9 +58,9 @@ if [ ! "$CMDER_ROOT" = "" ] ; then unset profile_d_scripts pushd ${CMDER_ROOT}/config/profile.d >/dev/null if [ ! "x${ZSH_VERSION}" = "x" ]; then - profile_d_scripts=$(ls ${CMDER_ROOT}/config/profile.d/*.zsh) 2>/dev/null + profile_d_scripts=$(ls ${CMDER_ROOT}/config/profile.d/*.zsh 2>/dev/null) elif [ ! "x${BASH_VERSION}" = "x" ]; then - profile_d_scripts=$(ls ${CMDER_ROOT}/config/profile.d/*.sh) 2>/dev/null + profile_d_scripts=$(ls ${CMDER_ROOT}/config/profile.d/*.sh 2>/dev/null) fi if [ ! "x${profile_d_scripts}" = "x" ] ; then From 0f4292aa08a7f9b2496e592d4f088a6b4e36bb1a Mon Sep 17 00:00:00 2001 From: "Dax T. Games" Date: Sun, 6 Mar 2016 15:40:06 -0600 Subject: [PATCH 7/7] Prefer use of first line @echo off vs. @ per line to turn off echo per line. - Cleaner file, no side efects --- vendor/init.bat | 68 +++++++++++++++++++++++++------------------------ 1 file changed, 35 insertions(+), 33 deletions(-) diff --git a/vendor/init.bat b/vendor/init.bat index 442ae9c..1409b9f 100644 --- a/vendor/init.bat +++ b/vendor/init.bat @@ -1,3 +1,5 @@ +@echo off + :: Init Script for cmd.exe :: Created as part of cmder project @@ -5,41 +7,41 @@ :: !!! Use "%CMDER_ROOT%\config\user-profile.cmd" to add your own startup commands :: Find root dir -@if not defined CMDER_ROOT ( - for /f "delims=" %%i in ("%ConEmuDir%\..\..") do @set CMDER_ROOT=%%~fi +if not defined CMDER_ROOT ( + for /f "delims=" %%i in ("%ConEmuDir%\..\..") do set CMDER_ROOT=%%~fi ) :: Remove trailing '\' -@if "%CMDER_ROOT:~-1%" == "\" SET CMDER_ROOT=%CMDER_ROOT:~0,-1% +if "%CMDER_ROOT:~-1%" == "\" SET CMDER_ROOT=%CMDER_ROOT:~0,-1% :: Change the prompt style :: Mmm tasty lamb -@prompt $E[1;32;40m$P$S{git}{hg}$S$_$E[1;30;40m{lamb}$S$E[0m +prompt $E[1;32;40m$P$S{git}{hg}$S$_$E[1;30;40m{lamb}$S$E[0m :: Pick right version of clink -@if "%PROCESSOR_ARCHITECTURE%"=="x86" ( +if "%PROCESSOR_ARCHITECTURE%"=="x86" ( set architecture=86 ) else ( set architecture=64 ) :: Tell the user about the clink config files... -@if not exist "%CMDER_ROOT%\config\settings" ( +if not exist "%CMDER_ROOT%\config\settings" ( echo Generating clink initial settings in %CMDER_ROOT%\config\settings echo Additional *.lua files in %CMDER_ROOT%\config are loaded on startup. ) :: Run clink -@"%CMDER_ROOT%\vendor\clink\clink_x%architecture%.exe" inject --quiet --profile "%CMDER_ROOT%\config" --scripts "%CMDER_ROOT%\vendor" +"%CMDER_ROOT%\vendor\clink\clink_x%architecture%.exe" inject --quiet --profile "%CMDER_ROOT%\config" --scripts "%CMDER_ROOT%\vendor" :: Prepare for git-for-windows :: I do not even know, copypasted from their .bat -@set PLINK_PROTOCOL=ssh -@if not defined TERM set TERM=cygwin +set PLINK_PROTOCOL=ssh +if not defined TERM set TERM=cygwin :: Check if msysgit is installed -@if exist "%ProgramFiles%\Git" ( +if exist "%ProgramFiles%\Git" ( set "GIT_INSTALL_ROOT=%ProgramFiles%\Git" ) else if exist "%ProgramFiles(x86)%\Git" ( set "GIT_INSTALL_ROOT=%ProgramFiles(x86)%\Git" @@ -50,29 +52,29 @@ ) :: Add git to the path -@if defined GIT_INSTALL_ROOT ( +if defined GIT_INSTALL_ROOT ( set "PATH=%GIT_INSTALL_ROOT%\bin;%GIT_INSTALL_ROOT%\usr\bin;%GIT_INSTALL_ROOT%\usr\share\vim\vim74;%PATH%" :: define SVN_SSH so we can use git svn with ssh svn repositories if not defined SVN_SSH set "SVN_SSH=%GIT_INSTALL_ROOT:\=\\%\\bin\\ssh.exe" ) :: Enhance Path -@set "PATH=%CMDER_ROOT%\bin;%PATH%;%CMDER_ROOT%\" +set "PATH=%CMDER_ROOT%\bin;%PATH%;%CMDER_ROOT%\" :: make sure we have an example file -@if not exist "%CMDER_ROOT%\config\aliases" ( +if not exist "%CMDER_ROOT%\config\aliases" ( echo Creating intial aliases in %CMDER_ROOT%\config\aliases copy "%CMDER_ROOT%\vendor\aliases.example" "%CMDER_ROOT%\config\aliases" > null ) :: Add aliases -@doskey /macrofile="%CMDER_ROOT%\config\aliases" +doskey /macrofile="%CMDER_ROOT%\config\aliases" :: See vendor\git-for-windows\README.portable for why we do this :: Basically we need to execute this post-install.bat because we are :: manually extracting the archive rather than executing the 7z sfx -@if exist "%CMDER_ROOT%\vendor\git-for-windows\post-install.bat" ( +if exist "%CMDER_ROOT%\vendor\git-for-windows\post-install.bat" ( echo Running Git for Windows one time Post Install.... cd /d "%CMDER_ROOT%\vendor\git-for-windows\" "%CMDER_ROOT%\vendor\git-for-windows\git-bash.exe" --no-needs-console --hide --no-cd --command=post-install.bat @@ -80,39 +82,39 @@ ) :: Set home path -@if not defined HOME set HOME=%USERPROFILE% +if not defined HOME set HOME=%USERPROFILE% :: This is either a env variable set by the user or the result of :: cmder.exe setting this variable due to a commandline argument or a "cmder here" -@if defined CMDER_START ( - @cd /d "%CMDER_START%" +if defined CMDER_START ( + cd /d "%CMDER_START%" ) :: Drop *.bat and *.cmd files into "%CMDER_ROOT%\config\profile.d" :: to run them at startup. -@if not exist "%CMDER_ROOT%\config\profile.d" ( +if not exist "%CMDER_ROOT%\config\profile.d" ( mkdir "%CMDER_ROOT%\config\profile.d" ) -@pushd "%CMDER_ROOT%\config\profile.d" -@for /f "usebackq" %%x in ( `dir /b *.bat *.cmd 2^>nul` ) do @( - @REM echo Calling %CMDER_ROOT%\config\profile.d\%%x... - @call "%CMDER_ROOT%\config\profile.d\%%x" +pushd "%CMDER_ROOT%\config\profile.d" +for /f "usebackq" %%x in ( `dir /b *.bat *.cmd 2^>nul` ) do ( + REM echo Calling %CMDER_ROOT%\config\profile.d\%%x... + call "%CMDER_ROOT%\config\profile.d\%%x" ) -@popd +popd -@if exist "%CMDER_ROOT%\config\user-profile.cmd" ( - @rem create this file and place your own command in there +if exist "%CMDER_ROOT%\config\user-profile.cmd" ( + rem create this file and place your own command in there call "%CMDER_ROOT%\config\user-profile.cmd" ) else ( - @echo Creating user startup file: "%CMDER_ROOT%\config\user-profile.cmd" + echo Creating user startup file: "%CMDER_ROOT%\config\user-profile.cmd" ( - @echo :: use this file to run your own startup commands - @echo :: use @ in front of the command to prevent printing the command - @echo. - @echo :: @call "%%GIT_INSTALL_ROOT%%/cmd/start-ssh-agent.cmd - @echo :: @set PATH=%%CMDER_ROOT%%\vendor\whatever;%%PATH%% - @echo. + echo :: use this file to run your own startup commands + echo :: use in front of the command to prevent printing the command + echo. + echo :: call "%%GIT_INSTALL_ROOT%%/cmd/start-ssh-agent.cmd + echo :: set PATH=%%CMDER_ROOT%%\vendor\whatever;%%PATH%% + echo. ) > "%CMDER_ROOT%\config\user-profile.cmd" )