|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 4 ![]() |
Bonjour,
j'utilise ocaml sous windows et quand j'écris puis entrée puis le nb puis entrée il ne se passe rien, est ce que quelqu'un a déjà eu ce problème et aurais une réponse?
|
|
|
00
|
|
|
#2 | ||
![]() ![]() ![]() Nicolas ValléeIngénieur d'études Inscription : décembre 2005 Messages : 9 961 ![]() |
bizarre, ça ne le fait pas sous la version unix
Code :
|
||
|
|
00
|
|
|
#3 | ||
|
Inactif
Inscription : juillet 2005 Messages : 1 958 ![]() |
et sous Mac aussi
Code :
|
||
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Inscription : mars 2002 Messages : 962 ![]() |
Tu testes dans quel logiciel ? Il attend peut-être ";;" avant d'envoyer la valeur au mode interactif ? (il me semble que le mode tuareg le fait)
|
|
|
00
|
|
|
#5 | |
|
Membre du Club
![]() Inscription : mai 2005 Messages : 130 ![]() |
Citation:
le toplevel attend une valeur, je tape 2 puis "entrée", emacs rajoute ";;" et la fonction read_int plante avec euh... on fait comment dans ce cas .... |
|
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Inscription : mars 2002 Messages : 962 ![]() |
Je viens d'essayer avec le mode tuareg, ça marche si on entre la valeur dans le "caml-toplevel". Les points-virgules ne sont ajoutés qu'avec les fonctions de type tuareg-eval- (C-c C-e et les autres).
En général, je préfère passer les valeurs en argument aux fonctions, plutôt que de faire un read_. Je trouve ça plus pratique avec le mode interactif. |
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 4 ![]() |
Je crois que c'est un problème qui concerne la boucle interactive sous windows,c'est quand même vachement handicapant de ne pas pouvoir faire une entée sortie, ça ne marche pas non plus avec les ;; apres le nb,alors...
|
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 4 ![]() |
pardon c'est quoi le mode tuareg et le caml-toplevel?Merci d'avance...
|
|
|
00
|
|
|
#9 | |||
![]() ![]() Damien GuichardInscription : juin 2007 Messages : 1 512 ![]() |
@gilou
La lecture en entrée ne fonctionne pas dans l'interface OCamlWin(Plus). Tu dois ouvrir un CMD.EXE puis lancer ocaml et là ça fonctionne: Code :
Ben pareil, avec rxvt au lieu de cmd.exe. Citation:
__________________
Du même auteur: le cours OCaml, le dernier article publié, le projet, le blog dvp et le jeu vidéo. Avant de poser une question je lis les règles du forum. |
|||
|
00
|
|
|
#10 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 4 ![]() |
Merci beaucoup Spiceguid, ça fonctionne...
|
|
|
00
|
|
|
#11 | ||
|
Membre du Club
![]() Inscription : mai 2005 Messages : 130 ![]() |
Citation:
Citation:
@spiceguid : je ne connais pas rxvt, j'utilise parfois ocaml dans le terminal gnome - read_int() n'y pose pas de pb. |
||
|
|
00
|
|
|
#12 | ||
|
Futur Membre du Club
![]() Inscription : février 2008 Messages : 75 ![]() |
Bonjour
J'ai déjà eu le même problème (rajout des ;; sous Emacs ce qui fait planter read_int) et pour le contourner j'ai trouvé la parade suivante (c'est un peu beaucoup du bricolage), j'ai rajouté au début de mon programme le code Code :
C'est pas super joli, mais ça marche Fractal |
||
|
|
00
|
|
|
#13 |
|
Membre du Club
![]() Inscription : mai 2005 Messages : 130 ![]() |
merci pour l'astuce...s'il n'y a rien de mieux c'est ce que je vais faire ...
|
|
|
00
|
|
|
#14 |
|
Membre Expert
![]() Inscription : mars 2002 Messages : 962 ![]() |
Je viens de regarder le code Lisp. Il suffit d'appeler la fonction comint-send input pour envoyer l'entrée au mode interactif, sans attendre ";;". Par chance, il y a déjà un raccourci pour cette fonction : il s'agit de M-entrée.
|
|
|
00
|
|
|
#15 |
|
Invité de passage
![]() Inscription : décembre 2008 Messages : 1 ![]() |
|
|
|
00
|
|
|
#16 | ||
|
Membre Expert
![]() Inscription : novembre 2005 Messages : 1 900 ![]() |
Sous Windows, en utilisant OcamlWinPlus, j'ai le même problème que toi.
Par contre, pas en utilisant le toplevel ocaml. Ouvre une invite de commandes, tape Puis ressaisi ta ligne Ton nombre Et ça fonctionnera. Code :
|
||
|
|
00
|
|
|
#17 |
|
Invité de passage
![]() Ghislain FoulquierInscription : octobre 2012 Messages : 1 ![]() |
J'ai affecté la commande comint-send-input à une touche (f10 par exemple)
Dans le fichier d'initialisation de Emacs ( le mien est .emacs.d/init.el) j'ai écrit : (global-set_key [f10] 'comint-send-input) puis sauvé le fichier (C-x C-s) J'utilise la touche f10 au lieu de <RET>. Voir le lien http://www.gnu.org/software/emacs/ma...Init-Rebinding Remarque : dans Emacs read_int() marche dans inferior-caml mais pas dans caml-toplevel. Elle marche aussi dans un terminal mais pas dans la boucle d'interaction de ocaml (sous Windows). |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com