@@ -37,6 +37,8 @@ def __init__(self, nvim):
37
37
'shutdown' : self .shutdown
38
38
}
39
39
self ._nvim_encoding = nvim .options ['encoding' ]
40
+ if IS_PYTHON3 and isinstance (self ._nvim_encoding , bytes ):
41
+ self ._nvim_encoding = self ._nvim_encoding .decode ('ascii' )
40
42
41
43
def start (self , plugins ):
42
44
"""Start listening for msgpack-rpc requests and notifications."""
@@ -51,6 +53,8 @@ def shutdown(self):
51
53
52
54
def _on_request (self , name , args ):
53
55
"""Handle a msgpack-rpc request."""
56
+ if IS_PYTHON3 and isinstance (name , bytes ):
57
+ name = name .decode (self ._nvim_encoding )
54
58
handler = self ._request_handlers .get (name , None )
55
59
if not handler :
56
60
msg = 'no request handler registered for "%s"' % name
@@ -64,6 +68,8 @@ def _on_request(self, name, args):
64
68
65
69
def _on_notification (self , name , args ):
66
70
"""Handle a msgpack-rpc notification."""
71
+ if IS_PYTHON3 and isinstance (name , bytes ):
72
+ name = name .decode (self ._nvim_encoding )
67
73
handler = self ._notification_handlers .get (name , None )
68
74
if not handler :
69
75
warn ('no notification handler registered for "%s"' , name )
0 commit comments