This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-04-05
Channels
- # architecture (2)
- # aws (1)
- # bangalore-clj (4)
- # beginners (97)
- # boot (35)
- # cider (8)
- # cljsjs (3)
- # cljsrn (35)
- # clojure (190)
- # clojure-dusseldorf (4)
- # clojure-italy (7)
- # clojure-poland (1)
- # clojure-russia (17)
- # clojure-spec (74)
- # clojure-uk (30)
- # clojureremote (2)
- # clojurescript (298)
- # code-reviews (18)
- # component (18)
- # cursive (18)
- # datascript (3)
- # datavis (2)
- # datomic (24)
- # dirac (17)
- # emacs (3)
- # garden (7)
- # hoplon (51)
- # jobs (2)
- # jobs-rus (2)
- # leiningen (4)
- # luminus (11)
- # mount (24)
- # off-topic (1)
- # om (32)
- # onyx (25)
- # pedestal (1)
- # powderkeg (9)
- # protorepl (6)
- # re-frame (11)
- # reagent (15)
- # spacemacs (6)
- # sql (35)
- # uncomplicate (1)
- # unrepl (74)
- # untangled (130)
- # yada (6)
@cgrand just noticed that fipp
is doing something similar to the custom formatters https://github.com/brandonbloom/fipp/blob/master/doc/primitives.md
@thheller I drew inspiration from fipp but this part of it (or custom formatters) is too much layout focused (hey it’s a pretty printer) while I’m concerned about “machine” printing. Layout is a concern for the client.
but I was looking for prior art for describing objects and it seems fairly common to create some kind of limited markup
@dominicm all tooling is not repl indeed. However it doesn’t imply that you can’t devise an adhoc protocol by subsetting unrepl
@cgrand you made that comment before, it only now makes sense. It might be interesting to see if a shared protocol can come out of subsets.
It's good, for me. Helps me learn. Hopefully it doesn't waste too much of your time with my bombardment of questions!
IMO many of these questions are not at all clear yet, so any discussion is useful.
I’m cheating on the rendering:
ol, ul, dl {display: inline-block; margin: 0; padding: 0;}
li, dt, dd {display: inline; margin 0; padding: 0;}
dd + dt::before {content:", "}
li + li::before {content:" "}
.list::before {content: "("}
.list::after {content: ")"}
.vector::before {content: "["}
.vector::after {content: "]"}
.set::before {content: "#{"}
.set::after {content: "}"}
$ try --debug
Unravel 0.1.4 connected to localhost:50505
Type ^O for docs of symbol under cursor, ^D to quit
[:receive [:unrepl/hello {:session :session559, :actions {:exit (unrepl.repl/exit! :session559)}}]]
[:receive [:prompt {}]]
>
@pesterhazy #unrepl/... 1
, #unrepl/... 2
are a bit long for display to the user. &1
, &2
?
Is unravel
already exposing a completion function, a source function, a doc function (for the last two, I guess I can just evaluate forms directly maybe?). I am thinking of adding it to inf-clojure
well, I have already added the concept of repl types in inf-clojure
, and lumo
and planck
now are supported
so here for instance https://github.com/clojure-emacs/inf-clojure/blob/master/inf-clojure.el#L255
the supported commands that you can do from emacs are a bit above: https://github.com/clojure-emacs/inf-clojure/blob/master/inf-clojure.el#L103
I wish I could contribute more but now I am super busy, hopefully soon things will improve on my side
lots of things are still in flux with unrepl, but tons of opportunities at the moment
I think it's important to get a lot of input from tooling authors to get things right this time
my idea with unravel is to showcase the capabilities that unrepl unlocks, to get other tooling authors on board 🙂
you are already exposing a complete function actually (https://github.com/pesterhazy/unravel/blob/master/src/unravel/core.cljs#L202)
yes that's perfect, also very nice that you have an explicit cmd-doc
, I can just call that passing the symbol that I get from emacs
I could basically send you control codes to the process as well, maybe that can be a good workaround if the repl does not expose "system" namespace
now I'm thinking it'd be great to have the arglist printed out automatically as you're typing a symbol...