mirror of
				https://github.com/cmderdev/cmder.git
				synced 2025-10-31 09:22:15 +08:00 
			
		
		
		
	Merge branch 'master' of https://github.com/cmderdev/cmder into prefer_nix_option
This commit is contained in:
		| @@ -319,6 +319,16 @@ void StartCmder(std::wstring  path = L"", bool is_single_mode = false, std::wstr | |||||||
| 				} | 				} | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|  | 		else { | ||||||
|  | 			if (!CopyFile(defaultCfgPath, cfgPath, FALSE)) | ||||||
|  | 			{ | ||||||
|  | 				MessageBox(NULL, | ||||||
|  | 					(GetLastError() == ERROR_ACCESS_DENIED) | ||||||
|  | 					? L"Failed to copy vendor/ConEmu.xml.default file to vendor/conemu-maximus5/ConEmu.xml! Access Denied." | ||||||
|  | 					: L"Failed to copy vendor/ConEmu.xml.default file to vendor/conemu-maximus5/ConEmu.xml!", MB_TITLE, MB_ICONSTOP); | ||||||
|  | 				exit(1); | ||||||
|  | 			} | ||||||
|  | 		} | ||||||
| 	} | 	} | ||||||
| 	else if (PathFileExists(cfgPath)) // vendor/conemu-maximus5/ConEmu.xml exists, copy vendor/conemu-maximus5/ConEmu.xml to config/user_conemu.xml | 	else if (PathFileExists(cfgPath)) // vendor/conemu-maximus5/ConEmu.xml exists, copy vendor/conemu-maximus5/ConEmu.xml to config/user_conemu.xml | ||||||
| 	{ | 	{ | ||||||
|   | |||||||
							
								
								
									
										11
									
								
								vendor/init.bat
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										11
									
								
								vendor/init.bat
									
									
									
									
										vendored
									
									
								
							| @@ -255,8 +255,15 @@ if defined GIT_INSTALL_ROOT ( | |||||||
|     :: define SVN_SSH so we can use git svn with ssh svn repositories |     :: 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" |     if not defined SVN_SSH set "SVN_SSH=%GIT_INSTALL_ROOT:\=\\%\\bin\\ssh.exe" | ||||||
|      |      | ||||||
|     for /F "delims=" %%F in ('%GIT_INSTALL_ROOT%\usr\bin\env /usr/bin/locale -uU 2') do ( |     if not defined LANG ( | ||||||
|         set "LANG=%%F" |         :: Find locale.exe: From the git install root, from the path, using the git installed env, or fallback using the env from the path. | ||||||
|  |         if not defined git_locale if exist "!GIT_INSTALL_ROOT!\usr\bin\locale.exe" set git_locale="!GIT_INSTALL_ROOT!\usr\bin\locale.exe" | ||||||
|  |         if not defined git_locale for /F "delims=" %%F in ('where locale.exe 2^>nul') do (if not defined git_locale  set git_locale="%%F") | ||||||
|  |         if not defined git_locale if exist "!GIT_INSTALL_ROOT!\usr\bin\env.exe" set git_locale="!GIT_INSTALL_ROOT!\usr\bin\env.exe" /usr/bin/locale | ||||||
|  |         if not defined git_locale set git_locale=env /usr/bin/locale | ||||||
|  |         for /F "delims=" %%F in ('!git_locale! -uU 2') do ( | ||||||
|  |             set "LANG=%%F" | ||||||
|  |         ) | ||||||
|     ) |     ) | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										432
									
								
								vendor/init.bat.orig
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										432
									
								
								vendor/init.bat.orig
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,432 @@ | |||||||
|  | @echo off | ||||||
|  |  | ||||||
|  | set CMDER_INIT_START=%time% | ||||||
|  |  | ||||||
|  | :: Init Script for cmd.exe | ||||||
|  | :: Created as part of cmder project | ||||||
|  |  | ||||||
|  | :: !!! THIS FILE IS OVERWRITTEN WHEN CMDER IS UPDATED | ||||||
|  | :: !!! Use "%CMDER_ROOT%\config\user_profile.cmd" to add your own startup commands | ||||||
|  |  | ||||||
|  | :: Use /v command line arg or set to > 0 for verbose output to aid in debugging. | ||||||
|  | set verbose_output=0 | ||||||
|  | set debug_output=0 | ||||||
|  | set time_init=0 | ||||||
|  | set fast_init=0 | ||||||
|  | set max_depth=1 | ||||||
|  | set prefer_windows_commands=1 | ||||||
|  | set "CMDER_USER_FLAGS= " | ||||||
|  |  | ||||||
|  | :: Find root dir | ||||||
|  | if not defined CMDER_ROOT ( | ||||||
|  |     if defined ConEmuDir ( | ||||||
|  |         for /f "delims=" %%i in ("%ConEmuDir%\..\..") do ( | ||||||
|  |             set "CMDER_ROOT=%%~fi" | ||||||
|  |         ) | ||||||
|  |     ) else ( | ||||||
|  |         for /f "delims=" %%i in ("%~dp0\..") do ( | ||||||
|  |             set "CMDER_ROOT=%%~fi" | ||||||
|  |         ) | ||||||
|  |     ) | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | :: Remove trailing '\' from %CMDER_ROOT% | ||||||
|  | if "%CMDER_ROOT:~-1%" == "\" SET "CMDER_ROOT=%CMDER_ROOT:~0,-1%" | ||||||
|  |  | ||||||
|  | call "%cmder_root%\vendor\bin\cexec.cmd" /setpath | ||||||
|  | call "%cmder_root%\vendor\lib\lib_base" | ||||||
|  | call "%cmder_root%\vendor\lib\lib_path" | ||||||
|  | call "%cmder_root%\vendor\lib\lib_console" | ||||||
|  | call "%cmder_root%\vendor\lib\lib_git" | ||||||
|  | call "%cmder_root%\vendor\lib\lib_profile" | ||||||
|  |  | ||||||
|  | :var_loop | ||||||
|  |     if "%~1" == "" ( | ||||||
|  |         goto :start | ||||||
|  |     ) else if /i "%1" == "/f" ( | ||||||
|  |         set fast_init=1 | ||||||
|  |     ) else if /i "%1" == "/t" ( | ||||||
|  |         set time_init=1 | ||||||
|  |     ) else if /i "%1"=="/v" ( | ||||||
|  |         set verbose_output=1 | ||||||
|  |     ) else if /i "%1"=="/d" ( | ||||||
|  |         set debug_output=1 | ||||||
|  |     ) else if /i "%1" == "/max_depth" ( | ||||||
|  |         if "%~2" geq "1" if "%~2" leq "5" ( | ||||||
|  |             set "max_depth=%~2" | ||||||
|  |             shift | ||||||
|  |         ) else ( | ||||||
|  |             %lib_console% show_error "'/max_depth' requires a number between 1 and 5!" | ||||||
|  |             exit /b | ||||||
|  |         ) | ||||||
|  |     ) else if /i "%1" == "/c" ( | ||||||
|  |         if exist "%~2" ( | ||||||
|  |             if not exist "%~2\bin" mkdir "%~2\bin" | ||||||
|  |             set "cmder_user_bin=%~2\bin" | ||||||
|  |             if not exist "%~2\config\profile.d" mkdir "%~2\config\profile.d" | ||||||
|  |             set "cmder_user_config=%~2\config" | ||||||
|  |             shift | ||||||
|  |         ) | ||||||
|  |     ) else if /i "%1" == "/user_aliases" ( | ||||||
|  |         if exist "%~2" ( | ||||||
|  |             set "user_aliases=%~2" | ||||||
|  |             shift | ||||||
|  |         ) | ||||||
|  |     ) else if /i "%1" == "/git_install_root" ( | ||||||
|  |         if exist "%~2" ( | ||||||
|  |             set "GIT_INSTALL_ROOT=%~2" | ||||||
|  |             shift | ||||||
|  |         ) else ( | ||||||
|  |             %lib_console% show_error "The Git install root folder "%~2", you specified does not exist!" | ||||||
|  |             exit /b | ||||||
|  |         ) | ||||||
|  |     ) else if /i "%1" == "/home" ( | ||||||
|  |         if exist "%~2" ( | ||||||
|  |             set "HOME=%~2" | ||||||
|  |             shift | ||||||
|  |         ) else ( | ||||||
|  |             %lib_console% show_error The home folder "%2", you specified does not exist! | ||||||
|  |             exit /b | ||||||
|  |         ) | ||||||
|  |     ) else if /i "%1" == "/svn_ssh" ( | ||||||
|  |         set SVN_SSH=%2 | ||||||
|  |         shift | ||||||
|  |     ) else if /i "%1" == "/prefer_nix" ( | ||||||
|  |         set prefer_windows_commands=0 | ||||||
|  |         shift | ||||||
|  |     ) else ( | ||||||
|  |       set "CMDER_USER_FLAGS=%1 %CMDER_USER_FLAGS%" | ||||||
|  |     ) | ||||||
|  |     shift | ||||||
|  | goto var_loop | ||||||
|  |  | ||||||
|  | :start | ||||||
|  | :: Sets CMDER_SHELL, CMDER_CLINK, CMDER_ALIASES | ||||||
|  | %lib_base% cmder_shell | ||||||
|  | %lib_console% debug_output init.bat "Env Var - CMDER_ROOT=%CMDER_ROOT%" | ||||||
|  | %lib_console% debug_output init.bat "Env Var - debug_output=%debug_output%" | ||||||
|  |  | ||||||
|  | if defined CMDER_USER_CONFIG ( | ||||||
|  |     %lib_console% debug_output init.bat "CMDER IS ALSO USING INDIVIDUAL USER CONFIG FROM '%CMDER_USER_CONFIG%'!" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | :: Pick right version of clink | ||||||
|  | if "%PROCESSOR_ARCHITECTURE%"=="x86" ( | ||||||
|  |     set architecture=86 | ||||||
|  |     set architecture_bits=32 | ||||||
|  | ) else ( | ||||||
|  |     set architecture=64 | ||||||
|  |     set architecture_bits=64 | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | if "%CMDER_CLINK%" == "1" ( | ||||||
|  |   %lib_console% verbose_output "Injecting Clink!" | ||||||
|  |  | ||||||
|  |   :: Run clink | ||||||
|  |   if defined CMDER_USER_CONFIG ( | ||||||
|  |     if not exist "%CMDER_USER_CONFIG%\settings" ( | ||||||
|  |       echo Generating clink initial settings in "%CMDER_USER_CONFIG%\settings" | ||||||
|  |       echo Additional *.lua files in "%CMDER_USER_CONFIG%" are loaded on startup.\ | ||||||
|  |     ) | ||||||
|  |     "%CMDER_ROOT%\vendor\clink\clink_x%architecture%.exe" inject --quiet --profile "%CMDER_USER_CONFIG%" --scripts "%CMDER_ROOT%\vendor" | ||||||
|  |   ) else ( | ||||||
|  |     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. | ||||||
|  |     ) | ||||||
|  |     "%CMDER_ROOT%\vendor\clink\clink_x%architecture%.exe" inject --quiet --profile "%CMDER_ROOT%\config" --scripts "%CMDER_ROOT%\vendor" | ||||||
|  |   ) | ||||||
|  | ) else ( | ||||||
|  |   %lib_console% verbose_output "WARNING: Incompatible 'ComSpec/Shell' Detetected Skipping Clink Injection!" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | :: 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 | ||||||
|  |  | ||||||
|  | :: The idea: | ||||||
|  | :: * if the users points as to a specific git, use that | ||||||
|  | :: * test if a git is in path and if yes, use that | ||||||
|  | :: * last, use our vendored git | ||||||
|  | :: also check that we have a recent enough version of git by examining the version string | ||||||
|  | setlocal enabledelayedexpansion | ||||||
|  | if defined GIT_INSTALL_ROOT ( | ||||||
|  |     if exist "%GIT_INSTALL_ROOT%\cmd\git.exe" goto :SPECIFIED_GIT | ||||||
|  | ) else if "%fast_init%" == "1" ( | ||||||
|  |     if exist "%CMDER_ROOT%\vendor\git-for-windows\cmd\git.exe" ( | ||||||
|  |       %lib_console% debug_output "Skipping Git Auto-Detect!" | ||||||
|  |       goto :VENDORED_GIT | ||||||
|  |     ) | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | %lib_console% debug_output init.bat "Looking for Git install root..." | ||||||
|  |  | ||||||
|  | :: get the version information for vendored git binary | ||||||
|  | %lib_git% read_version VENDORED "%CMDER_ROOT%\vendor\git-for-windows\cmd" | ||||||
|  | %lib_git% validate_version VENDORED %GIT_VERSION_VENDORED% | ||||||
|  |  | ||||||
|  | :: check if git is in path... | ||||||
|  | for /F "delims=" %%F in ('where git.exe 2^>nul') do ( | ||||||
|  |     :: get the absolute path to the user provided git binary | ||||||
|  |     pushd %%~dpF | ||||||
|  |     :: check if there's shim - and if yes follow the path | ||||||
|  |     if exist git.shim ( | ||||||
|  |         for /F "tokens=2 delims== " %%I in (git.shim) do ( | ||||||
|  |             pushd %%~dpI | ||||||
|  |             set "test_dir=!CD!" | ||||||
|  |             popd | ||||||
|  |         ) | ||||||
|  |     ) else ( | ||||||
|  |         set "test_dir=!CD!" | ||||||
|  |     ) | ||||||
|  |     popd | ||||||
|  |  | ||||||
|  |     :: get the version information for the user provided git binary | ||||||
|  |     %lib_git% read_version USER "!test_dir!" | ||||||
|  |     %lib_git% validate_version USER !GIT_VERSION_USER! | ||||||
|  |  | ||||||
|  |     if !errorlevel! geq 0 ( | ||||||
|  |         :: compare the user git version against the vendored version | ||||||
|  |         %lib_git% compare_versions USER VENDORED | ||||||
|  |  | ||||||
|  |         :: use the user provided git if its version is greater than, or equal to the vendored git | ||||||
|  |         if !errorlevel! geq 0 if exist "!test_dir:~0,-4!\cmd\git.exe" ( | ||||||
|  |             set "GIT_INSTALL_ROOT=!test_dir:~0,-4!" | ||||||
|  |             set test_dir= | ||||||
|  |             goto :FOUND_GIT | ||||||
|  |         ) else if !errorlevel! geq 0 ( | ||||||
|  |             set "GIT_INSTALL_ROOT=!test_dir!" | ||||||
|  |             set test_dir= | ||||||
|  |             goto :FOUND_GIT | ||||||
|  |         ) else ( | ||||||
|  |             call :verbose_output Found old !GIT_VERSION_USER! in "!test_dir!", but not using... | ||||||
|  |             set test_dir= | ||||||
|  |         ) | ||||||
|  |     ) else ( | ||||||
|  |  | ||||||
|  |         :: if the user provided git executable is not found | ||||||
|  |         if !errorlevel! equ -255 ( | ||||||
|  |             call :verbose_output No git at "!git_executable!" found. | ||||||
|  |             set test_dir= | ||||||
|  |         ) | ||||||
|  |  | ||||||
|  |     ) | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | :: our last hope: our own git... | ||||||
|  | :VENDORED_GIT | ||||||
|  | if exist "%CMDER_ROOT%\vendor\git-for-windows" ( | ||||||
|  |     set "GIT_INSTALL_ROOT=%CMDER_ROOT%\vendor\git-for-windows" | ||||||
|  |     %lib_console% debug_output "Using vendored Git from '!GIT_INSTALL_ROOT!..." | ||||||
|  |     goto :CONFIGURE_GIT | ||||||
|  | ) else ( | ||||||
|  |     goto :NO_GIT | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | :SPECIFIED_GIT | ||||||
|  | %lib_console% debug_output "Using /GIT_INSTALL_ROOT from '%GIT_INSTALL_ROOT%..." | ||||||
|  | goto :CONFIGURE_GIT | ||||||
|  |  | ||||||
|  | :FOUND_GIT | ||||||
|  | %lib_console% debug_output "Using found Git from '%GIT_INSTALL_ROOT%..." | ||||||
|  | goto :CONFIGURE_GIT | ||||||
|  |  | ||||||
|  | :CONFIGURE_GIT | ||||||
|  | :: Add git to the path | ||||||
|  | if defined GIT_INSTALL_ROOT ( | ||||||
|  |     rem add the unix commands at the end to not shadow windows commands like more | ||||||
|  |     if "%prefer_windows_commands%" == "1" ( | ||||||
|  |         echo PREFERRING WINDOWS COMMANDS | ||||||
|  |         set "path_position=append" | ||||||
|  |     ) else ( | ||||||
|  |         echo PREFERRING UNIX COMMANDS | ||||||
|  |         set "path_position=" | ||||||
|  |     ) | ||||||
|  |  | ||||||
|  |     if exist "!GIT_INSTALL_ROOT!\cmd\git.exe" %lib_path% enhance_path "!GIT_INSTALL_ROOT!\cmd" !path_position! | ||||||
|  |     if exist "!GIT_INSTALL_ROOT!\mingw32" ( | ||||||
|  |         %lib_path% enhance_path "!GIT_INSTALL_ROOT!\mingw32\bin" !path_position! | ||||||
|  |     ) else if exist "!GIT_INSTALL_ROOT!\mingw64" ( | ||||||
|  |         %lib_path% enhance_path "!GIT_INSTALL_ROOT!\mingw64\bin" !path_position! | ||||||
|  |     ) | ||||||
|  |     %lib_path% enhance_path "!GIT_INSTALL_ROOT!\usr\bin" !path_position! | ||||||
|  |     :: 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" | ||||||
|  | <<<<<<< HEAD | ||||||
|  |  | ||||||
|  |     for /F "delims=" %%F in ('%GIT_INSTALL_ROOT%\usr\bin\env /usr/bin/locale -uU 2') do ( | ||||||
|  |         set "LANG=%%F" | ||||||
|  | ======= | ||||||
|  |      | ||||||
|  |     if not defined LANG ( | ||||||
|  |         :: Find locale.exe: From the git install root, from the path, using the git installed env, or fallback using the env from the path. | ||||||
|  |         if not defined git_locale if exist "!GIT_INSTALL_ROOT!\usr\bin\locale.exe" set git_locale="!GIT_INSTALL_ROOT!\usr\bin\locale.exe" | ||||||
|  |         if not defined git_locale for /F "delims=" %%F in ('where locale.exe 2^>nul') do (if not defined git_locale  set git_locale="%%F") | ||||||
|  |         if not defined git_locale if exist "!GIT_INSTALL_ROOT!\usr\bin\env.exe" set git_locale="!GIT_INSTALL_ROOT!\usr\bin\env.exe" /usr/bin/locale | ||||||
|  |         if not defined git_locale set git_locale=env /usr/bin/locale | ||||||
|  |         for /F "delims=" %%F in ('!git_locale! -uU 2') do ( | ||||||
|  |             set "LANG=%%F" | ||||||
|  |         ) | ||||||
|  | >>>>>>> 3163d6d1c3b8b027390f35fa618cfab37d73a865 | ||||||
|  |     ) | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | endlocal & set "PATH=%PATH%" & set "LANG=%LANG%" & set "SVN_SSH=%SVN_SSH%" & set "GIT_INSTALL_ROOT=%GIT_INSTALL_ROOT%" | ||||||
|  | %lib_console% debug_output init.bat "Env Var - GIT_INSTALL_ROOT=%GIT_INSTALL_ROOT%" | ||||||
|  | %lib_console% debug_output init.bat "Found Git in: '%GIT_INSTALL_ROOT%'" | ||||||
|  | goto :PATH_ENHANCE | ||||||
|  |  | ||||||
|  | :NO_GIT | ||||||
|  | :: Skip this if GIT WAS FOUND else we did 'endlocal' above! | ||||||
|  | endlocal | ||||||
|  |  | ||||||
|  | :PATH_ENHANCE | ||||||
|  | %lib_path% enhance_path "%CMDER_ROOT%\vendor\bin" | ||||||
|  | %lib_path% enhance_path_recursive "%CMDER_ROOT%\bin" %max_depth% | ||||||
|  | if defined CMDER_USER_BIN ( | ||||||
|  |   %lib_path% enhance_path_recursive "%CMDER_USER_BIN%" %max_depth% | ||||||
|  | ) | ||||||
|  | %lib_path% enhance_path "%CMDER_ROOT%" append | ||||||
|  |  | ||||||
|  | :: Drop *.bat and *.cmd files into "%CMDER_ROOT%\config\profile.d" | ||||||
|  | :: to run them at startup. | ||||||
|  | %lib_profile% run_profile_d "%CMDER_ROOT%\config\profile.d" | ||||||
|  | if defined CMDER_USER_CONFIG ( | ||||||
|  |   %lib_profile% run_profile_d "%CMDER_USER_CONFIG%\profile.d" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | :: Allows user to override default aliases store using profile.d | ||||||
|  | :: scripts run above by setting the 'aliases' env variable. | ||||||
|  | :: | ||||||
|  | :: Note: If overriding default aliases store file the aliases | ||||||
|  | :: must also be self executing, see '.\user_aliases.cmd.example', | ||||||
|  | :: and be in profile.d folder. | ||||||
|  | if not defined user_aliases ( | ||||||
|  |   if defined CMDER_USER_CONFIG ( | ||||||
|  |      set "user_aliases=%CMDER_USER_CONFIG%\user_aliases.cmd" | ||||||
|  |   ) else ( | ||||||
|  |      set "user_aliases=%CMDER_ROOT%\config\user_aliases.cmd" | ||||||
|  |   ) | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | if "%CMDER_ALIASES%" == "1" ( | ||||||
|  |   REM The aliases environment variable is used by alias.bat to id | ||||||
|  |   REM the default file to store new aliases in. | ||||||
|  |   if not defined aliases ( | ||||||
|  |     set "aliases=%user_aliases%" | ||||||
|  |   ) | ||||||
|  |  | ||||||
|  |   REM Make sure we have a self-extracting user_aliases.cmd file | ||||||
|  |   setlocal enabledelayedexpansion | ||||||
|  |   if not exist "%user_aliases%" ( | ||||||
|  |       echo Creating initial user_aliases store in "%user_aliases%"... | ||||||
|  |       copy "%CMDER_ROOT%\vendor\user_aliases.cmd.example" "%user_aliases%" | ||||||
|  |   ) else ( | ||||||
|  |       type "%user_aliases%" | %WINDIR%\System32\findstr /i ";= Add aliases below here" >nul | ||||||
|  |       if "!errorlevel!" == "1" ( | ||||||
|  |           echo Creating initial user_aliases store in "%user_aliases%"... | ||||||
|  |           if defined CMDER_USER_CONFIG ( | ||||||
|  |               copy "%user_aliases%" "%user_aliases%.old_format" | ||||||
|  |               copy "%CMDER_ROOT%\vendor\user_aliases.cmd.example" "%user_aliases%" | ||||||
|  |           ) else ( | ||||||
|  |               copy "%user_aliases%" "%user_aliases%.old_format" | ||||||
|  |               copy "%CMDER_ROOT%\vendor\user_aliases.cmd.example" "%user_aliases%" | ||||||
|  |           ) | ||||||
|  |       ) | ||||||
|  |   ) | ||||||
|  |  | ||||||
|  |   :: Update old 'user_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" >> "%user_aliases%" | ||||||
|  |     del "%CMDER_ROOT%\config\aliases" | ||||||
|  |   ) else if exist "%user_aliases%.old_format" ( | ||||||
|  |     echo Updating old "%user_aliases%" to new format... | ||||||
|  |     type "%user_aliases%.old_format" >> "%user_aliases%" | ||||||
|  |     del "%user_aliases%.old_format" | ||||||
|  |   ) | ||||||
|  |   endlocal | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | :: Add aliases to the environment | ||||||
|  | call "%user_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 "%GIT_INSTALL_ROOT%\post-install.bat" ( | ||||||
|  |     %lib_console% verbose_output "Running Git for Windows one time Post Install...." | ||||||
|  |     pushd "%GIT_INSTALL_ROOT%\" | ||||||
|  |     "%GIT_INSTALL_ROOT%\git-bash.exe" --no-needs-console --hide --no-cd --command=post-install.bat | ||||||
|  |     popd | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | :: Set home path | ||||||
|  | if not defined HOME set "HOME=%USERPROFILE%" | ||||||
|  | %lib_console% debug_output init.bat "Env Var - HOME=%HOME%" | ||||||
|  |  | ||||||
|  | set "initialConfig=%CMDER_ROOT%\config\user_profile.cmd" | ||||||
|  | if exist "%CMDER_ROOT%\config\user_profile.cmd" ( | ||||||
|  |     REM Create this file and place your own command in there | ||||||
|  |     %lib_console% debug_output init.bat "Calling - %CMDER_ROOT%\config\user_profile.cmd" | ||||||
|  |     call "%CMDER_ROOT%\config\user_profile.cmd" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | if defined CMDER_USER_CONFIG ( | ||||||
|  |   set "initialConfig=%CMDER_USER_CONFIG%\user_profile.cmd" | ||||||
|  |   if exist "%CMDER_USER_CONFIG%\user_profile.cmd" ( | ||||||
|  |       REM Create this file and place your own command in there | ||||||
|  |       %lib_console% debug_output init.bat "Calling - %CMDER_USER_CONFIG%\user_profile.cmd | ||||||
|  |       call "%CMDER_USER_CONFIG%\user_profile.cmd" | ||||||
|  |   ) | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | if not exist "%initialConfig%" ( | ||||||
|  |     echo Creating user startup file: "%initialConfig%" | ||||||
|  |     ( | ||||||
|  | echo :: use this file to run your own startup commands | ||||||
|  | echo :: use in front of the command to prevent printing the command | ||||||
|  | echo. | ||||||
|  | echo :: uncomment this to have the ssh agent load when cmder starts | ||||||
|  | echo :: call "%%GIT_INSTALL_ROOT%%/cmd/start-ssh-agent.cmd" | ||||||
|  | echo. | ||||||
|  | echo :: uncomment the next two lines to use pageant as the ssh authentication agent | ||||||
|  | echo :: SET SSH_AUTH_SOCK=/tmp/.ssh-pageant-auth-sock | ||||||
|  | echo :: call "%%GIT_INSTALL_ROOT%%/cmd/start-ssh-pageant.cmd" | ||||||
|  | echo. | ||||||
|  | echo :: you can add your plugins to the cmder path like so | ||||||
|  | echo :: set "PATH=%%CMDER_ROOT%%\vendor\whatever;%%PATH%%" | ||||||
|  | echo. | ||||||
|  | echo :: arguments in this batch are passed from init.bat, you can quickly parse them like so: | ||||||
|  | echo :: more useage can be seen by typing "cexec /?" | ||||||
|  | echo. | ||||||
|  | echo :: %%ccall%% "/customOption" "command/program" | ||||||
|  | echo. | ||||||
|  | echo @echo off | ||||||
|  | ) >"%initialConfig%" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | if "%CMDER_ALIASES%" == "1" if exist "%CMDER_ROOT%\bin\alias.bat" if exist "%CMDER_ROOT%\vendor\bin\alias.cmd" ( | ||||||
|  |   echo Cmder's 'alias' command has been moved into "%CMDER_ROOT%\vendor\bin\alias.cmd" | ||||||
|  |   echo to get rid of this message either: | ||||||
|  |   echo. | ||||||
|  |   echo Delete the file "%CMDER_ROOT%\bin\alias.bat" | ||||||
|  |   echo. | ||||||
|  |   echo or | ||||||
|  |   echo. | ||||||
|  |   echo If you have customized it and want to continue using it instead of the included version | ||||||
|  |   echo   * Rename "%CMDER_ROOT%\bin\alias.bat" to "%CMDER_ROOT%\bin\alias.cmd". | ||||||
|  |   echo   * Search for 'user-aliases' and replace it with 'user_aliases'. | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | set initialConfig= | ||||||
|  | set CMDER_CONFIGURED=1 | ||||||
|  |  | ||||||
|  | set CMDER_INIT_END=%time% | ||||||
|  |  | ||||||
|  | if %time_init% gtr 0 ( | ||||||
|  |   "%cmder_root%\vendor\bin\timer.cmd" %CMDER_INIT_START% %CMDER_INIT_END% | ||||||
|  | ) | ||||||
|  | exit /b | ||||||
		Reference in New Issue
	
	Block a user