Emacs et python

Le
Reboux Olivier
Bonjour et bonnes fêtes à tous

J'essaye de faire un peu de python et ce !@#?§§ d'emacs me fait des misères.

le programme suivant fonctionne en ligne de commande mais refuse de
fonctionner avec emacs via C-C C-C. Quelqu'un aurait-il une raison du
pourquoi du comment ?

-%<--
# -*- coding:latin-1 -*-

#from math import *

############# Main #############
print 'Essai à é è ö û'
print 'Entrer le nombre nn : ',
nn = input( )
print 'Vous avez entré N = ', nn

-%<--

Message (cryptique) d'erreur

Essai à é è ö û
Entrer le nombre nn : Traceback (most recent call last):
File "<stdin>", line 8, in <module>
EOFError: EOF when reading a line

D'avance merci pour tout début d'idées.

Olivier Reboux
--
sinon (solution plus jean-cômique ;-)
begingroup catcode`. gdef .{cdot} endgroup
-+- Joss in fr.comp.text.tex -+-
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
JJ. Rétorré
Le #22969841
Reboux Olivier
Bonjour et bonnes fêtes à tous

J'essaye de faire un peu de python et ce !@#?§§ d'emacs me fait des misères.

le programme suivant fonctionne en ligne de commande mais refuse de
fonctionner avec emacs via C-C C-C. Quelqu'un aurait-il une raison du
pourquoi du comment ?

-%<-----------------------------------------
# -*- coding:latin-1 -*-

#from math import *

############# Main #############
print 'Essai à é è ö û'
print 'Entrer le nombre nn : ',
nn = input( )
print 'Vous avez entré N = ', nn

-%<-----------------------------------------

Message (cryptique) d'erreur

Essai à é è ö û
Entrer le nombre nn : Traceback (most recent call last):
File "<stdin>", line 8, in <module>



Selon le mode dans lequel tu es, C-c C-c envoie une commande ou une
autre.
Pour savoir la commande qui est envoyée,
C-h k puis C-c C-c
la commande est alors décrite.

M-x run-python devrait faire ce que tu veux.

--
JJR.
Pascal J. Bourguignon
Le #22970921
Reboux Olivier
Bonjour et bonnes fêtes à tous

J'essaye de faire un peu de python et ce !@#?§§ d'emacs me fait des misères.

le programme suivant fonctionne en ligne de commande mais refuse de
fonctionner avec emacs via C-C C-C. Quelqu'un aurait-il une raison du
pourquoi du comment ?

-%<-----------------------------------------
# -*- coding:latin-1 -*-

#from math import *

############# Main #############
print 'Essai à é è ö û'
print 'Entrer le nombre nn : ',
nn = input( )
print 'Vous avez entré N = ', nn

-%<-----------------------------------------

Message (cryptique) d'erreur

Essai à é è ö û
Entrer le nombre nn : Traceback (most recent call last):
File "<stdin>", line 8, in <module>
EOFError: EOF when reading a line

D'avance merci pour tout début d'idées.



Ici, ça marche bien:

Essai à é è ö û






Entrer le nombre nn : 42
Vous avez entré N = 42
quit






Use quit() or Ctrl-D (i.e. EOF) to exit
quit()







Process Python finished


emacs-version "23.2.1"

--
__Pascal Bourguignon__ http://www.informatimago.com/
A bad day in () is better than a good day in {}.
Reboux Olivier
Le #22970911
Le 30/12/2010 11:45, JJ. Rétorré a écrit :
[COUIC]

Selon le mode dans lequel tu es, C-c C-c envoie une commande ou une
autre.
Pour savoir la commande qui est envoyée,
C-h k puis C-c C-c
la commande est alors décrite.

M-x run-python devrait faire ce que tu veux.



Merci pour ses informations, Jean-Jacques. Malheureusement, cela ne me
permet pas de résoudre mon problème : Lancer python depuis emacs. C'est
d'autant plus bizarre que c'est la fonction input() qui merdoie. Si
j'utilise un autre programme qui ne fait pas appel à cette fonction,
cela fonctionne. Est-ce une particularité de l'appel de python par emacs ?

Olivier Reboux

--
J'ai vraiment l'impression, à chaque fois que je suis contraint de
"mettre les mains dans ce camboui", de disséquer un oursin :
magnifique vu de l'extérieur et dans son contexte, difficile d'accès,
dangereux à manipuler, sentant vite fort au soleil, renfermant certes
des trésors, mais dont la structure interne manque de consistance et
de clarté.
-+- Usenet poster in fr.comp.text.tex -+-
Reboux Olivier
Le #22971011
Le 30/12/2010 14:50, Pascal J. Bourguignon a écrit :
Reboux Olivier
Bonjour et bonnes fêtes à tous

J'essaye de faire un peu de python et ce !@#?§§ d'emacs me fait des misères.

le programme suivant fonctionne en ligne de commande mais refuse de
fonctionner avec emacs via C-C C-C. Quelqu'un aurait-il une raison du
pourquoi du comment ?

-%<-----------------------------------------
# -*- coding:latin-1 -*-

#from math import *

############# Main #############
print 'Essai à é è ö û'
print 'Entrer le nombre nn : ',
nn = input( )
print 'Vous avez entré N = ', nn

-%<-----------------------------------------

Message (cryptique) d'erreur

Essai à é è ö û
Entrer le nombre nn : Traceback (most recent call last):
File "<stdin>", line 8, in<module>
EOFError: EOF when reading a line

D'avance merci pour tout début d'idées.



Ici, ça marche bien:

Essai à é è ö û






Entrer le nombre nn : 42
Vous avez entré N = 42
quit






Use quit() or Ctrl-D (i.e. EOF) to exit
quit()







Process Python finished


emacs-version "23.2.1"



Merci pour ce retour. Je jure de n'avoir rien changé au comportement par
défaut de emcas concernant python.

Voilà ce que donne C-h k C-c C-c :
-%<----------------------------------------------
C-c C-c runs the command py-execute-buffer, which is an interactive
compiled Lisp function in `python-mode.el'.

