Closed gizmo385 closed 5 years ago
Fireplace recently switched to using jobs/channels for asynchronous execution, which necessitated dropping support for Vim versions lower than 8.0. I'm afraid you'll have to upgrade Vim.
@tpope Thanks for the quick response! Do you know when that change was made? I don't know if it would be feasible for me to upgrade vim on the host in question so to not break my workflow on those hosts, I'll likely fork and pin at that older version.
As a sidenote, I'd recommend adding something to the top of the README that makes a mention of only supporting version 8.0 and higher, since I think there are going to be quite an number of folks who are using older versions of vim who find their vim-fireplace breaking upon upgrading the plugin :)
Based on your :version
output you're in luck: the patch level is high enough that I can tweak the version check to allow you in.
I think the number of people running Fireplace server side is probably pretty small, and those running a Debian release from 2015 smaller still, but I agree silently not loading is not a very graceful way to fail. I'll look into improving the user experience there.
Hmmm. Now I get this error when first loading a Clojure file:
No matching autocommands
Error detected while processing function <SNR>60_path[1]..<SNR>60_connect[10]..fireplace#register_port_file[10]..fireplace#transport#connect[29]..<SNR>104_json_callback:
line 1:
E121: Undefined variable: v:t_list
E15: Invalid expression: type(a:msg) ==# v:t_list && len(a:msg) == 2
Okay, looks like you're still a tad too old. 8da2d76fe4973364b9cc0643f246f1c73b7cbc95 was the commit that added the version check so you'll have to go back to before that. I'm going to restore the Vim 8 requirement.
It's possible changing v:t_list
to type([])
(and similar substitutions for the other v:t_
constants) will get it to work on your Vim version. If so, please feel free to send a PR with the necessary changes and I'll update the conditional again.
I've installed vim-fireplace, but cannot seem to access any of the commands inside of Vim while editing a Clojure file. I have verified that the plugin is installed and is loaded in
:scriptnames
:I've used the same set of dotfiles on plenty of other hosts, so I'm assuming it might be something that is different about the particular host that I'm running this on. However, I'm not sure where to look further for configuration differences beyond the steps I've mentioned below. Any help or ideas that you could provide would be much appreciated!
Additionally, I'm able to pull up the
:help
documentation for fireplace. I've tried installing vim-salve, vim-classpath, and vim-dispatch to see if any of those might have assisted in getting the REPL to connect properly. I've also verified that the.nrepl-port
file is getting created. It doesn't even appear as though the:Connect
command is even available from within Vim (while editing a Clojure file):Here is the output of
:verbose set path?
:And my
vim --version
output:Any ideas what might be happening here?