<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>rockorager.dev</title>
		<link>https://rockorager.dev/</link>
		<description>Recent content on rockorager.dev</description>
		<generator>Hugo</generator>
		<language>en-us</language>
		
		
		
		
			<lastBuildDate>Tue, 04 Aug 2026 00:00:00 +0000</lastBuildDate>
		
			<atom:link href="https://rockorager.dev/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Private Mode for Terminal Visibility Reports</title>
				<link>https://rockorager.dev/misc/visibility-reports/</link>
				<pubDate>Sat, 25 Jul 2026 00:00:00 +0000</pubDate>
				<guid>https://rockorager.dev/misc/visibility-reports/</guid>
				<description>&lt;p&gt;Terminal applications may perform expensive rendering work even when their&#xA;output cannot be seen. Focus reports do not solve this problem: an unfocused&#xA;terminal may remain visible, while a focused terminal may be occluded,&#xA;suspended, or displayed in a background tab.&lt;/p&gt;&#xA;&lt;p&gt;This specification defines a new DEC Private Mode that enables terminal&#xA;visibility reports:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;2033&lt;/code&gt; - Enable or disable terminal visibility reports&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Visibility is an advisory, conservative state. It combines the terminal&amp;rsquo;s own&#xA;knowledge of its tabs, panes, and views with visibility information provided by&#xA;the host platform. Applications can use the report to reduce expensive visual&#xA;updates while their terminal view is not visible.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Private Mode for Automatic Paste Notifications</title>
				<link>https://rockorager.dev/misc/bracketed-paste-mime/</link>
				<pubDate>Tue, 04 Nov 2025 00:00:00 +0000</pubDate>
				<guid>https://rockorager.dev/misc/bracketed-paste-mime/</guid>
				<description>&lt;p&gt;Terminal applications commonly use bracketed paste mode (private mode 2004) to&#xA;distinguish between typed input and pasted content. This prevents accidental&#xA;command execution and allows special handling of multi-line pastes. However,&#xA;bracketed paste only provides plain text data and no MIME type information.&lt;/p&gt;&#xA;&lt;p&gt;The &lt;a href=&#34;https://sw.kovidgoyal.net/kitty/clipboard/&#34;&gt;Kitty clipboard protocol&lt;/a&gt;&#xA;defines a request-response mechanism for reading and writing clipboard data with&#xA;full MIME type support. However, this requires applications to explicitly&#xA;request clipboard data, which doesn&amp;rsquo;t integrate naturally with paste events.&lt;/p&gt;</description>
			</item>
			<item>
				<title>OSC 9;4 - Progress Bar Sequence</title>
				<link>https://rockorager.dev/misc/osc-9-4-progress-bars/</link>
				<pubDate>Mon, 27 Oct 2025 00:00:00 +0000</pubDate>
				<guid>https://rockorager.dev/misc/osc-9-4-progress-bars/</guid>
				<description>&lt;aside style=&#34;font-style: italic; color: var(--text-muted); margin-bottom: 2rem;&#34;&gt;&#xA;This document is provided for ease of visibility. The canonical specification is maintained by ConEmu at &lt;a href=&#34;https://conemu.github.io/en/AnsiEscapeCodes.html#ConEmu_specific_OSC&#34;&gt;https://conemu.github.io/en/AnsiEscapeCodes.html&lt;/a&gt;&#xA;&lt;/aside&gt;&#xA;&lt;p&gt;The OSC 9;4 sequence is a terminal escape sequence originally created by ConEmu for displaying progress bars. It has since been adopted by other terminal emulators including Ghostty and Windows Terminal.&lt;/p&gt;&#xA;&lt;p&gt;In supporting terminals, this sequence can display a native GUI progress bar that shows operation progress, completion state, and errors.&lt;/p&gt;</description>
			</item>
			<item>
				<title>lsr: ls but with io_uring</title>
				<link>https://rockorager.dev/posts/lsr-ls-but-with-io-uring/</link>
				<pubDate>Tue, 06 May 2025 11:15:50 -0500</pubDate>
				<guid>https://rockorager.dev/posts/lsr-ls-but-with-io-uring/</guid>
				<description>&lt;p&gt;As an excercise in syscall golf, I wrote an implementation of &lt;code&gt;ls(1)&lt;/code&gt; which uses&#xA;my IO library, &lt;a href=&#34;https://github.com/rockorager/ourio&#34;&gt;ourio&lt;/a&gt; to perform as much&#xA;of the IO as possible. What I ended up with is something that is faster than any&#xA;version or alternative to &lt;code&gt;ls&lt;/code&gt; I tested, and also performs an &lt;strong&gt;order of&#xA;magnitude fewer syscalls&lt;/strong&gt;. I&amp;rsquo;m calling it&#xA;&lt;a href=&#34;https://tangled.sh/@rockorager.dev/lsr&#34;&gt;lsr&lt;/a&gt;. Let&amp;rsquo;s start with the benchmarks,&#xA;then we&amp;rsquo;ll see how we got there.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;screenshot.webp&#34; alt=&#34;screenshot&#34;&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Private Mode for In-Band Window Resize Notifications</title>
				<link>https://rockorager.dev/misc/in-band-resize-notifications/</link>
				<pubDate>Fri, 28 Jun 2024 00:00:00 +0000</pubDate>
				<guid>https://rockorager.dev/misc/in-band-resize-notifications/</guid>
				<description>&lt;aside style=&#34;font-style: italic; color: var(--text-muted); margin-bottom: 2rem;&#34;&gt;&#xA;Originally published at &lt;a href=&#34;https://gist.github.com/rockorager/e695fb2924d36b2bcf1fff4a3704bd83&#34;&gt;GitHub Gist&lt;/a&gt;&#xA;&lt;/aside&gt;&#xA;&lt;p&gt;Terminal emulators typically receive window resize events by installing a signal&#xA;handler for the SIGWINCH signal. Handling of these signals can create challenges&#xA;due to their inherently racy properties. Resize events must be synchronized with&#xA;other application state in a safe manner.&lt;/p&gt;&#xA;&lt;p&gt;Standard control sequences exist to query the current terminal size from the&#xA;terminal and receive an in-band control sequence with the window size. However,&#xA;this system requires polling - which is not ideal. Usually, &lt;code&gt;SIGWINCH&lt;/code&gt; handling&#xA;is preferred.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
