emacs

hkjels 2024-12-18T09:17:27.209569Z

I've recently started using my https://github.com/hkjels/data-navigator.el/ package, which I've been refining over the past few days. It closely resembles the inspect-tab from shadow-cljs, although I prefer integrating it directly into my editor rather than using a separate browser window. I invite you to test it out and provide feedback if you see any room for improvements! πŸ™‚

πŸ‘ 2
πŸ‘€ 2
πŸš€ 2
hkjels 2024-12-19T11:49:40.787489Z

Just pushed a new version. Supports more structures now and is a lot faster. I think it's now close to something that can be released to the wider public πŸ™‚

hkjels 2024-12-19T12:34:27.581619Z

@a13 I got a friendly note about my comments not being pushed. Sorry about that

a13 2024-12-19T13:00:49.289009Z

yeah, I checked several times and was going to ask you if I'm missing something, np πŸ˜„

tatut 2024-12-18T09:33:47.002849Z

a screencast in the readme would be nice to β€œsell” it

hkjels 2024-12-18T09:35:34.997729Z

Good idea

tatut 2024-12-18T09:35:38.253599Z

and installation instructions, I guess for now you just byte-compile-and-load it?

hkjels 2024-12-18T09:37:30.031029Z

I'm thinking to put it on melpa, but for now it's a bit more complicated.

a13 2024-12-18T09:39:20.119839Z

@tatut I suppose it's pretty easy to install with package-install-vc, quelpa or elpaca

(use-package data-navigator
  :init
  (unless (package-installed-p 'data-navigator)
    (package-vc-install
     '(data-navigator
       :vc-backend Git
       :url ""
       :branch "main"))))

this should work for recent (28+) versions of Emacs

a13 2024-12-18T09:41:07.905389Z

Speaking of byte-compilation, @hkjels byte-compilation and M-x checkdoc produce a few warnings, mostly about wrong quotation in docstrings and lines longer than 80. Not critical, but definitely a stopper from including MELPA.

hkjels 2024-12-18T09:41:22.820999Z

I was just typing something similar. Thanks @a13

πŸ‘ 1
hkjels 2024-12-18T09:41:52.700759Z

Ahh. Thanks πŸ‘

a13 2024-12-18T09:45:49.658519Z

Btw you can automate these checks using https://github.com/leotaku/elisp-check (I prefer this one, since besides checks needed for MELPA it can do tests and other stuff) and https://github.com/riscy/melpazoid (the official checker) GH actions.

a13 2024-12-18T09:46:58.307089Z

Here's a simple example of using both https://github.com/a13/cider-storm/tree/ci/.github/workflows (yeah, I'm trying to prepare cider-storm for MELPA, and that's hard) πŸ˜„

hkjels 2024-12-18T09:47:00.087139Z

I've only previously used https://github.com/purcell/package-lint

a13 2024-12-18T09:47:25.406279Z

both actions include package-lint, so no need to include it separately

hkjels 2024-12-18T09:47:45.293989Z

Ohh. This is great!

πŸ‘ 1
hkjels 2024-12-18T09:56:46.320119Z

Apparently I just broke something before releasing. New version will be pushed soon

a13 2024-12-18T09:57:43.527129Z

btw, do you mind if I add installation instructions to the readme?

a13 2024-12-18T10:00:58.506919Z

anyway https://github.com/hkjels/data-navigator.el/pull/4 πŸ™‚

πŸ‘ 1
a13 2024-12-18T10:13:10.656959Z

Speaking of the websocket part, I think it's worth making a separate package of it (something like data-navigator-ws.el), with an explicit dependency on websocket.el. we'll need a separate recipe for MELPA though, since they don't accept multi-file packages anymore (or something like that)

hkjels 2024-12-18T10:17:06.372249Z

Yeah, I agree. Its at least my main use of this package

πŸ‘ 1
hkjels 2024-12-18T10:17:42.539529Z

OK. Found the issue. Pushing really soon

πŸš€ 1
hkjels 2024-12-18T10:46:10.777059Z

Pushed

a13 2024-12-18T10:50:08.494119Z

@hkjels basic #babashka compatibility https://github.com/hkjels/data-navigator.el/pull/5/files?diff=unified&w=1

a13 2024-12-18T10:54:06.140179Z

hkjels 2024-12-18T10:55:28.494099Z

Ohh. Nice!

hkjels 2024-12-18T10:55:57.220539Z

Ohh. The doseq shouldn't be necessary any more btw, but I see that's still in the readme

a13 2024-12-18T10:58:05.426909Z

Yeah, it's not needed. Would you like me to remove it in the same PR, or you prefer to do it yourself?

hkjels 2024-12-18T10:58:33.942679Z

Feel free. I very much appreciate the help πŸ™‚

πŸ‘ 1
a13 2024-12-18T11:00:01.731159Z

...and updated

respatialized 2024-12-18T13:34:37.991679Z

One bit of feedback on the instructions in the README - can you also include the actual names of each command in addition to their keybindings and descriptions? > After loading, use the following keys to navigate: > β€’ <return> or <right>: Dive into the selected value if it’s not a leaf. > β€’ <backspace> or <left>: Go up one level. > β€’ C-f: Apply a filter term to narrow down displayed entries. > β€’ X: Clear the data-navigator buffer. > β€’ w: Copy the current value to the kill-ring. > β€’ o/O: Open the value in a new buffer (same window or other window). > β€’ F: Load data from a file (prompts for a filename). > β€’ I: Load data from a string input (prompts for data). It would be helpful for users interested in customizing or remapping the keys to know the canonical names of each command (particularly those of us afflicted by a touch of https://github.com/emacs-evil/evil).

hkjels 2024-12-18T13:47:37.539029Z

That's a good idea

a13 2024-12-18T13:49:18.590759Z

@hkjels plz, take a look at https://github.com/hkjels/data-navigator.el/pull/6 I made the websocket part of the elisp example a separate library. Works for me πŸ˜„

hkjels 2024-12-18T14:12:33.967349Z

Wow! This is going places πŸ™‚

hkjels 2024-12-18T14:13:38.406779Z

Function names are now alongside their bindings in the README

πŸ™πŸ» 1
Ken Huang 2024-12-18T14:08:36.689919Z

Anyone curious about how the Clojure development experience (aka REPL driven development) is like in cider in emacs? I’ve made a video trying my best to show how to get started with cider, maybe you would like to check out and decide to give cider a try eventually;) https://youtu.be/evmRpr_DEBQ?si=2b8jcIisd8bvkvwL

2
🀘🏼 1