If able to, this layer will download the Node.js source and build if Node.js is not detected on system.
Node.js includes the Yarn and npm tools.
In order to make a project zero-install, you must be able to use it as soon as you clone it.
This approaches a zero-install workflow to allow users to immediately use the lsp layer to download and use language servers as needed, and also coc.nvim.
I also prefer to allow users the option of automatically building dependencies from source where possible, instead of them having to manually download binaries and read relevant installation documentation themselves.
Other changes:
Some revision of lsp layer in approach of the zero-install goal.
Minor shortcomings:
Building Node.js not supported on Windows as I can't test. It should attempt to build if Visual Studio Build Tools 2019+ are on their system.
~Blocking Bug: There is a problem with AsyncRun being used within a vim-plug job. I need to resolve that problem before I can add this layer. I found a workaround involving a timer to wait until vim-plug had finished (re)loading the plugins (which broke AsyncRun). A proposed event in vim-plug will remove the need for this timer, waiting on that author.~
Contingent on: #500.
If able to, this layer will download the Node.js source and build if Node.js is not detected on system. Node.js includes the Yarn and npm tools.
This approaches a zero-install workflow to allow users to immediately use the lsp layer to download and use language servers as needed, and also coc.nvim. I also prefer to allow users the option of automatically building dependencies from source where possible, instead of them having to manually download binaries and read relevant installation documentation themselves.
Other changes:
Minor shortcomings:
~Blocking Bug: There is a problem with AsyncRun being used within a vim-plug job. I need to resolve that problem before I can add this layer. I found a workaround involving a timer to wait until vim-plug had finished (re)loading the plugins (which broke AsyncRun). A proposed event in vim-plug will remove the need for this timer, waiting on that author.~ Contingent on: #500.