Как устранить неполадки в ipython-listener и / или в плагине ipython для gedit?
Я использую Gedit 3.8.3, Python 2.7.5+, IPython 0.13.2 и плагин Gedit Ipython.
Я знаю, что есть лучшие IDE для Python, но раньше это "просто работало", а затем я получил новую машину и установил Ubuntu 13.10, и он больше не работает. Плагин имел обыкновение давать мне ошибку, (gedit:23136): libpeas-WARNING **: Could not find loader 'python' for plugin 'ipython'
но я последовал совету AskUbuntu и отредактировал строку Loader в /usr/lib/gedit/plugins/ipython.plugin
в Loader=python3
и теперь он загружается без ошибок, но также ничего не делает. Так или иначе iPython-listener
работает, ошибка, которую я вижу в консоли
Traceback (most recent call last):
File "/usr/lib/gedit/plugins/ipython.py", line 98, in send_to_ipython
self.socket.sendto(code, (self.listener_host, self.listener_port) )
TypeError: 'str' does not support the buffer interface
Есть ли способ заставить это работать?
1 ответ
Репостить как ответ:
Плагин gedit IPython, похоже, написан только для Python 2, но похоже, что для его адаптации к Python 3 требуется лишь небольшое изменение. Найдите строку, на которой произошла ошибка:
self.socket.sendto(code, (self.listener_host, self.listener_port) )
И изменить это на это:
self.socket.sendto(code.encode('utf-8'), (self.listener_host, self.listener_port) )
UTF-8 должен быть правильным по умолчанию в большинстве современных систем Linux.