Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Emacs et python

7 réponses
Avatar
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`\.=13 \gdef .{\cdot} \endgroup
-+- Joss in fr.comp.text.tex -+-

7 réponses

Avatar
JJ. Rétorré
Reboux Olivier disait le 12/30/10 que :

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.
Avatar
Pascal J. Bourguignon
Reboux Olivier writes:

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 {}.
Avatar
Reboux Olivier
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 -+-
Avatar
Reboux Olivier
Le 30/12/2010 14:50, Pascal J. Bourguignon a écrit :
Reboux Olivier writes:

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 -+-
Avatar
Pascal J. Bourguignon
Reboux Olivier writes:

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 {}.
Avatar
Damien Wyart
* Alain Ketterlin in fr.comp.applications.emacs:
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
Avatar
Reboux Olivier
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 -+-