aboutsummaryrefslogtreecommitdiff
path: root/runtime/autoload/provider
Commit message (Collapse)AuthorAge
...
| * provider/pythonx: handle exit code 127 from pyenvDaniel Hahler2016-05-28
| | | | | | | | | | | | | | | | | | | | | | | | | | This also checks the major/min version only for expected return codes. With pyenv, you might get the following (return code 127): pyenv: python3.4: command not found The `python3.4' command exists in these Python versions: 3.4.3 3.4.3/envs/tmp-3.4.3-eElS6Y tmp-3.4.3-eElS6Y
* | provider/pythonx: use robust comparison (via vint)Daniel Hahler2016-05-28
|/
* clipboard: support "doit" toolJoel D. Elkins2016-05-15
|
* clipboard: support "lemonade" toolShougo Matsushita2016-04-17
|
* python: move script_host.py to python-clientBjörn Linse2016-03-15
|
* Ruby remote plugin supportAlex Genco2016-03-10
|
* rplugin: Initialize remote plugins lazily. #4384Shougo Matsushita2016-03-10
|
* clipboard: Check $DISPLAY. Prefer xsel. #4150Shougo Matsushita2016-02-05
|
* clipboard: Detach clipboard helper, so contents is kept after nvim exitBjörn Linse2016-01-20
|
* python: Add missing I/O methods to RedirectStreamDan Strokirk2016-01-18
| | | | | | | | | | | `RedirectStream` is used to redirect `stdout` and `stderr`, but are missing certain I/O methods available on other file-like objects. This causes external plugins (like `colorama`) to crash. Inheriting from `io.IOBase` adds an abstract implementation of these methods, which will at least keep the python code running. Fixes #4045
* runtime/autoload/provider/python{,3}.vim: fix E168Daniel Hahler2015-11-03
| | | | Do not use `finish` inside of `provider#python{,3}#Call`, but `return`.
* provider/pythonx: Improve detection code and error messages.Florian Walch2015-09-17
| | | | | | | | | | | | | | | | | | | | | | | | | | "python -c" returns 1 in case of an error. Use a return code of 2 if the Neovim module is not found to distinguish these cases. Verify the interpreter version before checking for an installed Neovim module. Show a new error message if the Python interpreter version is below the minimum required version. Always use "pkgutil" to determine if the Neovim module is installed. In contrast to "importlib", which was used for Python 3, "pkgutil.find_loader" is available for all Python versions [1,2]. "pkgutil.find_loader" internally uses "importlib" for Python >= 3.3 [2]. Also, the previously used "importlib.find_loader" is only available since Python 3.3 (so checking the major Python version was not enough) and deprecated since Python 3.4 [3]. Finally, conditioning on the major version in Vimscript was incorrect, as checking the Neovim module for a certain Python major version does not mean that the tested interpreters are actually of that version. For example, we test the "python" executable, which is Python 2 on Ubuntu and Python 3 on Arch Linux. [1] https://docs.python.org/2/library/pkgutil.html#pkgutil.find_loader [2] https://docs.python.org/3/library/pkgutil.html#pkgutil.find_loader [3] https://docs.python.org/3/library/importlib.html#importlib.find_loader
* python: remove current working directory from pathJakob Schnitzer2015-09-14
| | | | | | | | | | Before, running Nvim in a directory containing a Python module `neovim`, or one that is imported by it or a plugin, will load that module and not the system one. So Nvim might be tricked into running arbitrary scripts from the current working directory. Fixes #1665 Fixes #2530
* provider/pythonx.vim: Use shell-agnostic construction. #3190sanmiguel2015-08-21
|
* Merge pull request #2910 from blueyed/python-fix-path_hookJustin M. Keyes2015-08-17
|\ | | | | Python: fixes for sys.path_hooks handler
| * python: VimPathFinder: remove unused load_module methodDaniel Hahler2015-07-09
| | | | | | | | This method was not used, but `VimModuleLoader.load_module` is.
| * python: path_hook: properly implement PEP302Daniel Hahler2015-07-09
| | | | | | | | | | | | | | | | | | | | | | The path hook used to load the module already in the `find_module` hook. This caused different behaviour between Python 2.7 and 3.3, where the former would call the `VimModuleLoader`, while Python 3.3 appears to short-circuited this (because the module was loaded already). This patch will now only find the module, but not load it in the `find_module` hook.
| * python: VimModuleLoader: check sys.modules[fullname]Daniel Hahler2015-07-09
| | | | | | | | This is required by PEP302 for `reload()`ing modules.
| * python: VimPathFinder: use find_spec for Python 3.4Daniel Hahler2015-07-09
| | | | | | | | Fixes https://github.com/neovim/neovim/issues/2909
* | clipboard: support clipboard=unnamedplus,unnamedBjörn Linse2015-08-07
| |
* | python3: remove decoding logic, as this is now done in plugin host #3026Björn Linse2015-07-18
|/ | | | | DecodeHook isn't needed since neovim/python-client#53 rpc methods won't pass bytes anymore, ref neovim/python-client#129
* clipboard: avoid redundant error message on `clipboard_get` failure .Björn Linse2015-06-25
| | | | | | Fixes #2712 Helped-By: Michael Reed <m.reed@mykolab.com>
* clipboard: keep track of ownership and cache clipboard data locallyBjörn Linse2015-06-25
| | | | Helped-By: Justin M. Keyes <justinkz@gmail.com>
* clipboard: don't use &shell in clipboard providerBjörn Linse2015-06-25
|
* provider/pythonx: Show absolute path to executable in error message.Florian Walch2015-06-09
|
* provider/pythonx: Merge s:check_version() and s:check_interpreter().Florian Walch2015-06-09
|
* provider/pythonx: Don't use Python 3 interpreter for +python.Florian Walch2015-06-09
| | | | | | | | | The executable 'python' can refer to either Python 2 or Python 3. Add a check to only accept Python 2 interpreters as providers for +python. Also improve the error messages. Resolves #2734.
* provider/pythonx: return error from DetectDaniel Hahler2015-06-09
| | | | Ref: https://github.com/blueyed/neovim/commit/9b653ce0#commitcomment-11195449
* provider/python: Call: fix usage of 'finish' in functionDaniel Hahler2015-06-09
| | | | | Do not call it again in case of an exception in `remote#host#Require` (ref: https://github.com/neovim/neovim/pull/2549#issuecomment-102674350).
* provider/python: define Prog and Error functions alwaysDaniel Hahler2015-06-09
| | | | | | | | `provider#pythonX#Error` and `provider#pythonX#Prog` are currently meant for debugging only (the error message is not being used), and should therefore be defined always, especially in case of errors. Ref: https://github.com/neovim/neovim/pull/2549#issuecomment-98607580
* provider/pythonx: Detect: only return valid versionsDaniel Hahler2015-06-09
| | | | | The `check` return value of `s:check_version` was not being used, and it was returned always.
* provider/pythonx: test python3/2 first, do not test python3.2Daniel Hahler2015-06-09
| | | | | python3/python2 will typically point at the default / most recent interpreter.
* provider/pythonx: add reference to ":help nvim-python" for errorDaniel Hahler2015-06-09
|
* provider/pythonx: fix grammar with errorDaniel Hahler2015-06-09
|
* provider/pythonx: only call system("python") onceDaniel Hahler2015-06-09
| | | | | `s:check_interpreter` will query/return the version also, so that `s:check_version` can just use that, without calling "python" again.
* Add if_python3 supportShougo Matsushita2015-04-21
| | | | | Reviewed-by: Michael Reed <m.reed@mykolab.com>, Daniel Hahler <github@thequod.de> Helped-by: Daniel Hahler <github@thequod.de>
* clipboard: handle linewise/charwise selections correctlyBjörn Linse2014-12-08
|
* clipboard: support separate '+' and '*' clipboardsBjörn Linse2014-12-08
|
* clipboard: check for X on every invocationJustin M. Keyes2014-11-23
| | | | | | | | xsel and xcopy may be available even if a valid X display is not. Also, the availability of X may change at any time, so check on each invocation. Closes #1509.
* runtime: Refer to plugins running outside Nvim as "remote plugins"Thiago de Arruda2014-11-21
| | | | | | - Rename autoload/rpc to autoload/remote - External plugins are now remote plugins - External plugins directory is "rplugin"
* runtime: Reimplement python/clipboard providers in vimscriptThiago de Arruda2014-11-18
Clipboard is implemented with platform-specific shell commands, and python is implemented with the external plugin facility (rpc#* functions). The script_host.py file(legacy python-vim emulation plugin) was moved/adapted from the python client repository.