0

Is there any working Intellisense/Completion in Emacs' built-in module python.el? If so how do I activate it permantenly?

Update:

When I hit C-M-i (completion-at-point) my Vanilla Emacs errors as

Debugger entered--Lisp error: (wrong-type-argument integer-or-marker-p nil)
  buffer-substring-no-properties(nil 243)
  python-shell-completion-at-point(#<process Python>)
  python-completion-at-point()
  completion--capf-wrapper(python-completion-at-point all)
  run-hook-wrapped(completion--capf-wrapper python-completion-at-point all)
  completion-at-point()
  funcall-interactively(completion-at-point)
  call-interactively(completion-at-point nil nil)
  command-execute(completion-at-point)

What have I missed?

Nordlöw
  • 11,838
  • 10
  • 52
  • 99
  • What exists before the point when you hit `C-M-i`? Also, there is an Emacs Stack Exchange. – nanny Dec 01 '14 at 18:05
  • Looks like you're hitting a bug. Without knowing more details, such as Emacs version, and specific steps you're taking to reproduce this bug, it's hard to help. – Stefan Dec 01 '14 at 20:17
  • 1
    Nothing happens when I do `C-M-i` in python-mode. Do I have to load the buffer in a python interpreter prior to completion? – Nordlöw Dec 06 '14 at 14:17

2 Answers2

0

AFAIK it's enabled by default. Just hit TAB when you want completion. If you want the completion candidates to be suggested in a popup menu without you hitting a special key, you can use company-mode from GNU ELPA.

Stefan
  • 27,908
  • 4
  • 53
  • 82
0

I would personally recommend using elpy and autocomplete, using jedi as the backend for code completion.

See here and here for more detail.

Andrew Winterbotham
  • 1,000
  • 7
  • 13