OVH Cloud OVH Cloud

Enregistrer les registres

10 réponses
Avatar
Julien Enocq
Bonjour, Il m'arrive souvent d'enregister la position des fenêtres
avec C-x r w a et la récupérer avec C-x r j a.
Je cherche à enregistrer ce buffer "a" pour que quand je ferme et
réouvre emacs, je puisse retrouvé ma position de buffer dans mon
registre. Parce que là, les buffers sont vides a l'ouverture.
Merci :)
--
|\ _,,,---,,_ Julien ENOCQ
ZZZzz /,`.-'`' -. ;-;;,_
|,4- ) )-,_. ,\ ( `'-'
'---''(_/--' `-'\_)

10 réponses

Avatar
drkm
Julien Enocq writes:

Bonjour, Il m'arrive souvent d'enregister la position des fenêtres
avec C-x r w a et la récupérer avec C-x r j a.
Je cherche à enregistrer ce buffer "a" pour que quand je ferme et


^^^^^^

Registre ?

réouvre emacs, je puisse retrouvé ma position de buffer dans mon
registre.



C-h f desktop-save-mode
(info "(emacs)Saving Emacs Sessions")

et :

(desktop-save-mode 1)

dans '~/.emacs.el'.


Je pense que les registres sont sauvés automatiquement.
Sinon :

(push 'register-alist desktop-globals-to-save)

devrait aider.

--drkm
Avatar
Julien Enocq
drkm wrote:
Registre ?



Oui, j'ai dérapé :p

et :

(desktop-save-mode 1)

dans '~/.emacs.el'.


Je pense que les registres sont sauvés automatiquement.
Sinon :

(push 'register-alist desktop-globals-to-save)



Bof, rien ne marche ça me fais une erreur au démarrage :/
avec le (info "(emacs)Saving Emacs Sessions"), j'ai ca:


You can use the Desktop library to save the state of Emacs from one
session to another. Saving the state means that Emacs starts up with
the same set of buffers, major modes, buffer positions, and so on that
the previous Emacs session had.

To use Desktop, you should use the Customization buffer (*note Easy
Customization::) to set `desktop-enable' to a non-`nil' value, or add
these lines at the end of your `.emacs' file:

(desktop-load-default)
(desktop-read)

The first time you save the state of the Emacs session, you must do it
manually, with the command `M-x desktop-save'. Once you have done
that, exiting Emacs will save the state again--not only the present
Emacs session, but also subsequent sessions. You can also save the
state at any time, without exiting Emacs, by typing `M-x desktop-save'
again.
Etc..



J'ai mis les 2 lignes, mais en fait ca n'ouvre les fichiers qui étaient
ouverts dans des buffers, mais ca ne me remet pas les fenetres en place,
et les registres sont vides. Ca m'interesse pas donc :/

Comment je peux faire ?
Avatar
drkm
Julien Enocq writes:

drkm wrote:

Bof, rien ne marche ça me fais une erreur au démarrage :/



Quelle erreur ?

avec le (info "(emacs)Saving Emacs Sessions"), j'ai ca:

[...]



Tiens, moi j'ai ça :

You can save the desktop manually with the command `M-x
desktop-save'. You can also enable automatical desktop
saving when you exit Emacs: use the Customization buffer
(*note Easy Customization::) to set `desktop-save-mode' to
`t' for future sessions, or add this line in your `~/.emacs'
file:

(desktop-save-mode 1)

Quelle est ta version d'Emacs ?

Comment je peux faire ?



ÀMHA, c'est juste une différence de version. Il va juste
falloir trouver les bonnes incantations pour ta version.

--drkm
Avatar
Julien Enocq
drkm disait le 06/24/05 que :
Quelle erreur ?



Comme quoi la variable existe pas, comme si j'avais fais une erreur de
syntaxe donc. Oui je suis sûr de ma syntaxe :o)

Tiens, moi j'ai ça :
[...]



Ah oui pas pareil en effet.

Quelle est ta version d'Emacs ?



21.4

ÀMHA, c'est juste une différence de version. Il va juste
falloir trouver les bonnes incantations pour ta version.



Je le savais que c'était de la magie noire ! Ça sent le changement de
version, ça...

--
| _,,,---,,_ Julien ENOCQ
ZZZzz /,`.-'`' -. ;-;;,_
|,4- ) )-,_. , ( `'-'
'---''(_/--' `-'_)
Avatar
drkm
Julien Enocq writes:

drkm disait le 06/24/05 que :

Quelle erreur ?



Comme quoi la variable existe pas, comme si j'avais fais une erreur de
syntaxe donc. Oui je suis sûr de ma syntaxe :o)



Non. Juste que la variable n'existe pas :-). Ceci devrait
fonctionner :

(eval-after-load "desktop"
'(push 'register-alist desktop-globals-to-save))

Pour le reste, suis les indications du fichier Info de ta
version.

En même temps, sur ma version, 'regfister-alist' est déjà dans
la liste, il n'est donc peut-être pas nécessaire de l'y ajouter
pour toi. Et de toute manière, si tu le fais, laisse un
commentaire pour quand tu changes de version. En fait, ici, un
'add-to-list' se justifierait.

