This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-02-25
Channels
- # announcements (9)
- # aws (50)
- # babashka (7)
- # beginners (95)
- # calva (10)
- # chlorine-clover (17)
- # cljdoc (11)
- # cljs-dev (4)
- # cljsrn (6)
- # clojars (25)
- # clojure (74)
- # clojure-belgium (4)
- # clojure-dev (17)
- # clojure-europe (3)
- # clojure-italy (23)
- # clojure-nl (3)
- # clojure-norway (5)
- # clojure-sanfrancisco (30)
- # clojure-spec (46)
- # clojure-uk (27)
- # clojured (3)
- # clojurescript (91)
- # core-async (61)
- # cursive (3)
- # data-science (4)
- # datascript (7)
- # datomic (67)
- # emacs (15)
- # events (1)
- # figwheel-main (13)
- # fulcro (31)
- # graalvm (1)
- # graphql (3)
- # hoplon (2)
- # jobs (3)
- # jobs-rus (1)
- # kaocha (4)
- # lambdaisland (34)
- # luminus (4)
- # off-topic (62)
- # om (4)
- # other-languages (9)
- # re-frame (14)
- # reitit (1)
- # ring-swagger (1)
- # shadow-cljs (51)
- # sql (5)
- # xtdb (8)
more than likely my "imbalance" is in the top 5%, just sayn' (or so the voices tell me)
i adapted code from: https://github.com/hitode909/vscode-perl-outline to make a small sample that uses tree-sitter
fyi - don't forget that it should also handle def-like macros
perhaps there is some good logic to determine that sort of thing spelled out somewhere? what i have currently boils down to a hack:
(if (and (= (.-type first-elt) "symbol")
;; XXX: other def things?
(#{"def"
"definterface" "defmacro"
"defmethod" "defmulti"
"defn" "defn-"
"defonce" "defprotocol"
"defrecord" "deftype"}
(.-text first-elt)))