Généralités


Hexditor.jar est un puissant éditeur hexadécimal écrit en java. Il convient pour tout fichier jusqu'à 9 exa bytes (2^63-1). L'occupation mémoire est très faible, moins de 32MiB en incluant le Java Runtime Environment, et ce même si vous éditer un fichier géant. Pour l'utiliser il suffit d'un Java Runtime Environment (1.4 ou +) et du fichier Hexditor.jar.

Grâce à sa structure multi threads, vous pouvez lancer une recherche alors qu'une sauvegarde est en cours, ou vice versa. Pendant la sauvegarde et/ou la recherche, vous pouvez continuer à naviguer en lecture dans le fichier, sans pouvoir faire de modification tant que la sauvegarde ou la recherche n'est elle-même pas terminée.

Le mode d'écriture est overwrite. Pour la plupart des fichiers binaires, il peut être dangereux de décaler une partie du code. Pour cette raison, une portion de code non modifiée mais pas exactement à la position originelle sera signalée par un fond grisé. Une insertion doit être explicite et ne peut être faite qu'avec la touche insertion. Soyez prudent avec les insertions imposantes, vous pouvez créer virtuellement un fichier géant qu'il sera ensuite impossible de sauvegarder (essayez d'insérer 2Ei par exemple).

Les modifications en cours sont signalées par du texte en rouge. Vous pouvez annuler les modifications. Vous pouvez refaire la dernière anulation. Un astérisque (*) apprès le nom du fichier signal qu'il y a au moins une modification. Notez que la pile de Undo et les aides colorées sont remise à zéro par une sauvegarde puisqu'il n'y a plus de différence entre le fichier et l'affichage.

Couper, copier & coller utilise le presse papier de l'OS. Une sélection dans la zone de texte est transférée sous forme de texte, mais a l'inconvénient de ne pas permettre de transférer les caractères non affichables. Une sélection dans la zone hexa est transférée sous forme de texte hexadécimal. La taille de la sélection est limitée par l'option de mémoire lors du lancement de la JVM (-Xms64m), mais la limitation du presse papier peut être plus faible. Comme le presse papier est partagé, vous pouvez importer/exporter des data depuis/vers n'importe quelle application. Notez toutefois que le retour chariot n'est pas toujours correctement transmit par le presse papier de windoz.

Les champs de saisi demandant une position acceptent les formats numériques tels que:

    Notes:
  1. Les prefixes et les multiples binaires sont sensibles à la casse. Remarquez la différence entre 'k' et 'Ki'
  2. Pour eviter les confusions,avec le préfix exa (E), il vaut mieux utiliser 'e' plutôt que 'E' pour séparer la mantisse de l'exposant.
  3. Pourquoi prefix plutôt que suffix? Parceque c'est le préfixe de l'unité et pas le suffixe du nombre.

En bas à droite, la position du curseur est donnée par rapport au début du fichier, suivi de la position par rapport à la fin. Un clic sur le champ offset commute l'affichage entre décimal et hexadécimal.

 

L'outil de recherche


Type de fichier et taille
caractères
binary, 16MiB
3
binary, 4GiB
4
ASCII, 500KiB
5
Pour une recherche de texte avec un autre codage, essayez http://webhex.net/.

Les raccourcis


A quelques exceptions près, les raccourcis sont ceux de LibreOffice.

File menuusage
Ctrl+OOpen a file.
Ctrl+SSave.
Ctrl+QLeave (close) the current file.
Ctrl+PCreate a png of the current screen. 

Edit menuusage
Ctrl+ASelect all.
Ctrl+ZUndo the last modification.
Ctrl+XCopy then cut.
Ctrl+CCopy.
Ctrl+VPaste.
Ctrl+FFind dialog box.
Insert/deleteInsert/delete dialog box.

View menuusage
Ctrl+GGoto dialog box.
Ctrl+MToggle position mark between tiny line, bold line or no mark.
Ctrl+DGo down to the next mark, or the end of the file.
Ctrl+UGo up to previous mark, or the beginning of the file. 
Ctrl+TToggle caret between nibble area and text area.
Ctrl+HChange the font to higher size.
Ctrl+LChange the font to lower size.
Ctrl+WToggle Black/White background, usefull for OLED screen.

Otherusage
Arrow Left/RightMove cursor to left/right.
Shift+Arrow Left/RightMove cursor with selection to the Left/Right.
Arrow Up/DownMove cursor up/down one line.
Shift+Arrow UpSelecting lines in an upwards direction.
Shift+Arrow Down Selecting lines in a downward direction. 
HomeGo to beginning of line.
Shift+HomeGo and select to the beginning of a line.
EndGo to end of line.
Shift+EndGo and select to end of line.
Ctrl+HomeGo to start of document.
Ctrl+Shift+HomeGo and select text to start of document.
Ctrl+EndGo to end of document.
Ctrl+Shift+EndGo and select text to end of document.
Insert/deleteInsert/delete dialog box.
PageUp/PageDownScreen page up / page down.
Shift+PageUpMove up screen page with selection.
Shift+PageDownMove down screen page with selection.
Ctrl+Mouse wheelChange the font size.
Autre: clic sur le champ offset pour changer l'affichage entre décimal et hexadécimal.

 

Capture d'écran


Désolé, pas de capture d'écran, juste une démo avec Hexditor.jar tournant en applet ;).

 

Autres éditeurs


Autres