<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="/blog/rss.xsl"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel>
        <title>Christophe Avonture &#x2014; Zsh</title>
        <link>https://www.avonture.be/blog/tags/zsh</link>
        <description>The Z shell &#x2014; configuration, plugins, functions, and productivity.</description>
        <lastBuildDate>Thu, 12 Nov 2026 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <item>
            <title><![CDATA[ai-explain: ELI5 for Scripts and Errors, Right in Your Terminal]]></title>
            <link>https://www.avonture.be/blog/ollama-ai-explain</link>
            <guid isPermaLink="false">/blog/ollama-ai-explain</guid>
            <pubDate>Thu, 12 Nov 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[<img src="https://www.avonture.be/img/v2/playing_with_ollama.webp" alt="ai-explain: ELI5 for Scripts and Errors, Right in Your Terminal" style="display:block;max-width:100%;height:auto;">Another function in the Ollama daily-use series: pipe any script, error message, or stack trace to ai-explain and get a plain-English explanation of what it does or what went wrong — entirely local, no cloud required.]]></description>
            <author>Christophe</author>
            <author>Claude Code</author>
            <category>ai</category>
            <category>ollama</category>
            <category>zsh</category>
            <category>linux</category>
            <category>bash</category>
            <category>docker</category>
            <category>git</category>
            <enclosure length="0" type="image/webp" url="https://www.avonture.be/img/v2/playing_with_ollama.webp"/>
        <dc:creator><![CDATA[Christophe]]></dc:creator><dc:creator><![CDATA[Claude Code]]></dc:creator></item>
        <item>
            <title><![CDATA[ai-data: Let a Local LLM Write Your jq and awk One-Liners]]></title>
            <link>https://www.avonture.be/blog/ollama-ai-data</link>
            <guid isPermaLink="false">/blog/ollama-ai-data</guid>
            <pubDate>Thu, 22 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[<img src="https://www.avonture.be/img/v2/json.webp" alt="ai-data: Let a Local LLM Write Your jq and awk One-Liners" style="display:block;max-width:100%;height:auto;">A zsh function that reads a JSON or CSV file, understands its actual fields, and suggests 5 practical jq/awk commands tailored to that exact file — picked via fzf, then loaded onto your command line (not run for you) so you see, edit and learn the exact command before pressing Enter.]]></description>
            <author>Christophe</author>
            <author>Claude Code</author>
            <category>ai</category>
            <category>ollama</category>
            <category>zsh</category>
            <category>fzf</category>
            <enclosure length="0" type="image/webp" url="https://www.avonture.be/img/v2/json.webp"/>
        <dc:creator><![CDATA[Christophe]]></dc:creator><dc:creator><![CDATA[Claude Code]]></dc:creator></item>
        <item>
            <title><![CDATA[ai-diagram: From a Sentence (or a compose.yaml) to a Mermaid Diagram]]></title>
            <link>https://www.avonture.be/blog/ollama-ai-diagram</link>
            <guid isPermaLink="false">/blog/ollama-ai-diagram</guid>
            <pubDate>Thu, 15 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[<img src="https://www.avonture.be/img/v2/ai_diagram.webp" alt="ai-diagram: From a Sentence (or a compose.yaml) to a Mermaid Diagram" style="display:block;max-width:100%;height:auto;">A zsh function that turns a plain-English description, or an existing config file like a docker-compose.yaml, into a Mermaid diagram — printed as a ready-to-paste fenced code block. Where docker-python-mermaid needs a script written for each input format, ai-diagram takes whatever you have in hand.]]></description>
            <author>Christophe</author>
            <author>Claude Code</author>
            <category>ai</category>
            <category>ollama</category>
            <category>zsh</category>
            <category>doc-as-code</category>
            <enclosure length="0" type="image/webp" url="https://www.avonture.be/img/v2/ai_diagram.webp"/>
        <dc:creator><![CDATA[Christophe]]></dc:creator><dc:creator><![CDATA[Claude Code]]></dc:creator></item>
        <item>
            <title><![CDATA[ai-translate & ai-summarize: Confidential Documents, Handled 100% Locally]]></title>
            <link>https://www.avonture.be/blog/ollama-ai-docs</link>
            <guid isPermaLink="false">/blog/ollama-ai-docs</guid>
            <pubDate>Mon, 21 Sep 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[<img src="https://www.avonture.be/img/v2/ai_doc.webp" alt="ai-translate & ai-summarize: Confidential Documents, Handled 100% Locally" style="display:block;max-width:100%;height:auto;">Two zsh functions that translate or summarize a Word, PDF, PowerPoint or Excel document without a single byte leaving your machine — Docling extracts the text locally, a local Ollama model does the translation or summary. Built for the document you'd never paste into a cloud translation tool.]]></description>
            <author>Christophe</author>
            <author>Claude Code</author>
            <category>ai</category>
            <category>ollama</category>
            <category>zsh</category>
            <category>docker</category>
            <enclosure length="0" type="image/webp" url="https://www.avonture.be/img/v2/ai_doc.webp"/>
        <dc:creator><![CDATA[Christophe]]></dc:creator><dc:creator><![CDATA[Claude Code]]></dc:creator></item>
        <item>
            <title><![CDATA[Atuin — Supercharge Your Shell History With a Searchable, Timestamped Database]]></title>
            <link>https://www.avonture.be/blog/atuin-bash-history</link>
            <guid isPermaLink="false">/blog/atuin-bash-history</guid>
            <pubDate>Mon, 14 Sep 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[<img src="https://www.avonture.be/img/v2/atuin.webp" alt="Atuin — Supercharge Your Shell History With a Searchable, Timestamped Database" style="display:block;max-width:100%;height:auto;">Tired of losing commands in the default CTRL+R maze? Atuin replaces your shell history with a full-featured TUI backed by SQLite — timestamps, context, multi-machine sync, and a clean comparison with FZF-based history search.]]></description>
            <author>Christophe</author>
            <author>Claude Code</author>
            <category>bash</category>
            <category>linux</category>
            <category>zsh</category>
            <enclosure length="0" type="image/webp" url="https://www.avonture.be/img/v2/atuin.webp"/>
        <dc:creator><![CDATA[Christophe]]></dc:creator><dc:creator><![CDATA[Claude Code]]></dc:creator></item>
        <item>
            <title><![CDATA[ai-review, ai-secrets, ai-commit: Three zsh Checks Before Every git Commit]]></title>
            <link>https://www.avonture.be/blog/ollama-git-precommit</link>
            <guid isPermaLink="false">/blog/ollama-git-precommit</guid>
            <pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[<img src="https://www.avonture.be/img/v2/ai_review.webp" alt="ai-review, ai-secrets, ai-commit: Three zsh Checks Before Every git Commit" style="display:block;max-width:100%;height:auto;">Three zsh functions that together form a local, offline pre-commit quality gate: ai-review catches SOLID violations and naming issues, ai-secrets separates real hardcoded credentials from false positives, and ai-commit drafts the Conventional Commits message once the diff is actually clean.]]></description>
            <author>Christophe</author>
            <author>Claude Code</author>
            <category>git</category>
            <category>ollama</category>
            <category>zsh</category>
            <category>ai</category>
            <category>security</category>
            <category>code-quality</category>
            <enclosure length="0" type="image/webp" url="https://www.avonture.be/img/v2/ai_review.webp"/>
        <dc:creator><![CDATA[Christophe]]></dc:creator><dc:creator><![CDATA[Claude Code]]></dc:creator></item>
        <item>
            <title><![CDATA[ai-test: Generate Missing Unit Tests From Your Terminal With a Local LLM]]></title>
            <link>https://www.avonture.be/blog/ollama-test-generator</link>
            <guid isPermaLink="false">/blog/ollama-test-generator</guid>
            <pubDate>Mon, 03 Aug 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[<img src="https://www.avonture.be/img/v2/ai_test.webp" alt="ai-test: Generate Missing Unit Tests From Your Terminal With a Local LLM" style="display:block;max-width:100%;height:auto;">Turn your local Ollama model into an on-demand unit test generator. A zsh function that reads a Bash, PHP or Python file, detects whether you already have tests for it, prints only the missing Bats/Pest/Pytest cases needed for full coverage, offers to save them where the framework expects them, and runs the suite in a throw-away Docker container.]]></description>
            <author>Christophe</author>
            <author>Claude Code</author>
            <category>ai</category>
            <category>ollama</category>
            <category>zsh</category>
            <category>tests</category>
            <category>bash</category>
            <category>php</category>
            <category>python</category>
            <enclosure length="0" type="image/webp" url="https://www.avonture.be/img/v2/ai_test.webp"/>
        <dc:creator><![CDATA[Christophe]]></dc:creator><dc:creator><![CDATA[Claude Code]]></dc:creator></item>
        <item>
            <title><![CDATA[ripgrep — The Search Tool That Changed My WSL2 Workflow]]></title>
            <link>https://www.avonture.be/blog/ripgrep</link>
            <guid isPermaLink="false">/blog/ripgrep</guid>
            <pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[<img src="https://www.avonture.be/img/v2/ripgrep.webp" alt="ripgrep — The Search Tool That Changed My WSL2 Workflow" style="display:block;max-width:100%;height:auto;">Discover ripgrep, the blazingly fast grep alternative written in Rust. Installation on Ubuntu/WSL2, ZSH configuration, practical shell functions, and real-world use cases that will transform how you search code every day.]]></description>
            <author>Christophe</author>
            <author>Claude Code</author>
            <category>zsh</category>
            <category>wsl</category>
            <category>bash</category>
            <category>linux</category>
            <category>fzf</category>
            <enclosure length="0" type="image/webp" url="https://www.avonture.be/img/v2/ripgrep.webp"/>
        <dc:creator><![CDATA[Christophe]]></dc:creator><dc:creator><![CDATA[Claude Code]]></dc:creator></item>
        <item>
            <title><![CDATA[git worktree: Work on Two Branches at the Same Time]]></title>
            <link>https://www.avonture.be/blog/git-worktree</link>
            <guid isPermaLink="false">/blog/git-worktree</guid>
            <pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[<img src="https://www.avonture.be/img/v2/git_worktree.webp" alt="git worktree: Work on Two Branches at the Same Time" style="display:block;max-width:100%;height:auto;">git worktree lets you check out multiple branches as real directories simultaneously — no stashing, no context loss. Keep your Docker stack running while handling hotfixes in parallel.]]></description>
            <author>Christophe</author>
            <category>git</category>
            <category>linux</category>
            <category>bash</category>
            <category>zsh</category>
            <enclosure length="0" type="image/webp" url="https://www.avonture.be/img/v2/git_worktree.webp"/>
        <dc:creator><![CDATA[Christophe]]></dc:creator></item>
        <item>
            <title><![CDATA[FZF + ripgrep: Interactive Code Search with Live Preview]]></title>
            <link>https://www.avonture.be/blog/fzf-ripgrep</link>
            <guid isPermaLink="false">/blog/fzf-ripgrep</guid>
            <pubDate>Mon, 08 Jun 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[<img src="https://www.avonture.be/img/v2/fzf_ripgrep.webp" alt="FZF + ripgrep: Interactive Code Search with Live Preview" style="display:block;max-width:100%;height:auto;">Combine ripgrep and fzf with a bat syntax-highlighted preview panel to build an interactive code search — then open the result directly in VSCode at the exact matching line.]]></description>
            <author>Christophe</author>
            <category>bash</category>
            <category>fzf</category>
            <category>linux</category>
            <category>zsh</category>
            <enclosure length="0" type="image/webp" url="https://www.avonture.be/img/v2/fzf_ripgrep.webp"/>
        <dc:creator><![CDATA[Christophe]]></dc:creator></item>
    </channel>
</rss>