Even though I use it only about 5% of the time I spend on programming-related tasks, I have been very happy over the years to pay for upgrades to the latest major version of BBEdit.
BBEdit is an incredible text editor. If you are working with text on macOS, it's hard to beat. But, I've struggled to use it for even basic programming work. It's just not built for that specific use case so much as general text manipulation.
For core programming work I found Vim/Emacs superior to BBEdit, and ultimately settled on Emacs because of Magit[+] and my proclivity for Lisp/Scheme. I switch to VS Code when I need/want to use its JS debugger combined with its "cadillac experience" re: TypeScript and JavaScript.
Even so, depending on the use case, giving BBEdit a shot is probably worth the download and time spent — it's a great dev tool and I've never regretted paying for the license and upgrades. For example, BBEdit has been invaluable to me in recent years when trying to sort out broken webpack builds and I needed to efficiently hunt through multi-MB .js output files.
Well... Nova was getting beta-testers when I was searching for editors. I thought Nova would be great, so I decided to beta-test right away.
> I must've missed something, I've owned every single product Panic has put out and never got any marketing emails about it :(.
I'm pretty sure Panic didn't send marketing emails for a closed beta test; it was a little buggy back then when it first started.
> How's it been?
Well, it's Panic; so you can trust the app quality. I stopped using it because the autocomplete for JS wasn't really great as it lacked a proper LSP client at the moment; there were tools (extension APIs) to trivially connect Nova to a LSP server, but I didn't have enough time to play around with writing extensions.
I think it now gained out-of-the-box LSP support; would be sufficient for now.
Edit: I tried it again, and out-of-the-box LSP support for JS still doesn't look like it exists; jump-to-definition is not working :-(
Edit: Python looks like LSP is working. This is a simple demo GIF: (warning - very big(23MB).) https://s5.gifyu.com/images/nova-python-demo.md.gif
There is some more info here: https://novadocs.panic.com
LSP support extension documentation is here: https://novadocs.panic.com/api-reference/language-client/