It is bound to C-c C-c, <menu-bar> <Python> <Execute buffer>.

(py-execute-buffer &optional async)

Send the contents of the buffer to a Python interpreter.
If the file local variable `py-master-file' is non-nil, execute the
named file instead of the buffer's file.

If there is a *Python* process buffer it is used. If a clipping
restriction is in effect, only the accessible portion of the buffer is
sent. A trailing newline will be supplied if needed.

See the `C-c |' docs for an account of some
subtleties, including the use of the optional async argument.
-%<----------------------------------------------
Et ma version de emacs :
GNU Emacs 23.1.1 (i386-mandrake-linux-gnu, GTK+ Version 2.20.0)
of 2010-04-20 on n1.mandriva.com, modified by Mandriva
-%<----------------------------------------------

Olivier Reboux
PS : j'aimais bien la fortune précédente, elle correspond toutafé à mon
ressenti concernant emacs
--
Si Google est ton ami, alors CTAN doit être ton frère !
-+- Alexandre P. in fr.comp.text.tex -+-
Pascal J. Bourguignon
Le #22971091
Reboux Olivier
Voilà ce que donne C-h k C-c C-c :
-%<----------------------------------------------
C-c C-c runs the command py-execute-buffer, which is an interactive
compiled Lisp function in `python-mode.el'.



J'ai entendu dire qu'il y avait trois modes python différents. En
effet, C-h k C-c C-c indique chez moi que c'est python-send-buffer qui
est exécuté. python-send-buffer est dans le python-mode distribué avec
emacs.

py-execute-buffer semble appartenir à un mode python installé séparément
d'emacs (je suis sur gentoo):

[I--] [ ] app-emacs/python-mode-5.1.0 (0)

DESCRIPTION="An Emacs major mode for editing Python source"
HOMEPAGE="https://launchpad.net/python-mode"


Essaye de désinstaller ce dernier, et relance emacs, pour activer le
python-mode d'emacs.

--
__Pascal Bourguignon__ http://www.informatimago.com/
A bad day in () is better than a good day in {}.
Damien Wyart
Le #22971361
* Alain Ketterlin
Pour ce que j'en ai vu, python-mode me semblait un peu abandonné, mais
je me trompe peut-être. En tout cas, en supprimer l'installation te
ramènera à python.el, qui a l'air de fonctionner.



python-mode est toujours actif ; il n'évolue pas très vite, c'est sûr,
mais n'est pas abandonné : https://launchpad.net/python-mode

--
DW
Reboux Olivier
Le #22975541
Merci pour tout ces informations. Je ne trouve pas d'autres modes python
chez Mandriva (qui commence à me les broyer menues et je sens qu'une des
bonnes intentions 2011 va être de passer chez Ubuntu).

Je vais pour l'instant poursuivre les compilations via la ligne de
commande.

Bonnes fêtes et bonne année 2011.
Olivier Reboux
--
<Eddie> Merci pour toute aide...
<Jean-Côme> Ben pas de quoi. Tu es dans la merde :-)
-+- in fr.comp.text.tex -+-
Publicité
Poster une réponse
Anonyme