> Third-party GUIs can be nice, but they generally provide very little value over a TUI

What value does this messy method to reimplement GUI bring?

If I was only running neovim, this wouldn't make much sense. However, I can use this method for any command line application. Since it's essentially just re-using my existing terminal, I can also re-use as much of my terminal emulator configuration as I'd like. I can also rely on the known performance characteristics of my terminal emulator. In particular, a number of the Neovim GUIs are energy hogs (either due to some unoptimized thing that uses a lot of CPU or the specific method that is used for rendering on the GPU).

The other nice thing is that when I want to run Neovim, I start an app called Neovim. Not FNvim or Neovide or glrnvim or any of those other things. Neovim. It's a closer match to my intent and I don't have to try to remember some weird app name when I just want to edit code.

> I can use this method for any command line application

Which apps do you use actually it for?

> when I want to run Neovim, I start an app called Neovim

That's what aliases are for (or you could rename the binary?)! Or you could just bind it to shortcut+E for Edit and forget the name of the editor as you'd never type it The last trick could also solve the Cmd+Tab issue as you could set it up to open the in-terminal-editor, and it'll always be faster vs tabbing

P.S.

By the way, do you know the app https://github.com/sveinbjornt/Platypus that can generate app bundles on a Mac?

> Which apps do you use actually it for?

neovim, mutt, tig, weechat

> That's what aliases are for (or you could rename the binary?)!

Unfortunately, it's not that simple on macOS for app bundles. The human readable name of the app bundle really doesn't matter that much to the operating system -- it's the contents of Info.plist that matter. In order to have a separate app that can be Cmd+Tab'd to, you have to have a separate app bundle, separate app bundle identifier, etc. There's really not a way around it on macOS that I've seen.

(And to be clear, aliases do work on the command line. I'm talking specifically about GUI apps - which is my primary method of separating my different activities. Terminal emulator tabs are not good enough.)

This also doesn't solve the performance problems with any of the various GUI applications, nor does it solve my problem for other applications that I want to run.

> By the way, do you know the app https://github.com/sveinbjornt/Platypus that can generate app bundles on a Mac?

I do! I tried this route first, but it falls apart when you start a GUI application from the script that you supply to platypus. If your script is e.g. `wezterm start`, it'll just start up another instance of a wezterm-branded GUI app in addition to the wrapper app that Platypus spits out.