<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>(not) my ideas - terminal</title><link href="https://notmyidea.org/" rel="alternate"/><link href="https://notmyidea.org/feeds/tags/terminal.atom.xml" rel="self"/><id>https://notmyidea.org/</id><updated>2026-05-07T00:00:00+02:00</updated><entry><title>Automatic naming of Zellij tabs</title><link href="https://notmyidea.org/automatic-naming-of-zellij-tabs.html" rel="alternate"/><published>2026-05-07T00:00:00+02:00</published><updated>2026-05-07T00:00:00+02:00</updated><author><name/></author><id>tag:notmyidea.org,2026-05-07:/automatic-naming-of-zellij-tabs.html</id><summary type="html">&lt;p&gt;Zellij is a terminal multiplexer, similar to screen, except I manage to understand and remember the shortcuts for this one. The configuration is far too complex, and so I'm mainly using the defaults for it, except that I use &lt;code&gt;default_layout "compact"&lt;/code&gt; to save some screen space.&lt;/p&gt;
&lt;p&gt;I tend to work …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Zellij is a terminal multiplexer, similar to screen, except I manage to understand and remember the shortcuts for this one. The configuration is far too complex, and so I'm mainly using the defaults for it, except that I use &lt;code&gt;default_layout "compact"&lt;/code&gt; to save some screen space.&lt;/p&gt;
&lt;p&gt;I tend to work with too many tabs at the same time, and having them named "Tab #1", "Tab #2' doesn't really help me. Instead, here is a small script that integrates with &lt;code&gt;fish&lt;/code&gt; to update the name based on the folder you're in. (taken from &lt;a href="https://www.reddit.com/r/zellij/comments/10skez0/does_zellij_support_changing_tabs_name_according/"&gt;this reddit post&lt;/a&gt;)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;function&lt;/span&gt; zellij_tab_name_update --on-variable PWD
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="k"&gt;set&lt;/span&gt; -q ZELLIJ
        &lt;span class="k"&gt;set&lt;/span&gt; tab_name &lt;span class="s1"&gt;&amp;#39;&amp;#39;&lt;/span&gt;
        &lt;span class="k"&gt;if&lt;/span&gt; git rev-parse --is-inside-work-tree &lt;span class="o"&gt;&amp;gt;&lt;/span&gt;/dev/null 2&amp;gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt;1
            &lt;span class="k"&gt;set&lt;/span&gt; git_root &lt;span class="o"&gt;(&lt;/span&gt;basename &lt;span class="o"&gt;(&lt;/span&gt;git rev-parse --show-toplevel&lt;span class="o"&gt;))&lt;/span&gt;
            &lt;span class="k"&gt;set&lt;/span&gt; git_prefix &lt;span class="o"&gt;(&lt;/span&gt;git rev-parse --show-prefix&lt;span class="o"&gt;)&lt;/span&gt;
            &lt;span class="k"&gt;set&lt;/span&gt; tab_name &lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="nv"&gt;$git_root&lt;/span&gt;&lt;span class="s2"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;$git_prefix&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;
            &lt;span class="k"&gt;set&lt;/span&gt; tab_name &lt;span class="o"&gt;(&lt;/span&gt;string trim -c / &lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="nv"&gt;$tab_name&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="c"&gt;# Remove trailing slash&lt;/span&gt;
        &lt;span class="k"&gt;else&lt;/span&gt;
            &lt;span class="k"&gt;set&lt;/span&gt; tab_name &lt;span class="nv"&gt;$PWD&lt;/span&gt;
            &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="k"&gt;test&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="nv"&gt;$tab_name&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="nv"&gt;$HOME&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;
                &lt;span class="k"&gt;set&lt;/span&gt; tab_name &lt;span class="s2"&gt;&amp;quot;~&amp;quot;&lt;/span&gt;
            &lt;span class="k"&gt;else&lt;/span&gt;
                &lt;span class="k"&gt;set&lt;/span&gt; tab_name &lt;span class="o"&gt;(&lt;/span&gt;basename &lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="nv"&gt;$tab_name&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;
            &lt;span class="k"&gt;end&lt;/span&gt;
        &lt;span class="k"&gt;end&lt;/span&gt;
        &lt;span class="nb"&gt;command &lt;/span&gt;nohup zellij action rename-tab &lt;span class="nv"&gt;$tab_name&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt;/dev/null 2&amp;gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;
    &lt;span class="k"&gt;end&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="code"/><category term="zellij"/><category term="terminal"/></entry></feed>