<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/test/functional/fixtures/autoload, branch usermarks</title>
<subtitle>Neovim fork with Rahm's personal hacks.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/'/>
<entry>
<title>[RFC] fix: has('python') error (#17252)</title>
<updated>2022-01-31T14:06:46+00:00</updated>
<author>
<name>Shougo</name>
<email>Shougo.Matsu@gmail.com</email>
</author>
<published>2022-01-31T14:06:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=f195345c936eaecf423ab79473003e1ab337a17d'/>
<id>f195345c936eaecf423ab79473003e1ab337a17d</id>
<content type='text'>
* fix: has('python') error

* fix: functional tests</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* fix: has('python') error

* fix: functional tests</pre>
</div>
</content>
</entry>
<entry>
<title>test(runtime/health): cover lua healthchecks</title>
<updated>2021-10-04T19:28:54+00:00</updated>
<author>
<name>Javier López</name>
<email>graulopezjavier@gmail.com</email>
</author>
<published>2021-08-03T21:09:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=c65f9560155a8f37b1a2fe15e1bdbebe191fc494'/>
<id>c65f9560155a8f37b1a2fe15e1bdbebe191fc494</id>
<content type='text'>
- Add tests for lua healthchecks (failure, success and submodules).
- Reword some of the test naming for improved logs readability.
- Modify render test to accomodate the changes of the health autoload function.
- Add test for :checkhealth completion of Lua healtchecks.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Add tests for lua healthchecks (failure, success and submodules).
- Reword some of the test naming for improved logs readability.
- Modify render test to accomodate the changes of the health autoload function.
- Add test for :checkhealth completion of Lua healtchecks.
</pre>
</div>
</content>
</entry>
<entry>
<title>provider: skip non-provider has() feature-names</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:20:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=5e6a08f2e6b21e83c9fb381042f0aed89de4598d'/>
<id>5e6a08f2e6b21e83c9fb381042f0aed89de4598d</id>
<content type='text'>
We don't want to retry autoload sourcing (slow) for every random has()
query that finds it way to eval_call_provider().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We don't want to retry autoload sourcing (slow) for every random has()
query that finds it way to eval_call_provider().
</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='https://git.josher.dev/cgit/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='https://git.josher.dev/cgit/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='https://git.josher.dev/cgit/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>clipboard: remove start_batch_changes() in redir_write()</title>
<updated>2017-08-20T18:01:22+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2017-08-20T16:53:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=cc7e344f8357d07b1df17df0b322152d5c50739b'/>
<id>cc7e344f8357d07b1df17df0b322152d5c50739b</id>
<content type='text'>
start_batch_changes() doesn't avoid invoking the clipboard
once-per-line, because the loop is actually in ex_echo(), which calls
redir_write() for each message. But we've already entered
start_batch_changes() by then, so that was never the problem.

    redir_write at /home/vagrant/old.neovim/build/../src/nvim/message.c:2523
    msg_puts_attr_len at /home/vagrant/old.neovim/build/../src/nvim/message.c:1600
    msg_outtrans_len_attr at /home/vagrant/old.neovim/build/../src/nvim/message.c:1221
    ex_echo at /home/vagrant/old.neovim/build/../src/nvim/eval.c:19433
    do_one_cmd at /home/vagrant/old.neovim/build/../src/nvim/ex_docmd.c:2242

Trying to defer _explicit_ clipboard updates is difficult.
    :redir @+ | silent echo system('cat foo') | redir END
is essentially equivalent to:
    for l in readfile('foo')
        let @+ .= l
    endfor
We cannot make judgements about when to ignore a script's bad decisions.
start_batch_changes() only works around the case of clipboard=unnamed,
i.e. _implicit_ clipboard updates (`:g/foo/d`).  Not explicit
assignment.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
start_batch_changes() doesn't avoid invoking the clipboard
once-per-line, because the loop is actually in ex_echo(), which calls
redir_write() for each message. But we've already entered
start_batch_changes() by then, so that was never the problem.

    redir_write at /home/vagrant/old.neovim/build/../src/nvim/message.c:2523
    msg_puts_attr_len at /home/vagrant/old.neovim/build/../src/nvim/message.c:1600
    msg_outtrans_len_attr at /home/vagrant/old.neovim/build/../src/nvim/message.c:1221
    ex_echo at /home/vagrant/old.neovim/build/../src/nvim/eval.c:19433
    do_one_cmd at /home/vagrant/old.neovim/build/../src/nvim/ex_docmd.c:2242

Trying to defer _explicit_ clipboard updates is difficult.
    :redir @+ | silent echo system('cat foo') | redir END
is essentially equivalent to:
    for l in readfile('foo')
        let @+ .= l
    endfor
We cannot make judgements about when to ignore a script's bad decisions.
start_batch_changes() only works around the case of clipboard=unnamed,
i.e. _implicit_ clipboard updates (`:g/foo/d`).  Not explicit
assignment.
</pre>
</div>
</content>
</entry>
<entry>
<title>CheckHealth: Accept [plugin1 [, plugin2 [, ...]]] args.</title>
<updated>2016-08-22T02:03:28+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2016-08-20T23:37:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=ed49d9d866f8260842ea177fa9ce31dbc398701d'/>
<id>ed49d9d866f8260842ea177fa9ce31dbc398701d</id>
<content type='text'>
To healthcheck the "foo" plugin:
    :CheckHealth foo
To healthcheck the "foo" and "bar" plugins:
    :CheckHealth foo bar
To run all auto-discovered healthchecks:
    :CheckHealth
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
To healthcheck the "foo" plugin:
    :CheckHealth foo
To healthcheck the "foo" and "bar" plugins:
    :CheckHealth foo bar
To run all auto-discovered healthchecks:
    :CheckHealth
</pre>
</div>
</content>
</entry>
<entry>
<title>clipboard: fix v:register when clipboard=unnamed,unnamedplus</title>
<updated>2016-07-12T20:30:51+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2016-07-11T13:59:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=6ea2bde065016d4cb2600aa2252daa83f66f09c4'/>
<id>6ea2bde065016d4cb2600aa2252daa83f66f09c4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>clipboard: support clipboard=unnamedplus,unnamed</title>
<updated>2015-08-07T11:06:13+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2015-08-05T13:57:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=d4ebbaa91aea81a9942f44afda628fbe21000897'/>
<id>d4ebbaa91aea81a9942f44afda628fbe21000897</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
