-
Notifications
You must be signed in to change notification settings - Fork 0
/
txman.bat
263 lines (237 loc) · 5.09 KB
/
txman.bat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
call settings
@echo off
setlocal
goto :header
:main
endlocal
setlocal EnableDelayedExpansion
set input=
set /p input=%user%@txman $
set parser=python %utils% --path %cd%
set i=0
for %%a in (%input%) do (
set args[!i!]=%%a
set /a i+=1
)
if "%args[0]%" EQU "help" goto help
if "%args[0]%" EQU "clear" goto header
if "%args[0]%" EQU "exit" goto end
if "%args[0]%" EQU "list" goto list
if "%args[0]%" EQU "log" goto log
if "%args[0]%" EQU "create" goto create
if "%args[0]%" EQU "remove" goto remove
goto invalid
:invalid
echo.
echo invalid command..
echo enter "help" to know more.
echo.
goto main
:help
echo.
echo.
echo anatomy of principal commands : [command] [flag]
echo.
echo.
echo # basic commands
echo.
echo * help Help menu.
echo * clear Clear screen.
echo * exit Leave txMan.
echo.
echo # main commands
echo.
echo * list Lists image files and prints on
echo the screen.
echo * log Lists image files and saves in
echo a log file.
echo * create Creates *tx* files with the same
echo image name.
echo * remove Removes tx files.
echo.
echo # command flags
echo.
echo * select The command will be applied only
echo on selected images or directories.
echo A *selection* list will be required
echo and the components must be separated
echo by white spaces. Directories must
echo have "\" at the end.
echo * here The command will be applied on all
echo images in current directory.
echo * tree The command will be applied on all
echo images and dependencies in current
echo directory.
echo.
echo # command filters
echo.
echo * all All images on group will be selected.
echo * grey Only float and grayscale images will
echo be selected, given a threshold.
echo * color Only colored or polychromatic images
echo will be selected, given a threshold.
echo * regex The selection will be given by an
echo regular expression.
echo.
goto main
:list
set parser=%parser% --list
if "%args[1]%" EQU "" (
echo.
echo list [flag]
echo.
)
goto flag
:log
set parser=%parser% --log --list
if "%args[1]%" EQU "" (
echo.
echo log [flag]
echo.
)
goto logfile
:create
set parser=%parser% --create --maketx %maketx%
if "%args[1]%" EQU "" (
echo.
echo create [flag]
echo.
)
goto flag
:remove
set parser=%parser% --remove
if "%args[1]%" EQU "" (
echo.
echo remove [flag]
echo.
)
goto flag
:logfile
set logname=
set /p logname="* filename > "
set parser=%parser% --logname %logname%
goto flag
:flag
if "%args[1]%" EQU "select" (
set parser=%parser% --select --all
goto selection
)
if "%args[1]%" EQU "here" (
set parser=%parser% --here
goto filter
)
if "%args[1]%" EQU "tree" (
set parser=%parser% --tree
goto filter
)
goto invalid
:selection
set names=
set /p names="* selection > "
set parser=%parser% --selection %names%
goto filter
:filter
set choice=
set /p choice="* filter > "
if "%choice%" EQU "" (
echo.
goto main
)
if "%choice%" EQU "all" (
set parser=%parser% --all
if "%args[0]%" EQU "create" (
goto colorconvert
) else goto execute
)
if "%choice%" EQU "grey" (
set parser=%parser% --grey
goto threshold
)
if "%choice%" EQU "color" (
set parser=%parser% --color
goto threshold
)
if "%choice%" EQU "regex" (
set parser=%parser% --regex --all
goto pattern
)
goto invalid
:threshold
set threshold=
set /p threshold="* threshold > "
set parser=%parser% --threshold "%threshold%"
if "%args[0]%" EQU "create" (
goto colorconvert
) else goto execute
:pattern
set pattern=
set /p pattern="* pattern > "
set parser=%parser% --pattern %pattern%
if "%args[0]%" EQU "create" (
goto colorconvert
) else goto execute
:colorconvert
set cconvert=
set /p cconvert="* color convert [Y|N]> "
if "%cconvert%" EQU "" (
echo.
goto main
)
if /i "%cconvert%" EQU "Y" (
set parser=%parser% --colorconvert
goto csfrom
)
if /i "%cconvert%" EQU "N" (
goto execute
)
goto invalid
:csfrom
set csfrom=
set /p csfrom="* from > "
if /i "%csfrom%" EQU "linear" (
set parser=%parser% --csfrom linear
goto csto
)
if /i "%csfrom%" EQU "srgb" (
set parser=%parser% --csfrom sRGB
goto csto
)
if /i "%csfrom%" EQU "rec" (
set parser=%parser% --csfrom Rec709
goto csto
)
goto invalid
:csto
set csto=
set /p csto="* to > "
if /i "%csto%" EQU "linear" (
set parser=%parser% --csto linear
goto execute
)
if /i "%csto%" EQU "srgb" (
set parser=%parser% --csto sRGB
goto execute
)
if /i "%csto%" EQU "rec" (
set parser=%parser% --csto Rec709
goto execute
)
goto invalid
:execute
echo.
%parser%
echo.
goto main
:header
cls
echo ##########################################
echo.
echo ### Arnold's TX Manager command prompt ###
echo.
echo ###################### by Diego Inacio ###
echo.
echo ##########################################
echo.
goto main
:end
cls