Emacs mode hexa

Bonjour,

J’ai un petit fichier texte à modifier, et plutôt que d’installer un editeur hexa, étant donné que j’avais emacs sous la main, j’ai fait M-x hexl-mode.

ça semble plutôt pratique pour dépanner, seulement j’aimerais bien entrer des caractères directement en hexa. Il y a bien le menu hexl, avec justement la commande qui vas bien, et le raccourcis proposé en vis-à-vis : C-M-x.

Seulement celle-ci ne fait rien. Bug ? Je ne sais pas trop, peut être faut-il que j’active quelque chose ? Quelqu’un sait comment faire ? En tout cas tout faire à la souris serait plus que relou. Merci :slightly_smiling:

personne n’utilise emacs ?

Non on utilise vim :smt002

Pour éditer un fichier hexa avec vim
:%! xxd
Pour revenir
:%! xxd -r

Pour automatiser l’édition de bin ou exe par exemple regarde l’aide :h hexa
sinon ceci hsaturn.over-blog.com/article-vi … 60934.html

T’inquiète ils vont vite rappliquer les emacsiens. :smt003

merci :mrgreen:

Je suis sur le cul même si je critique emacs pour dire que vim sait faire son truc, il n’y personne pour l’aider.

Les traditions se perdent (ah c’était bien mieux avant)

N’y aurait il que des debian vimeux ici?

Du coup, j’ai essayé avec vim :wink:. Enfin, de toute façon, c’était pour vérifier un truc, qui n’était pas du tout important, et qui s’est révélé inutile.

Mais vim est quand même (trop) bizarre pour moi. j’ai été traumatisé la première fois que j’ai tenté une édition avec : en mode console, je devais réparer xorg, je n’y connaissais rien, et qui plus est, vim était particulièrement retors.

je ne sais plus trop comment je m’en suis sortis, mais ça a pris du temps ! Ils devrait afficher un petit message, au moins la première fois…

Place toi en hexl-mode et fait describe-mode.
Tu verras :

There are several ways to change text in hexl mode:

[quote]ASCII characters (character between space (0x20) and tilde (0x7E)) are
bound to self-insert so you can simply type the character and it will
insert itself (actually overstrike) into the buffer.

C-q followed by another keystroke allows you to insert the key even if
it isn’t bound to self-insert. An octal number can be supplied in place
of another key to insert the octal number’s ASCII representation.

C-M-x will insert a given hexadecimal value (if it is between 0 and 0xFF)
into the buffer at the current point.

C-M-o will insert a given octal value (if it is between 0 and 0377)
into the buffer at the current point.

C-M-d will insert a given decimal value (if it is between 0 and 255)
into the buffer at the current point.
[/quote]

merci de la commande d’aide, cependant, je souhaitais utiliser C-M-x, mais ça ne fonctionnait pas… J’étais obligé d’utiliser la commande au clavier. Je souhaitais surtout savoir le pourquoi de ceci.

Que te dit M-x decribe-key C-M-x ?

lorsque je fais M-x describe-key, en hexl-mode, j’appuis donc sur C-M-x, et rien ne se passe. Comme si les touches n’étaient pas reconnues. C-x fonctionne par exemple parfaitement.
Pour accéder quand même à la description, au lieu de taper C-M-x, je clique sur le menu correspondant, voici la sortie :

runs the command hexl-insert-hex-char
which is an interactive compiled Lisp function in `hexl.el’.
It is bound to C-M-x, .
(hexl-insert-hex-char arg)

Insert a character given by its hexadecimal code arg times at point.

[back]

Et ça marche quand tu passes par le menu ?

Tu as essayé d’autres combinaisons à base de C-M- ? Par exemple, est-ce que C-M-a et C-M-e fonctionnent ?

oui ça fonctionne si je sélectionne la commande dans le menu Hexl.

C-M-a ne fonctionne pas, mais C-M-e oui.

Bizarre effectivement ça coince, le mieux que j’ai trouvé est
ESC-X hexl-insert-hex-string

et là tu tapes ta suite d’hexa dans le minibuffer. Elle est insérée dans le fichier au return. Mais le raccourci clavier ne marche pas, le return est trappé. Ce raccourci clavier est idiot!

Je ne sais pas, pour moi ça marche correctement (emacs 23.1+1-5).

tiens, merci fran.b, c’est un peu une rustine (ou un contournement), mais c’est bien pratique !

Eeeeuh… J’étais en train de vérifier mon apt-cache policy, quand il m’a retourné qu’emacs n’était pas installé !
enfin, j’ai ça :
emacs:
Installé : (aucun)
Candidat : 23.1+1-6
Table de version :
23.1+1-6 0
500 ftp.fr.debian.org unstable/main Packages

et apt-listbugs m’indique qu’il est buggé, je ne l’installe pas tout de suite.

je vais vérifier quelle version j’utilise… Mais c’est étrange.

Edit : GNU Emacs 22.3.1.
Après une petite recherche, il est fournis par maxima-emacs, qui dépends du paquet emacs22. Je passe donc à la version 23.