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

Déplacements du curseur, fenêtre, et buffers (productivité au clavier)

22 réponses
Avatar
christophe baron
Bonjour,

Cette question est extr=E8mement triviale, mais j'ai du mal avec =E9macs
et votre aide serait quand m=EAme la bienvenue.

Je cherche les quelques commandes de base concernant les d=E9palcement
de curseur:
mot, ligne, d=E9but, fin, d=E9but et fin de page, de paragraphe, etc.
Version racourcis clavier et version commande.

=C7a m'arrangerait aussi de savoir poser des tags, (poser et revenir, et
aller, etc. (En fait l=E0, je ne sais rien du tout).

Et, naviguer entre les fen=EAtres (toujours avec le clavier).

Et aussi, lorsque je demande une action qui va utiliser une fen=EAtre
(automatiquement pour elle m=EAme, comme "help machunchose" ou
"apropos", etc.), que =E7a ne se mette pas sur ce que je suis en train
de faire. (Que je puisse chosir la fen=EAtre dans laquelle l'aide va
s'ouvrir..)

Et, si j'ai une commande en emacs-lisp dans un fichier (appris =E7a
r=E9cemment..) et que je l'ex=E9cute par M-:, ou toute autre m=E9thode que
vous voudrez bien m'indiquer, comment choisir la fen=EAtre, ou le buffer
sur lequel elle va opp=E9rer.

Je n'attends pas form=E9cment de grandes r=E9ponses, mais pas non plus
des r=E9ponses de trois mille pages sur le net ou livres: c'est de
l'utilitaire et c'est pour tout de suite.

Merci

Christophe

10 réponses

1 2 3
Avatar
Matthieu Moy
"christophe baron" writes:

Bonjour,



Bonsoir,

Cette question est extrèmement triviale, mais j'ai du mal avec émacs



Rahh, si tu met un accent à la place de la majuscule à Emacs, je sais
pas si on va t'accepter dans notre église ;-).

Je cherche les quelques commandes de base concernant les dépalcement
de curseur:
mot, ligne, début, fin, début et fin de page, de paragraphe, etc.
Version racourcis clavier et version commande.



Lire de toute urgence le tutorial. C-h t, ou bien menu Help, ou bien
la version Française ici :

http://www.linux-france.org/article/appli/emacs/TUTORIAL.fr

Ça m'arrangerait aussi de savoir poser des tags,



C-SPC

