This commit is contained in:
daylinmorgan 2023-01-20 19:32:14 +00:00
parent 97cd6ec50f
commit 7f6a8eae95
11 changed files with 51 additions and 19 deletions

View file

@ -11,7 +11,7 @@
<link rel="icon" href="/task.mk/assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.5">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.6">

View file

@ -17,7 +17,7 @@
<link rel="next" href="../embedded/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.5">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.6">

View file

@ -17,7 +17,7 @@
<link rel="next" href="../recipe-help/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.5">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.6">

View file

@ -17,7 +17,7 @@
<link rel="next" href="check/">
<link rel="icon" href="../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.5">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.6">

View file

@ -15,7 +15,7 @@
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.5">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.6">

View file

@ -15,7 +15,7 @@
<link rel="next" href="usage/">
<link rel="icon" href="assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.5">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.6">
@ -587,17 +587,17 @@ to add some QOL improvements for your users and fellow maintainers.</p>
</ul>
<p>Depends on <code>GNU Make</code>, obviously and <code>Python &gt;=3.7</code>, and <code>bash</code> (or <code>zsh</code>).</p>
<p>Wait python?!?!, I'm not <code>pip</code> installing some package just to parse my makefile.
I agree, all you need is one file <a href="https://github.com/daylinmorgan/task.mk/v22.9.28/task.mk"><code>.task.mk</code></a>.
I agree, all you need is one file <a href="https://github.com/daylinmorgan/task.mk/v23.1.1/task.mk"><code>.task.mk</code></a>.
You can automagically include it with just two additional lines to your <code>Makefile</code> (and probably one to your <code>.gitignore</code>) and your good to go.</p>
<h2 id="setup">Setup</h2>
<p>You can include this as an optional dependency on your project by adding the below lines to the end of your <code>Makefile</code>.
If someone tries to invoke <code>make help</code> it will download <code>.task.mk</code> for them.</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class="cp">-include .task.mk</span>
<a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class="nf">$(if $(filter help,$(MAKECMDGOALS)),$(if $(wildcard .task.mk),,.task.mk</span><span class="o">:</span><span class="w"> </span>; <span class="n">curl</span> -<span class="n">fsSL</span> <span class="n">https</span>://<span class="n">raw</span>.<span class="n">githubusercontent</span>.<span class="n">com</span>/<span class="n">daylinmorgan</span>/<span class="n">task</span>.<span class="n">mk</span>/<span class="n">v</span>22.9.28/<span class="n">task</span>.<span class="n">mk</span> -<span class="n">o</span> .<span class="n">task</span>.<span class="n">mk</span>))
<a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class="nf">$(if $(filter help,$(MAKECMDGOALS)),$(if $(wildcard .task.mk),,.task.mk</span><span class="o">:</span><span class="w"> </span>; <span class="n">curl</span> -<span class="n">fsSL</span> <span class="n">https</span>://<span class="n">raw</span>.<span class="n">githubusercontent</span>.<span class="n">com</span>/<span class="n">daylinmorgan</span>/<span class="n">task</span>.<span class="n">mk</span>/<span class="n">v</span>23.1.1/<span class="n">task</span>.<span class="n">mk</span> -<span class="n">o</span> .<span class="n">task</span>.<span class="n">mk</span>))
</code></pre></div>
<p>You might also consider making it a consistently downloaded dependency if you plan to use any of it's advanced feature set, by dropping the <code>$(MAKECMDGOALS)</code> check.</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="cp">-include .task.mk</span>
<a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a><span class="nf">$(if $(wildcard .task.mk),,.task.mk</span><span class="o">:</span><span class="w"> </span>; <span class="n">curl</span> -<span class="n">fsSL</span> <span class="n">https</span>://<span class="n">raw</span>.<span class="n">githubusercontent</span>.<span class="n">com</span>/<span class="n">daylinmorgan</span>/<span class="n">task</span>.<span class="n">mk</span>/<span class="n">v</span>22.9.28/<span class="n">task</span>.<span class="n">mk</span> -<span class="n">o</span> .<span class="n">task</span>.<span class="n">mk</span>)
<a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a><span class="nf">$(if $(wildcard .task.mk),,.task.mk</span><span class="o">:</span><span class="w"> </span>; <span class="n">curl</span> -<span class="n">fsSL</span> <span class="n">https</span>://<span class="n">raw</span>.<span class="n">githubusercontent</span>.<span class="n">com</span>/<span class="n">daylinmorgan</span>/<span class="n">task</span>.<span class="n">mk</span>/<span class="n">v</span>23.1.1/<span class="n">task</span>.<span class="n">mk</span> -<span class="n">o</span> .<span class="n">task</span>.<span class="n">mk</span>)
</code></pre></div>
<p>Alternatively, you can use the builtin rule <code>_update-task.mk</code> to update to the latest development version.</p>
<p>See <a href="./usage">Usage</a> to get started running all your tasks.
@ -634,7 +634,7 @@ But like <code>just</code> it's a tool people don't usually already have and it'
<small>
Last update:
<span class="git-revision-date-localized-plugin git-revision-date-localized-plugin-date">September 28, 2022</span>
<span class="git-revision-date-localized-plugin git-revision-date-localized-plugin-date">January 20, 2023</span>
<br>
Created:

31
init Normal file
View file

@ -0,0 +1,31 @@
#!/usr/bin/env bash
set -e
TASKMK_VERSION=v23.1.1
VERSION=${1:-$TASKMK_VERSION}
printf "Initializing Task.mk (%s) for repo\n" "$VERSION"
if [ -f "./.task.mk" ]; then
echo "Found local .task.mk."
echo "Was it already initialized?"
echo 'Exiting....'
exit 0
fi
curl -fsSL "https://raw.githubusercontent.com/daylinmorgan/task.mk/$VERSION/task.mk" -o .task.mk
echo .task.mk >>.gitignore
echo '-include .task.cfg.mk .task.mk' >>Makefile
printf '$(if $(filter help,$(MAKECMDGOALS)),$(if $(wildcard .task.mk),,.task.mk: ; curl -fsSL https://raw.githubusercontent.com/daylinmorgan/task.mk/%s/task.mk -o .task.mk))' \
"$VERSION" \
>>Makefile
printf ".task.mk files added to repo\n\n"
echo "Do you want to commit these changes?"
printf "RUN COMMAND: %s (Y/n) " \
"git add Makefile .gitignore && git commit -m \"chore: initialize .task.mk\""
read -r answer
# if echo "$answer" | grep -iq "^y" ;then
if [ "$answer" != "${answer#[Yy]}" ]; then
git add Makefile .gitignore && git commit -m "chore: initialize .task.mk"
echo finished.
else
echo finished.
fi

File diff suppressed because one or more lines are too long

View file

@ -2,32 +2,32 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://gh.dayl.in/task.mk/</loc>
<lastmod>2023-01-19</lastmod>
<lastmod>2023-01-20</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://gh.dayl.in/task.mk/usage/</loc>
<lastmod>2023-01-19</lastmod>
<lastmod>2023-01-20</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://gh.dayl.in/task.mk/examples/</loc>
<lastmod>2023-01-19</lastmod>
<lastmod>2023-01-20</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://gh.dayl.in/task.mk/examples/check/</loc>
<lastmod>2023-01-19</lastmod>
<lastmod>2023-01-20</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://gh.dayl.in/task.mk/examples/embedded/</loc>
<lastmod>2023-01-19</lastmod>
<lastmod>2023-01-20</lastmod>
<changefreq>daily</changefreq>
</url>
<url>
<loc>https://gh.dayl.in/task.mk/examples/recipe-help/</loc>
<lastmod>2023-01-19</lastmod>
<lastmod>2023-01-20</lastmod>
<changefreq>daily</changefreq>
</url>
</urlset>

Binary file not shown.

View file

@ -17,7 +17,7 @@
<link rel="next" href="../examples/">
<link rel="icon" href="../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.5">
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.0.6">
@ -582,7 +582,8 @@ It has two optional arguments <code>fg</code> and <code>bg</code>. Which can be
Or a tuple/list to define an RBG 24-bit color, for instance <code>a.custom(fg=(5,10,255))</code>.
See this project's <code>make info</code> for an example.</p>
<h2 id="configuration">Configuration</h2>
<p>You can quickly customize some of the default behavior of <code>task.mk</code> by overriding the below variables prior to the <code>-include .task.mk</code>.</p>
<p>You can quickly customize some of the default behavior of <code>task.mk</code> by overriding the below variables prior to the <code>-include .task.mk</code>.
These can also be included in a seperate file <code>.task.cfg.mk</code>.</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-2-1" name="__codelineno-2-1" href="#__codelineno-2-1"></a><span class="c"># ---- [config] ---- #</span>
<a id="__codelineno-2-2" name="__codelineno-2-2" href="#__codelineno-2-2"></a><span class="nv">HEADER_STYLE</span><span class="w"> </span><span class="o">?=</span><span class="w"> </span>b_cyan
<a id="__codelineno-2-3" name="__codelineno-2-3" href="#__codelineno-2-3"></a><span class="nv">ACCENT_STYLE</span><span class="w"> </span><span class="o">?=</span><span class="w"> </span>b_yellow