@@ -14,8 +14,6 @@ if "%~1" == "" echo Use /? for help & echo. & goto :p_show
1414rem #region parseargument
1515goto parseargument
1616
17- set args =
18-
1917:do_shift
2018 shift
2119
@@ -24,6 +22,7 @@ set args=
2422
2523 if /i " %currentarg% " equ " /f" (
2624 set ALIASES = %~2
25+ set _f = %~2
2726 shift
2827 goto :do_shift
2928 ) else if /i " %currentarg% " == " /reload" (
@@ -50,19 +49,27 @@ set args=
5049 echo insufficient parameters.
5150 goto :p_help
5251 ) else if " %currentarg% " == " create" (
52+ set _x = %*
53+
54+ set _x = !_x:^^ =^^^^ !
5355 set action = create
54- if [" %ALIASES % " ] neq [" %CMDER_ROOT% \config\user_aliases.cmd " ] (
55- for /f " tokens=1,2,3,* usebackq" %%G in (`echo %* `) do (
56- set args = %%J
56+ if [" %_f % " ] neq [" " ] (
57+ for /f " tokens=1,2,3,* usebackq" %%G in (`echo !_x! `) do (
58+ set _x = %%J
5759 )
5860 ) else (
59- for /f " tokens=1,2,* usebackq" %%G in (`echo %* `) do (
60- set args = %%H %%I
61+ for /f " tokens=1,2,* usebackq" %%G in (`echo !_x! `) do (
62+ set _x = %%H %%I
6163 )
6264 )
6365 ) else (
64- :: handle quotes within command definition, e.g. quoted long file names
6566 set _x = %*
67+ if [" %_f% " ] neq [" " ] (
68+ set _x = !_x:^^ =^^^^ !
69+ for /f " tokens=1,2,* usebackq" %%G in (`echo !_x! `) do (
70+ set _x = %%I
71+ )
72+ )
6673 )
6774 )
6875
@@ -81,20 +88,16 @@ if "%ALIASES%" neq "%CMDER_ROOT%\config\user_aliases.cmd" (
8188 )
8289)
8390
84- <<<<<<< HEAD
8591:: create with multiple parameters
8692if [%action% ] == [create] (
87- if not [" %args% " ] == [" " ] (
88- for /f " tokens=1,* usebackq" %%G in (`echo %args% `) do (
89- set alias_name = %%G
90- set alias_value = %%H
91- )
93+ for /f " tokens=1,* usebackq" %%G in (`echo !_x! `) do (
94+ set alias_name = %%G
95+ set alias_value = %%H
9296 )
9397) else (
9498 :: validate alias
95- echo %_x%
96- set x = !_x:%=^^% !
97- echo !_x!
99+ rem set _x=!_x:%=^^%!
100+
98101 for /f " delims== tokens=1,* usebackq" %%G in (`echo " !_x! " `) do (
99102 set alias_name = %%G
100103 set alias_value = %%H
@@ -104,21 +107,9 @@ if [%action%] == [create] (
104107 set alias_name = !alias_name:~1 !
105108
106109 :: trailing quotes added while validating
107- set alias_value = !alias_value:~1 ,-1 !
108- ====== =
109- :: validate alias
110- for /f " delims== tokens=1,* usebackq" %%G in (`echo " %_x% " `) do (
111- set alias_name = %%G
112- set alias_value = %%H
113- >>>>>>> 67b374ad378bee1b9157b9a0b20c8e667ec6c6da
110+ set alias_value = !alias_value:~0 ,-1 !
114111)
115112
116- :: leading quotes added while validating
117- set alias_name = %alias_name:~1 %
118-
119- :: trailing quotes added while validating
120- set alias_value = %alias_value:~0 ,-1 %
121-
122113:: remove spaces
123114set _temp = %alias_name: =%
124115
0 commit comments