"Life is all about sharing. If we are good at something, pass it on." - Mary Berry

nnn: wcswidth returns different values for same Unicode code point between macOS and Linux


When attempting to integrate nnn with Helix, I encountered an interesting issue that resulted in duplicate first characters in the filename:

nnn duplicate first character in the filename on macOS

What’s interesting is that this issue doesn’t occur on Linux:

nnn on Linux

I’ve spent several days troubleshooting this problem but haven’t been able to identify the root cause. The only solution I could come up with is a workaround, and I must admit, I’m still not entirely satisfied with it.


File tree workaround for Helix


nnn as a file tree workaround for Helix

Many people have expressed that the absence of a file tree is what prevents them from using Helix.

If, for some reasons, you cannot use the PR #5768, here’s a workaround to create a file tree using WezTerm and nnn

The idea here is to implement a custom opener in nnn. When navigating to a file, it will be opened using hx in the right pane. When opening another file, it checks if there is a running instance of hx in the right pane and sends the :open $1\r command to that pane.