mirror of
https://github.com/daylinmorgan/task.mk.git
synced 2024-12-22 18:00:44 -06:00
Compare commits
No commits in common. "3cd8b940da3abde116c5de1d55546e9691f000e4" and "9ee2a8db79aa1578dd18c29bc34709af1024db4e" have entirely different histories.
3cd8b940da
...
9ee2a8db79
7 changed files with 67 additions and 64 deletions
9
LICENSE
9
LICENSE
|
@ -1,9 +0,0 @@
|
||||||
Copyright 2022 Daylin Morgan
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
|
|
||||||
|
|
6
Makefile
6
Makefile
|
@ -77,15 +77,13 @@ as python {a.bold}f-string{a.end} literals
|
||||||
{a.end}
|
{a.end}
|
||||||
endef
|
endef
|
||||||
|
|
||||||
## info | demonstrate usage of tprint
|
## info | demonsrtate usage of tprint
|
||||||
.PHONY: task
|
.PHONY: task
|
||||||
info:
|
info:
|
||||||
$(call header, Info Message)
|
$(call header, Info Message)
|
||||||
$(call tprint,{a.black_on_cyan}This is task-print output:{a.end})
|
$(call tprint,{a.b_magenta}This is task-print output:{a.end})
|
||||||
$(call tprint,$(msg))
|
$(call tprint,$(msg))
|
||||||
|
|
||||||
task.mk:
|
|
||||||
./generate.py $(shell git describe --tags) > task.mk
|
|
||||||
|
|
||||||
define USAGE
|
define USAGE
|
||||||
{a.$(HEADER_COLOR)}usage:{a.end}
|
{a.$(HEADER_COLOR)}usage:{a.end}
|
||||||
|
|
|
@ -119,8 +119,8 @@ You can take advantage of the builtin python script runner and write multi-line
|
||||||
This is a simple example but a few lines of python in your `Makefile`
|
This is a simple example but a few lines of python in your `Makefile`
|
||||||
may be easier than balancing sub-shells and strung together awk commands.
|
may be easier than balancing sub-shells and strung together awk commands.
|
||||||
|
|
||||||
When `make` expands the function it will take the parameters passed to `py` and expand them.
|
When `make` expands the function it will take the parameters passed to `py` and expand them `$(1)` is the variable name.
|
||||||
`$(1)` is the variable name and `$(2)` in this case is the implicit pattern from the rule. Pay attention to quotes.
|
`$(2)` in this case is the implicit pattern from the rule. Pay attention to quotes.
|
||||||
If you need to debug your python script, use `DEBUG=1` when you run `make` and it will first print the script that will be piped to `python`.
|
If you need to debug your python script, use `DEBUG=1` when you run `make` and it will first print the script that will be piped to `python`.
|
||||||
|
|
||||||
```make
|
```make
|
||||||
|
@ -135,7 +135,7 @@ list-%:
|
||||||
$(call py,list_files_py,$*)
|
$(call py,list_files_py,$*)
|
||||||
```
|
```
|
||||||
|
|
||||||
For what it's worth there is also a predefined function for `bash` (named `tbash`) as well should you need to accomplish something similar of more easily embedding your bash script rather than having to escape every line with a backslash.
|
For what it's worth there is also a predefined function for `bash` (named `tbash`) as well should you need to accomplish something similar of more easily embedding your bash script rather than having to escape every line with '\'.
|
||||||
|
|
||||||
```make
|
```make
|
||||||
define bash_script
|
define bash_script
|
||||||
|
@ -182,7 +182,7 @@ But I just want a basic help output, surely I don't need python for this... you
|
||||||
```make
|
```make
|
||||||
## h, help | show this help
|
## h, help | show this help
|
||||||
.PHONY: help h
|
.PHONY: help h
|
||||||
help h: Makefile
|
help h: Makefile params
|
||||||
@awk -v fill=$(shell sed -n 's/^## \(.*\) | .*/\1/p' $< | wc -L)\
|
@awk -v fill=$(shell sed -n 's/^## \(.*\) | .*/\1/p' $< | wc -L)\
|
||||||
'match($$0,/^## (.*) \|/,name) && match($$0,/\| (.*)$$/,help)\
|
'match($$0,/^## (.*) \|/,name) && match($$0,/\| (.*)$$/,help)\
|
||||||
{printf "\033[1;93m%*s\033[0m | \033[30m%s\033[0m\n",\
|
{printf "\033[1;93m%*s\033[0m | \033[30m%s\033[0m\n",\
|
||||||
|
|
|
@ -16,14 +16,14 @@
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
}
|
}
|
||||||
|
|
||||||
.terminal-649700464-matrix {
|
.terminal-649569392-matrix {
|
||||||
font-family: Fira Code, monospace;
|
font-family: Fira Code, monospace;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
line-height: 24.4px;
|
line-height: 24.4px;
|
||||||
font-variant-east-asian: full-width;
|
font-variant-east-asian: full-width;
|
||||||
}
|
}
|
||||||
|
|
||||||
.terminal-649700464-title {
|
.terminal-649569392-title {
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
font-family: arial;
|
font-family: arial;
|
||||||
|
@ -33,95 +33,95 @@
|
||||||
-webkit-filter: drop-shadow( 2px 5px 2px rgba(0, 0, 0, .7));
|
-webkit-filter: drop-shadow( 2px 5px 2px rgba(0, 0, 0, .7));
|
||||||
filter: drop-shadow( 2px 5px 2px rgba(0, 0, 0, .7));
|
filter: drop-shadow( 2px 5px 2px rgba(0, 0, 0, .7));
|
||||||
}
|
}
|
||||||
.terminal-649700464-r1 { fill: #94e2d5;font-weight: bold }
|
.terminal-649569392-r1 { fill: #94e2d5;font-weight: bold }
|
||||||
.terminal-649700464-r2 { fill: #c6d0f5 }
|
.terminal-649569392-r2 { fill: #c6d0f5 }
|
||||||
.terminal-649700464-r3 { fill: #f5c2e7;font-weight: bold }
|
.terminal-649569392-r3 { fill: #f5c2e7;font-weight: bold }
|
||||||
.terminal-649700464-r4 { fill: #c6d0f5;font-style: italic;;text-decoration: underline; }
|
.terminal-649569392-r4 { fill: #c6d0f5;font-style: italic;;text-decoration: underline; }
|
||||||
.terminal-649700464-r5 { fill: #f9e2af;font-weight: bold }
|
.terminal-649569392-r5 { fill: #f9e2af;font-weight: bold }
|
||||||
.terminal-649700464-r6 { fill: #8288a5 }
|
.terminal-649569392-r6 { fill: #8288a5 }
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<defs>
|
<defs>
|
||||||
<clipPath id="terminal-649700464-clip-terminal">
|
<clipPath id="terminal-649569392-clip-terminal">
|
||||||
<rect x="0" y="0" width="609.0" height="413.79999999999995" />
|
<rect x="0" y="0" width="609.0" height="413.79999999999995" />
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-0">
|
<clipPath id="terminal-649569392-line-0">
|
||||||
<rect x="0" y="1.5" width="610" height="24.65"/>
|
<rect x="0" y="1.5" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-1">
|
<clipPath id="terminal-649569392-line-1">
|
||||||
<rect x="0" y="25.9" width="610" height="24.65"/>
|
<rect x="0" y="25.9" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-2">
|
<clipPath id="terminal-649569392-line-2">
|
||||||
<rect x="0" y="50.3" width="610" height="24.65"/>
|
<rect x="0" y="50.3" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-3">
|
<clipPath id="terminal-649569392-line-3">
|
||||||
<rect x="0" y="74.7" width="610" height="24.65"/>
|
<rect x="0" y="74.7" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-4">
|
<clipPath id="terminal-649569392-line-4">
|
||||||
<rect x="0" y="99.1" width="610" height="24.65"/>
|
<rect x="0" y="99.1" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-5">
|
<clipPath id="terminal-649569392-line-5">
|
||||||
<rect x="0" y="123.5" width="610" height="24.65"/>
|
<rect x="0" y="123.5" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-6">
|
<clipPath id="terminal-649569392-line-6">
|
||||||
<rect x="0" y="147.9" width="610" height="24.65"/>
|
<rect x="0" y="147.9" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-7">
|
<clipPath id="terminal-649569392-line-7">
|
||||||
<rect x="0" y="172.3" width="610" height="24.65"/>
|
<rect x="0" y="172.3" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-8">
|
<clipPath id="terminal-649569392-line-8">
|
||||||
<rect x="0" y="196.7" width="610" height="24.65"/>
|
<rect x="0" y="196.7" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-9">
|
<clipPath id="terminal-649569392-line-9">
|
||||||
<rect x="0" y="221.1" width="610" height="24.65"/>
|
<rect x="0" y="221.1" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-10">
|
<clipPath id="terminal-649569392-line-10">
|
||||||
<rect x="0" y="245.5" width="610" height="24.65"/>
|
<rect x="0" y="245.5" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-11">
|
<clipPath id="terminal-649569392-line-11">
|
||||||
<rect x="0" y="269.9" width="610" height="24.65"/>
|
<rect x="0" y="269.9" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-12">
|
<clipPath id="terminal-649569392-line-12">
|
||||||
<rect x="0" y="294.3" width="610" height="24.65"/>
|
<rect x="0" y="294.3" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-13">
|
<clipPath id="terminal-649569392-line-13">
|
||||||
<rect x="0" y="318.7" width="610" height="24.65"/>
|
<rect x="0" y="318.7" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-14">
|
<clipPath id="terminal-649569392-line-14">
|
||||||
<rect x="0" y="343.1" width="610" height="24.65"/>
|
<rect x="0" y="343.1" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
<clipPath id="terminal-649700464-line-15">
|
<clipPath id="terminal-649569392-line-15">
|
||||||
<rect x="0" y="367.5" width="610" height="24.65"/>
|
<rect x="0" y="367.5" width="610" height="24.65"/>
|
||||||
</clipPath>
|
</clipPath>
|
||||||
</defs>
|
</defs>
|
||||||
|
|
||||||
<rect fill="#1e1e2e" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="10.1667" y="1" width="626" height="462.8" rx="8"/><text class="terminal-649700464-title" fill="#c6d0f5" text-anchor="middle" x="313" y="27">make help</text>
|
<rect fill="#1e1e2e" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="10.1667" y="1" width="626" height="462.8" rx="8"/><text class="terminal-649569392-title" fill="#c6d0f5" text-anchor="middle" x="313" y="27">make help</text>
|
||||||
<g transform="translate(32,22)">
|
<g transform="translate(32,22)">
|
||||||
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
|
||||||
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
|
||||||
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
<circle cx="44" cy="0" r="7" fill="#28c840"/>
|
||||||
</g>
|
</g>
|
||||||
|
|
||||||
<g transform="translate(18.166666666666664, 41) scale(.95)" clip-path="url(#terminal-649700464-clip-terminal)">
|
<g transform="translate(18.166666666666664, 41) scale(.95)" clip-path="url(#terminal-649569392-clip-terminal)">
|
||||||
|
|
||||||
<g class="terminal-649700464-matrix">
|
<g class="terminal-649569392-matrix">
|
||||||
<text class="terminal-649700464-r1" x="0" y="20" textLength="73.2" clip-path="url(#terminal-649700464-line-0)">usage:</text><text class="terminal-649700464-r2" x="610" y="20" textLength="12.2" clip-path="url(#terminal-649700464-line-0)">
|
<text class="terminal-649569392-r1" x="0" y="20" textLength="73.2" clip-path="url(#terminal-649569392-line-0)">usage:</text><text class="terminal-649569392-r2" x="610" y="20" textLength="12.2" clip-path="url(#terminal-649569392-line-0)">
|
||||||
</text><text class="terminal-649700464-r2" x="97.6" y="44.4" textLength="158.6" clip-path="url(#terminal-649700464-line-1)">make <recipe></text><text class="terminal-649700464-r2" x="610" y="44.4" textLength="12.2" clip-path="url(#terminal-649700464-line-1)">
|
</text><text class="terminal-649569392-r2" x="97.6" y="44.4" textLength="158.6" clip-path="url(#terminal-649569392-line-1)">make <recipe></text><text class="terminal-649569392-r2" x="610" y="44.4" textLength="12.2" clip-path="url(#terminal-649569392-line-1)">
|
||||||
</text><text class="terminal-649700464-r2" x="610" y="68.8" textLength="12.2" clip-path="url(#terminal-649700464-line-2)">
|
</text><text class="terminal-649569392-r2" x="610" y="68.8" textLength="12.2" clip-path="url(#terminal-649569392-line-2)">
|
||||||
</text><text class="terminal-649700464-r2" x="0" y="93.2" textLength="146.4" clip-path="url(#terminal-649700464-line-3)">  Turn your </text><text class="terminal-649700464-r3" x="146.4" y="93.2" textLength="122" clip-path="url(#terminal-649700464-line-3)">`Makefile`</text><text class="terminal-649700464-r2" x="268.4" y="93.2" textLength="61" clip-path="url(#terminal-649700464-line-3)"> into</text><text class="terminal-649700464-r2" x="610" y="93.2" textLength="12.2" clip-path="url(#terminal-649700464-line-3)">
|
</text><text class="terminal-649569392-r2" x="0" y="93.2" textLength="146.4" clip-path="url(#terminal-649569392-line-3)">  Turn your </text><text class="terminal-649569392-r3" x="146.4" y="93.2" textLength="122" clip-path="url(#terminal-649569392-line-3)">`Makefile`</text><text class="terminal-649569392-r2" x="268.4" y="93.2" textLength="61" clip-path="url(#terminal-649569392-line-3)"> into</text><text class="terminal-649569392-r2" x="610" y="93.2" textLength="12.2" clip-path="url(#terminal-649569392-line-3)">
|
||||||
</text><text class="terminal-649700464-r2" x="0" y="117.6" textLength="73.2" clip-path="url(#terminal-649700464-line-4)">  the </text><text class="terminal-649700464-r4" x="73.2" y="117.6" textLength="134.2" clip-path="url(#terminal-649700464-line-4)">task runner</text><text class="terminal-649700464-r2" x="207.4" y="117.6" textLength="231.8" clip-path="url(#terminal-649700464-line-4)"> you always needed.</text><text class="terminal-649700464-r2" x="610" y="117.6" textLength="12.2" clip-path="url(#terminal-649700464-line-4)">
|
</text><text class="terminal-649569392-r2" x="0" y="117.6" textLength="73.2" clip-path="url(#terminal-649569392-line-4)">  the </text><text class="terminal-649569392-r4" x="73.2" y="117.6" textLength="134.2" clip-path="url(#terminal-649569392-line-4)">task runner</text><text class="terminal-649569392-r2" x="207.4" y="117.6" textLength="231.8" clip-path="url(#terminal-649569392-line-4)"> you always needed.</text><text class="terminal-649569392-r2" x="610" y="117.6" textLength="12.2" clip-path="url(#terminal-649569392-line-4)">
|
||||||
</text><text class="terminal-649700464-r2" x="0" y="142" textLength="378.2" clip-path="url(#terminal-649700464-line-5)">  See the example output below.</text><text class="terminal-649700464-r2" x="610" y="142" textLength="12.2" clip-path="url(#terminal-649700464-line-5)">
|
</text><text class="terminal-649569392-r2" x="0" y="142" textLength="378.2" clip-path="url(#terminal-649569392-line-5)">  See the example output below.</text><text class="terminal-649569392-r2" x="610" y="142" textLength="12.2" clip-path="url(#terminal-649569392-line-5)">
|
||||||
</text><text class="terminal-649700464-r2" x="610" y="166.4" textLength="12.2" clip-path="url(#terminal-649700464-line-6)">
|
</text><text class="terminal-649569392-r2" x="610" y="166.4" textLength="12.2" clip-path="url(#terminal-649569392-line-6)">
|
||||||
</text><text class="terminal-649700464-r5" x="0" y="190.8" textLength="109.8" clip-path="url(#terminal-649700464-line-7)">bootstrap</text><text class="terminal-649700464-r2" x="109.8" y="190.8" textLength="36.6" clip-path="url(#terminal-649700464-line-7)"> | </text><text class="terminal-649700464-r6" x="146.4" y="190.8" textLength="366" clip-path="url(#terminal-649700464-line-7)">generate local dev environment</text><text class="terminal-649700464-r2" x="610" y="190.8" textLength="12.2" clip-path="url(#terminal-649700464-line-7)">
|
</text><text class="terminal-649569392-r5" x="0" y="190.8" textLength="109.8" clip-path="url(#terminal-649569392-line-7)">bootstrap</text><text class="terminal-649569392-r2" x="109.8" y="190.8" textLength="36.6" clip-path="url(#terminal-649569392-line-7)"> | </text><text class="terminal-649569392-r6" x="146.4" y="190.8" textLength="366" clip-path="url(#terminal-649569392-line-7)">generate local dev environment</text><text class="terminal-649569392-r2" x="610" y="190.8" textLength="12.2" clip-path="url(#terminal-649569392-line-7)">
|
||||||
</text><text class="terminal-649700464-r5" x="0" y="215.2" textLength="109.8" clip-path="url(#terminal-649700464-line-8)">     lint</text><text class="terminal-649700464-r2" x="109.8" y="215.2" textLength="36.6" clip-path="url(#terminal-649700464-line-8)"> | </text><text class="terminal-649700464-r6" x="146.4" y="215.2" textLength="183" clip-path="url(#terminal-649700464-line-8)">lint the python</text><text class="terminal-649700464-r2" x="610" y="215.2" textLength="12.2" clip-path="url(#terminal-649700464-line-8)">
|
</text><text class="terminal-649569392-r5" x="0" y="215.2" textLength="109.8" clip-path="url(#terminal-649569392-line-8)">     lint</text><text class="terminal-649569392-r2" x="109.8" y="215.2" textLength="36.6" clip-path="url(#terminal-649569392-line-8)"> | </text><text class="terminal-649569392-r6" x="146.4" y="215.2" textLength="183" clip-path="url(#terminal-649569392-line-8)">lint the python</text><text class="terminal-649569392-r2" x="610" y="215.2" textLength="12.2" clip-path="url(#terminal-649569392-line-8)">
|
||||||
</text><text class="terminal-649700464-r5" x="0" y="239.6" textLength="109.8" clip-path="url(#terminal-649700464-line-9)">   assets</text><text class="terminal-649700464-r2" x="109.8" y="239.6" textLength="36.6" clip-path="url(#terminal-649700464-line-9)"> | </text><text class="terminal-649700464-r6" x="146.4" y="239.6" textLength="183" clip-path="url(#terminal-649700464-line-9)">generate assets</text><text class="terminal-649700464-r2" x="610" y="239.6" textLength="12.2" clip-path="url(#terminal-649700464-line-9)">
|
</text><text class="terminal-649569392-r5" x="0" y="239.6" textLength="109.8" clip-path="url(#terminal-649569392-line-9)">   assets</text><text class="terminal-649569392-r2" x="109.8" y="239.6" textLength="36.6" clip-path="url(#terminal-649569392-line-9)"> | </text><text class="terminal-649569392-r6" x="146.4" y="239.6" textLength="183" clip-path="url(#terminal-649569392-line-9)">generate assets</text><text class="terminal-649569392-r2" x="610" y="239.6" textLength="12.2" clip-path="url(#terminal-649569392-line-9)">
|
||||||
</text><text class="terminal-649700464-r5" x="0" y="264" textLength="109.8" clip-path="url(#terminal-649700464-line-10)">   list-%</text><text class="terminal-649700464-r2" x="109.8" y="264" textLength="36.6" clip-path="url(#terminal-649700464-line-10)"> | </text><text class="terminal-649700464-r6" x="146.4" y="264" textLength="366" clip-path="url(#terminal-649700464-line-10)">use pathlib.Path to list files</text><text class="terminal-649700464-r2" x="610" y="264" textLength="12.2" clip-path="url(#terminal-649700464-line-10)">
|
</text><text class="terminal-649569392-r5" x="0" y="264" textLength="109.8" clip-path="url(#terminal-649569392-line-10)">   list-%</text><text class="terminal-649569392-r2" x="109.8" y="264" textLength="36.6" clip-path="url(#terminal-649569392-line-10)"> | </text><text class="terminal-649569392-r6" x="146.4" y="264" textLength="366" clip-path="url(#terminal-649569392-line-10)">use pathlib.Path to list files</text><text class="terminal-649569392-r2" x="610" y="264" textLength="12.2" clip-path="url(#terminal-649569392-line-10)">
|
||||||
</text><text class="terminal-649700464-r5" x="0" y="288.4" textLength="109.8" clip-path="url(#terminal-649700464-line-11)">  release</text><text class="terminal-649700464-r2" x="109.8" y="288.4" textLength="36.6" clip-path="url(#terminal-649700464-line-11)"> | </text><text class="terminal-649700464-r6" x="146.4" y="288.4" textLength="366" clip-path="url(#terminal-649700464-line-11)">release new version of task.mk</text><text class="terminal-649700464-r2" x="610" y="288.4" textLength="12.2" clip-path="url(#terminal-649700464-line-11)">
|
</text><text class="terminal-649569392-r5" x="0" y="288.4" textLength="109.8" clip-path="url(#terminal-649569392-line-11)">  release</text><text class="terminal-649569392-r2" x="109.8" y="288.4" textLength="36.6" clip-path="url(#terminal-649569392-line-11)"> | </text><text class="terminal-649569392-r6" x="146.4" y="288.4" textLength="366" clip-path="url(#terminal-649569392-line-11)">release new version of task.mk</text><text class="terminal-649569392-r2" x="610" y="288.4" textLength="12.2" clip-path="url(#terminal-649569392-line-11)">
|
||||||
</text><text class="terminal-649700464-r5" x="0" y="312.8" textLength="109.8" clip-path="url(#terminal-649700464-line-12)"> c, clean</text><text class="terminal-649700464-r2" x="109.8" y="312.8" textLength="36.6" clip-path="url(#terminal-649700464-line-12)"> | </text><text class="terminal-649700464-r6" x="146.4" y="312.8" textLength="317.2" clip-path="url(#terminal-649700464-line-12)">remove the generated files</text><text class="terminal-649700464-r2" x="610" y="312.8" textLength="12.2" clip-path="url(#terminal-649700464-line-12)">
|
</text><text class="terminal-649569392-r5" x="0" y="312.8" textLength="109.8" clip-path="url(#terminal-649569392-line-12)"> c, clean</text><text class="terminal-649569392-r2" x="109.8" y="312.8" textLength="36.6" clip-path="url(#terminal-649569392-line-12)"> | </text><text class="terminal-649569392-r6" x="146.4" y="312.8" textLength="317.2" clip-path="url(#terminal-649569392-line-12)">remove the generated files</text><text class="terminal-649569392-r2" x="610" y="312.8" textLength="12.2" clip-path="url(#terminal-649569392-line-12)">
|
||||||
</text><text class="terminal-649700464-r5" x="0" y="337.2" textLength="109.8" clip-path="url(#terminal-649700464-line-13)">     info</text><text class="terminal-649700464-r2" x="109.8" y="337.2" textLength="36.6" clip-path="url(#terminal-649700464-line-13)"> | </text><text class="terminal-649700464-r6" x="146.4" y="337.2" textLength="329.4" clip-path="url(#terminal-649700464-line-13)">demonstrate usage of tprint</text><text class="terminal-649700464-r2" x="610" y="337.2" textLength="12.2" clip-path="url(#terminal-649700464-line-13)">
|
</text><text class="terminal-649569392-r5" x="0" y="337.2" textLength="109.8" clip-path="url(#terminal-649569392-line-13)">     info</text><text class="terminal-649569392-r2" x="109.8" y="337.2" textLength="36.6" clip-path="url(#terminal-649569392-line-13)"> | </text><text class="terminal-649569392-r6" x="146.4" y="337.2" textLength="329.4" clip-path="url(#terminal-649569392-line-13)">demonsrtate usage of tprint</text><text class="terminal-649569392-r2" x="610" y="337.2" textLength="12.2" clip-path="url(#terminal-649569392-line-13)">
|
||||||
</text><text class="terminal-649700464-r5" x="0" y="361.6" textLength="109.8" clip-path="url(#terminal-649700464-line-14)">  h, help</text><text class="terminal-649700464-r2" x="109.8" y="361.6" textLength="36.6" clip-path="url(#terminal-649700464-line-14)"> | </text><text class="terminal-649700464-r6" x="146.4" y="361.6" textLength="170.8" clip-path="url(#terminal-649700464-line-14)">show this help</text><text class="terminal-649700464-r2" x="610" y="361.6" textLength="12.2" clip-path="url(#terminal-649700464-line-14)">
|
</text><text class="terminal-649569392-r5" x="0" y="361.6" textLength="109.8" clip-path="url(#terminal-649569392-line-14)">  h, help</text><text class="terminal-649569392-r2" x="109.8" y="361.6" textLength="36.6" clip-path="url(#terminal-649569392-line-14)"> | </text><text class="terminal-649569392-r6" x="146.4" y="361.6" textLength="170.8" clip-path="url(#terminal-649569392-line-14)">show this help</text><text class="terminal-649569392-r2" x="610" y="361.6" textLength="12.2" clip-path="url(#terminal-649569392-line-14)">
|
||||||
</text><text class="terminal-649700464-r2" x="610" y="386" textLength="12.2" clip-path="url(#terminal-649700464-line-15)">
|
</text><text class="terminal-649569392-r2" x="610" y="386" textLength="12.2" clip-path="url(#terminal-649569392-line-15)">
|
||||||
</text><text class="terminal-649700464-r2" x="0" y="410.4" textLength="610" clip-path="url(#terminal-649700464-line-16)">for more info: see github.com/daylinmorgan/task.mk</text><text class="terminal-649700464-r2" x="610" y="410.4" textLength="12.2" clip-path="url(#terminal-649700464-line-16)">
|
</text><text class="terminal-649569392-r2" x="0" y="410.4" textLength="610" clip-path="url(#terminal-649569392-line-16)">for more info: see github.com/daylinmorgan/task.mk</text><text class="terminal-649569392-r2" x="610" y="410.4" textLength="12.2" clip-path="url(#terminal-649569392-line-16)">
|
||||||
</text>
|
</text>
|
||||||
</g>
|
</g>
|
||||||
</g>
|
</g>
|
||||||
|
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
@ -1,3 +1,5 @@
|
||||||
define #% block name %##% endblock %#_py
|
define #% block name %##% endblock %#_py
|
||||||
|
|
||||||
#% block script %##% endblock %#
|
#% block script %##% endblock %#
|
||||||
|
|
||||||
endef
|
endef
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
#% extends "py-script.mk" %#
|
#% extends "py-script.mk" %#
|
||||||
#% block name %#vars#% endblock %#
|
#% block name %#vars#% endblock %#
|
||||||
#% block script %#
|
#% block script %#
|
||||||
|
|
||||||
import os
|
import os
|
||||||
|
|
||||||
##- '$(ansi_py)' -##
|
##- '$(ansi_py)' -##
|
||||||
|
|
13
task.mk
13
task.mk
|
@ -1,7 +1,7 @@
|
||||||
# }> [github.com/daylinmorgan/task.mk] <{ #
|
# }> [github.com/daylinmorgan/task.mk] <{ #
|
||||||
# Copyright (c) 2022 Daylin Morgan
|
# Copyright (c) 2022 Daylin Morgan
|
||||||
# MIT License
|
# MIT License
|
||||||
# v22.9.5-3-g9c67418
|
# 22.9.5
|
||||||
#
|
#
|
||||||
# task.mk should be included at the bottom of your Makefile.
|
# task.mk should be included at the bottom of your Makefile.
|
||||||
# See below for the standard configuration options that should be set prior to including this file.
|
# See below for the standard configuration options that should be set prior to including this file.
|
||||||
|
@ -103,6 +103,7 @@ pysh = printf "$(call create_string,$($(1)))" | python3
|
||||||
|
|
||||||
define help_py
|
define help_py
|
||||||
|
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
|
|
||||||
|
@ -140,10 +141,12 @@ for goal, msg in goals:
|
||||||
|
|
||||||
print(f"""$(EPILOG)""")
|
print(f"""$(EPILOG)""")
|
||||||
|
|
||||||
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define ansi_py
|
define ansi_py
|
||||||
|
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
|
@ -194,18 +197,22 @@ class Ansi:
|
||||||
|
|
||||||
a = ansi = Ansi()
|
a = ansi = Ansi()
|
||||||
|
|
||||||
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define info_py
|
define info_py
|
||||||
|
|
||||||
|
|
||||||
$(ansi_py)
|
$(ansi_py)
|
||||||
|
|
||||||
print(f"""$(2)""")
|
print(f"""$(2)""")
|
||||||
|
|
||||||
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define print_ansi_py
|
define print_ansi_py
|
||||||
|
|
||||||
|
|
||||||
$(ansi_py)
|
$(ansi_py)
|
||||||
|
|
||||||
codes_names = {
|
codes_names = {
|
||||||
|
@ -217,10 +224,13 @@ for code in sorted(codes_names.keys(), key=lambda item: (len(item), item)):
|
||||||
print("{:>20} {}".format(codes_names[code], code + "******" + ansi.end))
|
print("{:>20} {}".format(codes_names[code], code + "******" + ansi.end))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define vars_py
|
define vars_py
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
import os
|
import os
|
||||||
|
|
||||||
$(ansi_py)
|
$(ansi_py)
|
||||||
|
@ -235,5 +245,6 @@ for v in vars:
|
||||||
|
|
||||||
print()
|
print()
|
||||||
|
|
||||||
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue