<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/runtime/autoload/provider/ruby.vim, branch usermarks</title>
<subtitle>Neovim fork with Rahm's personal hacks.</subtitle>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/'/>
<entry>
<title>checkhealth: ignore 'wildignore' when seeking executables (#14495)</title>
<updated>2021-05-07T09:07:07+00:00</updated>
<author>
<name>Marco Hinz</name>
<email>mh.codebro@gmail.com</email>
</author>
<published>2021-05-07T09:07:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=17434b88b4892218386b49b400e7eb6d265000ff'/>
<id>17434b88b4892218386b49b400e7eb6d265000ff</id>
<content type='text'>
Certain values of 'wildignore', .e.g `*/node_modules/**`, would make the
provider checks not find the right executables.

Fixes https://github.com/neovim/neovim/issues/14388</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Certain values of 'wildignore', .e.g `*/node_modules/**`, would make the
provider checks not find the right executables.

Fixes https://github.com/neovim/neovim/issues/14388</pre>
</div>
</content>
</entry>
<entry>
<title>provider: align all foo#Detect() functions #12839</title>
<updated>2020-09-05T22:02:46+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2020-09-05T22:02:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=bedab7e87b038da11f93484c1bc1e036fea520b9'/>
<id>bedab7e87b038da11f93484c1bc1e036fea520b9</id>
<content type='text'>
Problem: ruby#Detect() and node#Detect() don't return a [prog, err] pair
which means callers must special-case them.

Solution: align their return signatures with the perl/pythonx providers.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: ruby#Detect() and node#Detect() don't return a [prog, err] pair
which means callers must special-case them.

Solution: align their return signatures with the perl/pythonx providers.</pre>
</div>
</content>
</entry>
<entry>
<title>provider: g:loaded_xx_provider=2 means "enabled and working"</title>
<updated>2019-08-04T11:23:46+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2019-08-04T10:06:24+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=241956720d02d933b0b27097a3b0a1966f138d0b'/>
<id>241956720d02d933b0b27097a3b0a1966f138d0b</id>
<content type='text'>
Value of 1 cannot be used, because users might set that in their vimrc
to _disable_ a provider, which would confuse :checkhealth and has().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Value of 1 cannot be used, because users might set that in their vimrc
to _disable_ a provider, which would confuse :checkhealth and has().
</pre>
</div>
</content>
</entry>
<entry>
<title>provider: decide status by g:loaded_xx_provider</title>
<updated>2019-08-04T11:23:46+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2019-08-04T01:54:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=66938b928c05b913f3a11e520d13ca854621799d'/>
<id>66938b928c05b913f3a11e520d13ca854621799d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>provider: let providers decide their status</title>
<updated>2019-08-04T11:23:46+00:00</updated>
<author>
<name>Rui Abreu Ferreira</name>
<email>raf-ep@gmx.com</email>
</author>
<published>2019-06-09T17:22:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=2cfe4748e57bd510b98ca81bd915f801f5a50bb5'/>
<id>2cfe4748e57bd510b98ca81bd915f801f5a50bb5</id>
<content type='text'>
Instead of deciding provider status in eval_has_provider, move the
decision to the provider Vim scripts.

Previously, provider loading worked as follows:

1. eval_has_provider() verified provider availability by searching for
   the provider#providername#Call function and cached this verificaion as a static
   variable for some providers
2. providers short-circuited on loading to prevent the definition of the
   Call function (with the exception of the node provider that did not)

This commit changes the expected interface between nvim and its
providers to facilitate provider reloading, by splitting the
verification of the provider from the availability of the Call function.

eval_has_provider() now checks for a provider#providername#enabled
variable. It is up to the provider script to set this to 0 or 1
accordingly. eval_call_provider() remains unchanged.

All providers hosting a Call function were updated to respect this.

The clipboard provider now has a Reload function to reload the
provider.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Instead of deciding provider status in eval_has_provider, move the
decision to the provider Vim scripts.

Previously, provider loading worked as follows:

1. eval_has_provider() verified provider availability by searching for
   the provider#providername#Call function and cached this verificaion as a static
   variable for some providers
2. providers short-circuited on loading to prevent the definition of the
   Call function (with the exception of the node provider that did not)

This commit changes the expected interface between nvim and its
providers to facilitate provider reloading, by splitting the
verification of the provider from the availability of the Call function.

eval_has_provider() now checks for a provider#providername#enabled
variable. It is up to the provider script to set this to 0 or 1
accordingly. eval_call_provider() remains unchanged.

All providers hosting a Call function were updated to respect this.

The clipboard provider now has a Reload function to reload the
provider.
</pre>
</div>
</content>
</entry>
<entry>
<title>provider/lang: expand() g:foo_host_prog (#9312)</title>
<updated>2018-12-04T23:11:28+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2018-12-04T23:11:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=e509576e531acf6a97ef5b471e25bbe8c77414a8'/>
<id>e509576e531acf6a97ef5b471e25bbe8c77414a8</id>
<content type='text'>
Before this commit, if user does this:
    let g:node_host_prog = '~/.nvm/versions/node/v11.3.0/bin/neovim-node-host'
the "~/" is not expanded to user's home directory.

`:help g:ruby_host_prog` suggests a path with "~/" so technically we
already claimed to support this.

closes https://github.com/neovim/node-client/issues/102</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Before this commit, if user does this:
    let g:node_host_prog = '~/.nvm/versions/node/v11.3.0/bin/neovim-node-host'
the "~/" is not expanded to user's home directory.

`:help g:ruby_host_prog` suggests a path with "~/" so technically we
already claimed to support this.

closes https://github.com/neovim/node-client/issues/102</pre>
</div>
</content>
</entry>
<entry>
<title>ruby: detect rbenv shims for other versions (#8733)</title>
<updated>2018-08-08T22:47:35+00:00</updated>
<author>
<name>Marco Hinz</name>
<email>mh.codebro+github@gmail.com</email>
</author>
<published>2018-08-08T22:47:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=d58139877990ed164c0be05569ea97a825a43117'/>
<id>d58139877990ed164c0be05569ea97a825a43117</id>
<content type='text'>
When rbenv is used for managing Ruby installations, just checking for an
executable called "neovim-ruby-host" is not enough. It has to be run as well.

If it does not return 0, then neovim-ruby-host is merely a shim for another Ruby
installation.

  $ rbenv versions
    2.5.0
  * 2.5.1 (set by /Users/mhi/.rbenv/version)

  $ rbenv whence neovim-ruby-host
  2.5.0

  $ which neovim-ruby-host
  /Users/mhi/.rbenv/shims/neovim-ruby-host

  $ neovim-ruby-host
  rbenv: neovim-ruby-host: command not found

  The `neovim-ruby-host' command exists in these Ruby versions:
    2.5.0

  $ echo $?
  127

Additionally, the detection logic was moved from provider#ruby#Detect() to
s:detect(), because the former is run in the sandbox which forbids calling
system().</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When rbenv is used for managing Ruby installations, just checking for an
executable called "neovim-ruby-host" is not enough. It has to be run as well.

If it does not return 0, then neovim-ruby-host is merely a shim for another Ruby
installation.

  $ rbenv versions
    2.5.0
  * 2.5.1 (set by /Users/mhi/.rbenv/version)

  $ rbenv whence neovim-ruby-host
  2.5.0

  $ which neovim-ruby-host
  /Users/mhi/.rbenv/shims/neovim-ruby-host

  $ neovim-ruby-host
  rbenv: neovim-ruby-host: command not found

  The `neovim-ruby-host' command exists in these Ruby versions:
    2.5.0

  $ echo $?
  127

Additionally, the detection logic was moved from provider#ruby#Detect() to
s:detect(), because the former is run in the sandbox which forbids calling
system().</pre>
</div>
</content>
</entry>
<entry>
<title>Add provider#Poll() to handle starting and polling the provider</title>
<updated>2018-02-16T19:08:12+00:00</updated>
<author>
<name>James McCoy</name>
<email>jamessan@jamessan.com</email>
</author>
<published>2018-02-16T18:53:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=3af3515e74c925c783ad5321589830ed3d54b24a'/>
<id>3af3515e74c925c783ad5321589830ed3d54b24a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>provider: ruby: Use stderr_buffered to collect stderr</title>
<updated>2018-02-16T18:33:07+00:00</updated>
<author>
<name>James McCoy</name>
<email>jamessan@jamessan.com</email>
</author>
<published>2018-02-16T18:33:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=48dc1f3f90c6bbebcaa93ecf3348648f45c45239'/>
<id>48dc1f3f90c6bbebcaa93ecf3348648f45c45239</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>provider/nodejs: check version in Detect()</title>
<updated>2017-12-17T15:09:18+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2017-12-17T14:53:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=103ff26c0ae76491c73a6c078b52f2e56af16fb8'/>
<id>103ff26c0ae76491c73a6c078b52f2e56af16fb8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
