This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-11-11
Channels
- # announcements (1)
- # aws (5)
- # beginners (8)
- # biff (7)
- # calva (32)
- # cider (26)
- # clj-kondo (6)
- # clojure (100)
- # clojure-europe (6)
- # clojure-greece (1)
- # clojurescript (15)
- # core-logic (3)
- # fulcro (2)
- # honeysql (4)
- # hoplon (39)
- # hyperfiddle (11)
- # lsp (12)
- # other-languages (2)
- # podcasts-discuss (1)
- # squint (30)
Calva’s highlighting isn’t happy with strings being evaluated to use single quotes. Can that be changed back to use double quotes?
do you mean how the result is printed? this happens through node:util/inspect
- it's just how Node.js prints stuff in a REPL or with console.log
Yeah, how the results are printed. Would be nice if it stayed within the Clojure syntax for strings.
But understanding that it’s node:util/inspect in action I guess it goes deeper than just strings.
in CIDER I didn't notice any problems, but I think this is just because it doesn't use syntax highlighting for inline eval
I guess it would make sense to print it in a way that you can paste it back in. I did have that initially, perhaps I'll revert to that
It’s not just the syntax highlighting. The output window in Calva is a Clojure file. Calva’s parser croaks on it when quotes are used like that.
I think CIDER’s repl window is also a Clojure file. So maybe it also dislikes non-clojure results.
I am trying with prn
now:
but I find the formatting of JS objects that are of specific classes a bit underwhelming compared to node.util/inspect
with node.util/inspect I get:
Response {
[Symbol(realm)]: null,
[Symbol(state)]: {
aborted: false,
rangeRequested: false,
timingAllowPassed: true,
requestIncludesCredentials: true,
type: 'default',
status: 200,
timingInfo: {
startTime: 421738.30520802736,
redirectStartTime: 0,
redirectEndTime: 0,
postRedirectStartTime: 421738.30520802736,
finalServiceWorkerStartTime: 0,
finalNetworkResponseStartTime: 0,
finalNetworkRequestStartTime: 0,
endTime: 0,
encodedBodySize: 0,
decodedBodySize: 0,
finalConnectionTimingInfo: null
},
cacheState: '',
statusText: 'OK',
headersList: HeadersList
I’m still adapting to cljs js semantics 😃 Is this a reasonable thing to return?
(frequencies (concat (range 1 2000) [1 1 1 1 2 2 2]))
=>
#js {"1" 5, "2" 4, "3" 1, "4" 1, "5" 1, "6" 1, "7" 1, "8" 1, "9" 1, "10" 1, "11" 1, "12" 1, "13" 1, "14" 1, "15" 1, "16" 1, "17" 1, "18" 1, "19" 1, "20" 1, "21" 1, "22" 1, "23" 1, "24" 1, "25" 1, "26" 1, "27" 1, "28" 1, "29" 1, "30" 1, "31" 1, "32" 1, "33" 1, "34" 1, "35" 1, "36" 1, "37" 1, "38" 1, "39" 1, "40" 1, "41" 1, "42" 1, "43" 1, "44" 1, "45" 1, "46" 1, "47" 1, "48" 1, "49" 1, "50" 1, "51" 1, "52" 1, "53" 1, "54" 1, "55" 1, "56" 1, "57" 1, "58" 1, "59" 1, "60" 1, "61" 1, "62" 1, "63" 1, "64" 1, "65" 1, "66" 1, "67" 1, "68" 1, "69" 1, "70" 1, "71" 1, "72" 1, "73" 1, "74" 1, "75" 1, "76" 1, "77" 1, "78" 1, "79" 1, "80" 1, "81" 1, "82" 1, "83" 1, "84" 1, "85" 1, "86" 1, "87" 1, "88" 1, "89" 1, "90" 1, "91" 1, "92" 1, "93" 1, "94" 1, "95" 1, "96" 1, "97" 1, "98" 1, "99" 1, "100" 1, "101" 1, "102" 1, "103" 1, "104" 1, "105" 1, "106" 1, "107" 1, "108" 1, "109" 1, "110" 1, "111" 1, "112" 1, "113" 1, "114" 1, "115" 1, "116" 1, "117" 1, "118" 1, "119" 1, "120" 1, "121" 1, "122" 1, "123" 1, "124" 1, "125" 1, "126" 1, "127" 1, "128" 1, "129" 1, "130" 1, "131" 1, "132" 1, "133" 1, "134" 1, "135" 1, "136" 1, "137" 1, "138" 1, "139" 1, "140" 1, "141" 1, "142" 1, "143" 1, "144" 1, "145" 1, "146" 1, "147" 1, "148" 1, "149" 1, "150" 1, ...}
My pprint settings:
"calva.prettyPrintingOptions": {
"printEngine": "pprint",
"enabled": true,
"width": 80,
"maxLength": 150
},
I know you get notified, @U04V15CAJ. Posting the PR link for context in this thread. https://github.com/squint-cljs/squint/pull/365