<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<title>Blog</title>
	<subtitle>walter&#x27;s blog</subtitle>
	<link rel="self" type="application/atom+xml" href="https://elyrisai.xyz/blogs/feed.xml"/>
  <link rel="alternate" type="text/html" href="https://elyrisai.xyz/blogs/"/>
  
	<updated>2026-01-23T00:00:00+00:00</updated>
	
	<id>https://elyrisai.xyz/blogs/feed.xml</id>
	<entry xml:lang="en">
		<title>Customizing The Bash Shell</title>
		<published>2025-11-28T00:00:00+00:00</published>
		<updated>2026-01-23T00:00:00+00:00</updated>
		<link rel="alternate" type="text/html" href="https://elyrisai.xyz/blogs/customizing-bash-shell/"/>
		<id>https://elyrisai.xyz/blogs/customizing-bash-shell/</id>
    
		<content type="html" xml:base="https://elyrisai.xyz/blogs/customizing-bash-shell/">&lt;h3 id=&quot;before-anything&quot;&gt;Before Anything&lt;a class=&quot;zola-anchor&quot; href=&quot;#before-anything&quot; aria-label=&quot;Anchor link for: before-anything&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;strong&gt;BASH - Bourne Again Shell&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Bash used for General-purpose programming and scripting and also a &#x27;Shell&#x27; (This mixed here). Most people now just use Zsh or Fish. But I think Bash is actually better than any other shell. Because, its stability and broad compatibility. Also the general command-line use across most Unix systems.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Tools mentioned:&lt;&#x2F;strong&gt; ble.sh, Starship, fzf&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;ble.sh — replaces Readline with syntax highlighting, autosuggestions, vim&#x2F;emacs modes, better completion&lt;&#x2F;li&gt;
