Emacs dla Pythonautów

Celem tego pakietu jest udostępnienie podpowiadania składni Pythona w Emacsie, jak również ułatwienie dostępu do dokumentacji.

UWAGA:

Podstawą działania pakietu są instrukcja exec i funkcja eval, a więc gdy na ścieżce PYTHONPATH mogą znaleźć się skrypty podejrzanego pochodzenia, to skutki mogą być przykre.

Dostępne są następujące funkcje:

  1. podpowiadanie składni używając klawisza TAB (lub C-M-i)

    np. time.cl<TAB> -> time.clock

    time.<TAB> -> lista możliwości do wyboru

  2. opis elementu (funkcji/modulu/klasy/slowa kluczowego) w miejscu kursora używając klawisza F1

  3. po wpisaniu nazwy funkcji i otwarciu nawiasu podpowiadana jest składnia wywołania funkcji

    np. time.strftime( -> strftime(format[, tuple]) -> string

  4. klawisz F2 pozwala na zapytanie o sygnaturę funkcji bez wpisywania jej w bieżącym buforze

  5. klawisz F3 pozwala na pobranie opisu dowolnego elementu bez konieczności zaznaczania kursorem i wciskania F1

Instalacja:

  1. zainstalować Pymacsa
  2. Pliki python-mode.el i pycomplete.el skopiować na ścieżkę load_path Emacsa (np. /usr/share/emacs/site-lisp).
  3. Plik pycomplete.py skopiować na ścieżkę PYTHONPATH (np. /usr/lib/python2.5/site-packages)
  4. dodać poniższe ustawnienia do pliku konfiguracyjnego .emacs
# .emacs

(require 'pycomplete)
(setq auto-mode-alist (cons '("\\.py$" . python-mode) auto-mode-alist))
(autoload 'python-mode "python-mode" "Python editing mode." t)
(autoload 'pymacs-load "pymacs" nil t)
(autoload 'pymacs-eval "pymacs" nil t)
(autoload 'pymacs-apply "pymacs")
(autoload 'pymacs-call "pymacs")
(setq interpreter-mode-alist(cons '("python" . python-mode)
                             interpreter-mode-alist))

# end of .emacs