tpope / vim-fireplace

fireplace.vim: Clojure REPL support
https://www.vim.org/scripts/script.php?script_id=4978
1.75k stars 139 forks source link

Correct check for macro/arglists key in docs #281

Closed SevereOverfl0w closed 7 years ago

SevereOverfl0w commented 7 years ago

I noticed that every function was a Macro, this fixed that. Also noticed that vars were printing an extra newline for arg lists.

I'm not sure this change is particularly complete, as there seem to be other surrounding lines that check for '' but I am not sure.

This seems to work both with and without info op.


I think the core problem is a difference in operation between the info op and the custom code. The info op doesn't include the key if it is not applicable/present, whereas we put it as nil, which translates to '' in vimscript.

I think we were expecting nil to become 'nil' in vimscript.

It would be better to use something like cond-> to build up a map which looks more like that the 'info' op produces.

trptcolin commented 7 years ago

👍 the "Macro" fix definitely works. On the arglists-str thing, I'm not seeing any behavior difference, presumably because when arglists-str gets generated, it's wrapped in a str. So I don't see the need for that, but it also doesn't hurt anything ¯_(ツ)_/¯

But definitely a net win; I was going to submit a PR but this solves the incorrect "Macro" doc for functions.