2017-01-04 37 views
5

Czy można wykonać jedną z następujących metod klasy podstawowej: jedi.el lub anaconda-mode? Na przykład, gdy instacji html.parser.HTMLParser Spodziewam go wypełnić poniższy kod w punkcie (1) (klasa podstawowa ma metod takich jak handle_data lub handle_starttag):Emacs: Kompletna metoda klasy podstawowej dla Pythona

import html.parser 
class MyParser(html.parser.HTMLParser): 
    def handle_ # (1) 
+0

Możesz rozważyć zapytanie na stronie [emacs.se]. (Nie jest to całkowicie nietypowy temat, ponieważ pytasz o tryby programowania zamiast ogólnej edycji, ale może to poszerzyć dostępną pulę ekspertów). –

Odpowiedz

2

Robiłem rozeznanie w tej sprawie i odkryłem, że jest zaimplementowany w najnowszej wersji jedi (0.10.0). Niestety ta wersja jest obecnie w fazie rozwoju i nie jest dostępna z pip. Jednak wielu edytorów używa 0.10.0: Atom, VsCode, a nawet jedi-vim od autora jedi.

Łatwo jest zaktualizować wersję jedi w trybie anakondy: https://github.com/nightuser/anaconda-mode. Faktyczna zmiana to tylko jedna linia. Część Pythona trybu anakonda musi zostać ponownie zainstalowana - po prostu usuń katalog anaconda-mode. Domyślna lokalizacja to ~/.emacs.d/anaconda-mode dla Emacs i ~/.emacs.d/.cache/anaconda-mode dla Spacemacs.

upd: Wygląda na to, że 0.10.0 zostanie wkrótce wydane: https://github.com/davidhalter/jedi/issues/740.

upd2: Został wydany i wie wszystko działa po wyjęciu z pudełka. Po prostu usuń katalog anaconda-mode, a automatycznie zainstaluje najnowszą wersję.