&lt;li&gt;fzf — fuzzy finder that revolutionizes history search, file navigation, git operations&lt;&#x2F;li&gt;
&lt;li&gt;Starship — cross-shell prompt that is minimal, fast, git-aware, and highly customizable&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Install these first&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h3 id=&quot;configure-bash-first&quot;&gt;Configure bash first&lt;a class=&quot;zola-anchor&quot; href=&quot;#configure-bash-first&quot; aria-label=&quot;Anchor link for: configure-bash-first&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;You can enable Vi&#x2F;Vim mode in your shell by adding &lt;code&gt;set -o vi&lt;&#x2F;code&gt;. And use the shell like Vim (I mean the keys).
First thing you need to do after installing fzf and Starship is setting up paths:
add this&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo z-code&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-support&quot;&gt;eval&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;$(&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;fzf&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt; -&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt;-bash&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;)&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-support&quot;&gt;eval&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;$(&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;starship&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt; init&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt; bash&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;)&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;You don&#x27;t have to customize ble.sh and fzf for basic use, for customizing Starship, you can find official &lt;a rel=&quot;nofollow noreferrer external&quot; href=&quot;https:&#x2F;&#x2F;starship.rs&#x2F;presets&#x2F;&quot;&gt;presets here&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;p&gt;You can bind keys for shortcuts, add aliases and create function.
Here&#x27;s is an example:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo z-code&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;#&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt; create function:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;open_file&lt;&#x2F;span&gt;&lt;span&gt;(&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;span&gt; {&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-storage&quot;&gt;  local&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt; file&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-variable z-other&quot;&gt;  file&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt;=&lt;&#x2F;span&gt;&lt;span&gt;$(&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;fzf&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt; -&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt;-preview&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;bat --style=numbers --color=always {}&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt; -&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt;-border&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt; -&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt;-select-1&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt; -&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt;-exit-0&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-keyword&quot;&gt;  if&lt;&#x2F;span&gt;&lt;span&gt; [[&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; -n&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt;$&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt;file&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt; ]]&lt;&#x2F;span&gt;&lt;span&gt;;&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword&quot;&gt; then&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;    nvim&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt;$&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other&quot;&gt;file&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-keyword&quot;&gt;  fi&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;#&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt; Bind key: run the function&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-entity z-name&quot;&gt;bind&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;&amp;quot;\C-f&amp;quot;:&amp;quot;open_file\n&amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;#&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt;Alias&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-support&quot;&gt;alias&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt; kiss&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt; =&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;mkdir -p&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;  #&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt; since touch used to create new file!&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Just like that, when you enter Ctrl+f, it runs the function (in this function it will open a selected file with fzf).&lt;&#x2F;p&gt;
&lt;h3 id=&quot;some-different-and-pros&quot;&gt;Some different (and pros)&lt;a class=&quot;zola-anchor&quot; href=&quot;#some-different-and-pros&quot; aria-label=&quot;Anchor link for: some-different-and-pros&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;Bash is good enough for everything, default everywhere, POSIX + useful extras.The main differences show up when scripts grow or need real structure.
Bash&#x27;s error handling is clunky (fighting with &lt;code&gt;$?&lt;&#x2F;code&gt;, &lt;code&gt;set -euo pipefail&lt;&#x2F;code&gt;, and traps), data structures are weak (arrays yes, but proper dicts only since
Bash 4+, and no easy sets&#x2F;objects), and anything beyond integer math or complex JSON parsing forces you into awk&#x2F;jq&#x2F;bc hacks that hurt readability fast.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo z-code&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;#&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt; Example&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-support&quot;&gt;set&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt; -&lt;&#x2F;span&gt;&lt;span class=&quot;z-constant&quot;&gt;euo&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt; pipefail&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-comment&quot;&gt;  #&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment&quot;&gt; strict mode&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-support&quot;&gt;trap&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt;echo &amp;quot;Error on line $LINENO&amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span class=&quot;z-string&quot;&gt; ERR&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;The key pros of Bash shine brightest for fast, lightweight, system-level automation.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Shell&lt;&#x2F;strong&gt;: While zsh and fish feel snappier out-of-the-box with built-in autosuggestions and nicer syntax, Bash remains king for pure compatibility. Every Linux distro, container , and cloud VM has Bash — no surprises when your script runs on a minimal server. Zsh scripts are mostly portable, but fish syntax breaks POSIX&#x2F;Bash compatibility hard, so you end up rewriting things anyway. If you&#x27;re scripting a lot (cron jobs, Dockerfiles), Bash&#x27;s &quot;write once, run everywhere&quot; wins. Interactive use? That&#x27;s where ble.sh + fzf + Starship close the gap — you get highlighting&#x2F;suggestions +  fuzzy finding, but stay in Bash. Also, &#x27;Oh My Bash&#x27; for plugins.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;bash-scripting-guide&quot;&gt;Bash Scripting Guide&lt;a class=&quot;zola-anchor&quot; href=&quot;#bash-scripting-guide&quot; aria-label=&quot;Anchor link for: bash-scripting-guide&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow noreferrer external&quot; href=&quot;https:&#x2F;&#x2F;mywiki.wooledge.org&#x2F;BashGuide&quot;&gt;Bash Guide&lt;&#x2F;a&gt; :respected community resources with in-depth Bash Guide, FAQ, Pitfalls, and best practices.
You can find more documentation on the internet. &lt;a rel=&quot;nofollow noreferrer external&quot; href=&quot;https:&#x2F;&#x2F;www.reddit.com&#x2F;r&#x2F;bash&#x2F;comments&#x2F;1niobmh&#x2F;documentation_for_bash&#x2F;&quot;&gt;see this reddit post&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
</content>
	</entry>
	<entry xml:lang="en">
		<title>World, I&#x27;m Here Whether You Like It or Not</title>
		<published>2025-10-28T00:00:00+00:00</published>
		<updated>2025-10-28T00:00:00+00:00</updated>
		<link rel="alternate" type="text/html" href="https://elyrisai.xyz/blogs/hello-world/"/>
		<id>https://elyrisai.xyz/blogs/hello-world/</id>
    
		<content type="html" xml:base="https://elyrisai.xyz/blogs/hello-world/">&lt;blockquote&gt;
