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

Bloquer le curseur sur le prompt dans le shell 'comint'

19 réponses
Avatar
Nicolas Pernetty
Bonjour,

Je souhaiterais pouvoir envoyer automatiquement le curseur derrière le
prompt lorsque je passe dans un buffer comint (je ne sais pas si c'est
le bon terme, mais bon ce sont les buffers spéciaux, type shell,
python-shell ou matlab-shell) et surtout qu'il y reste et que l'on ne
puisse pas se balader à loisirs dans la fenêtre et pouvoir écrire du
texte n'importe où.

En bref, j'aimerais que le buffer se comporte comme un xterm normal :
On peut selectionner du texte partout à la souris mais le curseur reste
bloqué au niveau du shell.

Est-ce que cela est possible avec Xemacs 21.4.17 ? Si oui comment
faire ?

Merci d'avance,

9 réponses

1 2
Avatar
Matthieu Moy
Nicolas Pernetty writes:

ou pouvoir lire la
sortie pendant que ça continue de défiler en bas.



Ah oui... c'est vrai que cela peut être très pratique !
Comme je ne peux pas le faire avec un xterm standard, je n'y avais pas
du tout pensé...



Dans un xterm standard, tu as C-s pour figer l'affichage, et le
programme continue à tourner en remplissant un buffer. C-q pour
dé-figer l'affichage.

Sans doute qu'avec de l'expérience c'est effectivement plus rapide au
clavier avec emacs. En tous cas avec d'autres éditeurs de texte
'standard' du genre notepad ou nedit, c'est quand même plus facile à la
souris je trouve.



Ça dépends pour quoi faire je trouve. Et ça dépend des gouts. Perso,
je trouve que le copier-coller à la souris d'Emacs est extremement
bien fait. Clic gauche pour commencer une selection. Clic droit pour
copier. Second clic droit pour couper.

Moi, j'ai paramêtré Emacs pour que le « coller » standard se fasse au
niveau du pointeur de souris, mais le « coller » de la selection
secondaire se fait à l'endroit du curseur. Résultat, si je veux
insérer du texte au niveau du curseur, je met mon pouce gauche sur
Meta, je selectionne à la souris, clic du milieu n'importe ou et le
texte est inséré au niveau du curseur (y compris si j'ai copié depuis
un buffer différent, et y compris si le curseur est dans le
mini-buffer). Je trouve ça bien plus rapide qu'au clavier, parce que
je n'ai pas a remettre le curseur à sa place avant de coller.

--
Matthieu
Avatar
drkm
Nicolas Pernetty writes:

On Thu, 03 Nov 2005 22:40:37 +0100, drkm
wrote :

Nicolas Pernetty writes:

> Par contre je ne vois pas trop bien où est l'intérêt de pouvoir 'se
> balader' dans un buffer type shell ?

ELISP> (defun contre-exemple ()
(message "Ceci est un contre exemple."))
contre-exemple
ELISP> (contre-exemple)
"Ceci est un contre exemple."
ELISP> (stringp (contre-exemple))
t
ELISP>

Par contre, je vois mal l'intérêt de cantonner l'utilisateur
dans la ligne de prompt.



J'ai bien passé 5 bonnes minutes à examiner le code sans comprendre
l'argument...
Peux-tu détailler svp ?



:-) C'est juste un bout de code saisi dans IELM, un mode
« comint ». Je l'ai saisi là-bas car ce mode offre des
facilités, mais je voulais le coller dans l'article, évidemment.
Comment aurais-je pu le faire si je n'avais pas pu me balader
dans le buffer pour copier la région ?

--drkm
Avatar
Sébastien Kirche
Le 3 novembre 2005 à 22:11, Nicolas Pernetty vraute :

> > Est-ce que cela est possible avec Xemacs 21.4.17 ? Si oui comment
> > faire ?
>
> Je ne sais pas mais je vais essayer de chercher : ça m'intéresse
> aussi et c'est vrai que dans l'eshelle c'est casse-pieds :)

Merci ! Je continue à chercher de mon côté mais j'ai un peu de mal à
trouver la bonne requête dans Google...



Bon, je n'ai pas trouvé.