De plus, cela ne fait que sauver les registres. Ça ne restaure
pas l'état des fenêtres. Pour cela, il faut le faire
manuellement. Si tu réserves un registre à cet usage [1], il y a
cependant moyen de le sauver automatiquement à la fermeture (ou
non), et de le restaurer au chargement (ou non).

[1] Pour cela, il doit y avoir moyen d'utiliser un registre
un peu particulier, genre de nom « caractère de code 0 ».
Ce caractère n'est pas accessible naturellement de
manière interactive. Je n'ai pas vu de restriction sur
les caractères utilisables comme nom de registre.

--drkm
Avatar
Julien Enocq
drkm disait le 06/24/05 que :
Non. Juste que la variable n'existe pas :-).



Oui c'est bien ce que je disais, je suis sûr de ma syntaxe, donc c'est
que la variable n'existe pas :)

Ceci devrait fonctionner :

(eval-after-load "desktop"
'(push 'register-alist desktop-globals-to-save))



Bah a marche pas. Ni tout seul, ni avec

(desktop-load-default)
(desktop-read)

D'ailleurs, ce truc m'énerve parce que ça me réouvre tout les
registres que j'avais pas fermé. Moi je veux juste que quand je
restaure mes fenêtres, ça m'ouvre les registres concernés, mais pas
avant.

De plus, cela ne fait que sauver les registres. Ça ne restaure
pas l'état des fentres.



Tant mieux, c'est pas mon but, les registres seuls m'intéressent pour
pourvoir redisposer les fenêtres juste quand j'ai envie. Quand a se
replace automatiquement, a m'énerve plus qu'autre chose parce que
quand ce n'est pas cette disposition que j'ai besoin c'est une grosse
perte de temps.

--
| _,,,---,,_ Julien ENOCQ
ZZZzz /,`.-'`' -. ;-;;,_
|,4- ) )-,_. , ( `'-'
'---''(_/--' `-'_)
Avatar
drkm
Julien Enocq writes:

drkm disait le 06/24/05 que :

(eval-after-load "desktop"
'(push 'register-alist desktop-globals-to-save))



Bah a marche pas.



Ça n'aide pas beaucoup à t'aider. Quels sont les symptômes,
exactement ?

D'ailleurs, ce truc m'énerve parce que ça me réouvre tout les
registres que j'avais pas fermé. Moi je veux juste que quand je
restaure mes fenêtres, ça m'ouvre les registres concernés, mais pas
avant.



J'ai rien compris. Ça veut dire quoi « ouvrir ou fermer un
registre » ?

Quand a se
replace automatiquement, a m'énerve plus qu'autre chose



Pas compris non plus.

--drkm
Avatar
drkm
Julien Enocq writes:

Bah a marche pas.



Au fait, peut-être trouveras-tu des infos utiles sur EmacsWiki
<URL:http://www.emacswiki.org/wiki/DeskTop> ?

--drkm
Avatar
Julien Enocq
drkm disait le 06/28/05 que :
Ça n'aide pas beaucoup à t'aider. Quels sont les symptômes,
exactement ?



Beh il se passe rien :) Je ne vosi aucun changement


D'ailleurs, ce truc m'énerve parce que ça me réouvre tout les
registres que j'avais pas fermé. Moi je veux juste que quand je
restaure mes fenêtres, ça m'ouvre les registres concernés, mais pas
avant.



J'ai rien compris. Ça veut dire quoi « ouvrir ou fermer un
registre » ?


je la refait:

D'ailleurs, ce truc m'énerve parce que ça me réouvre tout les
buffers que j'avais pas fermé. Moi je veux juste que quand je
restaure mes fenêtres, ça m'ouvre les buffers concernés, mais pas
avant.

Désolé, faut que j'arrete de poster après 10h du soir, sinon je dis
n'importe quoi :/

Quand a se
replace automatiquement, a m'énerve plus qu'autre chose



Pas compris non plus.



Je parlai des fenetres qui se repositionneraient automatiquement comme
elles etaient à la fermeture, moi je veux pas, je veux qu'a la
fermeture j'ai une fenetre emacs vierge (et pas de buffers ouverts),
mais avec la possibilité de lire mes registres pour pouvoir restaurer
la positions des fenetres. Je veux pouvoir le faire si j'en ai envie,
pas automatiquement.

Quand a la page de wiki dont tu m'a filé le lien, ca correspond
exactement à ce que je ne veux pas faire, je que j'ai décris le
paragaphe plus haut.

Merci pour ta grande patience :)


--
| _,,,---,,_ Julien ENOCQ
ZZZzz /,`.-'`' -. ;-;;,_
|,4- ) )-,_. , ( `'-'
'---''(_/--' `-'_)
Avatar
drkm
Julien Enocq writes:

D'ailleurs, ce truc m'énerve parce que ça me réouvre tout les
buffers que j'avais pas fermé. Moi je veux juste que quand je
restaure mes fenêtres, ça m'ouvre les buffers concernés, mais pas
avant.



Ok. Je n'ai pas le temps de regarder plus loin maintenant,
mais j'ai tout de même l'impression que Desktop peut t'être
utile. Il « suffit » de le configurer pour qu'il ne s'occupe pas
de réarranger les fenêtres, de rouvrir des fichiers, etc.

Je suppose qu'il y a moyen, mais je ne l'ai jamais fait, donc
je ne suis pas certain à 100 %.

--drkm