UltiSnips/pythonx/UltiSnips
Andrew Ruder cae27fba5c Ensure that _vim_{dec,enc} always succeeds on py3
In py2 we could get by with attempting to encode/decode a string and if
it failed just ignore and return.  Unfortunately on py3 a string decodes
to a bytearray and a bytearray encodes to a string.  We can't simply
return the original object when we fail.  We choose replace for handling
bytes we don't understand.

Test case (using python3 for UltiSnips):
open a new file
:set encoding=utf-8
qa<Backspace>q
"ap

Warning: this test case makes it very difficult to exit vim cleanly and
save files!

Signed-off-by: Andrew Ruder <andrew.ruder@elecsyscorp.com>
2014-04-10 08:06:56 -05:00
..
snippet Show where snippets are defined in selection. 2014-03-22 20:20:56 +01:00
text_objects Change the way placeholders are selected. 2014-03-22 16:43:57 +01:00
__init__.py Remove no longer needed loading of vim script from python. 2014-02-17 08:52:10 +01:00
_diff.py All linting done. Project is now lint warning free. 2014-02-08 15:52:06 +01:00
_vim.py selection=old cannot work with UltiSnips. 2014-03-22 19:47:59 +01:00
compatibility.py Ensure that _vim_{dec,enc} always succeeds on py3 2014-04-10 08:06:56 -05:00
debug.py childs -> children. 2014-02-12 22:22:55 +01:00
indent_util.py Makes UltiSnips a drop in replacement for snipMate. 2014-02-25 22:51:45 +01:00
position.py More linting and refactorings mainly in _transformation.py. 2014-02-08 14:23:16 +01:00
snippet_manager.py _vimfiles -> vimfiles. Patch b Oberon. 2014-04-06 16:33:02 +02:00
test_diff.py All linting done. Project is now lint warning free. 2014-02-08 15:52:06 +01:00
test_position.py All linting done. Project is now lint warning free. 2014-02-08 15:52:06 +01:00
text.py Added preliminary support for neocomplete. 2014-03-05 08:14:53 +01:00
vim_state.py Makes UltiSnips a drop in replacement for snipMate. 2014-02-25 22:51:45 +01:00