<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:wfw="http://wellformedweb.org/CommentAPI/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:atom="http://www.w3.org/2005/Atom"
    xmlns:media="http://search.yahoo.com/mrss/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
>
<channel>
  <title>Srijan Choudhary, notes posts</title>
  <link>https://srijan.ch/feed/notes</link>
  <lastBuildDate>Wed, 05 Aug 2026 00:18:35 +0000</lastBuildDate>
  <image>
    <url>https://srijan.ch/assets/favicon/favicon-32x32.png</url>
    <title>Srijan Choudhary, notes posts</title>
    <link>https://srijan.ch/feed/notes</link>
  </image>
  <sy:updatePeriod>daily</sy:updatePeriod>
  <sy:updateFrequency>1</sy:updateFrequency>
  <generator>Kirby</generator>
  <atom:link href="https://srijan.ch/feed/notes.xml" rel="self" type="application/rss+xml" />
  <description>Srijan Choudhary&#039;s Microblog Feed</description>
  <item>
    <title>2026-08-05-001</title>
    <description><![CDATA[Liked: Blaugust 2026 is Coming! by Nerd Girl Thoughts Blaugust is the brain child of Mark Temple, more commonly known as Belghast, author of Tales of the Aggronaut. Normally, this post would be coming from him, but sadly, we lost Belghast on July 2, 2…]]></description>
    <link>https://srijan.ch/notes/2026-08-05-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-08-05-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 05 Aug 2026 00:18:35 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;nerdgirlthoughts.game.blog&#x2F;2026&#x2F;07&#x2F;15&#x2F;blaugust-2026-is-coming&#x2F;">Blaugust 2026 is Coming!</a> by Nerd Girl Thoughts</p><blockquote>Blaugust is the brain child of Mark Temple, more commonly known as Belghast, author of Tales of the Aggronaut. Normally, this post would be coming from him, but sadly, we lost Belghast on July 2, 2…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-08-05-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-27-002</title>
    <description><![CDATA[Liked: I’d not buy a LG monitor by Beko Pharm LG website with &quot;gambling&quot; add to roll for a discount There is a video by Gamers Nexus making the rounds that makes me really angry. It reports about LG’s latest practise to add blatant spyware to a monitor. Or to be precise to the *software* application associated with that monitor. The icing is…]]></description>
    <link>https://srijan.ch/notes/2026-07-27-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-27-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 27 Jul 2026 17:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;beko.famkos.net&#x2F;2026&#x2F;07&#x2F;27&#x2F;id-not-buy-a-lg-monitor&#x2F;">I’d not buy a LG monitor</a> by Beko Pharm</p><blockquote>LG website with &quot;gambling&quot; add to roll for a discount There is a video by Gamers Nexus making the rounds that makes me really angry. It reports about LG’s latest practise to add blatant spyware to a monitor. Or to be precise to the *software* application associated with that monitor. The icing is…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-27-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-27-001</title>
    <description><![CDATA[Liked: The most official water costs $120,000 a gallon by Signore Galilei We all learned in science class that water freezes at 0 °C or 32 °F at atmospheric pressure. But what water, exactly? Even after you distill out all the dissolved salts and minerals to get pure H2O…]]></description>
    <link>https://srijan.ch/notes/2026-07-27-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-27-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 27 Jul 2026 04:36:19 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;signoregalilei.com&#x2F;2026&#x2F;07&#x2F;26&#x2F;the-most-official-water-costs-120000-a-gallon&#x2F;">The most official water costs $120,000 a gallon</a> by Signore Galilei</p><blockquote>We all learned in science class that water freezes at 0 °C or 32 °F at atmospheric pressure. But what water, exactly? Even after you distill out all the dissolved salts and minerals to get pure H2O…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-27-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-16-001</title>
    <description><![CDATA[Noticed that the comment form was not working here since my last upgrade of Kirby and the komments plugin. Fixed it now.]]></description>
    <link>https://srijan.ch/notes/2026-07-16-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-16-001</guid>
    <category><![CDATA[kirby]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 16 Jul 2026 18:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Noticed that the comment form was not working here since my last upgrade of Kirby and the komments plugin. Fixed it now.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-16-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-15-001</title>
    <description><![CDATA[In reply to: Your RSS Reader Is Robbing You by Antonio Santos Your RSS Reader Is Robbing You https://antoniosantos.io/your-rss-reader-is-robbing-you/ 🫧 via https://bubbles.town/entry/44749008 I often read on my feed reader by default, but open the original page if I like the article or want to read more from the same author. And yes, often the designs are unique and inspiring.]]></description>
    <link>https://srijan.ch/notes/2026-07-15-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-15-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 15 Jul 2026 01:05:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;social.bubbles.town&#x2F;&#x40;bubbles&#x2F;statuses&#x2F;01KXGY1CE0MNP9KRT072HFT0T8">Your RSS Reader Is Robbing You</a> by Antonio Santos</p><blockquote>Your RSS Reader Is Robbing You https://antoniosantos.io/your-rss-reader-is-robbing-you/ 🫧 via https://bubbles.town/entry/44749008</blockquote><p>I often read on my feed reader by default, but open the original page if I like the article or want to read more from the same author. And yes, often the designs are unique and inspiring.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-15-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-14-002</title>
    <description><![CDATA[Liked: GitHub governance reference links I share with teams by DevOps Journal A public resource map to share after GitHub governance conversations, grouped by Enterprise, Actions, and Copilot.]]></description>
    <link>https://srijan.ch/notes/2026-07-14-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-14-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 14 Jul 2026 20:44:25 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;devopsjournal.io&#x2F;blog&#x2F;2026&#x2F;07&#x2F;13&#x2F;github-governance-resource-map">GitHub governance reference links I share with teams</a> by DevOps Journal</p><blockquote>A public resource map to share after GitHub governance conversations, grouped by Enterprise, Actions, and Copilot.</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-14-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-14-001</title>
    <description><![CDATA[Liked: Somewhere, I&#039;m online and listening to music by Cory Dransfeldt For a while now, my home page has shown whatever song I&#039;m listening to (or, if idle, the last one I played). Initially, it was powered by last.fm. As I&#039;ve built my own scrobbler, I populated the element from my own data. The static implementation is straightforward: I store each listen as a record.…]]></description>
    <link>https://srijan.ch/notes/2026-07-14-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-14-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 14 Jul 2026 20:32:19 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;www.coryd.dev&#x2F;posts&#x2F;2026&#x2F;somewhere-im-online-and-listening-to-music">Somewhere, I&#039;m online and listening to music</a> by Cory Dransfeldt</p><blockquote>For a while now, my home page has shown whatever song I&#039;m listening to (or, if idle, the last one I played). Initially, it was powered by last.fm. As I&#039;ve built my own scrobbler, I populated the element from my own data. The static implementation is straightforward: I store each listen as a record.…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-14-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-12-001</title>
    <description><![CDATA[#TIL that #Emacs also has a Global Mark Ring: the global mark ring records a sequence of buffers that you have been in, and, for each buffer, a place where you set the mark For programming buffers / projects, I&#039;ve been using the xref stack to go back/forward when jumping around. But the global mark ring is super useful as a general purpose tracker of my context jumps. By default, C-x …]]></description>
    <link>https://srijan.ch/notes/2026-07-12-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-12-001</guid>
    <category><![CDATA[emacs]]></category>
    <category><![CDATA[til]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sun, 12 Jul 2026 07:50:00 +0000</pubDate>
    <content:encoded><![CDATA[<p><a class="p-category" href="https://srijan.ch/tags/til">#TIL</a> that <a class="p-category" href="https://srijan.ch/tags/emacs">#Emacs</a> also has a <a href="https://www.gnu.org/software/emacs/manual/html_node/emacs/Global-Mark-Ring.html">Global Mark Ring</a>:</p>
<blockquote>
<p>the global mark ring records a sequence of buffers that you have been in, and, for each buffer, a place where you set the mark</p>
</blockquote>
<p>For programming buffers / projects, I've been using the xref stack to go back/forward when jumping around. But the global mark ring is super useful as a general purpose tracker of my context jumps.</p>
<p>By default, <code>C-x C-&lt;SPC&gt;</code> jumps back. There is no forward like <code>xref-go-forward</code>, but it' a ring so it's possible to go around. Or there's always <code>consult-global-mark</code> to show the marks in a list and select from it.</p>
<p>Other helpful links:</p>
<ul>
<li><a href="https://arialdomartini.github.io//emacs-mark-ring">Emacs: Mark Ring by Arialdo Martini</a></li>
<li><a href="https://github.com/VernonGrant/discovering-emacs/blob/main/show-notes/2-efficiency-with-the-mark-ring.md">Efficiency With The Mark Ring by Vernon Grant</a></li>
</ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-12-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-11-003</title>
    <description><![CDATA[Liked: Fable&#039;s judgement by Simon Willison’s Weblog One of the most interesting tips I got from the Fireside Chat I hosted with Cat Wu and Thariq Shihipar from the Claude Code team at AIE on Wednesday was …]]></description>
    <link>https://srijan.ch/notes/2026-07-11-003</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-11-003</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sat, 11 Jul 2026 23:30:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;simonwillison.net&#x2F;2026&#x2F;Jul&#x2F;3&#x2F;judgement&#x2F;&#x23;atom-everything">Fable&#039;s judgement</a> by Simon Willison’s Weblog</p><blockquote>One of the most interesting tips I got from the Fireside Chat I hosted with Cat Wu and Thariq Shihipar from the Claude Code team at AIE on Wednesday was …</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-11-003#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-11-002</title>
    <description><![CDATA[Liked: Offside by xkcd]]></description>
    <link>https://srijan.ch/notes/2026-07-11-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-11-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sat, 11 Jul 2026 06:40:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;xkcd.com&#x2F;3268&#x2F;">Offside</a> by xkcd</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-11-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-11-001</title>
    <description><![CDATA[Liked: I bought a Sony Walkman - 82MHz The Walkman is the Sony WM-EX521 from 2002, which is a pretty late model. It&#039;s not one of the classics from the 80s, but I really like the design, the case is made out of metal so it looks and feels really solid and with it being relatively young, I don&#039;t expect too many problems. In fact, I had a suspicion that the only thing that was wrong with …]]></description>
    <link>https://srijan.ch/notes/2026-07-11-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-11-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sat, 11 Jul 2026 03:00:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;82mhz.net&#x2F;posts&#x2F;2026&#x2F;07&#x2F;i-bought-a-sony-walkman&#x2F;">I bought a Sony Walkman - 82MHz</a></p><blockquote>The Walkman is the Sony WM-EX521 from 2002, which is a pretty late model. It&#039;s not one of the classics from the 80s, but I really like the design, the case is made out of metal so it looks and feels really solid and with it being relatively young, I don&#039;t expect too many problems. In fact, I had a suspicion that the only thing that was wrong with it might be the belt.</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-11-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-10-002</title>
    <description><![CDATA[Liked: TIL: Recipe Schemas by Yash Garg Apparently there’s a schema for recipes??? I was genuinely surprised when Mealie popped up a parsing dialog while I was trying to import a plain-text recipe. Turns out websites can embed recipes using JSON-LD, following the Schema.org Recipe specification. Mealie Error Dialog I had no idea this…]]></description>
    <link>https://srijan.ch/notes/2026-07-10-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-10-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 10 Jul 2026 14:35:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;yashgarg.dev&#x2F;notes&#x2F;recipe-schemas&#x2F;">TIL: Recipe Schemas</a> by Yash Garg</p><blockquote>Apparently there’s a schema for recipes??? I was genuinely surprised when Mealie popped up a parsing dialog while I was trying to import a plain-text recipe. Turns out websites can embed recipes using JSON-LD, following the Schema.org Recipe specification. Mealie Error Dialog I had no idea this…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-10-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-10-001</title>
    <description><![CDATA[Liked: Your ‘App’ Could Have Been a Webpage (so I fixed it for you…) by Dan Q I was asked to install a mobile app to get access to the itinerary of a trip to Disneyland I&#039;m taking with the kids. Fuck that noise: couldn&#039;t it have just been a Web page? An hour of reverse-engineering later, it is, and it&#039;s superior in virtually every way to the &quot;app&quot; that it replaces.]]></description>
    <link>https://srijan.ch/notes/2026-07-10-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-10-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 10 Jul 2026 00:35:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;danq.me&#x2F;2026&#x2F;07&#x2F;09&#x2F;your-app-could-have-been-a-webpage&#x2F;">Your ‘App’ Could Have Been a Webpage (so I fixed it for you…)</a> by Dan Q</p><blockquote>I was asked to install a mobile app to get access to the itinerary of a trip to Disneyland I&#039;m taking with the kids. Fuck that noise: couldn&#039;t it have just been a Web page? An hour of reverse-engineering later, it is, and it&#039;s superior in virtually every way to the &quot;app&quot; that it replaces.</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-10-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-09-004</title>
    <description><![CDATA[Liked: Libraries are the best by Milan A couple of weeks ago I decided to read John Green’s book, Everything is Tuberculosis, in part as research for the novel I am writing about a tuberculosis outbreak. Initially I considered buying it, but remembered the weak state of my finances and checked the Toronto Public Library system. A…]]></description>
    <link>https://srijan.ch/notes/2026-07-09-004</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-09-004</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 09 Jul 2026 17:15:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;www.sindark.com&#x2F;2026&#x2F;07&#x2F;08&#x2F;libraries-are-the-best&#x2F;">Libraries are the best</a> by Milan</p><blockquote>A couple of weeks ago I decided to read John Green’s book, Everything is Tuberculosis, in part as research for the novel I am writing about a tuberculosis outbreak. Initially I considered buying it, but remembered the weak state of my finances and checked the Toronto Public Library system. A…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-09-004#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-09-003</title>
    <description><![CDATA[Reposted: Better Models: Worse Tools by Armin Ronacher&#039;s Thoughts and Writings About an aggravating tool-calling regression in newer Claude models. I&#039;ve also noticed newer models being worse in other harnesses and using other tools. Also mentioned by Simon here: https://simonwillison.net/2026/Jul/4/better-models-worse-tools/]]></description>
    <link>https://srijan.ch/notes/2026-07-09-003</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-05-001</guid>
    <category><![CDATA[llms]]></category>
    <category><![CDATA[coding-agents]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 09 Jul 2026 15:50:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Reposted: <a href="https&#x3A;&#x2F;&#x2F;lucumr.pocoo.org&#x2F;2026&#x2F;7&#x2F;4&#x2F;better-models-worse-tools&#x2F;">Better Models: Worse Tools</a> by Armin Ronacher&#039;s Thoughts and Writings</p><blockquote>About an aggravating tool-calling regression in newer Claude models.</blockquote><p>I've also noticed newer models being worse in other harnesses and using other tools.</p>
<p>Also mentioned by Simon here: <a href="https://simonwillison.net/2026/Jul/4/better-models-worse-tools/">https://simonwillison.net/2026/Jul/4/better-models-worse-tools/</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-09-003#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-09-002</title>
    <description><![CDATA[Liked: Re: Most slopcode projects are abandoned and deleted within months of release by Michael Harley Man, I&#039;ve been circling on this idea for some weeks now and couldn&#039;t quite figure out the best way to open, but I think this is a great one: About a month ago, Flathub announced a ban on slopcoded applications. Evangelos “GeopJr” Paterakis, developer of a number of popular Linux …]]></description>
    <link>https://srijan.ch/notes/2026-07-09-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-09-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 09 Jul 2026 06:35:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;michaelharley.net&#x2F;posts&#x2F;2026&#x2F;07&#x2F;08&#x2F;re-most-slopcode-projects-are-abandoned-and-deleted-within-months-of-release&#x2F;">Re: Most slopcode projects are abandoned and deleted within months of release</a> by Michael Harley</p><blockquote>Man, I&#039;ve been circling on this idea for some weeks now and couldn&#039;t quite figure out the best way to open, but I think this is a great one: About a month ago, Flathub announced a ban on slopcoded applications. Evangelos “GeopJr” Paterakis, developer of a number of popular Linux applications and…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-09-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-07-001</title>
    <description><![CDATA[Liked: https://www.reddit.com/r/emacs/comments/1un91s6/memorize_vocabulary_on_the_go_on_emacs_android/ovivcu7/]]></description>
    <link>https://srijan.ch/notes/2026-07-07-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-07-001</guid>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 07 Jul 2026 07:20:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;www.reddit.com&#x2F;r&#x2F;emacs&#x2F;comments&#x2F;1un91s6&#x2F;memorize_vocabulary_on_the_go_on_emacs_android&#x2F;ovivcu7&#x2F;">https://www.reddit.com/r/emacs/comments/1un91s6/memorize_vocabulary_on_the_go_on_emacs_android/ovivcu7/</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-07-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-06-003</title>
    <description><![CDATA[Liked: Hot new laptop features by Chad Im obsessed with this laptop our 7 year old made: I asked him what the different features were. Check out these specs: Ghost button unleashes a ghost from the laptop Crossed-out ghosts buttons bring ghosts back in DO NOT PUSH button activates his laser hand (i.e. an empty cup from a local ice cream…]]></description>
    <link>https://srijan.ch/notes/2026-07-06-003</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-06-003</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 06 Jul 2026 20:00:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;chadcomello.com&#x2F;hot-new-laptop-features&#x2F;">Hot new laptop features</a> by Chad</p><blockquote>Im obsessed with this laptop our 7 year old made: I asked him what the different features were. Check out these specs: Ghost button unleashes a ghost from the laptop Crossed-out ghosts buttons bring ghosts back in DO NOT PUSH button activates his laser hand (i.e. an empty cup from a local ice cream…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-06-003#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-06-002</title>
    <description><![CDATA[Liked: Setting up Webmentions on my Static Site 💬 by Alex Hyett I have been getting back into blogging recently. I know I write this newsletter every 2 weeks, but I try and keep to a set number of topics as I know my audience is mostly developers. My blog gives me chance to write about whatever is on my mind, without worrying about it being relevant to my…]]></description>
    <link>https://srijan.ch/notes/2026-07-06-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-06-002</guid>
    <category><![CDATA[indieweb]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 06 Jul 2026 06:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;www.alexhyett.com&#x2F;newsletter&#x2F;setting-up-webmentions-on-my-static-site&#x2F;">Setting up Webmentions on my Static Site 💬</a> by Alex Hyett</p><blockquote>I have been getting back into blogging recently. I know I write this newsletter every 2 weeks, but I try and keep to a set number of topics as I know my audience is mostly developers. My blog gives me chance to write about whatever is on my mind, without worrying about it being relevant to my…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-06-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-07-06-001</title>
    <description><![CDATA[Liked: Sometimes it actually is the network: a war story]]></description>
    <link>https://srijan.ch/notes/2026-07-06-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-06-001</guid>
    <category><![CDATA[linux]]></category>
    <category><![CDATA[sysadmin]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 06 Jul 2026 06:45:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;utcc.utoronto.ca&#x2F;&#x7E;cks&#x2F;space&#x2F;blog&#x2F;sysadmin&#x2F;SometimesItIsTheNetwork">Sometimes it actually is the network: a war story</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-06-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>SQLite comment storage (v3) breaks page-cache invalidation (staticache): comments show in Panel but not on cached pages</title>
    <description><![CDATA[In reply to: mauricerenck/komments SQLite comment storage (v3) breaks page-cache invalidation (staticache): comments show in Panel but not on cached pages Summary Since v3 moved comment storage from inline content-file fields to SQLite, komments no longer triggers Kirby&#039;s page-cache invalidation when a comment or webmention changes. On any site that uses a page cache — in particular the official …]]></description>
    <link>https://srijan.ch/notes/2026-07-04-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-07-04-001</guid>
    <category><![CDATA[issues]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sat, 04 Jul 2026 07:30:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;github.com&#x2F;mauricerenck&#x2F;komments&#x2F;issues">mauricerenck/komments</a></p><h2>SQLite comment storage (v3) breaks page-cache invalidation (staticache): comments show in Panel but not on cached pages</h2><h3>Summary</h3>
<p>Since v3 moved comment storage from inline content-file fields to SQLite, komments no longer triggers Kirby's page-cache invalidation when a comment or webmention changes. On any site that uses a page cache — in particular the official <a href="https://github.com/getkirby/staticache"><code>getkirby/staticache</code></a> — new comments show up in the Panel (which reads the DB live) but <strong>never appear on the public page</strong>, which keeps serving stale cached HTML until the page's content file happens to be edited for some unrelated reason.</p>
<p>This is effectively a silent regression for anyone who paired komments with a page cache.</p>
<h3>Root cause</h3>
<ul>
<li>In <strong>v2</strong>, received comments/webmentions were written <strong>into the page's content file</strong>. A content-file write is a page change, so Kirby automatically flushed that page's cache and the public page updated on the next request — invalidation came "for free" as a side effect.</li>
<li>In <strong>v3</strong> with <code>storage.type =&gt; 'sqlite'</code>, comments are written to the SQLite DB and <strong>the content file is never touched</strong>. Kirby only invalidates a page's cache entry when the page/model itself changes, so nothing flushes the cache. <code>$page-&gt;comments()</code> reads live from the DB on render, but with a page cache active the cached HTML is served without <code>render()</code> ever being called.</li>
</ul>
<h3>Steps to reproduce</h3>
<ol>
<li>Kirby with page caching enabled, e.g. <code>getkirby/staticache</code> (<code>cache.pages.type =&gt; 'static'</code>).</li>
<li>komments v3 with <code>storage.type =&gt; 'sqlite'</code>. Webmentions auto-publish by default; comments via a moderated-then-published flow.</li>
<li>Visit a post once to prime the cache.</li>
<li>Receive a webmention (or publish a comment) for that post.</li>
<li><strong>Panel</strong> shows the comment; the <strong>public page</strong> does not (stale cached HTML). It only corrects itself if the page's content file is later edited.</li>
</ol>
<h3>Expected</h3>
<p>Adding, publishing, or removing a comment/webmention for a page should mark that page's cache stale, so the next request re-renders with the current comments.</p>
<h3>What already works vs. the gaps</h3>
<p>komments already fires hooks integrators can subscribe to for cache invalidation:</p>
<ul>
<li><code>komments.comment.received</code></li>
<li><code>komments.comment.replied</code></li>
<li><code>komments.comment.published</code> (fires on the publish/unpublish toggle, both directions)</li>
</ul>
<p>But several mutations that change public output fire <strong>no event at all</strong>, so there is no way to invalidate on them:</p>
<ul>
<li><code>deleteComment</code> / <code>deleteCommentsInBatch</code> (moderation delete) — no trigger</li>
<li><code>flagComment</code> / <code>flagCommentsInBatch</code> (spam/flag, which can hide a comment) — no trigger</li>
</ul>
<p>These live under the plugin's <code>api</code> routes, so they also can't be caught via Kirby's <code>route:after</code> hook (that only fires for the front-end router, not the Panel API), and there is no API-level hook. So today a delete or spam-flag can't be reliably detected by an integrator.</p>
<h3>Suggestions (any one would help)</h3>
<ol>
<li><strong>Emit a complete set of mutation hooks.</strong> Add triggers for delete and flag and their batch variants — e.g. <code>komments.comment.deleted</code> / <code>komments.comment.flagged</code> — mirroring the existing <code>received</code> / <code>published</code> / <code>replied</code> events. A complete event surface lets integrators reliably purge the cache for the affected page(s).</li>
<li><strong>Optional built-in page-cache purge.</strong> When a comment for a page changes, remove that page's entry from <code>kirby()-&gt;cache('pages')</code> (driver-agnostic — works for file, APCu, Redis, and staticache alike). Could be gated behind an option such as <code>mauricerenck.komments.flushPageCache =&gt; true</code>.</li>
<li><strong>At minimum, document the caveat.</strong> Note in the SQLite-storage docs that DB storage no longer auto-invalidates page caches, and that integrators using a page cache must wire up invalidation via the hooks above.</li>
</ol><p>Syndicated to:</p><ul><li><a href="https://github.com/mauricerenck/komments/issues/98#issue-4808131162">https://github.com/mauricerenck/komments/issues/98#issue-4808131162</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-07-04-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>Knoppix nostalgia</title>
    <description><![CDATA[Knoppix nostalgia Oh man, fond memories. I remember being very interested in programming in middle/high school, but all the environments in our school computer lab had windows (this was in India), and I think at that time (maybe 2001-2003) I didn&#039;t even know there were other operating systems. Our school was participating in something called International Cyber Olympiad, and of course I gave the …]]></description>
    <link>https://srijan.ch/notes/2026-06-30-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-06-30-001</guid>
    <category><![CDATA[linux]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 30 Jun 2026 17:45:00 +0000</pubDate>
    <content:encoded><![CDATA[<h2>Knoppix nostalgia</h2><p>Oh man, fond memories.<br />
I remember being very interested in programming in middle/high school, but all the environments in our school computer lab had windows (this was in India), and I think at that time (maybe 2001-2003) I didn't even know there were other operating systems.<br />
Our school was participating in something called International Cyber Olympiad, and of course I gave the eligibility exam.<br />
They sent all students who passed a Knoppix Live CD to prepare for the actual competition. We did not have a PC at home until a couple of years later, but I used that CD in any PC I could find anywhere - the school computer lab, the school library computers, and my dad's office computers. It was my first experience with a Linux system (and I found it awesome). Also my first experience with gcc instead of borland c++.</p><p>Syndicated to:</p><ul><li><a href="https://news.ycombinator.com/item?id=48736366">https://news.ycombinator.com/item?id=48736366</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-06-30-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-05-17-001</title>
    <description><![CDATA[TIL about describe-personal-keybindings from https://mbork.pl/2026-05-09_describe-personal-keybindings and https://irreal.org/blog/?p=13799 Definitely useful to keep track of things in a central place.]]></description>
    <link>https://srijan.ch/notes/2026-05-17-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-05-17-001</guid>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sun, 17 May 2026 06:05:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>TIL about <code>describe-personal-keybindings</code> from <a href="https://mbork.pl/2026-05-09_describe-personal-keybindings">https://mbork.pl/2026-05-09_describe-personal-keybindings</a> and <a href="https://irreal.org/blog/?p=13799">https://irreal.org/blog/?p=13799</a></p>
<p>Definitely useful to keep track of things in a central place.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-05-17-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-04-22-001</title>
    <description><![CDATA[Liked: Star Wars Outlaws is really good by Joel Auterson So I rolled credits on Star Wars Outlaws today and I have come away from it feeling far more strongly than I ever expected. I think, like a lot of people, I’d sort of written off this game at launch. I’ve grown fatigued with open-world games in general, and in particular with Ubisoft’s style of…]]></description>
    <link>https://srijan.ch/notes/2026-04-22-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-04-22-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 22 Apr 2026 08:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;www.joelotter.com&#x2F;posts&#x2F;2026&#x2F;04&#x2F;star-wars-outlaws&#x2F;">Star Wars Outlaws is really good</a> by Joel Auterson</p><blockquote>So I rolled credits on Star Wars Outlaws today and I have come away from it feeling far more strongly than I ever expected. I think, like a lot of people, I’d sort of written off this game at launch. I’ve grown fatigued with open-world games in general, and in particular with Ubisoft’s style of…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-04-22-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2026-03-18-001</title>
    <description><![CDATA[A small #Emacs #OrgMode quality-of-life tweak. I often need to replace an org heading&#039;s title while preserving the original text in the body. The problem is that pressing enter on a heading inserts a line above the properties drawer, which breaks things. Here&#039;s a function that moves the heading title into the body (below the properties drawer and metadata), and binds it to S-RET: (defun …]]></description>
    <link>https://srijan.ch/notes/2026-03-18-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2026-03-18-001</guid>
    <category><![CDATA[emacs]]></category>
    <category><![CDATA[orgmode]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 18 Mar 2026 15:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>A small <a class="p-category" href="https://srijan.ch/tags/emacs">#Emacs</a> <a class="p-category" href="https://srijan.ch/tags/orgmode">#OrgMode</a> quality-of-life tweak. I often need to replace an org heading's title while preserving the original text in the body. The problem is that pressing enter on a heading inserts a line above the properties drawer, which breaks things.</p>
<p>Here's a function that moves the heading title into the body (below the properties drawer and metadata), and binds it to S-RET:</p>
<pre><code>(defun my-org-demote-title-to-body ()
  "Move the current heading's title into the body, below the metadata.
  Point returns to the heading for editing."
  (interactive)
  (org-back-to-heading t)
  (let* ((element (org-element-at-point))
         (title (org-element-property :raw-value element)))
    (org-edit-headline "")
    (save-excursion
      (org-end-of-meta-data t)
      (insert title "\n"))
    (org-beginning-of-line)))

(defun my-org-shift-return ()
  "On a heading, demote title to body. In a table, copy down."
  (interactive)
  (cond
   ((org-at-heading-p) (my-org-demote-title-to-body))
   ((org-at-table-p) (org-table-copy-down 1))
   (t (org-return))))
  (define-key org-mode-map (kbd "S-&lt;return&gt;") #'my-org-shift-return)</code></pre>]]></content:encoded>
    <comments>https://srijan.ch/notes/2026-03-18-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-12-29-001</title>
    <description><![CDATA[Faced a failing disk in my raidz2 ZFS pool today. Recovery was pretty simple: Asked the service provider to replace the disk Find new disk ID etc using: lsblk -o NAME,SIZE,MODEL,SERIAL,LABEL,FSTYPE ls -ltrh /dev/disk/by-id/ata-* Resilver using: sudo zpool replace lake &lt;old_disk_id&gt; &lt;new_disk_id&gt; Watch status using: watch zpool status -v Re-silvering is still ongoing, but hopefully …]]></description>
    <link>https://srijan.ch/notes/2025-12-29-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-12-29-001</guid>
    <category><![CDATA[linux]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 29 Dec 2025 22:20:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Faced a failing disk in my raidz2 ZFS pool today.</p>
<p>Recovery was pretty simple:</p>
<ol>
<li>Asked the service provider to replace the disk</li>
<li>Find new disk ID etc using:<pre><code>lsblk -o NAME,SIZE,MODEL,SERIAL,LABEL,FSTYPE
ls -ltrh /dev/disk/by-id/ata-*</code></pre>
</li>
<li>Resilver using:<pre><code>sudo zpool replace lake &lt;old_disk_id&gt; &lt;new_disk_id&gt;</code></pre>
</li>
<li>Watch status using:<pre><code>watch zpool status -v</code></pre>
</li>
</ol>
<p>Re-silvering is still ongoing, but hopefully completes without issues. Will run a manual <code>zpool scrub</code> at the end to make sure everything is okay.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-12-29-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-12-15-001</title>
    <description><![CDATA[A small elisp snippet that I found useful. I often switch between terminals and #Emacs, and they have slightly different behaviors for C-w. This makes it behave the same in Emacs as it does in bash/zsh/fish etc - deletes the last word. It retains the kill-region behavior if a region is actually selected. (defun kill-region-or-backward-word () &quot;If the region is active and non-empty, call …]]></description>
    <link>https://srijan.ch/notes/2025-12-15-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-12-15-001</guid>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 15 Dec 2025 06:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>A small elisp snippet that I found useful. I often switch between terminals and <a href="https://srijan.ch/tags/emacs" class="p-category">#Emacs</a>, and they have slightly different behaviors for <code>C-w</code>. This makes it behave the same in Emacs as it does in bash/zsh/fish etc - deletes the last word. It retains the <code>kill-region</code> behavior if a region is actually selected.</p>
<pre><code class="language-emacs-lisp">(defun kill-region-or-backward-word ()
  "If the region is active and non-empty, call `kill-region'.
Otherwise, call `backward-kill-word'."
  (interactive)
  (call-interactively
   (if (use-region-p) 'kill-region 'backward-kill-word)))
(global-set-key (kbd "C-w") 'kill-region-or-backward-word)</code></pre>
<p>Ref: <a href="https://stackoverflow.com/questions/13844453/how-do-i-make-c-w-behave-the-same-as-bash">https://stackoverflow.com/questions/13844453/how-do-i-make-c-w-behave-the-same-as-bash</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-12-15-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-12-09-002</title>
    <description><![CDATA[tramp-hlo looks interesting. Anything that can make tramp on #Emacs snappier is a good thing in my books.]]></description>
    <link>https://srijan.ch/notes/2025-12-09-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-12-09-002</guid>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 09 Dec 2025 22:50:00 +0000</pubDate>
    <content:encoded><![CDATA[<p><a href="https://github.com/jsadusk/tramp-hlo">tramp-hlo</a> looks interesting. Anything that can make tramp on  <a href="https://srijan.ch/tags/emacs" class="p-category">#Emacs</a> snappier is a good thing in my books.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-12-09-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-12-09-001</title>
    <description><![CDATA[In reply to: Make *HNComments* buffer read-only and allow &quot;q&quot; to dismiss. · Issue #12 · thanhvg/emacs-hnreader by GitHub If I&#039;m to edit any comment text, it&#039;d be after I&#039;d copied into some org-roam / orgrr note for posterity. So I keep wanting to press &quot;q&quot; to get out of the comments view. (org-mode) (read-only-mode 1... I&#039;m overriding it like this: (defun …]]></description>
    <link>https://srijan.ch/notes/2025-12-09-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-12-09-001</guid>
    <category><![CDATA[github]]></category>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 09 Dec 2025 05:35:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;github.com&#x2F;thanhvg&#x2F;emacs-hnreader&#x2F;issues&#x2F;12">Make *HNComments* buffer read-only and allow &quot;q&quot; to dismiss. · Issue #12 · thanhvg/emacs-hnreader</a> by GitHub</p><blockquote>If I&#039;m to edit any comment text, it&#039;d be after I&#039;d copied into some org-roam / orgrr note for posterity. So I keep wanting to press &quot;q&quot; to get out of the comments view. (org-mode) (read-only-mode 1...</blockquote><p>I'm overriding it like this:</p>
<pre><code>    (defun my-hnreader-comments-readonly (dom url)
      (view-mode 1)
      (org-fold-show-all)
      )
    (advice-add
     'hnreader--print-comments
     :after
     'my-hnreader-comments-readonly
     )</code></pre>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-12-09-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-11-11-001</title>
    <description><![CDATA[Liked: Pitfalls to avoid as a programming noob by pharpend tl;dr &quot;Where to I get started learning how to program?&quot; There are 3 correct answers; more detail below: SICP: Structure and Interpretation of Computer Programs, by Abelson and Sussman. There is a video lecture series There is also a book, more or less identical to the lectures, which you can read…]]></description>
    <link>https://srijan.ch/notes/2025-11-11-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-11-11-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 11 Nov 2025 10:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;zxq9.com&#x2F;archives&#x2F;2830">Pitfalls to avoid as a programming noob</a> by pharpend</p><blockquote>tl;dr &quot;Where to I get started learning how to program?&quot; There are 3 correct answers; more detail below: SICP: Structure and Interpretation of Computer Programs, by Abelson and Sussman. There is a video lecture series There is also a book, more or less identical to the lectures, which you can read…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-11-11-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>gcloud_ssh</title>
    <description><![CDATA[gcloud_ssh A simple script that finds a google cloud compute VM by IP address across all projects of an organization and runs gcloud ssh to it. #!/bin/bash GCLOUD_SSH_FLAGS=&quot;--internal-ip&quot; # Get organization ID dynamically get_org_id() { gcloud organizations list --format=&quot;value(name)&quot; --limit=1 2&gt;/dev/null | sed &#039;s|organizations/||&#039; } search_and_connect() { local ip_address=$1 echo &quot;Searching …]]></description>
    <link>https://srijan.ch/notes/2025-07-21-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-07-21-001</guid>
    <category><![CDATA[scripts]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 21 Jul 2025 16:45:00 +0000</pubDate>
    <content:encoded><![CDATA[<h2>gcloud_ssh</h2><p>A simple script that finds a google cloud compute VM by IP address across all projects of an organization and runs gcloud ssh to it.</p>
<pre><code class="language-bash">#!/bin/bash

GCLOUD_SSH_FLAGS="--internal-ip"

# Get organization ID dynamically
get_org_id() {
    gcloud organizations list --format="value(name)" --limit=1 2&gt;/dev/null | sed 's|organizations/||'
}

search_and_connect() {
    local ip_address=$1

    echo "Searching for IP: $ip_address across organization..."

    # Get organization ID
    ORG_ID=$(get_org_id)
    if [ -z "$ORG_ID" ]; then
        echo "Failed to get organization ID. Make sure you have organization-level access."
        exit 1
    fi

    # Search for instance with this IP address
    RESULT=$(gcloud asset search-all-resources \
        --scope=organizations/$ORG_ID \
        --query="$ip_address" \
        --asset-types='compute.googleapis.com/Instance' \
        --format=json 2&gt;/dev/null)

    if [ -z "$RESULT" ] || [ "$RESULT" = "[]" ]; then
        echo "IP address $ip_address not found in organization."
        exit 1
    fi

    # Parse JSON to extract instance details
    INSTANCE_NAME=$(echo "$RESULT" | jq -r '.[0].name' | sed 's|.*/||')
    PROJECT=$(echo "$RESULT" | jq -r '.[0].parentFullResourceName' | sed 's|.*/||')
    ZONE=$(echo "$RESULT" | jq -r '.[0].location' | sed 's|.*/||')
    STATE=$(echo "$RESULT" | jq -r '.[0].state')

    if [ "$INSTANCE_NAME" = "null" ] || [ "$PROJECT" = "null" ] || [ "$ZONE" = "null" ]; then
        echo "Failed to parse instance details from search result."
        echo "Raw result: $RESULT"
        exit 1
    fi

    # Check if instance is running
    if [ "$STATE" != "RUNNING" ]; then
        echo "Instance $INSTANCE_NAME is not running (state: $STATE)."
        echo "Cannot connect to a non-running instance."
        exit 1
    fi

    echo "Found instance: $INSTANCE_NAME in zone: $ZONE (project: $PROJECT)"

    # Generate and display the SSH command
    SSH_COMMAND="gcloud compute ssh $INSTANCE_NAME --zone=$ZONE --project=$PROJECT ${GCLOUD_SSH_FLAGS}"
    echo "SSH command: $SSH_COMMAND"

    # Execute the SSH command
    echo "Connecting to $INSTANCE_NAME..."
    exec $SSH_COMMAND
}

# Main script logic
case "${1:-}" in
    "")
        echo "Usage: $0 &lt;IP_ADDRESS&gt;"
        echo "  &lt;IP_ADDRESS&gt;  - Connect to instance with this IP"
        exit 1
        ;;
    *)
        search_and_connect "$1"
        ;;
esac
</code></pre>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-07-21-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-06-18-001</title>
    <description><![CDATA[Liked: Watts Martin: &amp;quot;I hate to say it, but I think I have made Emacs m…&amp;quot; - Mastodon 🐘]]></description>
    <link>https://srijan.ch/notes/2025-06-18-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-06-18-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 18 Jun 2025 02:20:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;mstdn.social&#x2F;&#x40;chipotle&#x2F;114695115261296746">Watts Martin: &amp;quot;I hate to say it, but I think I have made Emacs m…&amp;quot; - Mastodon 🐘</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-06-18-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-06-16-001</title>
    <description><![CDATA[Liked: Dr. Neckbeard, or how I learned to stop worrying and love Emacs So, you might know that I’m a text editor junkie. At a job in the 1990s, I used a great Windows-only editor called HomeSite for web development. When I moved to the Mac in 2001, I wrote to Allaire, the developers, and asked if there was a Mac version in the works. They wrote back and explained…]]></description>
    <link>https://srijan.ch/notes/2025-06-16-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-06-16-001</guid>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 16 Jun 2025 20:40:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;coyotetracks.org&#x2F;blog&#x2F;dr-neckbeard-emacs&#x2F;">Dr. Neckbeard, or how I learned to stop worrying and love Emacs</a></p><blockquote>So, you might know that I’m a text editor junkie. At a job in the 1990s, I used a great Windows-only editor called HomeSite for web development. When I moved to the Mac in 2001, I wrote to Allaire, the developers, and asked if there was a Mac version in the works. They wrote back and explained…</blockquote>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-06-16-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-06-11-001</title>
    <description><![CDATA[Quick note for me to generate #Emacs TAGS file for an #Erlang project: find {src,apps,_build/default,$(dirname $(which erl))/../lib} -name &quot;*.[he]rl&quot; | xargs realpath --relative-to=&quot;$(pwd)&quot; | etags.emacs -o TAGS - The relative path ensures that this works over tramp as well.]]></description>
    <link>https://srijan.ch/notes/2025-06-11-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-06-11-001</guid>
    <category><![CDATA[erlang]]></category>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 11 Jun 2025 02:35:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Quick note for me to generate <a href="/tags/emacs" class="p-category">#Emacs</a> TAGS file for an <a href="/tags/erlang" class="p-category">#Erlang</a> project:</p>
<pre><code>find {src,apps,_build/default,$(dirname $(which erl))/../lib} -name "*.[he]rl" | xargs realpath --relative-to="$(pwd)" | etags.emacs -o TAGS -</code></pre>
<p>The relative path ensures that this works over tramp as well.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-06-11-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>Ability to pass options (before command) to vdirsyncer</title>
    <description><![CDATA[In reply to: Issues · Hanno Perrey / khalel · GitLab Ability to pass options (before command) to vdirsyncer Hi. I&#039;ve been using khalel + khal + vdirsyncer for the last few days, and it has been an absolute joy. I tried various ways of working with my work calendar in my org system, and this has been the best in terms of stability and simplicity. However, in my setup, vdirsyncer shows a lots of …]]></description>
    <link>https://srijan.ch/notes/2025-05-28-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-05-28-001</guid>
    <category><![CDATA[issues]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 28 May 2025 10:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;gitlab.com&#x2F;hperrey&#x2F;khalel&#x2F;-&#x2F;issues">Issues · Hanno Perrey / khalel · GitLab</a></p><h2>Ability to pass options (before command) to vdirsyncer</h2><p>Hi. I've been using khalel + khal + vdirsyncer for the last few days, and it has been an absolute joy. I tried various ways of working with my work calendar in my org system, and this has been the best in terms of stability and simplicity.</p>
<p>However, in my setup, vdirsyncer shows a lots of warnings for "Skipping identical href" or "Server did not supply properties" - possibly because I'm syncing with a pretty old google calendar that might have some bad entries. I want to run sync with <code>vdirsyncer -verror sync</code> to silence these warnings in the output of <code>khalel-run-vdirsyncer</code>, but continue to show errors.</p>
<p>I could not find a way to make this configurable, because the <code>-v</code> flag comes before the <code>sync</code> command, and setting <code>khalel-vdirsyncer-command</code> to <code>vdirsyncer -v</code> does not work.</p>
<p>Similarly, someone could have the use case of passing a different config file using <code>vdirsyncer -c .custom/location sync</code> (I don't).</p>
<p>So, I think a way to configuring custom flags for vdirsyncer makes sense.</p><p>Syndicated to:</p><ul><li><a href="https://gitlab.com/hperrey/khalel/-/issues?show=eyJpaWQiOiIxNyIsImZ1bGxfcGF0aCI6ImhwZXJyZXkva2hhbGVsIiwiaWQiOjE2ODAyNDUzN30%3D">Gitlab issue</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-05-28-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-05-02-001</title>
    <description><![CDATA[I didn&#039;t know that Aloe Vera can have flowers!]]></description>
    <link>https://srijan.ch/notes/2025-05-02-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-05-02-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 02 May 2025 16:50:00 +0000</pubDate>
    <media:content url="https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306.jpg" medium="image" />
    <content:encoded><![CDATA[<p>I didn't know that Aloe Vera can have flowers!</p>
<figure><picture><source sizes="(min-width: 768px) 704px, calc(93.6vw - 45px)" srcset="https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-300x.avif 300w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-600x.avif 600w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-704x.avif 704w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-900x.avif 900w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-1200x.avif 1200w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-1800x.avif 1800w" type="image/avif"><source sizes="(min-width: 768px) 704px, calc(93.6vw - 45px)" srcset="https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-300x.webp 300w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-600x.webp 600w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-704x.webp 704w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-900x.webp 900w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-1200x.webp 1200w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-1800x.webp 1800w" type="image/webp"><img alt="A photo of an Aloe Vera plant with a long flower stalk rising out of the center with yellow flowers" class="u-photo" height="939" sizes="(min-width: 768px) 704px, calc(93.6vw - 45px)" src="https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-704x.jpg" srcset="https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-300x.jpg 300w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-600x.jpg 600w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-704x.jpg 704w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-900x.jpg 900w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-1200x.jpg 1200w, https://srijan.ch/media/pages/notes/2025-05-02-001/31efb0bde0-1783105292/20250502_093306-1800x.jpg 1800w" title="A photo of an Aloe Vera plant with a long flower stalk rising out of the center with yellow flowers" width="704"></picture></figure>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-05-02-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>Show custom fields in issues list and detail pages</title>
    <description><![CDATA[In reply to: Issues · unmonoqueteclea/jira.el · GitHub Show custom fields in issues list and detail pages Is there a way to show additional custom field information in the issues list table and in the issue detail page? Note that custom fields can be of type string/datetime/user/link etc. Syndicated to: https://github.com/unmonoqueteclea/jira.el/issues/16]]></description>
    <link>https://srijan.ch/notes/2025-04-15-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-04-15-001</guid>
    <category><![CDATA[issues]]></category>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 15 Apr 2025 10:40:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;github.com&#x2F;unmonoqueteclea&#x2F;jira.el&#x2F;issues">Issues · unmonoqueteclea/jira.el · GitHub</a></p><h2>Show custom fields in issues list and detail pages</h2><p>Is there a way to show additional custom field information in the issues list table and in the issue detail page?</p>
<p>Note that custom fields can be of type string/datetime/user/link etc.</p><p>Syndicated to:</p><ul><li><a href="https://github.com/unmonoqueteclea/jira.el/issues/16">https://github.com/unmonoqueteclea/jira.el/issues/16</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-04-15-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-04-13-002</title>
    <description><![CDATA[In reply to: Mitesh: &amp;quot;#erlang ships with #emacs mode! Sweeeet ``` ;; e…&amp;quot; - Fosstodon I have this variant: (add-to-list &#039;load-path (car (file-expand-wildcards &quot;/usr/lib/erlang/lib/tools-*/emacs&quot;))) so that I don&#039;t have to hard-code the tools version.]]></description>
    <link>https://srijan.ch/notes/2025-04-13-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-04-13-002</guid>
    <category><![CDATA[erlang]]></category>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sun, 13 Apr 2025 22:15:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;fosstodon.org&#x2F;&#x40;oxalorg&#x2F;114297844019654211">Mitesh: &amp;quot;#erlang ships with #emacs mode! Sweeeet ``` ;; e…&amp;quot; - Fosstodon</a></p><p>I have this variant:</p>
<pre><code>(add-to-list
 'load-path (car (file-expand-wildcards
                  "/usr/lib/erlang/lib/tools-*/emacs")))</code></pre>
<p>so that I don't have to hard-code the tools version.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-04-13-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-04-13-001</title>
    <description><![CDATA[Liked: Mitesh: &amp;quot;#erlang ships with #emacs mode! Sweeeet ``` ;; e…&amp;quot; - Fosstodon]]></description>
    <link>https://srijan.ch/notes/2025-04-13-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-04-13-001</guid>
    <category><![CDATA[erlang]]></category>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sun, 13 Apr 2025 16:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;fosstodon.org&#x2F;&#x40;oxalorg&#x2F;114297844019654211">Mitesh: &amp;quot;#erlang ships with #emacs mode! Sweeeet ``` ;; e…&amp;quot; - Fosstodon</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-04-13-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>Error when introspection results have a root node element without name attribute</title>
    <description><![CDATA[In reply to: Issues · jeanparpaillon/erlang-dbus · GitHub Error when introspection results have a root node element without name attribute The name attribute is optional for the root node element in introspection results. From https://dbus.freedesktop.org/doc/dbus-specification.html#introspection-format : Only the root &lt;node&gt; element can omit the node name, as it&#039;s known to be the object …]]></description>
    <link>https://srijan.ch/notes/2025-04-11-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-04-11-002</guid>
    <category><![CDATA[issues]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 11 Apr 2025 02:40:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;github.com&#x2F;jeanparpaillon&#x2F;erlang-dbus&#x2F;issues">Issues · jeanparpaillon/erlang-dbus · GitHub</a></p><h2>Error when introspection results have a root node element without name attribute</h2><p>The name attribute is optional for the root node element in introspection results.</p>
<p>From <a href="https://dbus.freedesktop.org/doc/dbus-specification.html#introspection-format">https://dbus.freedesktop.org/doc/dbus-specification.html#introspection-format</a> :</p>
<blockquote>
<p>Only the root <code>&lt;node&gt;</code> element can omit the node name, as it's known to be the object that was introspected. If the root <code>&lt;node&gt;</code> does have a name attribute, it must be an absolute object path. If child <code>&lt;node&gt;</code> have object paths, they must be relative.</p>
</blockquote>
<p>When writing a test case for <a href="https://github.com/jeanparpaillon/erlang-dbus/issues/43">another issue</a>, I found that dbus services written using C++ QT Dbus library can cause this issue.</p>
<p>I will raise a pull request to fix both of these issues including test cases.</p><p>Syndicated to:</p><ul><li><a href="https://github.com/jeanparpaillon/erlang-dbus/issues/44">https://github.com/jeanparpaillon/erlang-dbus/issues/44</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-04-11-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>Crash when introspecting remote service object with overloaded methods</title>
    <description><![CDATA[In reply to: Issues · jeanparpaillon/erlang-dbus · GitHub Crash when introspecting remote service object with overloaded methods From what I understand, the dbus spec does not explicitly allow or disallow overloading methods. But, there are instances of overloaded methods in different applications (specially KDE based), and erlang-dbus does not handle it gracefully - it crashes. Example …]]></description>
    <link>https://srijan.ch/notes/2025-04-11-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-04-10-001</guid>
    <category><![CDATA[issues]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 11 Apr 2025 02:35:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;github.com&#x2F;jeanparpaillon&#x2F;erlang-dbus&#x2F;issues">Issues · jeanparpaillon/erlang-dbus · GitHub</a></p><h2>Crash when introspecting remote service object with overloaded methods</h2><p>From what I understand, the dbus spec does not explicitly allow or disallow overloading methods. But, there are instances of overloaded methods in different applications (specially KDE based), and erlang-dbus does not handle it gracefully - it crashes.</p>
<h2>Example</h2>
<p><code>org.kde.plasmashell</code>'s <code>/org/kde/osdService</code> path exposes two methods with the same name but different number of arguments.</p>
<h3>Output from qdbus</h3>
<pre><code class="language-shell-session">$ qdbus org.kde.plasmashell /org/kde/osdService
...
method void org.kde.osdService.volumeChanged(int percent)
method void org.kde.osdService.volumeChanged(int percent, int maximumPercent)
...</code></pre>
<h3>erlang-dbus</h3>
<pre><code class="language-erl">&gt; {ok, Bus} = dbus_bus_reg:get_bus(session).
{ok,&lt;0.110.0&gt;}
&gt; {ok, Service} = dbus_bus:get_service(Bus, 'org.kde.plasmashell').                   
{ok,&lt;0.112.0&gt;}
&gt; {ok, RemoteObject} = dbus_remote_service:get_object(Service, '/org/kde/osdService').
=ERROR REPORT==== 10-Apr-2025::06:22:35.537460 ===
Error parsing introspection infos: {case_clause,
                                    {fatal_error,
                                     {key_exists,&lt;&lt;"volumeChanged"&gt;&gt;}}}

=ERROR REPORT==== 10-Apr-2025::06:22:35.537539 ===
Error introspecting object '/org/kde/osdService': parse_error</code></pre>
<p>erlang-dbus crashes on this because it tries to insert an element into a <code>gb_trees</code> structure with a key that already exists.</p>
<p>I checked the behavior in pydbus, and it looks like it does not handle this fully either. It only shows the last method in the list (in this case, the one with two arguments). But, it does not crash.</p>
<p>This can be fixed by replacing <code>gb_trees:insert/3</code> with <code>gb_trees:enter/3</code> - which makes it match the behavior of pydbus.</p>
<p>While trying to write a test case for this issue by writing an example service using QT dbus library (which allows overloading methods), I found another issue in <a href="https://github.com/jeanparpaillon/erlang-dbus/issues/44">handling root node element without a name attribute</a> in introspection results.</p>
<p>I will raise a pull request to fix both of these issues including test cases.</p><p>Syndicated to:</p><ul><li><a href="https://github.com/jeanparpaillon/erlang-dbus/issues/43">https://github.com/jeanparpaillon/erlang-dbus/issues/43</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-04-11-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-04-10-002</title>
    <description><![CDATA[Liked: First week with Journelly | The Art Of Not Asking Why]]></description>
    <link>https://srijan.ch/notes/2025-04-10-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-04-10-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 10 Apr 2025 11:14:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;taonaw.com&#x2F;2025&#x2F;04&#x2F;09&#x2F;ive-been-testing-out-journelly.html">First week with Journelly | The Art Of Not Asking Why</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-04-10-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-04-08-002</title>
    <description><![CDATA[In reply to: mms :runbsd: + :emacs:: &amp;quot;@ross@rossabaker.com Yes. I use elfeed-protocol w…&amp;quot; - BSD.cafe Mastodon Portal I use this too, but elfeed-protocol does not have two-way sync built in (see FAQ#4 on https://github.com/fasheng/elfeed-protocol#qa). However, there are workarounds, and I use this: https://github.com/fasheng/elfeed-protocol/issues/71#issuecomment-2483697511 - I …]]></description>
    <link>https://srijan.ch/notes/2025-04-08-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-04-08-002</guid>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 08 Apr 2025 22:50:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;mastodon.bsd.cafe&#x2F;&#x40;mms&#x2F;114304061848057009">mms :runbsd: + :emacs:: &amp;quot;@ross@rossabaker.com Yes. I use elfeed-protocol w…&amp;quot; - BSD.cafe Mastodon Portal</a></p><p>I use this too, but elfeed-protocol does not have two-way sync built in (see FAQ#4 on <a href="https://github.com/fasheng/elfeed-protocol#qa">https://github.com/fasheng/elfeed-protocol#qa</a>).</p>
<p>However, there are workarounds, and I use this: <a href="https://github.com/fasheng/elfeed-protocol/issues/71#issuecomment-2483697511">https://github.com/fasheng/elfeed-protocol/issues/71#issuecomment-2483697511</a> - I call this function manually when I know I've read some things on my phone and want to re-sync read status.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-04-08-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-04-08-001</title>
    <description><![CDATA[Liked: Resetting the terminal after running rebar3 | Roger&amp;apos;s Blog]]></description>
    <link>https://srijan.ch/notes/2025-04-08-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-04-08-001</guid>
    <category><![CDATA[erlang]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 08 Apr 2025 16:30:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;blog.differentpla.net&#x2F;blog&#x2F;2023&#x2F;03&#x2F;08&#x2F;rebar3-stty-sane&#x2F;">Resetting the terminal after running rebar3 | Roger&amp;apos;s Blog</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-04-08-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-03-31-001</title>
    <description><![CDATA[Liked: thetemp: &amp;quot;Today I learned you can in fact combine full-text search and tag-matching in the Org-agenda&amp;quot;]]></description>
    <link>https://srijan.ch/notes/2025-03-31-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-03-31-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 31 Mar 2025 02:50:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;mastodon.social&#x2F;&#x40;thetemp&#x2F;114248521279879551">thetemp: &amp;quot;Today I learned you can in fact combine full-text search and tag-matching in the Org-agenda&amp;quot;</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-03-31-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-03-24-002</title>
    <description><![CDATA[Read Jeremy&#039;s post on quickly switching the default browser. I had a shell script to do this as well. Doing it from Emacs makes more sense because I can have a completion UI. So, here&#039;s my modified version for Linux: (defun sj/default-browser (&amp;optional name) &quot;Set the default browser based on the given NAME.&quot; (interactive (list (completing-read &quot;Browser: &quot; (split-string …]]></description>
    <link>https://srijan.ch/notes/2025-03-24-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-03-24-002</guid>
    <category><![CDATA[emacs]]></category>
    <category><![CDATA[linux]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 24 Mar 2025 20:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Read <a href="https://takeonrules.com/2025/02/05/quick-switch-default-browser/">Jeremy&#039;s post on quickly switching the default browser</a>.</p>
<p>I had a shell script to do this as well. Doing it from Emacs makes more sense because I can have a completion UI.</p>
<p>So, here's my modified version for Linux:</p>
<pre><code class="language-elisp">(defun sj/default-browser (&amp;optional name)
  "Set the default browser based on the given NAME."
  (interactive
   (list
    (completing-read
     "Browser: "
     (split-string
      (shell-command-to-string
       "find /usr/share/applications ~/.local/share/applications -name \"*.desktop\" -exec grep -l \"Categories=.*WebBrowser\" {} \\;")
      "\n" t))))
  (let ((browser-desktop (file-name-nondirectory name)))
    (shell-command (format "xdg-mime default %s text/html" browser-desktop))
    (shell-command (format "xdg-mime default %s application/xhtml+xml" browser-desktop))
    (shell-command (format "xdg-mime default %s application/x-extension-html" browser-desktop))
    (shell-command (format "xdg-settings set default-web-browser %s" browser-desktop))))</code></pre>
<p>As a plus, it automatically lists the installed browsers based on <code>.desktop</code> files on your system.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-03-24-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-03-24-001</title>
    <description><![CDATA[Liked: zrzz: &amp;quot;@lffontenelle@mastodon.social @b0rk@jvns.ca I wan…&amp;quot; - Fosstodon]]></description>
    <link>https://srijan.ch/notes/2025-03-24-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-03-24-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 24 Mar 2025 20:15:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;fosstodon.org&#x2F;&#x40;zrzz&#x2F;113984016369084648">zrzz: &amp;quot;@lffontenelle@mastodon.social @b0rk@jvns.ca I wan…&amp;quot; - Fosstodon</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-03-24-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-03-19-001</title>
    <description><![CDATA[Liked: Tips For Better Interactions | Stay SaaSy]]></description>
    <link>https://srijan.ch/notes/2025-03-19-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-03-19-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 19 Mar 2025 01:30:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;staysaasy.com&#x2F;saas&#x2F;2025&#x2F;03&#x2F;17&#x2F;interactions.html">Tips For Better Interactions | Stay SaaSy</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-03-19-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-03-18-001</title>
    <description><![CDATA[In reply to: Obsidian Kirby Sync Nice. Now I want to make something like this for Emacs. Also note that micropub is not just meant for publishing, it&#039;s also possible to view and edit posts and query for a list of posts, list of tags/categories (and create/edit them), and manage media (images etc). See https://indieweb.org/Micropub and https://indieweb.org/Micropub-extensions But of course, …]]></description>
    <link>https://srijan.ch/notes/2025-03-18-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-03-18-001</guid>
    <category><![CDATA[indieweb]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 18 Mar 2025 14:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;maurice-renck.de&#x2F;en&#x2F;learn&#x2F;built-with-kirby&#x2F;obsidian-kirby-sync">Obsidian Kirby Sync</a></p><p>Nice. Now I want to make something like this for Emacs.</p>
<p>Also note that micropub is not just meant for publishing, it's also possible to view and edit posts and query for a list of posts, list of tags/categories (and create/edit them), and manage media (images etc). See <a href="https://indieweb.org/Micropub">https://indieweb.org/Micropub</a> and <a href="https://indieweb.org/Micropub-extensions">https://indieweb.org/Micropub-extensions</a></p>
<p>But of course, Sebastian's plugin does not support all these.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-03-18-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-03-13-001</title>
    <description><![CDATA[Liked: How to Work Better | Kev Quirk]]></description>
    <link>https://srijan.ch/notes/2025-03-13-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-03-13-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 13 Mar 2025 13:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;kevquirk.com&#x2F;blog&#x2F;how-to-work-better">How to Work Better | Kev Quirk</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-03-13-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-02-03-003</title>
    <description><![CDATA[Liked: Luís de Araújo: &amp;quot;Wrote this whole #emacs config because of the inc…&amp;quot; - Mastodon]]></description>
    <link>https://srijan.ch/notes/2025-02-03-003</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-02-03-003</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 03 Feb 2025 15:25:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;mastodon.social&#x2F;&#x40;lf_araujo&#x2F;113938437460903416">Luís de Araújo: &amp;quot;Wrote this whole #emacs config because of the inc…&amp;quot; - Mastodon</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-02-03-003#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-02-03-002</title>
    <description><![CDATA[Liked: Debugging Emacs Commands | Emacs Redux]]></description>
    <link>https://srijan.ch/notes/2025-02-03-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-02-03-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 03 Feb 2025 15:20:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;emacsredux.com&#x2F;blog&#x2F;2025&#x2F;02&#x2F;03&#x2F;debugging-emacs-commands&#x2F;">Debugging Emacs Commands | Emacs Redux</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-02-03-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-02-03-001</title>
    <description><![CDATA[Liked: Prevent Org-todo from messing with windows - Coping Mechanism]]></description>
    <link>https://srijan.ch/notes/2025-02-03-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-02-03-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 03 Feb 2025 15:15:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;copingmechanism.com&#x2F;posts&#x2F;2025&#x2F;02&#x2F;prevent-org-todo-from-messing-with-windows&#x2F;">Prevent Org-todo from messing with windows - Coping Mechanism</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-02-03-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-01-30-001</title>
    <description><![CDATA[In reply to: John Hamelink: &amp;quot;@srijan@indieweb.social Hi there, I saw your blog…&amp;quot; - Functional Café Nice work. I&#039;ve been running it on Mac using the python wrapper provided in the comment + an AppleScript wrapper so that I can run it as an app. Also, I&#039;ve merged your PR on https://github.com/srijan/slack_org_protocol_capture and released a new version.]]></description>
    <link>https://srijan.ch/notes/2025-01-30-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-01-30-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 30 Jan 2025 04:25:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;functional.cafe&#x2F;&#x40;johnhamelink&#x2F;113913362229857614">John Hamelink: &amp;quot;@srijan@indieweb.social Hi there, I saw your blog…&amp;quot; - Functional Café</a></p><p>Nice work. I've been running it on Mac using the python wrapper provided in the comment + an AppleScript wrapper so that I can run it as an app.<br />
Also, I've merged your PR on <a href="https://github.com/srijan/slack_org_protocol_capture">https://github.com/srijan/slack_org_protocol_capture</a> and released a new version.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-01-30-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-01-20-002</title>
    <description><![CDATA[In reply to: @xenodium: &amp;quot;@srijan.ch Thanks for reporting this!…&amp;quot; - Indieweb.Social Actually looks like all 3 are fixed now. Maybe the GUID was present and I missed it - just needed updated URL.]]></description>
    <link>https://srijan.ch/notes/2025-01-20-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-01-20-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 20 Jan 2025 16:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;indieweb.social&#x2F;&#x40;xenodium&#x2F;113861194070728413">@xenodium: &amp;quot;@srijan.ch Thanks for reporting this!…&amp;quot; - Indieweb.Social</a></p><p>Actually looks like all 3 are fixed now. Maybe the GUID was present and I missed it - just needed updated URL.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-01-20-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-01-20-003</title>
    <description><![CDATA[Liked: Álvaro R. #FreeVenezuela 🇻🇪: &amp;quot;@srijan.ch@srijan.ch 3. should be fixed also. Tha…&amp;quot; - Indieweb.Social]]></description>
    <link>https://srijan.ch/notes/2025-01-20-003</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-01-20-003</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 20 Jan 2025 16:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;indieweb.social&#x2F;&#x40;xenodium&#x2F;113861371428970773">Álvaro R. #FreeVenezuela 🇻🇪: &amp;quot;@srijan.ch@srijan.ch 3. should be fixed also. Tha…&amp;quot; - Indieweb.Social</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-01-20-003#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-01-20-001</title>
    <description><![CDATA[In reply to: xenodium.com is now hosted at lmno.lol Looks good. I noticed some issues though: The post links in your RSS feed are incorrect. The link to lmno.lol is also incorrect on your homepage. The new RSS feed does not have GUIDs (your earlier feed had). So, in my feed reader, all your posts are showing up as unread.]]></description>
    <link>https://srijan.ch/notes/2025-01-20-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-01-20-001</guid>
    <category><![CDATA[indieweb]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 20 Jan 2025 14:20:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;indieweb.social&#x2F;&#x40;xenodium&#x2F;113855749275220413">xenodium.com is now hosted at lmno.lol</a></p><p>Looks good. I noticed some issues though:</p>
<ol>
<li>The post links in your RSS feed are incorrect.</li>
<li>The link to lmno.lol is also incorrect on your homepage.</li>
<li>The new RSS feed does not have GUIDs (your earlier feed had). So, in my feed reader, all your posts are showing up as unread.</li>
</ol>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-01-20-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-01-15-001</title>
    <description><![CDATA[I had been facing an issue in #Emacs on my work Mac system: C-S-&lt;tab&gt; was somehow being translated to C-&lt;tab&gt;. I tried to look into key-translation-map to figure out the issue, but could not find anything. Finally, turned out that I had bound C-&lt;tab&gt; to tab-line-switch-to-next-tab and C-&lt;iso-lefttab&gt; to tab-line-switch-to-prev-tab, but the actual C-S-&lt;tab&gt; was …]]></description>
    <link>https://srijan.ch/notes/2025-01-15-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-01-15-001</guid>
    <category><![CDATA[emacs]]></category>
    <category><![CDATA[til]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 15 Jan 2025 02:20:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>I had been facing an issue in <a href="https://srijan.ch/tags/emacs" class="p-category">#Emacs</a> on my work Mac system: <code>C-S-&lt;tab&gt;</code> was somehow being translated to <code>C-&lt;tab&gt;</code>. I tried to look into <code>key-translation-map</code> to figure out the issue, but could not find anything.</p>
<p>Finally, turned out that I had bound <code>C-&lt;tab&gt;</code> to <code>tab-line-switch-to-next-tab</code> and <code>C-&lt;iso-lefttab&gt;</code> to <code>tab-line-switch-to-prev-tab</code>, but the actual <code>C-S-&lt;tab&gt;</code> was unbound. <code>C-&lt;iso-lefttab&gt;</code> only works on linux: something to do with how X11 sends the event to the application (and probably some compatibility mode due to which wayland was doing the same).</p>
<p>On Mac, once I explicitly bound <code>C-S-&lt;tab&gt;</code> in my Emacs config, it started working correctly.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-01-15-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2025-01-08-001</title>
    <description><![CDATA[In reply to: upgrade to plasma6 · Issue #44 · lipido/kargos · GitHub For me, this fork works well with plasma 6: https://github.com/sanniou/kargos6/ Syndicated to: https://github.com/lipido/kargos/issues/44#issuecomment-2578681639]]></description>
    <link>https://srijan.ch/notes/2025-01-08-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2025-01-08-001</guid>
    <category><![CDATA[github]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 08 Jan 2025 21:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;github.com&#x2F;lipido&#x2F;kargos&#x2F;issues&#x2F;44">upgrade to plasma6 · Issue #44 · lipido/kargos · GitHub</a></p><p>For me, this fork works well with plasma 6: <a href="https://github.com/sanniou/kargos6/">https://github.com/sanniou/kargos6/</a></p><p>Syndicated to:</p><ul><li><a href="https://github.com/lipido/kargos/issues/44#issuecomment-2578681639">https://github.com/lipido/kargos/issues/44#issuecomment-2578681639</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2025-01-08-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-12-27-001</title>
    <description><![CDATA[In reply to: Seconds Since the Epoch (HN) Somewhat related: I really like Erlang&#039;s docs about handling time. They have common scenarios laid out and document which APIs to use for them. Like: retrieve system time, measure elapsed time, determine order of events, etc. https://www.erlang.org/doc/apps/erts/time_correction.html#how-to-work-with-the-new-api Syndicated to: …]]></description>
    <link>https://srijan.ch/notes/2024-12-27-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-12-27-001</guid>
    <category><![CDATA[erlang]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 27 Dec 2024 13:50:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;news.ycombinator.com&#x2F;item&#x3F;id&#x3D;42512371">Seconds Since the Epoch (HN)</a></p><p>Somewhat related: I really like Erlang's docs about handling time. They have common scenarios laid out and document which APIs to use for them. Like: retrieve system time, measure elapsed time, determine order of events, etc.</p>
<p><a href="https://www.erlang.org/doc/apps/erts/time_correction.html#how-to-work-with-the-new-api">https://www.erlang.org/doc/apps/erts/time_correction.html#how-to-work-with-the-new-api</a></p><p>Syndicated to:</p><ul><li><a href="https://news.ycombinator.com/item?id=42522025">https://news.ycombinator.com/item?id=42522025</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-12-27-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-12-20-001</title>
    <description><![CDATA[Liked: Hyper-Reading]]></description>
    <link>https://srijan.ch/notes/2024-12-20-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-12-20-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 20 Dec 2024 18:20:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;everything.intellectronica.net&#x2F;p&#x2F;hyper-reading&#x3F;utm_source&#x3D;indieblog.page&amp;utm_medium&#x3D;mastodon&amp;utm_campaign&#x3D;indieblog.page">Hyper-Reading</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-12-20-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-12-06-001</title>
    <description><![CDATA[Liked: Lars Wikman: &amp;quot;Architecture to me uses a few repeating patterns.…&amp;quot; - Fosstodon]]></description>
    <link>https://srijan.ch/notes/2024-12-06-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-12-06-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 06 Dec 2024 11:50:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;fosstodon.org&#x2F;&#x40;lawik&#x2F;113604996397760879">Lars Wikman: &amp;quot;Architecture to me uses a few repeating patterns.…&amp;quot; - Fosstodon</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-12-06-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-10-08-002</title>
    <description><![CDATA[Read an interesting set of posts today: https://lethain.com/extract-the-kernel/ and https://lethain.com/executive-translation/ . The basic concept is: ... executives are generally directionally correct but specifically wrong, and it’s your job to understand the overarching direction without getting distracted by the narrow errors in their idea. This resonates well with my experience. I have been …]]></description>
    <link>https://srijan.ch/notes/2024-10-08-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-10-08-002</guid>
    <category><![CDATA[management]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 08 Oct 2024 07:40:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Read an interesting set of posts today: <a href="https://lethain.com/extract-the-kernel/">https://lethain.com/extract-the-kernel/</a> and <a href="https://lethain.com/executive-translation/">https://lethain.com/executive-translation/</a> . The basic concept is:</p>
<blockquote>
<p>... executives are generally directionally correct but specifically wrong, and it’s your job to understand the overarching direction without getting distracted by the narrow errors in their idea.</p>
</blockquote>
<p>This resonates well with my experience. I have been doing this unconsciously, but it's good to put it in these words.</p><p>Syndicated to:</p><ul><li><a href="https://bsky.app/profile/srijan4.bsky.social/post/3l5yd3rfbbn2j">https://bsky.app/profile/srijan4.bsky.social/post/3l5yd3rfbbn2j</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-10-08-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-10-08-001</title>
    <description><![CDATA[Tried using X11 on #Linux the last few days due to some issues with Zoom screensharing in Wayland with the latest pipewire, and I already miss #Wayland. Issues I faced with X11: Smooth scrolling broken Apps work noticeably slower Screen tearing This bug in Emacs GTK build: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=67654 (To be fair, this is a GTK-specific issue, not X11 specific) I will go …]]></description>
    <link>https://srijan.ch/notes/2024-10-08-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-10-08-001</guid>
    <category><![CDATA[wayland]]></category>
    <category><![CDATA[linux]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 08 Oct 2024 03:45:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Tried using X11 on <a href="/tags/linux" class="p-category">#Linux</a> the last few days due to some issues with Zoom screensharing in Wayland with the latest pipewire, and I already miss <a href="/tags/wayland" class="p-category">#Wayland</a>.</p>
<p>Issues I faced with X11:</p>
<ol>
<li>Smooth scrolling broken</li>
<li>Apps work noticeably slower</li>
<li>Screen tearing</li>
<li>This bug in Emacs GTK build: <a href="https://debbugs.gnu.org/cgi/bugreport.cgi?bug=67654">https://debbugs.gnu.org/cgi/bugreport.cgi?bug=67654</a> (To be fair, this is a GTK-specific issue, not X11 specific)</li>
</ol>
<p>I will go back to Wayland as soon as Zoom fixes this: <a href="https://community.zoom.com/t5/Zoom-Meetings/share-screen-linux-wayland-broken/m-p/203624/highlight/true#M112235">https://community.zoom.com/t5/Zoom-Meetings/share-screen-linux-wayland-broken/m-p/203624/highlight/true#M112235</a></p><p>Syndicated to:</p><ul><li><a href="https://bsky.app/profile/srijan4.bsky.social/post/3l5ycxn4gak27">https://bsky.app/profile/srijan4.bsky.social/post/3l5ycxn4gak27</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-10-08-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-10-07-002</title>
    <description><![CDATA[Liked: Examples of Great URL Design - Jim Nielsen’s Blog]]></description>
    <link>https://srijan.ch/notes/2024-10-07-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-10-07-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 07 Oct 2024 07:25:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;blog.jim-nielsen.com&#x2F;2023&#x2F;examples-of-great-urls&#x2F;">Examples of Great URL Design - Jim Nielsen’s Blog</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-10-07-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-10-07-001</title>
    <description><![CDATA[In reply to: Lloyd: &quot;Question for #indieweb people - why do most peopl…&quot; - Mastodon I do it because that&#039;s the way most social feeds display, so in my mind, that&#039;s how users expect it. Though I can see the benefit of maybe adding a sorting toggle or option.]]></description>
    <link>https://srijan.ch/notes/2024-10-07-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-10-07-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 07 Oct 2024 07:20:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;mastodon.social&#x2F;&#x40;lloydjatkinson&#x2F;113262532604930947">Lloyd: &quot;Question for #indieweb people - why do most peopl…&quot; - Mastodon</a></p><p>I do it because that's the way most social feeds display, so in my mind, that's how users expect it. Though I can see the benefit of maybe adding a sorting toggle or option.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-10-07-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-10-02-001</title>
    <description><![CDATA[In reply to: Roberto :emacs:​: &amp;quot;Very often I need to review some logs of a given …&amp;quot; - Fosstodon I&#039;ve been using lnav for this, but Emacs can be a better choice. We can probably also combine this with TRAMP to view remote logs. indieweb.social/@robjperez@fosstodon.org/113204768213409307]]></description>
    <link>https://srijan.ch/notes/2024-10-02-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-10-02-001</guid>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 02 Oct 2024 07:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;indieweb.social&#x2F;&#x40;robjperez&#x40;fosstodon.org&#x2F;113204768213409307">Roberto :emacs:​: &amp;quot;Very often I need to review some logs of a given …&amp;quot; - Fosstodon</a></p><p>I've been using lnav for this, but Emacs can be a better choice. We can probably also combine this with TRAMP to view remote logs.</p>
<p><a class="u-like-of hidden" href="https://indieweb.social/@robjperez@fosstodon.org/113204768213409307">indieweb.social/@robjperez@fosstodon.org/113204768213409307</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-10-02-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-10-01-002</title>
    <description><![CDATA[I have been using #karousel on #KDE for several weeks, and yesterday shifted to #PaperWM on #GNOME. Took some time to configure things like I wanted, but it&#039;s much smoother than karousel (and fancier). Overall, I like the scrolling tiling pane paradigm. I realized I&#039;ve been manually doing something like this using workspaces with 1-2 windows per workspace with two keybindings - one to change …]]></description>
    <link>https://srijan.ch/notes/2024-10-01-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-10-01-002</guid>
    <category><![CDATA[linux]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 01 Oct 2024 22:50:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>I have been using #karousel on #KDE for several weeks, and yesterday shifted to #PaperWM on #GNOME. Took some time to configure things like I wanted, but it's much smoother than karousel (and fancier).</p>
<p>Overall, I like the scrolling tiling pane paradigm. I realized I've been manually doing something like this using workspaces with 1-2 windows per workspace with two keybindings - one to change workspace and one to switch windows inside a workspace. So, this window management model really clicks for me.</p>
<p>I switched from GNOME to KDE several years ago due to getting burnt by extensions breaking too frequently, but hopefully things are better now.</p><p>Syndicated to:</p><ul><li><a href="https://bsky.app/profile/srijan4.bsky.social/post/3l5icw34klr2e">https://bsky.app/profile/srijan4.bsky.social/post/3l5icw34klr2e</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-10-01-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-10-01-001</title>
    <description><![CDATA[In reply to: ruby-dmtx compatibility with Ruby 3.1.6 It should be compatible. The error you&#039;re getting is Rdmtx.c:26:10: fatal error: &#039;dmtx.h&#039; file not found, which makes me think that it cannot find the dmtx shared library needed for compilation. Check if that&#039;s installed for your system. Syndicated to: https://github.com/srijan/ruby-dmtx/issues/11#issuecomment-2386203141]]></description>
    <link>https://srijan.ch/notes/2024-10-01-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-10-01-001</guid>
    <category><![CDATA[issues]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 01 Oct 2024 14:45:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;github.com&#x2F;srijan&#x2F;ruby-dmtx&#x2F;issues&#x2F;11">ruby-dmtx compatibility with Ruby 3.1.6</a></p><p>It should be compatible.</p>
<p>The error you're getting is <code>Rdmtx.c:26:10: fatal error: 'dmtx.h' file not found</code>, which makes me think that it cannot find the dmtx shared library needed for compilation. Check if that's installed for your system.</p><p>Syndicated to:</p><ul><li><a href="https://github.com/srijan/ruby-dmtx/issues/11#issuecomment-2386203141">https://github.com/srijan/ruby-dmtx/issues/11#issuecomment-2386203141</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-10-01-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-09-24-001</title>
    <description><![CDATA[#Emacs #TIL : I learned about save-interprogram-paste-before-kill - which saves the existing system clipboard text into the kill ring before replacing it. This ensures that Emacs kill operations do not irrevocably overwrite existing clipboard text. A common workflow for me is to copy some text from a different application and paste it inside Emacs. But, if I want to first delete a word or region …]]></description>
    <link>https://srijan.ch/notes/2024-09-24-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-09-24-001</guid>
    <category><![CDATA[emacs]]></category>
    <category><![CDATA[til]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 24 Sep 2024 17:20:00 +0000</pubDate>
    <content:encoded><![CDATA[<p><a href="https://srijan.ch/tags/emacs" class="p-category">#Emacs</a> <a href="https://srijan.ch/tags/til" class="p-category">#TIL</a> : I learned about <code>save-interprogram-paste-before-kill</code> - which saves the existing system clipboard text into the kill ring before replacing it. This ensures that Emacs kill operations do not irrevocably overwrite existing clipboard text.</p>
<p>A common workflow for me is to copy some text from a different application and paste it inside Emacs. But, if I want to first delete a word or region to replace, the deleted word or region goes to the system clipboard and replaces my copied text. This config saves the previous entry in the system clipboard so I can do a <code>C-p</code> after paste to choose the previous paste.</p><p>Syndicated to:</p><ul><li><a href="https://bsky.app/profile/srijan4.bsky.social/post/3l4w53avhjw2b">https://bsky.app/profile/srijan4.bsky.social/post/3l4w53avhjw2b</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-09-24-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-09-12-001</title>
    <description><![CDATA[Liked: Kirby CMS: &amp;amp;quot;Kirby 4.4.0 is here 🚀 https://github.com/getkirby…&amp;amp;quot; - Mastodon]]></description>
    <link>https://srijan.ch/notes/2024-09-12-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-09-12-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 12 Sep 2024 15:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;indieweb.social&#x2F;&#x40;getkirby&#x40;mastodon.social&#x2F;113124705519845137">Kirby CMS: &amp;amp;quot;Kirby 4.4.0 is here 🚀 https://github.com/getkirby…&amp;amp;quot; - Mastodon</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-09-12-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-09-08-001</title>
    <description><![CDATA[In reply to: Improving how I handle secrets in my work notes The nice thing about auth-source is that it has a pluggable backend - it can be used with any password store like OS keyring, password manager, etc. See some backends at https://melpa.org/#/?q=auth-source- and https://github.com/search?q=%22auth-source%22+language%3A%22Emacs+Lisp%22+&amp;type=repositories I use it with the 1password …]]></description>
    <link>https://srijan.ch/notes/2024-09-08-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-09-08-001</guid>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sun, 08 Sep 2024 17:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;magnus.therning.org&#x2F;2024-09-01-improving-how-i-handle-secrets-in-my-work-notes.html">Improving how I handle secrets in my work notes</a></p><p>The nice thing about auth-source is that it has a pluggable backend - it can be used with any password store like OS keyring, password manager, etc. See some backends at <a href="https://melpa.org/#/?q=auth-source">https://melpa.org/#/?q=auth-source</a>- and <a href="https://github.com/search?q=%22auth-source%22+language%3A%22Emacs+Lisp%22+&amp;type=repositories">https://github.com/search?q=%22auth-source%22+language%3A%22Emacs+Lisp%22+&amp;type=repositories</a></p>
<p>I use it with the <a href="https://github.com/dlobraico/auth-source-1password">1password backend</a>, and it works seamlessly.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-09-08-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-09-05-001</title>
    <description><![CDATA[In reply to: Music library management It&#039;s a little costly ($15 per month or $150 per year), but I&#039;ve been using Roon for this for the last few years. You can run the roon server either on MacOS or any laptop/desktop, or on a homelab server. And the mobile client app has download support and CarPlay support. I actually use it linked to Tidal for new music discovery, and if I like something, then …]]></description>
    <link>https://srijan.ch/notes/2024-09-05-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-09-05-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 05 Sep 2024 16:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;lars-christian.com&#x2F;notes&#x2F;c0c6f4bf6b&#x2F;">Music library management</a></p><p>It's a little costly ($15 per month or $150 per year), but I've been using <a href="https://roon.app/">Roon</a> for this for the last few years. You can run the roon server either on MacOS or any laptop/desktop, or on a homelab server. And the mobile client app has download support and CarPlay support.</p>
<p>I actually use it linked to Tidal for new music discovery, and if I like something, then I buy it separately and add to my library.</p>
<p>You can try it out for 30 days (or use <a href="https://roonlabs.com/r/5nyuubfq3UWlnvEKfUxcyw">my referral link</a> for extra 30 days free if you decide to sign up for the yearly plan).</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-09-05-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-09-02-001</title>
    <description><![CDATA[Something precious stolen by magic. #WitchHatAtelier #Manga #Magic Syndicated to: https://bsky.app/profile/srijan4.bsky.social/post/3l36vuzxpbp24]]></description>
    <link>https://srijan.ch/notes/2024-09-02-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-09-02-001</guid>
    <category><![CDATA[witchhatatelier]]></category>
    <category><![CDATA[manga]]></category>
    <category><![CDATA[magic]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 02 Sep 2024 15:15:00 +0000</pubDate>
    <media:content url="https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1.png" medium="image" />
    <content:encoded><![CDATA[<p>Something precious stolen by magic.<br />
<a href="https://srijan.ch/tags/WitchHatAtelier" class="p-category">#WitchHatAtelier</a> <a href="https://srijan.ch/tags/Manga" class="p-category">#Manga</a> <a href="https://srijan.ch/tags/Magic" class="p-category">#Magic</a></p>
<figure><picture><source sizes="(min-width: 768px) 704px, calc(93.6vw - 45px)" srcset="https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-300x.avif 300w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-600x.avif 600w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-704x.avif 704w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-900x.avif 900w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-1200x.avif 1200w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-1800x.avif 1800w" type="image/avif"><source sizes="(min-width: 768px) 704px, calc(93.6vw - 45px)" srcset="https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-300x.webp 300w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-600x.webp 600w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-704x.webp 704w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-900x.webp 900w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-1200x.webp 1200w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-1800x.webp 1800w" type="image/webp"><img alt="A black and white manga panel from Witch Hat Atelier shows a young girl in a cloak standing before a tall, ethereal figure with flowing hair and a crown. The girl tries to answer a riddle: &#039;Something you seek but cannot be granted. A thing which nobody down here possesses. Something precious that was taken from you by magic.&#039; The girl&#039;s speech bubble reads: &#039;Is the answer... comfort?&#039;" class="u-photo" height="711" sizes="(min-width: 768px) 704px, calc(93.6vw - 45px)" src="https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-704x.png" srcset="https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-300x.png 300w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-600x.png 600w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-704x.png 704w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-900x.png 900w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-1200x.png 1200w, https://srijan.ch/media/pages/notes/2024-09-02-001/2faacb899c-1783105292/witch_hat_atelier_5_1-1800x.png 1800w" title="A black and white manga panel from Witch Hat Atelier shows a young girl in a cloak standing before a tall, ethereal figure with flowing hair and a crown. The girl tries to answer a riddle: &#039;Something you seek but cannot be granted. A thing which nobody down here possesses. Something precious that was taken from you by magic.&#039; The girl&#039;s speech bubble reads: &#039;Is the answer... comfort?&#039;" width="704"></picture></figure><p>Syndicated to:</p><ul><li><a href="https://bsky.app/profile/srijan4.bsky.social/post/3l36vuzxpbp24">https://bsky.app/profile/srijan4.bsky.social/post/3l36vuzxpbp24</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-09-02-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-09-01-002</title>
    <description><![CDATA[My small #emacs #orgmode #gtd customization of the day: org-edna is a plugin that can be used to setup auto triggers (and blockers) when completing a task. org-gtd uses it to auto-forward the next TODO item in a project to NEXT when a task in the project is marked as DONE. The #orgedna trigger it uses is: relatives(forward-no-wrap todo-only 1 no-sort) todo!(NEXT). This works okay for me, but also …]]></description>
    <link>https://srijan.ch/notes/2024-09-01-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-09-01-002</guid>
    <category><![CDATA[emacs]]></category>
    <category><![CDATA[orgmode]]></category>
    <category><![CDATA[gtd]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sun, 01 Sep 2024 21:45:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>My small <a href="https://srijan.ch/tags/emacs" class="p-category">#emacs</a> <a href="https://srijan.ch/tags/orgmode" class="p-category">#orgmode</a> <a href="https://srijan.ch/tags/gtd" class="p-category">#gtd</a> customization of the day:</p>
<p><a href="https://www.nongnu.org/org-edna-el/">org-edna</a> is a plugin that can be used to setup auto triggers (and blockers) when completing a task. <a href="https://github.com/Trevoke/org-gtd.el">org-gtd</a> uses it to auto-forward the next TODO item in a project to NEXT when a task in the project is marked as DONE. The #orgedna trigger it uses is: <code>relatives(forward-no-wrap todo-only 1 no-sort) todo!(NEXT)</code>.</p>
<p>This works okay for me, but also results in tickler tasks configured as repeated tasks to go to NEXT state instead of TODO state when they are completed. This results in them showing up in the org agenda even before they are due.</p>
<p>To fix this, I had to add this property to the top-level headings of the tickler file:</p>
<pre><code class="language-org">:PROPERTIES:
:TRIGGER: self todo!(TODO)
:END:</code></pre>
<p>This overrides the global triggers configured by org-gtd for these org subtrees.</p><p>Syndicated to:</p><ul><li><a href="https://bsky.app/profile/srijan4.bsky.social/post/3l35iccfebi2o">https://bsky.app/profile/srijan4.bsky.social/post/3l35iccfebi2o</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-09-01-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>Compatibility issue with indieConnector v2.1.1?</title>
    <description><![CDATA[In reply to: Issues · mauricerenck/komments · GitHub Compatibility issue with indieConnector v2.1.1? I get this error when getting an indieweb reply: Error: Call to a member function kommentsInbox() on string #18 /var/www/html/site/plugins/komments/utils/receiveKomment.php(14): mauricerenck\Komments\KommentReceiver::storeData #17 /var/www/html/site/plugins/komments/components/hooks.php(28): …]]></description>
    <link>https://srijan.ch/notes/2024-09-01-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-09-01-001</guid>
    <category><![CDATA[issues]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sun, 01 Sep 2024 16:45:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;github.com&#x2F;mauricerenck&#x2F;komments&#x2F;issues">Issues · mauricerenck/komments · GitHub</a></p><h2>Compatibility issue with indieConnector v2.1.1?</h2><p>I get this error when getting an indieweb reply:</p>
<pre><code>Error: Call to a member function kommentsInbox() on string
#18 /var/www/html/site/plugins/komments/utils/receiveKomment.php(14): mauricerenck\Komments\KommentReceiver::storeData
#17 /var/www/html/site/plugins/komments/components/hooks.php(28): Kirby\Cms\App::mauricerenck\Komments\{closure}
#16 [internal](0): Closure::call
#15 /var/www/html/vendor/getkirby/cms/src/Toolkit/Controller.php(60): Kirby\Toolkit\Controller::call
#14 /var/www/html/vendor/getkirby/cms/src/Cms/Event.php(139): Kirby\Cms\Event::call
#13 /var/www/html/vendor/getkirby/cms/src/Cms/App.php(1645): Kirby\Cms\App::trigger
#12 /var/www/html/site/plugins/indieconnector/lib/WebmentionReceiver.php(119): mauricerenck\IndieConnector\WebmentionReceiver::triggerWebmentionHook
#11 /var/www/html/site/plugins/indieconnector/lib/WebmentionReceiver.php(46): mauricerenck\IndieConnector\WebmentionReceiver::processWebmention
#10 /var/www/html/site/plugins/indieconnector/plugin/hooks.php(55): Kirby\Cms\App::mauricerenck\IndieConnector\{closure}
#9 [internal](0): Closure::call
#8 /var/www/html/vendor/getkirby/cms/src/Toolkit/Controller.php(60): Kirby\Toolkit\Controller::call
#7 /var/www/html/vendor/getkirby/cms/src/Cms/Event.php(139): Kirby\Cms\Event::call
#6 /var/www/html/vendor/getkirby/cms/src/Cms/App.php(1645): Kirby\Cms\App::trigger
#5 /var/www/html/site/plugins/indieconnector/plugin/routes.php(37): Kirby\Http\Route::mauricerenck\IndieConnector\{closure}
#4 [internal](0): Closure::call
#3 /var/www/html/vendor/getkirby/cms/src/Http/Router.php(120): Kirby\Http\Router::call
#2 /var/www/html/vendor/getkirby/cms/src/Cms/App.php(338): Kirby\Cms\App::call
#1 /var/www/html/vendor/getkirby/cms/src/Cms/App.php(1191): Kirby\Cms\App::render
#0 /index.php(18): null</code></pre>
<p>I see a change in indieConnector v2.1.1: "webmention now sends uuid instead of page object (ee93c5d)".</p>
<p>To confirm, I tried it with this commit reverted, and it works.</p>
<p>Does komments need a new release to be compatible with indieConnector v2.1.1?</p><p>Syndicated to:</p><ul><li><a href="https://github.com/mauricerenck/komments/issues/68">https://github.com/mauricerenck/komments/issues/68</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-09-01-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-08-31-001</title>
    <description><![CDATA[In reply to: IndieWeb, 2024 edition | Joel Auterson Nice. I&#039;ve been using a kirby plugin for micropub, but have always wanted to customize it for handling tags like you mentioned. Note: Your last link to a note is a broken link (references localhost).]]></description>
    <link>https://srijan.ch/notes/2024-08-31-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-08-31-001</guid>
    <category><![CDATA[indieweb]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sat, 31 Aug 2024 14:35:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;www.joelotter.com&#x2F;posts&#x2F;2024&#x2F;08&#x2F;indieweb&#x2F;">IndieWeb, 2024 edition | Joel Auterson</a></p><p>Nice. I've been using a kirby plugin for micropub, but have always wanted to customize it for handling tags like you mentioned.</p>
<p>Note: Your last link to a note is a broken link (references localhost).</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-08-31-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-08-30-002</title>
    <description><![CDATA[Liked: Wai Hon: &amp;amp;quot;New blog post about how I use Emacs in the termin…&amp;amp;quot; - Emacs.ch]]></description>
    <link>https://srijan.ch/notes/2024-08-30-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-08-30-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 30 Aug 2024 22:45:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;emacs.ch&#x2F;&#x40;whhone&#x2F;113053131887354861">Wai Hon: &amp;amp;quot;New blog post about how I use Emacs in the termin…&amp;amp;quot; - Emacs.ch</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-08-30-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-08-30-001</title>
    <description><![CDATA[Liked: Has the IndieWeb become discourse again? - Marty McGuire]]></description>
    <link>https://srijan.ch/notes/2024-08-30-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-08-30-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 30 Aug 2024 02:45:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;martymcgui.re&#x2F;2024&#x2F;08&#x2F;29&#x2F;141602&#x2F;">Has the IndieWeb become discourse again? - Marty McGuire</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-08-30-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-08-29-001</title>
    <description><![CDATA[Liked: Fred Hebert: &amp;quot;For #Erlang folks, Rebar3 just got version 3.24.0…&amp;quot; - Hachyderm.io]]></description>
    <link>https://srijan.ch/notes/2024-08-29-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-08-29-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 29 Aug 2024 13:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;hachyderm.io&#x2F;&#x40;mononcqc&#x2F;113045337585732224">Fred Hebert: &amp;quot;For #Erlang folks, Rebar3 just got version 3.24.0…&amp;quot; - Hachyderm.io</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-08-29-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-08-26-002</title>
    <description><![CDATA[In reply to: JP: &amp;quot;I couldn&amp;#39;t figure out what was causing a bug in s…&amp;quot; - eigenmagic.net Yeah, happens a lot. I think your brain kept working on the problem in background for the week.]]></description>
    <link>https://srijan.ch/notes/2024-08-26-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-08-26-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 26 Aug 2024 07:40:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;eigenmagic.net&#x2F;&#x40;daedalus&#x2F;113027153681474716">JP: &amp;quot;I couldn&amp;#39;t figure out what was causing a bug in s…&amp;quot; - eigenmagic.net</a></p><p>Yeah, happens a lot. I think your brain kept working on the problem in background for the week.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-08-26-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-08-26-001</title>
    <description><![CDATA[Note to followers of my site using RSS feeds - I&#039;ve removed the microblog replies/likes etc kind of posts from the &quot;All Posts&quot; feed. I feel social interaction posts like that should not be part of the default feed of my website. There is always the notes feed that includes all microblog posts including reactions / interactions. A list of feeds available can be found here: https://srijan.ch/feed/ …]]></description>
    <link>https://srijan.ch/notes/2024-08-26-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-08-26-001</guid>
    <category><![CDATA[feeds]]></category>
    <category><![CDATA[indieweb]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 26 Aug 2024 07:25:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Note to followers of my site using RSS feeds - I've removed the microblog replies/likes etc kind of posts from the "All Posts" feed. I feel social interaction posts like that should not be part of the default feed of my website.</p>
<p>There is always the notes feed that includes all microblog posts including reactions / interactions.</p>
<p>A list of feeds available can be found here: <a href="https://srijan.ch/feed/">https://srijan.ch/feed/</a></p>
<p><a href="/tags/indieweb" class="p-category">#IndieWeb</a> <a href="/tags/feeds" class="p-category">#Feeds</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-08-26-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-08-22-002</title>
    <description><![CDATA[In reply to: Álvaro R. #FreeVenezuela 🇻🇪: &amp;quot;Chrome #emacs looks neat. Anyone using it? https:…&amp;quot; - Indieweb.Social Looks nice. Would be endgame if it supported editing in confluence.]]></description>
    <link>https://srijan.ch/notes/2024-08-22-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-08-22-002</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 22 Aug 2024 03:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;indieweb.social&#x2F;&#x40;xenodium&#x2F;113001177175972050">Álvaro R. #FreeVenezuela 🇻🇪: &amp;quot;Chrome #emacs looks neat. Anyone using it? https:…&amp;quot; - Indieweb.Social</a></p><p>Looks nice. Would be endgame if it supported editing in confluence.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-08-22-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-08-22-001</title>
    <description><![CDATA[I have been reading books mostly on Kindle for the last 10 years or so. Visited a nearby library today. I didn&#039;t realize I was missing the experience of browsing shelves, stumbling upon unexpected gems, getting lost in the recommendations section, and choosing something physical to checkout. Syndicated to: https://bsky.app/profile/did:plc:6koasqt256b6jwfrn74vwbg5/post/3l2br4drpjc2r]]></description>
    <link>https://srijan.ch/notes/2024-08-22-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-08-22-001</guid>
    <category><![CDATA[books]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 22 Aug 2024 03:20:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>I have been reading books mostly on Kindle for the last 10 years or so. Visited a nearby library today.</p>
<p>I didn't realize I was missing the experience of browsing shelves, stumbling upon unexpected gems, getting lost in the recommendations section, and choosing something physical to checkout.</p><p>Syndicated to:</p><ul><li><a href="https://bsky.app/profile/did:plc:6koasqt256b6jwfrn74vwbg5/post/3l2br4drpjc2r">https://bsky.app/profile/did:plc:6koasqt256b6jwfrn74vwbg5/post/3l2br4drpjc2r</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-08-22-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>Webmention rocks tests</title>
    <description><![CDATA[Webmention rocks tests Redoing these tests with indieConnector v2.1.0 Discovery Tests 1-22: PASS Discovery Test 23: FAIL Update Test 1: PASS Update Test 2: FAIL Delete Test 1: Not Tested Receiver Tests 1-2: PASS #IndieWeb #Webmention]]></description>
    <link>https://srijan.ch/notes/2024-08-20-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-08-20-001</guid>
    <category><![CDATA[indieweb]]></category>
    <category><![CDATA[webmention]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 20 Aug 2024 16:25:00 +0000</pubDate>
    <content:encoded><![CDATA[<h2>Webmention rocks tests</h2><p>Redoing these tests with <a href="https://github.com/mauricerenck/indieConnector">indieConnector</a> v2.1.0</p>
<p>Discovery Tests 1-22: PASS<br />
Discovery Test 23: FAIL<br />
Update Test 1: PASS<br />
Update Test 2: FAIL<br />
Delete Test 1: Not Tested<br />
Receiver Tests 1-2: PASS</p>
<p><a href="/tags/indieweb" class="p-category">#IndieWeb</a> <a href="/tags/webmention" class="p-category">#Webmention</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-08-20-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-06-21-001</title>
    <description><![CDATA[Liked: laotang: &amp;amp;quot;I wrote a little set of functions to use #Dired t…&amp;amp;quot; - Emacs.ch]]></description>
    <link>https://srijan.ch/notes/2024-06-21-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-06-21-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 21 Jun 2024 11:40:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;emacs.ch&#x2F;&#x40;laotang&#x2F;112620023049801841">laotang: &amp;amp;quot;I wrote a little set of functions to use #Dired t…&amp;amp;quot; - Emacs.ch</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-06-21-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-06-09-001</title>
    <description><![CDATA[Liked: Marcin Borkowski: 2024-06-08 Managing Firefox tabs from command line with brotab]]></description>
    <link>https://srijan.ch/notes/2024-06-09-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-06-09-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Sun, 09 Jun 2024 19:14:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;mbork.pl&#x2F;2024-06-08_Managing_Firefox_tabs_from_command_line_with_brotab">Marcin Borkowski: 2024-06-08 Managing Firefox tabs from command line with brotab</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-06-09-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-05-17-001</title>
    <description><![CDATA[In reply to: can you share the sample library_inventory.erl ? · Issue #3 · srijan/rebar3_dialyzer_html · GitHub Yes, it&#039;s here: https://github.com/srijan/library_sample]]></description>
    <link>https://srijan.ch/notes/2024-05-17-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-05-17-001</guid>
    <category><![CDATA[issues]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 17 May 2024 15:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;github.com&#x2F;srijan&#x2F;rebar3_dialyzer_html&#x2F;issues&#x2F;3">can you share the sample library_inventory.erl ? · Issue #3 · srijan/rebar3_dialyzer_html · GitHub</a></p><p>Yes, it's here: <a href="https://github.com/srijan/library_sample">https://github.com/srijan/library_sample</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-05-17-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-05-14-002</title>
    <description><![CDATA[In reply to: https://bsd.network/@lattera/112441352564596038 One thing I sometimes do when facing this is run sudo strace -p &lt;pid&gt; to see what system calls it is making. Is it even doing something or stuck.]]></description>
    <link>https://srijan.ch/notes/2024-05-14-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-05-14-002</guid>
    <category><![CDATA[linux]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 14 May 2024 20:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;bsd.network&#x2F;&#x40;lattera&#x2F;112441352564596038">https://bsd.network/@lattera/112441352564596038</a></p><p>One thing I sometimes do when facing this is run <code>sudo strace -p &lt;pid&gt;</code> to see what system calls it is making. Is it even doing something or stuck.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-05-14-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-05-14-001</title>
    <description><![CDATA[Liked: https://snarfed.org/2024-05-09_53013]]></description>
    <link>https://srijan.ch/notes/2024-05-14-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-05-14-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Tue, 14 May 2024 03:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;snarfed.org&#x2F;2024-05-09_53013">https://snarfed.org/2024-05-09_53013</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-05-14-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-04-29-001</title>
    <description><![CDATA[Using sysrq on my laptop - documenting mostly for myself. My laptop has started freezing sometimes, not sure why. Usually, I can just force power off using the power button and start it again, but it has happened twice that I had to recover the system by booting via a USB drive, chrooting, and recovering the damaged files using fsck or pacman magic. The linux kernel has: a ‘magical’ key combo you …]]></description>
    <link>https://srijan.ch/notes/2024-04-29-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-04-29-001</guid>
    <category><![CDATA[linux]]></category>
    <category><![CDATA[devops]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Mon, 29 Apr 2024 03:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Using sysrq on my laptop - documenting mostly for myself.</p>
<p>My laptop has started freezing sometimes, not sure why. Usually, I can just force power off using the power button and start it again, but it has happened twice that I had to recover the system by booting via a USB drive, chrooting, and recovering the damaged files using fsck or pacman magic.</p>
<p>The linux kernel has:</p>
<blockquote>
<p>a ‘magical’ key combo you can hit which the kernel will respond to regardless of whatever else it is doing, unless it is completely locked up.</p>
</blockquote>
<p>(More details on <a href="https://wiki.archlinux.org/title/keyboard_shortcuts#Kernel_(SysRq)">archwiki</a> and <a href="https://docs.kernel.org/admin-guide/sysrq.html">kernel doc</a>)</p>
<p>To enable, I did:</p>
<pre><code>echo "kernel.sysrq = 244" | sudo tee /etc/sysctl.d/sysreq.conf
sudo sysctl --system</code></pre>
<p>However, to trigger this on my laptop, I was not able to find the right key combination for SysRq. I was able to make it work using an external keyboard that has a PrintScreen binding on a layer, by using the following:</p>
<p>Press Alt and keep it pressed for the whole sequence: PrintScreen - R - E - I - S - U - B</p>
<p>Currently, PrintScreen on my external keyboard is bound to Caps lock long press + Up arrow.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-04-29-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-04-26-001</title>
    <description><![CDATA[Liked: Amy :emacs:: &amp;amp;quot;I&amp;amp;#39;m going to go out on a limb and say that you ar…&amp;amp;quot; - Emacs.ch]]></description>
    <link>https://srijan.ch/notes/2024-04-26-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-04-26-001</guid>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 26 Apr 2024 09:59:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;emacs.ch&#x2F;&#x40;grinn&#x2F;112240900081287712">Amy :emacs:: &amp;amp;quot;I&amp;amp;#39;m going to go out on a limb and say that you ar…&amp;amp;quot; - Emacs.ch</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-04-26-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-03-01-001</title>
    <description><![CDATA[Liked: [Michał Sapka&amp;#39;s website] Emacs: watching YouTube with Yeetube and mpv Yeetube is an Emacs wrapper around searching and viewing videos on Youtube.]]></description>
    <link>https://srijan.ch/notes/2024-03-01-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-03-01-001</guid>
    <category><![CDATA[emacs]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 01 Mar 2024 04:00:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;michal.sapka.me&#x2F;emacs&#x2F;watching-youtube-with-emacs&#x2F;">[Michał Sapka&amp;#39;s website] Emacs: watching YouTube with Yeetube and mpv</a></p><p>Yeetube is an Emacs wrapper around searching and viewing videos on Youtube.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-03-01-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-02-28-002</title>
    <description><![CDATA[In reply to: mkj: &amp;quot;Actually, more important than backups is restores…&amp;quot; - Mastodon I reviewed this recently, and found that I needed at least one device where I was logged in to 1password to be able to restore everything. So, I&#039;ve started keeping a paper key with the 1password secret key so that I can restore it as well. One addition I wanted to do was to have some kind of manual …]]></description>
    <link>https://srijan.ch/notes/2024-02-28-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-02-28-002</guid>
    <category><![CDATA[1password]]></category>
    <category><![CDATA[backups]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 28 Feb 2024 13:15:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;social.mkj.earth&#x2F;&#x40;mkj&#x2F;112009142552965189">mkj: &amp;quot;Actually, more important than backups is restores…&amp;quot; - Mastodon</a></p><p>I reviewed this recently, and found that I needed at least one device where I was logged in to 1password to be able to restore everything. So, I've started keeping a paper key with the 1password secret key so that I can restore it as well.<br />
One addition I wanted to do was to have some kind of manual encryption in the paper key so that I'm secure as well.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-02-28-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-02-28-001</title>
    <description><![CDATA[In reply to: Anyone know where I can find all the valid values for ActiveState, SubState etc in systemd? According to https://www.freedesktop.org/software/systemd/man/latest/systemctl.html , the possible states are not constant and new systemd releases can both add and remove values. This command can be used to display the current set of possible values: systemctl --state=help]]></description>
    <link>https://srijan.ch/notes/2024-02-28-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-02-28-001</guid>
    <category><![CDATA[systemd]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Wed, 28 Feb 2024 12:55:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;hachyderm.io&#x2F;&#x40;lpil&#x2F;112009064499074299">Anyone know where I can find all the valid values for ActiveState, SubState etc in systemd?</a></p><p>According to <a href="https://www.freedesktop.org/software/systemd/man/latest/systemctl.html">https://www.freedesktop.org/software/systemd/man/latest/systemctl.html</a> , the possible states are not constant and new systemd releases can both add and remove values. This command can be used to display the current set of possible values:</p>
<pre><code>systemctl --state=help</code></pre>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-02-28-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2024-01-05-001</title>
    <description><![CDATA[Liked: Using Erlang&#039;s logger from escript | Roger&#039;s Blog]]></description>
    <link>https://srijan.ch/notes/2024-01-05-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2024-01-05-001</guid>
    <category><![CDATA[erlang]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 05 Jan 2024 17:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;blog.differentpla.net&#x2F;blog&#x2F;2024&#x2F;01&#x2F;05&#x2F;erlang-logger-escript&#x2F;">Using Erlang&#039;s logger from escript | Roger&#039;s Blog</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2024-01-05-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2023-12-08-001</title>
    <description><![CDATA[Liked: Working with org-mode and confluence I&#039;ve not faced this issue, but good to know.]]></description>
    <link>https://srijan.ch/notes/2023-12-08-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2023-12-08-001</guid>
    <category><![CDATA[emacs]]></category>
    <category><![CDATA[orgmode]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 08 Dec 2023 04:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Liked: <a href="https&#x3A;&#x2F;&#x2F;strangeweb.page&#x2F;&#x40;jochie&#x2F;111542252396070415">Working with org-mode and confluence</a></p><p>I've not faced this issue, but good to know.</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2023-12-08-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2023-12-01-001</title>
    <description><![CDATA[In reply to: Missing exit signals for linked processes I can think of two reasons: You&#039;re not setting trap_exit and the process is exiting with normal reason. But it seems you&#039;re setting this. The exit message is somehow getting &quot;eaten&quot; by some other receive -&gt; _ in your gen_server process. Also, I don&#039;t think live reload should affect this. It should work across reloads. Can you share the …]]></description>
    <link>https://srijan.ch/notes/2023-12-01-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2023-12-01-001</guid>
    <category><![CDATA[erlang]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Fri, 01 Dec 2023 07:25:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;tech.lgbt&#x2F;&#x40;schnittchen&#x2F;111493895142717589">Missing exit signals for linked processes</a></p><p>I can think of two reasons:</p>
<ol>
<li>You're not setting trap_exit and the process is exiting with <code>normal</code> reason. But it seems you're setting this.</li>
<li>The exit message is somehow getting "eaten" by some other <code>receive -&gt; _</code> in your gen_server process.</li>
</ol>
<p>Also, I don't think live reload should affect this. It should work across reloads.<br />
Can you share the full code of your gen_server?</p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2023-12-01-001#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2023-11-30-002</title>
    <description><![CDATA[In reply to: [K4] 4.0 Compatibility · Issue #174 · fabianmichael/kirby-markdown-field · GitHub Just updated to 3.0.0-alpha.2 - it works for me as well without issues. Thanks 👍. Syndicated to: https://github.com/fabianmichael/kirby-markdown-field/issues/174#issuecomment-1834343827]]></description>
    <link>https://srijan.ch/notes/2023-11-30-002</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2023-11-30-002</guid>
    <category><![CDATA[kirby]]></category>
    <category><![CDATA[issues]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 30 Nov 2023 18:35:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>In reply to: <a href="https&#x3A;&#x2F;&#x2F;github.com&#x2F;fabianmichael&#x2F;kirby-markdown-field&#x2F;issues&#x2F;174">[K4] 4.0 Compatibility · Issue #174 · fabianmichael/kirby-markdown-field · GitHub</a></p><p>Just updated to <code>3.0.0-alpha.2</code> - it works for me as well without issues. Thanks 👍.</p><p>Syndicated to:</p><ul><li><a href="https://github.com/fabianmichael/kirby-markdown-field/issues/174#issuecomment-1834343827">https://github.com/fabianmichael/kirby-markdown-field/issues/174#issuecomment-1834343827</a></li></ul>]]></content:encoded>
    <comments>https://srijan.ch/notes/2023-11-30-002#comments</comments>
    <slash:comments></slash:comments>
  </item><item>
    <title>2023-11-30-001</title>
    <description><![CDATA[Found Samuel&#039;s nice post on capturing data for org via email. This is very close to what I was looking for to be able to do GTD capture on-the-go either from phone apps like Braintoss or from any email app. One addition I would like to make is handling attachments in the email by downloading them and attaching to the org entry. This would be useful for voice notes from Braintoss - it does …]]></description>
    <link>https://srijan.ch/notes/2023-11-30-001</link>
    <guid isPermaLink="false">tag:srijan.ch:/notes/2023-11-30-001</guid>
    <category><![CDATA[emacs]]></category>
    <category><![CDATA[gtd]]></category>
    <category><![CDATA[orgmode]]></category>
    <dc:creator>Srijan Choudhary</dc:creator>
    <pubDate>Thu, 30 Nov 2023 18:10:00 +0000</pubDate>
    <content:encoded><![CDATA[<p>Found Samuel's nice post on <a href="http://web.archive.org/web/20240101143355/https://samuelwflint.com/posts/2017/03/13/capturing-data-for-org-via-email/">capturing data for org via email</a>.</p>
<p>This is very close to what I was looking for to be able to do GTD capture on-the-go either from phone apps like <a href="https://braintoss.com/">Braintoss</a> or from any email app.</p>
<p>One addition I would like to make is handling attachments in the email by downloading them and attaching to the org entry.<br />
This would be useful for voice notes from Braintoss - it does transcription of the audio and adds it to the email body, but sometimes it doesn't work so well and I have to fall back to listening to the audio. It will also be useful for forwarded emails containing attachments.</p>
<p><a class="p-category" href="https://srijan.ch/tags/gtd">#GTD</a> <a class="p-category" href="https://srijan.ch/tags/emacs">#Emacs</a> <a class="p-category" href="https://srijan.ch/tags/orgmode">#OrgMode</a></p>]]></content:encoded>
    <comments>https://srijan.ch/notes/2023-11-30-001#comments</comments>
    <slash:comments></slash:comments>
  </item></channel>
</rss>
