added exit codes

This commit is contained in:
Dax T. Games
2018-09-15 13:55:54 -05:00
parent 669e997602
commit 9dce9d0f62
3 changed files with 22 additions and 17 deletions

View File

@ -19,9 +19,10 @@ set "currenArgu=%~1"
if /i "%currenArgu%" equ "/setPath" (
:: set %flag_exists% shortcut
endlocal
set "flag_exists=%~dp0flag_exists"
set "ccall=call %~dp0cexec.cmd"
set "cexec=%~dp0cexec.cmd"
) else if /i "%currenArgu%" == "/?" (
goto :help
call :help
) else if /i "%currenArgu%" equ "/help" (
goto :help
) else if /i "%currenArgu%" equ "/h" (
@ -55,14 +56,16 @@ echo %CMDER_USER_FLAGS% | find /i "%feFlagName%">nul
if "%ERRORLEVEL%" == "0" (
if "%feNOT%" == "false" (
call %feCommand% %feParam%
exit /b 0
)
) else (
if "%feNOT%" == "true" (
call %feCommand% %feParam%
exit /b 0
)
)
endlocal
exit /b
exit /b 1
:wrongSyntax
echo The syntax of the command is incorrect.
@ -74,22 +77,22 @@ exit /b
:help
echo.
echo %%flag_exists%%
echo CExec - Conditional Exec
echo.
echo Handles with custom arguments for cmder's init.bat.
echo written by xiazeyu, inspired DRSDavidSoft.
echo.
echo Usage:
echo.
echo %%flag_exists%% [/setPath] [NOT] flagName command/program [parameters]
echo cexec [NOT] flagName command/program [parameters]
echo.
echo setPath Generate a global varible %%flag_exists%% for
echo /setPath Generate a global varible %%cexec%% for
echo quicker use. Following arguments will be ignored.
echo.
echo NOT Specifies that %%flag_exists%% should carry out
echo NOT Specifies that cexec should carry out
echo the command only if the flag is missing.
echo.
echo flagName Specifies which flag name is to detect. It's recommand
echo /[flagName] Specifies which flag name is to detect. It's recommand
echo to use a pair of double quotation marks to wrap
echo your flag name to avoid exceed expectation.
echo.
@ -104,16 +107,17 @@ echo to wrap your flag name to avoid exceed expectation.
echo.
echo Examples:
echo.
echo these examples are expected to be writted in /config/user-profile.cmd
echo it will use the environment varible "CMDER_USER_FLAGS"
echo These examples are expected to be written in %cmder_root%/config/user-profile.cmd
echo CExec evaluates the environment varible "CMDER_USER_FLAGS" and conditionally
echo caries out actions based on flags that are passed.
echo.
echo Case 1:
echo.
echo The following command in user-profile.cmd would execute "notepad.exe"
echo.
echo call %%flag_exists%% "/startNotepad" "start" "notepad.exe"
echo call cexec "/startNotepad" "start" "notepad.exe"
echo.
echo if you pass parameter to init.bat like:
echo If you pass parameter to init.bat like:
echo.
echo init.bat /startNotepad
echo.
@ -121,7 +125,7 @@ echo Case 2:
echo.
echo The following command in user-profile.cmd would execute "notepad.exe"
echo.
echo call %%flag_exists%% NOT "/dontStartNotepad" "start" "notepad.exe"
echo call cexec NOT "/dontStartNotepad" "start" "notepad.exe"
echo.
echo UNLESS you pass parameter to init.bat like:
echo.