D'un autre côté j'ai trouvé les réponses du fil assez pertinente et
grâce à Léopold, j'ai enfin le raccourci qu'il me manquait (M->) pour
revenir sur le prompt.

Donc le comportement d'éditeur-prompt me convient au final.

--
Sébastien Kirche
Avatar
Matthieu Moy
Sébastien Kirche writes:

D'un autre côté j'ai trouvé les réponses du fil assez pertinente et
grâce à Léopold, j'ai enfin le raccourci qu'il me manquait (M->) pour
revenir sur le prompt.



Au passage, M-> est plus général que ça :

,----[ C-h k M-> ]
| M-> runs the command end-of-buffer
| which is an interactive compiled Lisp function in `simple'.
| It is bound to <C-end>, M->, C-M-:, <menu-bar> <edit> <goto> <end-of-buf>.
| (end-of-buffer &optional arg)
|
| Move point to the end of the buffer; leave mark at previous position.
| With C-u prefix, do not set mark at previous position.
| With numeric arg N, put point N/10 of the way from the end.
|
| If the buffer is narrowed, this command uses the beginning and size
| of the accessible part of the buffer.
|
| Don't use this command in Lisp programs!
| (goto-char (point-max)) is faster and avoids clobbering the mark.
|
| [back]
`----

--
Matthieu
Avatar
Sébastien Kirche
Le 4 novembre 2005 à 09:11, Matthieu Moy vraute :

Au passage, M-> est plus général que ça :

,----[ C-h k M-> ]
| M-> runs the command end-of-buffer
| [...]
`----



Ah ben oui, tiens.

En fait ça ne fait rien de plus que mon C-end que j'ai même remappé
moi-même sur le mac :

(global-set-key (kbd "<C-kp-end>") (kbd "<C-end>"))

Bon, j'avais pas fait gaffe à ça (que j'avais déjà la fonction
nécessaire à disposition).

Décidément, je devrais m'abstenir de poster avant le café de 10h :o/

--
Sébastien Kirche
Avatar
Xavier Maillard
On 4 nov 2005, Matthieu Moy wrote:

Ça dépends pour quoi faire je trouve. Et ça dépend des gouts.
Perso, je trouve que le copier-coller à la souris d'Emacs est
extremement bien fait. Clic gauche pour commencer une
selection. Clic droit pour copier. Second clic droit pour
couper.



Tout à fait étonnant ! Je ne connaissais pas du tout cette chose
avec la souris, je viens de le tester ici et cela fonctionne
parfaitement.

Merci du tuyau.
--
No e-patents, pas de brevets logiciels
Pétition contre les brevets logiciels : http://petition.eurolinux.org
Avatar
Matthieu Moy
Xavier Maillard writes:

Tout à fait étonnant ! Je ne connaissais pas du tout cette chose
avec la souris, je viens de le tester ici et cela fonctionne
parfaitement.



Avec une pensée émue pour les utilisateurs de XEmacs qui ont un menu
qui sert à rien sur le bouton droit de la souris à la place de cette
merveille ;-).

--
Matthieu
Avatar
Xavier Maillard
On 5 nov 2005, Matthieu Moy wrote:

Xavier Maillard writes:

> Tout à fait étonnant ! Je ne connaissais pas du tout cette
> chose avec la souris, je viens de le tester ici et cela
> fonctionne parfaitement.

Avec une pensée émue pour les utilisateurs de XEmacs qui ont un
menu qui sert à rien sur le bouton droit de la souris à la
place de cette merveille ;-).



Je n'ai jamais essayé XEmacs, difficile de m'émouvoir dans ce cas :)
--
"sometimes i feel like we're making emacs better and better because we don't
know what to do with emacs once it is finished."

-- AlexSchroeder on #emacs @OPN
Avatar
Sébastien Kirche
Le 5 novembre 2005 à 08:11, Xavier Maillard a dit :

Tout à fait étonnant ! Je ne connaissais pas du tout cette chose
avec la souris, je viens de le tester ici et cela fonctionne
parfaitement.

Merci du tuyau.



[+1] :o)

--
Sébastien Kirche
1 2