reveal

Docs: https://vlaaad.github.io/reveal/ Source: https://github.com/vlaaad/reveal
2020-10-21T19:58:11.093100Z

hi, im trying to try out reveal but I'm having trouble getting it setup in IntelliJ with Cursive, does someone have time to help me please? I think my issue is I'm totally new to deps.edn (I normally use lein)

vlaaad 2020-10-21T20:00:40.094100Z

hi @qmstuart, I use reveal in Cursive, and there is a section about Cursive in Reveal readme — https://vlaaad.github.io/reveal/#cursive

2020-10-21T20:00:55.094600Z

thats the guide im following 🙂

vlaaad 2020-10-21T20:00:57.094700Z

what problem do you have with it?

vlaaad 2020-10-21T20:01:18.095400Z

it should work with lein as well...

2020-10-21T20:02:03.096Z

I think I'm missing something really obvious. SO I created a new app with clj -A:new app exfn/foo then I opened the resulting deps.edn as a project. I click to add a REPL and fill in this in the REPL screen:

2020-10-21T20:02:19.096800Z

I feel I'm being really thick and missing something obvious 😄

2020-10-21T20:02:44.097300Z

I run that REPL, and it works fine as a repl. But I expected the REVEAL window to open when I ran it?

2020-10-21T20:02:58.097500Z

What have I misunderstood?

2020-10-21T20:03:36.098Z

do I need to do something to launch REVEAL seperately? Or Maybe I need to edit my ~/.clojure/deps.edn ?

2020-10-21T20:05:17.098500Z

sorry if im beign dumb,not only am I new to reveal, I'm pretty new to CLojure too

vlaaad 2020-10-21T20:05:24.098700Z

do you have reveal dependency in ~/.clojure/deps.edn ?

vlaaad 2020-10-21T20:06:27.099400Z

my ~/.clojure/deps.ednlooks like this:

{:aliases {:reveal {:extra-deps {vlaaad/reveal {:mvn/version "1.0.130"}}
                    :ns-default vlaaad.reveal
                    :exec-fn repl}}}

vlaaad 2020-10-21T20:06:52.099800Z

I also check "Run with Deps" and specify reveal alias

vlaaad 2020-10-21T20:09:43.100600Z

and I also have this in Parameters:

-m vlaaad.reveal repl

2020-10-21T20:10:08.100800Z

my .clojure/deps.edn has loads in it!

2020-10-21T20:10:25.101100Z

