I installed Emacs for Python (from this github repo) on my Emacs 24.5.1. When I start an IPython shell, auto-complete with tab doesn't work. Instead, the tab key just insert four spaces. But if I press Enter leaving those spaces, the auto-complete suggestions appear in the buffer.
For example:
In [6]: import numpy as np
In [7]: x = np.arr
np.array np.array_equal np.array_repr np.array_str
np.array2string np.array_equiv np.array_split
np.array np.array_equal np.array_repr np.array_str
np.array2string np.array_equiv np.array_split
In [8]:
After x = np.arr
, I pressed tab twice before Enter, and then all suggestions appeared at once.
If I press M-/
, Emacs tries to auto-complete the name, but it doesn't show me all options. In the example above, I would have to press it many times to cicle through all available completions.
My .emacs
file is as follows:
(load-file "/home/erickrf/.emacs.d/emacs-for-python/epy-init.el")
(epy-setup-ipython)
;; disable auto parenthesis completion
(setq skeleton-pair nil)
(put 'erase-buffer 'disabled nil)
This is a similar problem. I tried the solution in the accepted answer, but it didn't work for me. Whenever I pressed tab, Emacs would show the error message Symbol's value as variable is void: python-shell-completion-complete-or-indent
(require 'python)
before you do that, at least make sure that: github.com/gabrielelanaro/emacs-for-python/blob/… you have this line in yourpython.el
. Actually, wait, I don't know if this extends to Python shell, but you are trying to do that in the shell, right, not in a *.py file? – wvxvw Nov 29 '15 at 9:09