Better Tabs Kitty

Some time ago, I started using kitty terminal emulator. I used Alacritty for a long time. But Alacritty is meant to be minimalistic in a sense it does not even have concept of having different tabs.

The suggestion/solution is to use tmux (or like) to manage different shell instances.

And I did that.

And learnt a great deal about tmux in the process.

I don’t regret it one bit.

But sometimes, tmux gets in a way of how terminal based programs look (and behave) when executed inside tmux.

Continue Reading »

Better Icon for Kitty

Official instructions are here but it did not work for me.

I did not understand Drag kitty.icns onto the application icon in the kitty info pane part. I tried dragging the icon, but could not make it work.

I gave up. I can live with the default icon.

But then I came across the following instructions here.

Clear instructions that I can execute from inside kitty ๐Ÿ˜„

cp /tmp/kitty.icns /Applications/kitty.app/Contents/Resources/kitty.icns
rm /var/folders/*/*/*/com.apple.dock.iconcache
touch /Applications/kitty.app
killall Dock && killall Finder 

FWIW, I am using this icon

Import data from Dockerized Postgres to Elasticsearch

After setting up Elasticsearch locally I need to seed it with some dummy data.

I came across this article that explain all the steps in details, including populating the postgres with dummy data to begin with.

But I could not use it as-is because I use dockerized postgres.

I also ran into problem with https and elasticdump

I wrote about the problems and solutions on my other blog. Read it here

Setup Elastic Search Locally via Docker

This is the first time I’m setting up elasticsearch

While one can set it up natively via brew I have learnt longtime ago to use docker for complex, server type applications.

Elastic search’s official document also suggests the docker in their Getting Started.

I’ve made summary of the steps on my PKM. Search elastic on the site, since URLs are likely to change.

Important thing : Create a local user (I called it dev) and make it superuser

Continue Reading »

Espanso With Helix Editor

I wrote about espanso in past here and here, and I’ve been using it ever since.

Since helix is (for now) terminal-only editor, my espanso shortcuts work very well with it.

e.g. I can type :smile: and get ๐Ÿ˜„, and type thru and get through (Automatic correct the usually misspelled words ๐ŸŽ‰)


Espanso works well with neovim-in-terminal (and Emacs), but I use Neovide GUI, where they don’t work.

Grammar Check with Helix Editor

One of the thing that I thought was missing from Helix editor was integration with a decent grammar checker tool. On Emacs and neovim, I use ltex-ls.

To my surprise, it works well (I’m using it already) with Helix.

It is probably not well documented though. I had to look through the github issues, but I did come across the solution.

It is straightforward though.

  1. Download the latest release of ltex-ls from here. I preferred the one which comes with jre. Size increases, but it is self-contained. One can choose smaller download if jre is already installed in your setup.
  2. Extract it somewhere (e.g., ~/ltex-ls) then create a symbolic link to bin/ltex-ls from somewhere on your path (e.g. /usr/local/bin/) like this : sudo ln -s ~/ltex-ls/bin/ltex-ls /usr/local/bin/ltex-ls
  3. Add the following to languages.toml file:
[[language]]
name = "markdown"
language-servers = [ "ltex-ls" ]
file-types = ["md"]
scope = "source.markdown"
roots = []
  1. Restart Helix.
  2. Enjoy ๐ŸŽ‰

Helix Editor

I came across Helix Editor on youtube when watching about neovim related video.

It is vim like editor. That is, a modal editor.

But it is different in one fundamental way, it terms of how commands work.

In (Neo)vim, it is action followed by object. So delete word becomes dw But in Helix it is other way round. Object followed by Action. So it is word delete hence wd

It takes a bit getting used to.

Continue Reading »

guifont in Spacevim

In my tour of Neovim starter kits, I landed on SpaceVim

I started my Emacs journey with Spacemacs, and used it for couple of years before settling on Doom Emacs.

Spacemacs inspired SpaceVim.

I had liked the mnenomic keybindings in Spacemacs (and now in SpaceVim)

But Spacevim is different from how other starter kits handle configuration.

Last week, I tried DoomVim (inspired by Doom Emacs) and NVChad (and “Neovim from scratch” by same folks as LunarVim) They all had similar configuration, based on lua

Continue Reading »

Floating Terminal in Neovim

Today I discovered that I can open a nice floating Terminal in the middle of the screen by pressing Ctrl+\

Thanks to toggleterm plugin.

Earlier I used to use :terminal command, which would open a terminal in another tab. I had to switch tabs to use the terminal and going back to editing the files.

With toggleterm I press Ctrl+\, do my terminal tasks, and toggle it again to send it the background. (At least that is what I think happens, since next time I summon it, I can continue where I left off, not a new shell.)

Continue Reading »

Emoji Completion for Neovim

I’ve started watching this YouTube playlist Neovim from scratch

It is a great learning resource.

I use a program called espanso for hotkey expansion across the OS, that has emoji completion option. But it does not work with Vim. Maybe because of modal editing ๐Ÿคท

While it took me some time to figure out, setting it up is quite straight forward.

  1. Install the plugin. Add the following ‘~/.config/nvim/lua/user/plugins.lua’ file use "hrsh7th/cmp-emoji" -- Markdown emoji (Search for -- cmp plugins in the file)

Continue Reading »