1- @ if defined ELIXIR_CLI_ECHO ( @ echo on) else ( @ echo off)
1+ @ echo off
22
33set ELIXIR_VERSION = 1.17.0-dev
44
5- setlocal enabledelayedexpansion
65if " " %1 " " == " " " " if " " %2 " " == " " " " goto documentation
76if /I " " %1 " " == " " --help" " if " " %2 " " == " " " " goto documentation
87if /I " " %1 " " == " " -h" " if " " %2 " " == " " " " goto documentation
@@ -64,13 +63,11 @@ echo ** Standalone options can't be combined with other options.
6463goto end
6564
6665:shortversion
67- echo ! ELIXIR_VERSION!
66+ echo % ELIXIR_VERSION%
6867goto end
6968
7069:parseopts
71-
72- rem Parameters for Elixir
73- set parsElixir =
70+ setlocal enabledelayedexpansion
7471
7572rem Parameters for Erlang
7673set parsErlang =
@@ -97,48 +94,24 @@ if "!par!"=="" (
9794)
9895shift
9996set par = " !par:" =\" ! "
100- if !endLoop! == 1 (
101- set parsElixir = !parsElixir! !par!
102- goto startloop
103- )
10497rem ******* EXECUTION OPTIONS **********************
10598if !par! == " --werl" (set useWerl=1 && goto startloop)
106- if !par! == " +iex" (set parsElixir=!parsElixir! +iex && set useIEx = 1 && goto startloop)
107- if !par! == " +elixirc" (set parsElixir=!parsElixir! +elixirc && goto startloop)
108- rem ******* EVAL PARAMETERS ************************
109- if " " == !par:-e =! (
110- set " VAR = %~1 "
111- if not defined VAR (set VAR= )
112- set parsElixir = !parsElixir! -e " !VAR:" =\" ! "
113- shift
114- goto startloop
115- )
116- if " " == !par:--eval =! (
117- set " VAR = %~1 "
118- if not defined VAR (set VAR= )
119- set parsElixir = !parsElixir! --eval " !VAR:" =\" ! "
120- shift
121- goto startloop
122- )
123- if " " == !par:--rpc-eval =! (
124- set " VAR = %~2 "
125- if not defined VAR (set VAR= )
126- set parsElixir = !parsElixir! --rpc-eval %1 " !VAR:" =\" ! "
127- shift
128- shift
129- goto startloop
130- )
99+ if !par! == " +iex" (set useIEx=1 && goto startloop)
100+ if !par! == " +elixirc" (goto startloop)
131101rem ******* ELIXIR PARAMETERS **********************
132- if " " == !par:-r =! (set " parsElixir=!parsElixir! -r " %~1 " " && shift && goto startloop)
133- if " " == !par:-pr =! (set " parsElixir=!parsElixir! -pr " %~1 " " && shift && goto startloop)
134- if " " == !par:-pa =! (set " parsElixir=!parsElixir! -pa " %~1 " " && shift && goto startloop)
135- if " " == !par:-pz =! (set " parsElixir=!parsElixir! -pz " %~1 " " && shift && goto startloop)
136- if " " == !par:-v =! (set " parsElixir=!parsElixir! -v" && goto startloop)
137- if " " == !par:--version =! (set " parsElixir=!parsElixir! --version" && goto startloop)
138- if " " == !par:--no-halt =! (set " parsElixir=!parsElixir! --no-halt" && goto startloop)
139- if " " == !par:--remsh =! (set " parsElixir=!parsElixir! --remsh " %~1 " " && shift && goto startloop)
140- if " " == !par:--dot-iex =! (set " parsElixir=!parsElixir! --dot-iex " %~1 " " && shift && goto startloop)
141- if " " == !par:--dbg =! (set " parsElixir=!parsElixir! --dbg " %~1 " " && shift && goto startloop)
102+ if " " == !par:-e =! (shift && goto startloop)
103+ if " " == !par:--eval =! (shift && goto startloop)
104+ if " " == !par:--rpc-eval =! (shift && shift && goto startloop)
105+ if " " == !par:-r =! (shift && goto startloop)
106+ if " " == !par:-pr =! (shift && goto startloop)
107+ if " " == !par:-pa =! (shift && goto startloop)
108+ if " " == !par:-pz =! (shift && goto startloop)
109+ if " " == !par:-v =! (goto startloop)
110+ if " " == !par:--version =! (goto startloop)
111+ if " " == !par:--no-halt =! (goto startloop)
112+ if " " == !par:--remsh =! (shift && goto startloop)
113+ if " " == !par:--dot-iex =! (shift && goto startloop)
114+ if " " == !par:--dbg =! (shift && goto startloop)
142115rem ******* ERLANG PARAMETERS **********************
143116if " " == !par:--boot =! (set " parsErlang=!parsErlang! -boot " %~1 " " && shift && goto startloop)
144117if " " == !par:--boot-var =! (set " parsErlang=!parsErlang! -boot_var " %~1 " " %~2 " " && shift && shift && goto startloop)
@@ -152,32 +125,30 @@ if ""==!par:--sname=! (set "parsErlang=!parsErlang! -sname "%~1""
152125if " " == !par:--vm-args =! (set " parsErlang=!parsErlang! -args_file " %~1 " " && shift && goto startloop)
153126if " " == !par:--erl =! (set " beforeExtra=!beforeExtra! %~1 " && shift && goto startloop)
154127if " " == !par:--pipe-to =! (echo --pipe-to : Option is not supported on Windows && goto end)
155- set endLoop = 1
156- set parsElixir = !parsElixir! !par!
157- goto startloop
158128
159129:run
130+ setlocal disabledelayedexpansion
160131reg query HKCU\Console /v VirtualTerminalLevel 2 > nul | findstr /e " 0x1" > nul 2 > nul
161132if %errorlevel% == 0 (
162- set beforeExtra = -elixir ansi_enabled true ! beforeExtra!
133+ set beforeExtra = -elixir ansi_enabled true % beforeExtra%
163134)
164135if not defined useIEx (
165- set beforeExtra = -s elixir start_cli ! beforeExtra!
136+ set beforeExtra = -s elixir start_cli % beforeExtra%
166137)
167138
168- set beforeExtra = -noshell -elixir_root " ! SCRIPT_PATH! ..\lib" -pa " ! SCRIPT_PATH! ..\lib\elixir\ebin" ! beforeExtra!
139+ set beforeExtra = -noshell -elixir_root " % SCRIPT_PATH% ..\lib" -pa " % SCRIPT_PATH% ..\lib\elixir\ebin" % beforeExtra%
169140
170141if defined ELIXIR_CLI_DRY_RUN (
171142 if defined useWerl (
172- echo start " " " ! ERTS_BIN! werl.exe" ! ext_libs! ! ELIXIR_ERL_OPTIONS! ! parsErlang! ! beforeExtra! -extra !parsElixir!
143+ echo start " " " % ERTS_BIN% werl.exe" % ext_libs% % ELIXIR_ERL_OPTIONS% % parsErlang% % beforeExtra% -extra %*
173144 ) else (
174- echo " ! ERTS_BIN! erl.exe" ! ext_libs! ! ELIXIR_ERL_OPTIONS! ! parsErlang! ! beforeExtra! -extra !parsElixir!
145+ echo " % ERTS_BIN% erl.exe" % ext_libs% % ELIXIR_ERL_OPTIONS% % parsErlang% % beforeExtra% -extra %*
175146 )
176147) else (
177148 if defined useWerl (
178- start " " " ! ERTS_BIN! werl.exe" ! ext_libs! ! ELIXIR_ERL_OPTIONS! ! parsErlang! ! beforeExtra! -extra !parsElixir!
149+ start " " " % ERTS_BIN% werl.exe" % ext_libs% % ELIXIR_ERL_OPTIONS% % parsErlang% % beforeExtra% -extra %*
179150 ) else (
180- " ! ERTS_BIN! erl.exe" ! ext_libs! ! ELIXIR_ERL_OPTIONS! ! parsErlang! ! beforeExtra! -extra !parsElixir!
151+ " % ERTS_BIN% erl.exe" % ext_libs% % ELIXIR_ERL_OPTIONS% % parsErlang% % beforeExtra% -extra %*
181152 )
182153)
183154exit /B %ERRORLEVEL%
0 commit comments