{:mvn/repos {"sonatype" {:url "<https://oss.sonatype.org/content/repositories/snapshots/>"}}
 :aliases
 {;; pull in specific versions of Clojure:
  :1.0 {:override-deps {org.clojure/clojure {:mvn/version "1.0.0"}}}
  :1.1 {:override-deps {org.clojure/clojure {:mvn/version "1.1.0"}}}
  :1.2 {:override-deps {org.clojure/clojure {:mvn/version "1.2.1"}}}

vlaaad 2020-10-21T20:10:37.101700Z

the point is, you need to have reveal on the classpath 🙂

2020-10-21T20:10:43.102100Z

can i put the bit starting {:reveal } anywhere under :aliases ?

vlaaad 2020-10-21T20:11:27.103Z

hmm, I forgot to add Parameters section with -m vlaaad.reveal repl because I used that in main-opts in an alias while writing readme

vlaaad 2020-10-21T20:11:31.103200Z

I'll add that step

vlaaad 2020-10-21T20:12:40.103300Z

yes 🙂

2020-10-21T20:18:52.104200Z

Now its saying can't find Could not locate vlaaad/reveal__init.class, vlaaad/reveal.clj or vlaaad/reveal.cljc on classpath. BUt I added that reveal alias to my deps.edn

2020-10-21T20:19:15.104500Z

I should add it to my projects deps.edn too?

seancorfield 2020-10-21T20:24:21.105100Z

@qmstuart It looks like you did not specify the :reveal alias in the command to start your REPL from Cursive.

seancorfield 2020-10-21T20:25:59.106300Z

(I'm not a Cursive user -- I find it much easier to start a REPL manually from the command-line and then connect my editor to that... I find Cursive's whole "run configuration" thing to be counter-intuitive!)

2020-10-21T20:26:20.106500Z

yes, its confuses me no end

2020-10-21T20:29:07.107500Z

What does it want under aliases? for Runs with Deps? reveal ? :reveal ? remote-repl ?

2020-10-21T20:31:48.108200Z

it seems if i change anything in my deps.edn and make a mistake then the whole project is ruined as even if I undo it all. IdeaJ still squigglies every single clojure function and wont even run a basic repl

seancorfield 2020-10-21T20:33:48.108800Z

I assume you were already using IntelliJ which is why you went with Cursive to learn Clojure?

2020-10-21T20:33:52.109Z

yeah

2020-10-21T20:34:09.109400Z

I'm creating a new project and deleting and recreating when it messes up as IntelliJ starts to refuse to open it as a project

2020-10-21T20:34:18.109600Z

this is so frustrating

seancorfield 2020-10-21T20:35:43.110500Z

Colin, Cursive's creator, is pretty active in the #cursive channel so that's a good place to get help, if you're not already in there asking about run configurations etc.

seancorfield 2020-10-21T20:36:55.111700Z

I don't like IDEs myself. I used Eclipse for a long time (and mostly hated it). I've tried IntelliJ numerous times and I just think it's awful 😞

seancorfield 2020-10-21T20:37:16.112100Z

But then I haven't had to deal with Java for a very long time now 🙂

2020-10-21T20:43:00.112300Z

what would you suggest is better?

2020-10-21T20:43:11.112500Z

i can't get along with emacs

vlaaad 2020-10-21T21:01:31.112600Z

reveal

vlaaad 2020-10-21T21:01:59.112800Z

remote-repl is only if you start repl outside of cursive

vlaaad 2020-10-21T21:03:20.114Z

I love Cursive, having autocomplete and static analysis with dynamic REPL is the best combo

vlaaad 2020-10-21T21:03:40.114500Z

and interop with java is a breeze

2020-10-21T21:04:03.114700Z

I got it work!

2020-10-21T21:04:05.114900Z

😄

vlaaad 2020-10-21T21:04:10.115100Z

wonderful!

vlaaad 2020-10-21T21:04:27.115500Z

what helped?

2020-10-21T21:04:30.115600Z

thank you and sean for your help

👍 2
2020-10-21T21:05:07.116300Z

I was really misunderstanding deps.edn i think

2020-10-21T21:06:03.116800Z

what I like about IntelliJ is the built in documenation, i can hover over a function and get the help pages for it

2020-10-21T21:06:24.117100Z

and that I get ultimate as part of my jetbrains package

2020-10-21T22:08:20.119100Z

Any ideas why stuff that is in a dependency library isnt working for me? e.g. I can't evaluate anything from clojure.data.csv

(ns exfn.bar (:gen-class) (:require [clojure.data.csv :as csv]))
Execution error (FileNotFoundException) at exfn.bar/eval7803$loading (bar.clj:1).
Could not locate clojure/data/csv__init.class, clojure/data/csv.clj or clojure/data/csv.cljc on classpath.
Also tried
(require '[clojure.data.csv :as casv])
And sending that straight to the repl, but same error. works in my regular repl ?

2020-10-21T22:10:35.119600Z

oh, i see, I had to restart it after changing my deps.edn!

2020-10-21T22:11:38.119800Z

reveal is very cool dude 🙂 Great job!

2020-10-21T22:12:32.120400Z

doing work where I need to analyse and smooth a series of data, being able to visualise it in a chart straight from the repl is mind blowing

🦜 1
seancorfield 2020-10-21T22:51:55.120800Z

Glad you got it all working @qmstuart!