From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Thierry Volpiatto Newsgroups: gmane.emacs.help Subject: Re: Perfect python environment Date: Fri, 11 Sep 2009 22:56:02 +0200 Organization: ThierryVolpiatto Message-ID: <87eiqdfbfh.fsf@tux.homenetwork> References: <1252438710.3454.0.camel@coepsfest> <87eiqgbrgd.fsf@tux.homenetwork> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1252703091 8033 80.91.229.12 (11 Sep 2009 21:04:51 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 11 Sep 2009 21:04:51 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Fri Sep 11 23:04:42 2009 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1MmDIL-0003mA-QC for geh-help-gnu-emacs@m.gmane.org; Fri, 11 Sep 2009 23:04:38 +0200 Original-Received: from localhost ([127.0.0.1]:58530 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MmDIL-0004zN-BK for geh-help-gnu-emacs@m.gmane.org; Fri, 11 Sep 2009 17:04:37 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MmDHH-00041B-FP for help-gnu-emacs@gnu.org; Fri, 11 Sep 2009 17:03:31 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MmDHC-0003so-3S for help-gnu-emacs@gnu.org; Fri, 11 Sep 2009 17:03:30 -0400 Original-Received: from [199.232.76.173] (port=35083 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MmDHB-0003sN-OF for help-gnu-emacs@gnu.org; Fri, 11 Sep 2009 17:03:25 -0400 Original-Received: from lo.gmane.org ([80.91.229.12]:60921) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1MmDHA-0005vb-Sg for help-gnu-emacs@gnu.org; Fri, 11 Sep 2009 17:03:25 -0400 Original-Received: from list by lo.gmane.org with local (Exim 4.50) id 1MmDGn-0003EL-2W for help-gnu-emacs@gnu.org; Fri, 11 Sep 2009 23:03:01 +0200 Original-Received: from 121.78.88-79.rev.gaoland.net ([79.88.78.121]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 11 Sep 2009 23:03:01 +0200 Original-Received: from thierry.volpiatto by 121.78.88-79.rev.gaoland.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 11 Sep 2009 23:03:01 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 134 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 121.78.88-79.rev.gaoland.net Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAElBMVEUHAwNfJRBVTESlTym0 RB/OwKFivhZqAAAACXBIWXMAAAsSAAALEgHS3X78AAAACXZwQWcAAAAwAAAAMADO7oxXAAABeElE QVQ4y3VTW47CMAyMwwUyTfYfUvG/wfC/ET4B0t7/KmsHurRgXFVVPRm/xglhsRj2+npW98G3+Amp tS5BXxl3SqzcXGRuEyf7n5lPA9jXetNPRhE7EJkzfz8YWnIgBSwW95TK4H79/t4GINKNADWj4PgA DiJX/ZxFDzDXeb4oYMw7kNUvyMzcaj3ioICG4hCKEShkPpwQ49Q05nnkGAQLDFDdExjm0qpowBYA Wi61bDlFU1GW0WbY2dSJYX5ZD2S0AiZL+rPyE19TpMzP2IvNWly+NkuWNgD4pO2oL73IQXoSyVX2 NHna7tgadWRXoCdvf2guqEcvGHqZwE520iRD0/QCYiiTE+U21w1Qxvg6iSp9fbIiDCnSAelDkCVF Vn+HekqXzRybwJ40xF4DMRG6SWGK9G1lYzHSxLYEm05GWbpJCB6A9tb9A3BGn2XdwJbS/WuInj74 4QNF8sVFdP3vl+5tgYp4Ev7fyrfFMkXgElDgV4uV/w8TWEeLCIGJ/AAAACV0RVh0Y3JlYXRlLWRh dGUAMjAwOC0wNS0zMVQyMjoxNDoyMiswMjowMM7uH/IAAAARdEVYdGpwZWc6Y29sb3JzcGFjZQAy LHVVnwAAACB0RVh0anBlZzpzYW1wbGluZy1mYWN0b3IAMngyLDF4MSwxeDFJ+qa0AAAAJXRFWHRt b2RpZnktZGF0ZQAyMDA3LTEwLTI4VDE3OjA4OjQ4KzAxOjAwhqNSRgAAAABJRU5ErkJggg== User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) Cancel-Lock: sha1:Tb4nusVPoxE0jQ8T0K67hXcMv0k= X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 3) X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:68058 Archived-At: Neal Becker writes: > 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-") > 'anything-ipython-complete))) > (add-hook 'ipython-shell-hook #'(lambda () > (define-key py-mode-map (kbd "C-") > 'anything-ipython-complete))) > (require 'anything-show-completion) It seem your configuration of anything-ipython is wrong, be sure to read carefully the instructions in anything-ipython.el. I can't reproduce your error. Here is my config: ,----[ Config thierry anything-ipython ] | (require 'anything-ipython) | (add-hook 'python-mode-hook #'(lambda () | (define-key py-mode-map (kbd "M-") 'anything-ipython-complete))) | (add-hook 'ipython-mode-hook #'(lambda () | (define-key py-mode-map (kbd "M-") 'anything-ipython-complete))) | | (add-hook 'ipython-shell-hook #'(lambda () | (define-key py-mode-map (kbd "M-") 'anything-ipython-complete))) | (when (require 'anything-show-completion nil t) | (use-anything-show-completion 'anything-ipython-complete | '(length initial-pattern))) | (define-key py-mode-map (kbd "C-c M") 'anything-ipython-import-modules-from-buffer) `---- To have completion in python buffer (i.e in your python file, not the shell) you have to start first the ipython interpreter, and then load all the modules you have in your python file. Load modules one by one in ipython interpreter or use from your file C-c M (see above). Be sure also to setup python-mode (PYTHON-MODE, not the bad one that come with emacs) correctly. Let me know if you have more problems. > But completions don't work in python buffer. Hitting C-, 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) > > > > > -- A + Thierry Volpiatto Location: Saint-Cyr-Sur-Mer - France