(poser et revenir,



C-x C-x
C-u SPC

(C-h k <suite de touche> pour avoir la doc).

Voir aussi les bookmarks (cf. manuel d'Emacs).

Et, naviguer entre les fenêtres (toujours avec le clavier).



C-x o

Et, si j'ai une commande en emacs-lisp dans un fichier (appris ça
récemment..) et que je l'exécute par M-:, ou toute autre méthode que
vous voudrez bien m'indiquer, comment choisir la fenêtre, ou le buffer
sur lequel elle va oppérer.



Par défaut, elle va s'executer dans la fenêtre dans laquelle est ton
curseur. Attention, ce qu'Emacs appelle fenêtre, c'est ce que d'autres
logiciels appellent cadre, et vice versa.

--
Matthieu
Avatar
Pascal Bourguignon
"christophe baron" writes:

Bonjour,

Cette question est extrèmement triviale, mais j'ai du mal avec émacs
et votre aide serait quand même la bienvenue.

Je cherche les quelques commandes de base concernant les dépalcement
de curseur:
mot, ligne, début, fin, début et fin de page, de paragraphe, etc.
Version racourcis clavier et version commande.



C'est bien naturel.

Quand tu lance emacs, ne t'affiche-t'il pas dans le premier buffer des
indications sur comment accéder au tutorial?

Quelque chose comme: C-h t
= taper control-h, puis t

Si tu as des problème avec l'anglais, tu peux taper C-u C-h t et alors
il te sort un menu dans lequel tu peux sélectionner la langue du
tutorial.

Noter que les séquences de touches usuelles sont trés mnémotechniques,
quand on sait un peu d'anglais...


Ça m'arrangerait aussi de savoir poser des tags, (poser et revenir, et
aller, etc. (En fait là, je ne sais rien du tout).



(info "(emacs)Registers")

C-x r SPC <letter>
C-x r j <letter>


Et, naviguer entre les fenêtres (toujours avec le clavier).



C-x o
C-x 1
C-x 2
C-x 3

Et aussi, lorsque je demande une action qui va utiliser une fenêtre
(automatiquement pour elle même, comme "help machunchose" ou
"apropos", etc.), que ça ne se mette pas sur ce que je suis en train
de faire. (Que je puisse chosir la fenêtre dans laquelle l'aide va
s'ouvrir..)



Il y a une serie de commandes *-other-window, et parfois certaines
commandes peuvent prendre un préfix (C-u) pour séléctionner une autre
window, mais en général on n'a pas trop le choix. Utiliser C-x o, C-x
b, C-x 1, C-x 2, etc pour configurer ses fenêtres comme on veut. Ce
qui peut être pratique aussi, c'est d'utiliser des frames différentes
pour éviter de chambouler la frame où on travaille.

C-x 5 2
C-x 5 0
C-x 5 o

Et, si j'ai une commande en emacs-lisp dans un fichier (appris ça
récemment..) et que je l'exécute par M-:, ou toute autre méthode que
vous voudrez bien m'indiquer, comment choisir la fenêtre, ou le buffer
sur lequel elle va oppérer.



Dans ce cas, on peut programmer les configurations de fenêtres ou de
frame, avec les commandes liées aux séquences ci-dessus.

(info "(emacs)Windows")
(info "(elisp)Windows")

On peut exécuter des expressions emacs lisp présentes dans un buffer
en se plaçant derrière et en tapant: C-x C-e, ou C-u C-x C-e si on
veut faire insérer le résultat dans le buffer.
Taper: ( + SPC 1 SPC 2 ) C-x C-e
et observer le résultat dans le mini-buffer

Taper: ( + SPC 1 SPC 2 ) SPC C-u C-x C-e
et observer le résultat s'insérer dans le buffer.


Je n'attends pas formécment de grandes réponses, mais pas non plus
des réponses de trois mille pages sur le net ou livres: c'est de
l'utilitaire et c'est pour tout de suite.



--
"By filing this bug report you have challenged the honor of my
family. Prepare to die!"
Avatar
drkm
christophe baron writes:

Je cherche les quelques commandes de base concernant les dépalcement
de curseur:
mot, ligne, début, fin, début et fin de page, de paragraphe, etc.



'C-h t' devrait t'aider. Il s'agit d'un petit tutoriel
présentant ces notions de base. Si ta locale est bien
paramétrée, tu pourras le suivre dans ta langue préférée.

Version racourcis clavier et version commande.



'C-h c <KEY SEQUENCE>' et 'C-h w <COMMAND NAME> <RET>' te
permettent te connaître l'un à partir de l'autre.

Ça m'arrangerait aussi de savoir poser des tags, (poser et revenir, et
aller, etc. (En fait là, je ne sais rien du tout).



Je ne suis pas sûr de comprendre. Le mot « tag » a une
signification particulière dans Emacs, mais j'ai l'impression que
tu souhaites plutôt utiliser des repères dans des buffers, pour
pouvoir revenir directement à l'endroit marqué. Il y a pour cela
les registres et les bookmarks.

Grosso-modo, 'C-x r <SPC> <KEY>' associe un registre à une
position dans un buffer (un registre est nommé par un caractère,
ici <KEY>). 'C-x r j <KEY>' saute (jump) à la position sauvée
dans le registre nommé <KEY>.

Si tu veux ces fonctionnalités de manière persistante, utilise
les bookmarks. Voir (info "(elisp)Registers") et plus
particulièrement (info "(elisp)RegPos") et (info
"(elisp)Bookmarks").

Et, naviguer entre les fenêtres (toujours avec le clavier).



Je te conseille Interactive Switch Buffer (ISwitchB). Sinon,
'C-x b', 'C-x B', 'C-x <right>' et 'C-x <left>'. Voir EmacsWiki
et les archives pour plus d'infos sur ISwitchB.

Et aussi, lorsque je demande une action qui va utiliser une fenêtre
(automatiquement pour elle même, comme "help machunchose" ou
"apropos", etc.), que ça ne se mette pas sur ce que je suis en train
de faire. (Que je puisse chosir la fenêtre dans laquelle l'aide va
s'ouvrir..)

Et, si j'ai une commande en emacs-lisp dans un fichier (appris ça
récemment..) et que je l'exécute par M-:, ou toute autre méthode que
vous voudrez bien m'indiquer, comment choisir la fenêtre, ou le buffer
sur lequel elle va oppérer.



Cela dépend de la commande utilisée. 'C-h f <COMMAND NAME>
<RET>' et 'C-h k <KEY>' pour l'aide sur une commande (ou la
commande associée à une séquence) particulière.

Je n'attends pas formécment de grandes réponses, mais pas non plus
des réponses de trois mille pages sur le net ou livres: c'est de
l'utilitaire et c'est pour tout de suite.



Emacs est un investissement rentable, mais qui demande du
temps. Il n'y a pas de miracle : utilisation, lecture,
utilisation, tests, recherches, utilisation ... EmacsWiki et le
manuel (info "(emacs)") sont de bons points de départ.

Bienvenue,

--drkm
Avatar
drkm
drkm writes:

Et, naviguer entre les fenêtres (toujours avec le clavier).



Je te conseille Interactive Switch Buffer (ISwitchB). Sinon,
'C-x b', 'C-x B', 'C-x <right>' et 'C-x <left>'. Voir EmacsWiki
et les archives pour plus d'infos sur ISwitchB.



Oops. Je me suis bien sûr emmêlé les pinceaux entre les
fenêtres et les buffers.

--drkm
Avatar
Sébastien Kirche
Le 7 novembre 2005 à 00:11, christophe baron s'est exprimé ainsi :

Je cherche les quelques commandes de base concernant les dépalcement
de curseur:
mot, ligne, début, fin, début et fin de page, de paragraphe, etc.
Version racourcis clavier et version commande.



Beaucoup de choses intéressantes ont déjà été dites dans le fil comme
regarder le tutoriel.

Je voudrais apporter en complément à ceci un texte de Kai Großjohann que
j'ai soigneusement conservé de comp.emacs que je trouve exemplaire pour
expliquer la disposition et la complémentarité des bindings de touches
dans Emacs.

Pour les utilisateurs habitués, cela ne vous apprendra sans doute pas
grand chose, mais pour un novice je trouvais que cela avait le mérite de
présenter cela de façon logique (ce qui est d'ailleurs le titre du
texte).

C'est en anglais mais je me disais que ça pourrait mériter une
traduction pour l'inclure à un tutoriel, ce pourquoi je l'ai conservé.

J'apprécierais assez vos commentaires sur la question.

From: (Kai Großjohann)
Subject: Re: The "logic" of keymapping
Newsgroups: comp.emacs
Date: Sat, 11 Jun 2005 23:24:39 +0200
X-Sent: 21 weeks, 1 day, 11 hours, 39 minutes, 10 seconds ago
User-Agent: Gnus/5.110004 (No Gnus v0.4) Emacs/22.0.50 (darwin)

"Rex Eastbourne" writes:

I read a thread from a while back about the "logic" of the emacs
keybinding system. I'd like to revive this topic. I am rather new to
emacs, and don't yet see why many of the keys were organized in certain
ways. Is there a comprehensive system that was used to assign keys, or
did the keybinding system just "evolve"?



It was both designed, and it evolved. In the beginning, there was a
design, but that was 20 years ago. And then Emacs evolved and grew
more and more functions. The new keybindings were then added to the
old set where they seemed to make most sense. And over time,
sometimes some kinds of keybindings were moved around to more logical
locations.

Let me try to give some of the design principles.

The basic idea is to have somewhat mnemonic keys where you can try to
remember what they do by seeing what is printed on them.

f means forward, b means back. These are associated with a horizontal
direction. n means next, p means previous, in a vertically oriented
sense. a means beginning, e means end.

C- means a basic operation, M- is based on language units (e.g. words
or sentences), C-M- means parenthesized expressions.

Thus, you get C-f for cursor right, M-f for word right, C-M-f for one
(possibly parenthesized) expression to the right. b is the same, only
backwards. C-n is next line, M-n is often unbound, C-M-n moves to the
end of the next parenthesized expression. p is like n, only
backwards.

C-a is beginning of line, M-a is beginning of sentence. e is the
opposite.

C-d means delete character, it's an exception. C-g is abort, also an
exception.

C-w means cut, M-w means copy. C-y means paste, M-y recalls previous
pastes (invoke M-y repeatedly directly after C-y to observe the
effect). Before being able to use C-w or M-w, you have to set the
mark with C-SPC or C-@, then move point.

C-k means cut to end of line, M-k means cut to end of sentence, C-M-k
means cut to end of next (possibly parenthesized) expression.
(Another way to look at it is C-k cuts from here to where C-e would
go, M-k cuts to here to where M-e would go, and C-M-k cuts from here
to where C-M-f would go.)

C-M-u moves to the left to get you out of a parenthesized expression
(up). C-M-d moves to the right to get you inside a parenthesized
expression (down).

C-x introduces "extended" operations. C-x C-f opens a file, C-x b
switches to another buffer, C-x C-b lists buffers. C-x k kills a
buffer.

C-x 4 f and C-x 4 b do like C-x C-f and C-x b but in another window.
C-x 5 f and C-x 5 b are similar, but open a new frame.

C-x 0 kills the current window, C-x 1 kills all other windows (keeping
1 window), C-x 5 1 kills all other frames. C-x 2 splits the current
window (into 2), C-x 5 2 splits the frame. C-x 3 also splits a
window, but horizontally.

Keys C-c a through C-c z are reserved for the user.

Keys C-c C-a through C-c C-z are reserved for major modes. That is,
their behavior depends on the kind of file you're editing. Often, C-c
C-c is something related to submit.

There are some modes, like dired and RMAIL and Gnus, where you aren't
really editing text. These modes use normal letters for commands.
Usually, you can count on n/p to move vertically, and d to mean
delete. q means quit. x means execute.

In the above, I've tried to give you the flavor of the way the keys
are related. There are no hard rules, but soon you will see a mosaic
of little groups of keys that are related. It is difficult to
describe, but after a while it starts to make sense.

There is some merit in trying to make all programs behave similarly.
But there is also merit in trying to make a single program behave the
same on many platforms. I can use Emacs on Unixish systems, on
Windows, and on MacOS X, and the keybindings are almost the same on
each. Compare this with a distinction between Windows (uses Ctrl-X,
Ctrl-V for cut and paste and Alt-F4 to quit) and MacOS (uses Alt-X,
Alt-V for cut and paste, and Alt-Q to quit).

Kai


--
Sébastien Kirche
Avatar
Sébastien Kirche
Le 7 novembre 2005 à 10:11, Sébastien Kirche a dit :

J'apprécierais assez vos commentaires sur la question.



Pas de réaction ?

Je sais bien qu'on est francophones ici (du moins en majorité ;) et que
j'ai posté un texte conséquent en anglais, mais justement c'était pour
savoir si ça pouvait être pertinent de le traduire...

--
Sébastien Kirche
Avatar
Xavier Maillard
On 7 nov 2005, Sébastien Kirche wrote:

C'est en anglais mais je me disais que ça pourrait mériter une
traduction pour l'inclure à un tutoriel, ce pourquoi je l'ai
conservé.



/me trouve que c'est une excellente idée :) C'est pour quand la
traduction ;) ?
--
,--. Xavier Maillard, Reims, France ,= ,-_-. =.
/ ,- ) http://www.emacsfr.org/ ((_/)o o(_))
`-' `-'(. .)`-'
`-. Debian, a variant of the GNU operating system. _/
Avatar
Sébastien Kirche
Le 7 novembre 2005 à 22:11, Xavier Maillard a formulé :

/me trouve que c'est une excellente idée :) C'est pour quand la
traduction ;) ?



Je veux bien m'y coller si ça plaît.

C'est paru sur un média public mais je demanderai quand même à Kai s'il
ne voit pas d'inconvénient à ce que je réutilise sa prose.

--
Sébastien Kirche
Avatar
Bernard Adrian
Sébastien Kirche a écrit :

Le 7 novembre 2005 à 22:11, Xavier Maillard a formulé :

/me trouve que c'est une excellente idée :) C'est pour quand la
traduction ;) ?



Je veux bien m'y coller si ça plaît.

C'est paru sur un média public mais je demanderai quand même à Kai s'il
ne voit pas d'inconvénient à ce que je réutilise sa prose.



Il _faut_ le traduire. J'ai eu envie de le faire aussi, mais si tu t'y
colles...

--
Bernard Adrian
Avatar
Xavier Maillard
On 7 nov 2005, Sébastien Kirche wrote:

Le 7 novembre 2005 à 10:11, Sébastien Kirche a dit :

> J'apprécierais assez vos commentaires sur la question.

Pas de réaction ?



Ben en fait je connaissais déjà puisque j'avais déjà dans mon
remembrance agent :) Je trouvais ses explications parfaites à
l'époque, mon point de vue n'a pas changé :p


--
GNUSFR.ORG http://gnusfr.org/
EMACSFR.ORG http://emacsfr.org/
Xavier Maillard Tel: +33 6 68 04 64 37
1 2 3