Creating panels

I’m discovering Nova, it is an amazing editor I love it! But there is 1 extension absolutely amazing which I love for Sublime Text and which I don’t find any equivalent for nova: RESTer.
So, I thought about it, and I decided to make myself an alternative. I been to the doc and discovered the langage and the APIs of Nova, it’s great good job! So easy to create extensions. But there is 1 thing I don’t understand how to do:

The goal of my extension is to write HTTP requests in plain text in Nova, send them through an command option, and display the result (HTTP headers & body of the response).
I already found how to do all that, it was easy but, I want to offer the possibility to show the result aside the the requests, by splitting the editor view.
But I don’t see how I can split the view and create a secondary panel. I’m open to others suggestions if you got some ideas for the interface.

I realize my message is not very clear, here a short video where I try to make it a bit more clear:

Thank you very much!

Unfortunately, Nova’s extension API does not currently expose a way to show a second editor split beside the current editor, nor is it able to open untitled documents that do not yet exist on disk.

Extensions can, however, open existing files on disk using the workspace.openFile() API, but this won’t do quite what you want, I think.

We can consider this for a future update, however. Thank you for your request!


Thank you very much for your reply. It been more than a year since we discussed so I guess Nova continued to improve extensions and APIs. Do you know if now, the API expose a way to :

  1. Show a 2nd editor in a split view
  2. Can create and fill a new non-saved buffer (If not, I can save HTTP response as temporary files)

Nova is amazing :star_struck:, but I really need to have this kind of feature (HTTP Requests in the editor, showed in a secondary panel) before I can really use as primary editor.

I’ll add that I’ve gotten a similar request to have reports open in a split pane when running Tasks:

So something like what @zlitus is requesting would allow me to offer a nicer solution for displaying the results of running Cargo commands (build, run, test, etc.).

1 Like
  1. Can create and fill a new non-saved buffer (If not, I can save HTTP response as temporary files)

This is a far better articulated version of the feature request I made in this thread Opening 'virtual' LSP definitions for showing ‘virtual’ file definitions returned by a LSP.