@@ -37,6 +37,8 @@ def __init__(self, nvim):
3737 'shutdown' : self .shutdown
3838 }
3939 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' )
4042
4143 def start (self , plugins ):
4244 """Start listening for msgpack-rpc requests and notifications."""
@@ -51,6 +53,8 @@ def shutdown(self):
5153
5254 def _on_request (self , name , args ):
5355 """Handle a msgpack-rpc request."""
56+ if IS_PYTHON3 and isinstance (name , bytes ):
57+ name = name .decode (self ._nvim_encoding )
5458 handler = self ._request_handlers .get (name , None )
5559 if not handler :
5660 msg = 'no request handler registered for "%s"' % name
@@ -64,6 +68,8 @@ def _on_request(self, name, args):
6468
6569 def _on_notification (self , name , args ):
6670 """Handle a msgpack-rpc notification."""
71+ if IS_PYTHON3 and isinstance (name , bytes ):
72+ name = name .decode (self ._nvim_encoding )
6773 handler = self ._notification_handlers .get (name , None )
6874 if not handler :
6975 warn ('no notification handler registered for "%s"' , name )
0 commit comments