&lt;p&gt;Hello World. &lt;em&gt;(October 28, 2025)&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h3 id=&quot;uhmm&quot;&gt;Uhmm......&lt;a class=&quot;zola-anchor&quot; href=&quot;#uhmm&quot; aria-label=&quot;Anchor link for: uhmm&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;I never post anything on the internet. This my small piece of the web.. (uhm, Welcome)&lt;&#x2F;p&gt;
&lt;p&gt;So, I want to share that &#x27;things are not going well (now)&#x27;, before that I want to say something about myself.
I&#x27;m interested in Programming (I found it when my friend showed me a simple calculator program on his android phone,
Sometimes, I feel lucky I&#x27;m trying to program) and I want to stick with it. guess what? I&#x27;ve been on this awesome Programming
journey for the past 3 months after I got my second computer. I enjoyed mostly. But after few days, I always
having the thought &quot;I&#x27;ll do it later!&quot;, And that&#x27;s why I&#x27;m now frustrated. (I invested quite more time in Vim and Linux).
Nothing changes (actually), I just jumped around programming languages (Python, JavaScript, ... ). But the goal was different &quot;Web development&quot;,
Now I hate it. Not because it is hard or something like that. I just didn&#x27;t continue, I believe, &lt;strong&gt;Programming is not
just learning&#x2F;knowing programming language(s)&lt;&#x2F;strong&gt;. But my progress is just didn&#x27;t work out.&lt;&#x2F;p&gt;
&lt;p&gt;I&#x27;m learning &#x27;Rust&#x27; (&lt;del&gt;What?&lt;&#x2F;del&gt;) last few days. This is might be strange. I found Rustlings (Rust errors solve, more like a game) enjoyable.
Also, Their documentation is solid. So, I started sucking around Rust. I&#x27;m pretty sure I&#x27;ll pause this (too).
I just change my idea&#x2F;(x) so rapidly. Maybe in 3-4 months in another level (in negative direction!).&lt;&#x2F;p&gt;
&lt;h3 id=&quot;what-i-m-hoping&quot;&gt;What I&#x27;m Hoping&lt;a class=&quot;zola-anchor&quot; href=&quot;#what-i-m-hoping&quot; aria-label=&quot;Anchor link for: what-i-m-hoping&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;I do want to get better at coding in the real world, contribute to projects I like. The goal is very simple learn, contribute, and see where it takes me.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;why-this-now&quot;&gt;Why this now?&lt;a class=&quot;zola-anchor&quot; href=&quot;#why-this-now&quot; aria-label=&quot;Anchor link for: why-this-now&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;blockquote&gt;
&lt;p&gt;This is my first blog post you are reading right now and i think, there will be more to come. I&#x27;m focusing on core programming.
Here to share.. maybe some, &lt;strong&gt;programming related&lt;&#x2F;strong&gt; blogposts and something weird I want to write. In addition, I want to write
about the topics I’m passionate about, like tools, search, recommendations, and situations.
{: .prompt-tip }&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h3 id=&quot;creating-this-site&quot;&gt;Creating this site&lt;a class=&quot;zola-anchor&quot; href=&quot;#creating-this-site&quot; aria-label=&quot;Anchor link for: creating-this-site&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;I build this site with Hugo yesterday. Hugo is a static site builder. So, I didn&#x27;t have to write any html or CSS, just added a Markdown and you see..&lt;&#x2F;p&gt;
&lt;p&gt;edit(feb-26): I recreated this webpage with Jekyll. (you know, changes!)
Almost same as Hugo.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;conclusion&quot;&gt;Conclusion&lt;a class=&quot;zola-anchor&quot; href=&quot;#conclusion&quot; aria-label=&quot;Anchor link for: conclusion&quot; style=&quot;visibility: hidden;&quot;&gt;&lt;&#x2F;a&gt;
&lt;&#x2F;h3&gt;
&lt;p&gt;This post is largely a statement of intent (and a little document), my unstructured thought, it looks creepy but, just had to take the first step of writing my blog.
From here on out I plan to focus on &#x27;be more focused and technical&#x27; and dive into the &lt;strong&gt;Open Source Ocean&lt;&#x2F;strong&gt;. At last, I want to say &#x27;Hello World&#x27;.&lt;&#x2F;p&gt;
&lt;p&gt;That’s all for now.&lt;&#x2F;p&gt;
</content>
	</entry>
</feed>
