Clean a huge tar file in place - without extracting the contents

This is one of those options you don’t know exists till you need it (or sometimes you don’t know even when you need it because you were too afraid to ask lazy to search)

Continue Reading »

โ†’ macshot: Screen Capture tool for macOS โˆž

When I started using mac almost a decade ago, I used the built-in screen capture shortcut. It works very well.

Initially I only knew about capturing the entire screen. I would then crop it to the desired area.

Then I learnt that I can select the screen area at the time of capture itself.

Neat!

If I want to add some markup - I would do that separately, after the image is captured.

Then I came across Zappy.

Zappy is more user friendly than the built-in screenshot tool.

When I used Linux (on apple hardware) for several months, I switched to Flameshot (Cause DHH used it in Omakube ๐Ÿคทโ€โ™‚๏ธ)

When I got my current macbook, I installed Flameshot (To make sure that the tools I use are platform agnostic, as far as possible)

But Flameshot on macOS seems less stable.

Sometimes it behaves in a manner that can not be explained away.

So back to my trusty Zappy.

Only downside of Zappy is that one can not use it without signing-in to Zapier.

That makes no sense.

Why does screen capture tool force login?

Then I came across macshot via mastodon.

I decided to give it a try, and I was blown away.

It is leaps and bounds better than other tools I have used so far.

Not only it has all those feature, but it has other feature and works quite well (Using for <24 hours, still…)

Only downside : it is macOS-specific app.

I’ll use it for sometime, but I have a feeling it is going to replace Zappy.

I already logged out, making Zappy useless, and uninstalled Flameshot

No more going back

Opencode: Second Impression

Last time I wrote about my first experience using opencode, I was using (and learning) opencode CLI

This time, I switched to Zed editor.

Zed is so amazing that it can work with “Agents” installed on your machine (or it can install them for you) via ACP - Agent Control Protocol

It recognized that opencode was already installed on the machine, and show it in the drop down.

I decided to take it for spin.

Continue Reading »

Opencode: First Impressions

Everyone is praising opencode - It is like Claude Code, or Codex (or Gemini CLI) except it is not tied to a corporation. It works with models from all of them, and other models, not from these corporations.

I had installed opencode long time ago, but never used it.

Today, I decided to give it a go.

As I was exploring, I came across /editor command. 1 I had expected /editor command to open a file in an editor

Continue Reading »

Finally got Auto Complete working in Helix

I have been using Helix as an editor, not as an IDE. One of the USP of Helix is LSP support out of the box

Recently, I’ve been programming in rust.

Helix is also written in rust.

So I think it is natural that they would support rust LSP rust-analyzer and it does.

But I wasn’t getting auto completions ๐Ÿ˜ž

Continue Reading »

Jujutsu: Working With Git

After reading (not done) Steve’s Tutorial and Official doc 1 (which mentions Steve’s tutorial anyway) I decided that actually using it on real projects is the way to go.

Here is the workflow (after a few 2 iterations 3) that works

  1. jj new : Declare your intention to start new work.
  2. jj describe : Intention alone is not enough ๐Ÿ˜€. What will you be working on ?
  3. Now work. Make changes.
  4. Time to make our “change” available in git. Get the change id from jj log
  5. jj bookmark set main -r <change_id_from_previous_step>
  6. jj bookmark track main@origin (or appropriate branch on origin). You’ll need this step only once.
  7. jj squash -i : Select the files that need to be “added” to the commit
  8. jj git push --allow-new -b main --remote origin 4 Done!

Finally, I must say that I’m blown away (and humbled) by the fact that “The Steve Klabnik” who wrote the Jujutsu tutorial and the Rust book, helped me 5 (Near real time responses) with my problem.

Continue Reading »

Jujutsu : git compatible but better DVCS

I learnt about Jujutsu from the “Rust in Production” podcast episode about Git Butler

One of the attractive quality about it is that it works with existing git repos 1

First superpower : Start using it with existing git repo locally cloned using jj git init --git-repo=. 2

This creates a .jj folder in the existing repo. .jj and .git co-exist peacefully

But I didn’t know that.

So for the first project to try Jujutsu, I jj git cloned my existing repo in a new folder, so that I have “old” git repo as well as jujutsu repo.

Continue Reading »

Waydroid

I wanted to use Openvibe - an app that allows having a single timeline across multiple social media networks like mastodon and bluesky. It also supports cross posting (and more)

But currently it only has mobile apps (for both iOS and Android)

While the Desktop app is “in the works” - no specifics are provided.

I do not use mobile apps if at all possible. (Except for podcast and messeging apps to keep in touch with Family - on the go. If I’m at my desk, I use the Desktop version)

Continue Reading »

How to Turn Off Inlay Hints in VS Code

I initially tried to turn off the type hints via rust-analyzer extension setting, but that did not work ๐Ÿ˜ž

Turns out it is very complicated (at least for me) documentation did not help ๐Ÿ˜ž

Here is what worked for me. Thanks to SO 1

  • Open Command Palette Cmd+Shift+P
  • Select Preferences: Open User Settings (JSON) from the drop down
  • Add the following to existing settings
    • Or create new one, if empty. You may need to enclose it within { } though.
	"editor.inlayHints.enabled": "offUnlessPressed"

This will turn off the type hint inlays.

Continue Reading »

Better History Search

No, I’m not talking about Atuin. 1

I improved my search experience with just one tool - fzf

As you might know, fzf is a general purpose fuzzy finder. 2

But adding just source <(fzf --zsh) at the end of ~/.zshrc (and/or running it in your existing session) improves your Ctrl+r experience.

See the demo yourself.


  1. I must confess that I’m tempted multiple times. But I think their USP is history sync, which is not my use case right now. For now, I’m happy with my current solution. ↩︎

Continue Reading »