Fork me on GitHub
#joyride
<
2022-11-30
>
pez07:11:54

Here's a thing we didn't get to demo yesterday: https://www.youtube.com/watch?v=BqoIp1YuOic

pez08:11:42

If someone would like to help me test the instructions for the slides script here, that would be awesome. 🙏 joyride ❤️ https://github.com/PEZ/london-clojurians-joyride

bruno.bonacci10:11:30

Hi all, the recording of last night event at the London Clojurians is now available on our youtube channel Joyride VS Code using a Clojure REPL (by Peter Strömberg and Michiel Borkent) https://www.youtube.com/watch?v=ObjIR08t3lg

joyride 2
gratitude 2
🎉 3
sci 3
pez15:11:23

Haha, yesterday I was not only running a special version of Joyride (a last minute bug fix that I didn't dare release without more testing, but that risked messing with the presentation), I was also using a patched version of VS Code. I couldn't stand the flicker of that timer. Looks like the VS Code team likes the PR: https://github.com/microsoft/vscode/issues/167304 😃

orestis15:11:50

Watched half of the Joyride presentation so far, really cool stuff. The status bar item was a light bulb moment for me, since it can be a poor man's command palette. I have a small snipped that shows an autocopmlete UI but sometimes I forget the keyboard shortcut. I can put a small reminder there 🙂

💡 1
pez15:11:48

You can give such a command a keyboard shortcut as well. A bit like what we do with Calva's custom REPL commands. Could actually be something that Joyride can ship some scaffolding for. So that populating the menu is more of a configuration thing.

orestis15:11:00

But still I think I'd like to create my own extension to add a few items in the global command palette.

orestis15:11:59

I do have a keyboard shortcut - but my memory is weak and for most things I just open the main command palette and type a few characters.

pez16:11:27

It would be great if you could experiment with what it takes to create an extension from a Joyride setup. It was discussed a bit during the non-recorded Q&A yesterday.

pez16:11:42

That said, what you can do to help your memory is to use a joyride key prefix. The built-in shortcuts uses ctrl+alt+j <something something>. So for your palette you can have ctrl+alt+j f1 (if you are used to use f1 for the built in palette).

orestis19:11:24

I moved away from Emacs to avoid these long chords 🙂

orestis19:11:43

But, hey, look at that

pez20:11:31

What am I looking at?

orestis20:11:01

That little OM thing in the status bar, it has a tooltip to remind me of the keybinding, plus I can also click it to run my command 🙂

orestis20:11:46

Better capturing

pez20:11:55

Ah... I thought for a moment you had found another way to register keybindings. 😃 But it is a very good idea to use the tooltip like that.

pez20:11:42

You can add some other keys to the quickpick items to get some hints in there. So you could add your keybinding to some specific command there, for instance.

orestis20:11:24

One big thing I'm missing is the ability to execute a connect command with arguments. I repl to our back-office machine all the time at localhost:6666 and I would love to be able to just do executeCommand("calva.connect", "localhost:6666")

pez20:11:09

Iirc we have a function with that signature that we call from the command. Should be pretty easy to grant your wish.

pez20:11:12

Issue please!

orestis20:11:33

Oh nice! Last time I looked I couldn't figure it out by myself 🙂

pez20:11:15

I might be making it easier than it is. I'm an incurable optimist, as we say in Sweden.

pez20:11:25

I think it might be :description key you can add to the menu items that will also be shown in the menu.

pez20:11:08

It made me smile to switch to one of my VS Code windows and find this. 😃

😆 3
orestis20:11:30

Since I have a late-night "optimistic" session with @pez, may I offer another crazy idea? Calva could offer a tap> sink, via some nrepl middleware, or some custom client-side code perhaps?

orestis20:11:28

So suddenly all the tap>ed things in my code could make it to calva, which could then show them in whatever UI

orestis20:11:14

Today it might be just the REPL, tomorrow it may be Portal or a Treeview, or perhaps a custom webview, or even something scriptable by the community

pez20:11:31

I wonder if there might exist an nREPL middleware that does this...

orestis20:11:25

The way I understand taps and nrepl middleware, you could add a tap sink, that takes the data, and sends it as a custom nREPL event back to the nREPL client?

pez20:11:22

I don't know all that much about it. Something to ask about in the #C17JYSA3H channel, maybe.