diff --git a/README.md b/README.md index 69a8727..cdaa4d6 100644 --- a/README.md +++ b/README.md @@ -156,6 +156,12 @@ Uncomment and edit the below line in the script to use Cmder config even when la 1. Check for clink and git before injecting them (Sort of done) +## Current development branch + +You can download builds of the current development branch by going to Appveyor via the following link: + +[![AppVeyor](https://ci.appveyor.com/api/projects/status/github/cmderdev/cmder?svg=True)](https://ci.appveyor.com/project/MartiUK/cmder/branch/development/artifacts) + ## License All software included is bundled with own license diff --git a/launcher/src/CmderLauncher.cpp b/launcher/src/CmderLauncher.cpp index 4982fd0..b2b0ffa 100644 --- a/launcher/src/CmderLauncher.cpp +++ b/launcher/src/CmderLauncher.cpp @@ -3,7 +3,6 @@ #include #include "resource.h" #include -#include #pragma comment(lib, "Shlwapi.lib") @@ -156,16 +155,7 @@ void StartCmder(std::wstring path, bool is_single_mode) } SetEnvironmentVariable(L"CMDER_ROOT", exeDir); - if (streqi(path.c_str(), L"")) - { - wchar_t* homeProfile = 0; - SHGetKnownFolderPath(FOLDERID_Profile, 0, NULL, &homeProfile); - if (!SetEnvironmentVariable(L"CMDER_START", homeProfile)) { - MessageBox(NULL, _T("Error trying to set CMDER_START to given path!"), _T("Error"), MB_OK); - } - CoTaskMemFree(static_cast(homeProfile)); - } - else + if (!streqi(path.c_str(), L"")) { if (!SetEnvironmentVariable(L"CMDER_START", path.c_str())) { MessageBox(NULL, _T("Error trying to set CMDER_START to given path!"), _T("Error"), MB_OK); diff --git a/vendor/init.bat b/vendor/init.bat index 36f0dd4..60cfb6a 100644 --- a/vendor/init.bat +++ b/vendor/init.bat @@ -61,21 +61,43 @@ if defined GIT_INSTALL_ROOT ( :: Enhance Path set "PATH=%CMDER_ROOT%\bin;%PATH%;%CMDER_ROOT%\" -:: make sure we have an example file -set aliases=%CMDER_ROOT%\config\user-aliases.cmd -if not exist "%aliases%" ( - echo Creating intial aliases in "%aliases%"... - copy "%CMDER_ROOT%\vendor\user-aliases.cmd.example" "%aliases%" +:: Drop *.bat and *.cmd files into "%CMDER_ROOT%\config\profile.d" +:: to run them at startup. +if not exist "%CMDER_ROOT%\config\profile.d" ( + mkdir "%CMDER_ROOT%\config\profile.d" ) -:: Update old 'aliases' to new self executing 'user-aliases.cmd' -if exist "%CMDER_ROOT%\config\aliases" ( - echo Updating old "%CMDER_ROOT%\config\aliases" to new format... - type "%CMDER_ROOT%\config\aliases" >> "%aliases%" && del "%CMDER_ROOT%\config\aliases" +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 + +:: Allows user to override default aliases store using profile.d +:: scripts run above. Note: If overriding default aliases file +:: in profile.d the aliases must also be loaded in profile.d. +if not defined aliases ( + set aliases=%CMDER_ROOT%\config\user-aliases.cmd +) + +:: Using default cmder user-aliases.cmd store. +if "%aliases%" == "%CMDER_ROOT%\config\user-aliases.cmd" ( + :: make sure we have an example file + if not exist "%aliases%" ( + echo Creating intial aliases in "%aliases%"... + copy "%CMDER_ROOT%\vendor\user-aliases.cmd.example" "%aliases%" + ) -:: Add aliases to the environment. -call "%aliases%" + :: Update old 'aliases' to new self executing 'user-aliases.cmd' + if exist "%CMDER_ROOT%\config\aliases" ( + echo Updating old "%CMDER_ROOT%\config\aliases" to new format... + type "%CMDER_ROOT%\config\aliases" >> "%aliases%" && del "%CMDER_ROOT%\config\aliases" + ) + + :: Add aliases to the environment + call "%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 @@ -96,18 +118,6 @@ 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" ( - 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" -) -popd if exist "%CMDER_ROOT%\config\user-profile.cmd" ( rem create this file and place your own command in there diff --git a/vendor/profile.ps1 b/vendor/profile.ps1 index cbe7e19..0d830f5 100644 --- a/vendor/profile.ps1 +++ b/vendor/profile.ps1 @@ -88,6 +88,10 @@ if ( $ENV:CMDER_START ) { Set-Location -Path "$ENV:CMDER_START" } +if (Get-Module PSReadline -ErrorAction "SilentlyContinue") { + Set-PSReadlineOption -ExtraPromptLineCount 1 +} + # Enhance Path $env:Path = "$Env:CMDER_ROOT\bin;$env:Path;$Env:CMDER_ROOT" diff --git a/vendor/sources.json b/vendor/sources.json index 5bf8691..3a63b22 100644 --- a/vendor/sources.json +++ b/vendor/sources.json @@ -1,8 +1,8 @@ [ { "name": "git-for-windows", - "version": "v2.7.2.windows.1", - "url": "https://github.com/git-for-windows/git/releases/download/v2.7.2.windows.1/PortableGit-2.7.2-32-bit.7z.exe" + "version": "v2.7.4.windows.1", + "url": "https://github.com/git-for-windows/git/releases/download/v2.7.4.windows.1/PortableGit-2.7.4-32-bit.7z.exe" }, { "name": "clink",