unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: Neal Becker <ndbecker2@gmail.com>
To: help-gnu-emacs@gnu.org
Subject: Re: Perfect python environment
Date: Fri, 11 Sep 2009 07:50:54 -0400	[thread overview]
Message-ID: <h8ddiu$pc1$2@ger.gmane.org> (raw)
In-Reply-To: 87eiqgbrgd.fsf@tux.homenetwork

Thierry Volpiatto wrote:

> Hi, i never been able to install rope correctly also.
> even when installed, i found severe bugs that crash emacs (don't
> remember what it was).
> 
> If you just want completion in python, consider using ipython as
> python-shell in emacs and use anything-python for completion.
> See:
> 
> http://ipython.scipy.org/
> http://www.emacswiki.org/cgi-bin/emacs/PythonMode
> http://www.emacswiki.org/cgi-bin/emacs/anything-ipython.el
> 
Thanks!  I installed anything-ipython, and now in ipython shell, I have 
completions.

I also added:
(add-hook 'python-mode-hook #'(lambda ()
                                (define-key py-mode-map (kbd "C-<tab>") 
'anything-ipython-complete)))
(add-hook 'ipython-shell-hook #'(lambda ()
                                  (define-key py-mode-map (kbd "C-<tab>") 
'anything-ipython-complete)))
(require 'anything-show-completion)

But completions don't work in python buffer.  Hitting C-<tab>, I am prompted 
with "pattern:", then I get:

Debugger entered--Lisp error: (cl-assertion-failed header-pos)
  signal(cl-assertion-failed (header-pos))
  (or header-pos (signal (quote cl-assertion-failed) (list ...)))
  (progn (or header-pos (signal ... ...)) nil)
  (assert header-pos)
  (save-excursion (assert header-pos) (goto-char header-pos) (buffer-
substring-no-properties (line-beginning-position) (line-end-position)))
  (let* ((header-pos ...) (source-name ...)) (some (lambda ... ...) 
(anything-get-sources)))
  (save-current-buffer (set-buffer (anything-buffer-get)) (goto-char 
(overlay-start anything-selection-overlay)) (let* (... ...) (some ... ...)))
  (with-current-buffer (anything-buffer-get) (goto-char (overlay-start 
anything-selection-overlay)) (let* (... ...) (some ... ...)))
  (if (and (boundp ...) (stringp anything-source-name)) source (with-
current-buffer (anything-buffer-get) (goto-char ...) (let* ... ...)))
  anything-get-current-source()
  (or anything-saved-current-source (anything-get-current-source))
  (let ((source ...)) (if (and ... ...) (setq selection "")) (setq display-
to-real (or display-to-real ... ...)) (if (and ... ...) (setq action ...)) 
(unless clear-saved-action (setq anything-saved-action nil)) (if (and 
selection action) (anything-funcall-with-source source action ...)))
  anything-execute-selection-action()
  (unwind-protect (anything-execute-selection-action) (anything-aif (get-
buffer anything-action-buffer) (kill-buffer it)) (run-hooks (quote anything-
after-action-hook)))
  (if anything-quit nil (unwind-protect (anything-execute-selection-action) 
(anything-aif ... ...) (run-hooks ...)))
  (unless anything-quit (unwind-protect (anything-execute-selection-action) 
(anything-aif ... ...) (run-hooks ...)))
  (let ((frameconfig ...) anything-source-name anything-in-persistent-action 
anything-quit anything-follow-mode (case-fold-search t) (anything-buffer 
...) (anything-sources ...)) (add-hook (quote post-command-hook) (quote 
anything-check-minibuffer-input)) (add-hook (quote minibuffer-setup-hook) 
(quote anything-print-error-messages)) (setq anything-current-position (cons 
... ...)) (if any-resume (anything-initialize-overlays ...) (anything-
initialize)) (setq anything-last-buffer anything-buffer) (when any-input 
(setq anything-input any-input anything-pattern any-input)) (anything-
display-buffer anything-buffer) (unwind-protect (progn ... ... ... ...) 
(anything-cleanup) (remove-hook ... ...) (remove-hook ... ...) (anything-
set-frame/window-configuration frameconfig)) (unless anything-quit (unwind-
protect ... ... ...)))
  (progn (let (... anything-source-name anything-in-persistent-action 
anything-quit anything-follow-mode ... ... ...) (add-hook ... ...) (add-hook 
... ...) (setq anything-current-position ...) (if any-resume ... ...) (setq 
anything-last-buffer anything-buffer) (when any-input ...) (anything-
display-buffer anything-buffer) (unwind-protect ... ... ... ... ...) (unless 
anything-quit ...)))
  (unwind-protect (progn (let ... ... ... ... ... ... ... ... ... ...)) 
(loop for (var . value) in --orig-vars do (set var value)))
  (let ((--orig-vars ...)) (unwind-protect (progn ...) (loop for ... in --
orig-vars do ...)))
  (with-anything-restore-variables (let (... anything-source-name anything-
in-persistent-action anything-quit anything-follow-mode ... ... ...) (add-
hook ... ...) (add-hook ... ...) (setq anything-current-position ...) (if 
any-resume ... ...) (setq anything-last-buffer anything-buffer) (when any-
input ...) (anything-display-buffer anything-buffer) (unwind-protect ... ... 
... ... ...) (unless anything-quit ...)))
  (condition-case v (with-anything-restore-variables (let ... ... ... ... 
... ... ... ... ... ...)) (quit (setq minibuffer-history ...) (goto-char 
...) (set-window-start ... ...) nil))
  anything(anything-source-ipython "os.f")
  (let ((initial-pattern ...)) (anything (quote anything-source-ipython) 
initial-pattern))
  anything-ipython-complete()
  call-interactively(anything-ipython-complete nil nil)






  reply	other threads:[~2009-09-11 11:50 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-08 19:38 Perfect python environment jakob fischer
2009-09-09  5:46 ` Thierry Volpiatto
2009-09-11 11:50   ` Neal Becker [this message]
2009-09-11 20:56     ` Thierry Volpiatto
2009-09-11 23:23       ` Neal Becker
2009-09-12  6:17         ` Thierry Volpiatto

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='h8ddiu$pc1$2@ger.gmane.org' \
    --to=ndbecker2@gmail.com \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).