Feature Request: Use Monaco for Ratel and Dgraph Cloud

Experience Report for Feature Request

What you wanted to do

I want to edit code like a normal sane person. Currently, none of my shortcuts work (e.g. Ctrl+e to go to the end of line). Instead, I have to look for my arrow keys and navigate like an child with ADHD strolling through a candy forest - insane, distracting and disruptive.

Find the arrow keys! I challenge you! (I have an APL layer on my keyboard, so even I don’t know where all the keys are, good luck finding them)

I write and edit a lot of schemas and queries in order to replicate bugs found on this forum. Hence I use a lot of Ratel. Not being able to navigate quickly hampers my ability to work fast. It is disruptive to thinking.

Additionally, there is a perceivable lag in the code input areas (if you are used to working on fast text editors like Vi, Emacs or SublimeText it is very very apparent, but if you work on laggy text editors like VSCode then you may not see it). This lag drives me nuts some times.

Despite that, VSCode’s lag is actually better than the input latencies found on Ratel and Dgraph Cloud.

Thus, I suggest using Monaco as the code editor. It’s written in TS, so it should be easy to integrate.

Any external references to support your case

Additionally, textboxes in browsers have a standardized set of shortcuts for the past 20 years that are based on the system’s settings: Jeff Atwood actually blogged about this:

You can even try it on Discuss’ textbox. It respects the system’s shortcuts (which in my system is Ctrl+E to go to the end of line, Ctrl+A to go to the top - yours may vary)

We’re breaking these conventions with a homebrew code editor that works very slowly. It’s a bad developer experience.


Also related, I still can’t ctrl+a, ctrl+c and ctrl+v but instead have to right click where I want and click select all/copy/paste from a menu. Not a good UX when your hands are no longer on a mouse and you have to move back to mouse.

1 Like

Probably not the place to complain about ratel but… In a system with tens of thousands of predicates, (pre-v21.03 multi-tenancy pattern) you cant really type into the ratel editor, as it tries to autocomplete using that huge list every time you type a character.

Maybe monoco would be smarter about the contextual autocomplete. (We use it somewhere else and it is nice feeling)

1 Like

Definitely the place to discuss this!