notetau / geany-jedi-complete

a Geany plugin to provide code completion (Python) using jedi
GNU General Public License v2.0
32 stars 5 forks source link

The plugin doesn't work if there are cyrillic characters in the path to the file #10

Open kraamis opened 6 years ago

kraamis commented 6 years ago

The plugin doesn't work if there are cyrillic characters in the path to the file.

Linux Mint 18.2 Cinnamon // Geany 1.27

Console log

kraamis@ [~] $ geany created jedicomplete option /usr/bin/python3.5 option /home/kraamis/.config/geany/plugins/jedi-complete option 8080 start jedi server pid:4193 jedi-server: start server process id 4193 complete:2,5,/home/kraamis/Рабочий стол/file1.py

send url http://localhost:8080/complete Host: localhost:8080 Accept: / Content-Type: text/plain Content-Length: 77

127.0.0.1 - - [23/Nov/2017 12:40:40] "POST /complete HTTP/1.1" 200 - path: /complete jedi-server/complete: 2 5 Exception happened during processing of request from ('127.0.0.1', 50052) Traceback (most recent call last): File "/usr/lib/python3.5/socketserver.py", line 313, in _handle_request_noblock self.process_request(request, client_address) File "/usr/lib/python3.5/socketserver.py", line 341, in process_request self.finish_request(request, client_address) File "/usr/lib/python3.5/socketserver.py", line 354, in finish_request self.RequestHandlerClass(request, client_address, self) File "/usr/lib/python3.5/socketserver.py", line 681, in init self.handle() File "/usr/lib/python3.5/http/server.py", line 422, in handle self.handle_one_request() File "/usr/lib/python3.5/http/server.py", line 410, in handle_one_request method() File "/home/kraamis/.config/geany/plugins/jedi-complete/jediserver.py", line 35, in do_POST post_data += self.run_complete(post_data) File "/home/kraamis/.config/geany/plugins/jedi-complete/jediserver.py", line 56, in run_complete print("jedi-server/complete: ", line, column, filename) UnicodeEncodeError: 'ascii' codec can't encode characters in position 14-20: ordinal not in range(128)

server ret = 0 complete 0