Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Chroniqueur Actualités

    Ox : un éditeur de texte écrit en Rust qui fonctionne dans un terminal
    Ox : un éditeur de texte rapide selon ses développeurs, écrit en Rust, fonctionne dans un terminal
    sur les plateformes Linux et macOS

    Ox est un éditeur de texte avancé avec des fonctionnalités de type IDE intégrées développé par un programmeur britannique connu sous le pseudo "Curlpipe". Il a été écrit en Rust en utilisant les séquences d'échappement ANSI. L'auteur estime qu'Ox aide les développeurs à programmer en fournissant plusieurs outils pour accélérer et faciliter la programmation et constitue une alternative rafraîchissante aux éditeurs très gonflés et avides de ressources, tels que VS Code et JetBrains. Ox est léger et peut donc être utilisé sur des ordinateurs plus anciens.




    Quelles sont les caractéristiques et les fonctionnalités d'Ox ?

    Tout d'abord, l'auteur informe qu'il ne s'agit, pour l'instant, que d'un projet personnel et qu'il n'est pas encore prêt à remplacer vos outils existants. Ox fonctionne dans le terminal et fonctionne sur des plateformes comme Linux et macOS, mais ne fonctionne pas directement sur Windows (il fonctionne si vous utilisez le WSL) en raison de l'absence d'une bonne ligne de commande. « Il existe de nombreux éditeurs de texte et chacun d'entre eux a ses défauts. J'espère avoir un éditeur de texte qui surmonte de nombreuses charges et problèmes », a déclaré le développeur.

    Selon Curlpipe, Ox est "super" minimal et vise à utiliser le moins de dépendances possible, ce qui permet un temps de compilation rapide et un faible risque de rupture. Il est construit avec Rust, Termion (une bibliothèque Rust), Unicode-rs, Clap (un analyseur d'argument de ligne de commande), Regex, Ron (un format de configuration simple semblable à la syntaxe Rust), Serde (un framework pour sérialiser et désérialiser les structures de données de Rust de manière efficace et générique) et Shellexpand (une bibliothèque de dépendances unique qui permet d'effectuer des expansions de type Shell dans des chaînes de caractères).

    En outre, Curlpipe a ajouté qu'Ox n'est basé sur aucun autre éditeur et a été construit à partir de zéro, sans aucune base. Sur le référentiel GitHub du projet, l'on peut remarquer qu'Ox reprend les caractéristiques de certains des éditeurs les plus populaires, en particulier sur Linux, cherchant ainsi à tirer le meilleur de tous les mondes. Voici ci-dessous la liste des éditeurs de texte auxquels l'auteur a volé un ou plusieurs concepts :

    • Vim : il fournit un système de plug-in pour ajouter des fonctionnalités, car il est très minimal et ne fournit que des fonctionnalités d'édition de texte de base par défaut. Il est complet et possède son propre langage de programmation pour la configuration et l'écriture de plug-ins. Il a une courbe d'apprentissage rapide, car il est un éditeur de texte "modal", ayant des modes spéciaux pour l'édition de texte. Selon Curlpipe, Ox est plus facile à utiliser que Vim parce qu'il ne possède pas de modes où le clavier est réorienté, mais il reprend l'idée d'être un éditeur uniquement basé sur le clavier et de pouvoir agir comme un IDE après une certaine configuration ;
    • Nano : Nano est un éditeur de texte simple à prendre en main grâce à ses raccourcis clavier intuitifs tels que Ctrl+S pour sauvegarder et Ctrl+? pour le menu d'aide, etc. Ox a pris l'idée des raccourcis clavier de cet éditeur, ils sont simples à retenir, Ctrl+F pour "Find", Ctrl+Q pour "Quit", ce qui signifie que Ox n'a pas une courbe d'apprentissage aussi raide ;
    • Micro : il s'agit d'un système de plug-in qui est programmé avec le langage de programmation Lua. D'après le développeur d'Ox, c'est Micro qui lui a donné l'idée d'ajouter une fonctionnalité de souris et d'autres caractéristiques ;
    • Emacs : Emacs est toujours activement utilisé aujourd'hui en raison de sa liberté de modifier et de changer le code source. Ainsi, selon Curlpipe, Ox a repris l'idée de la personnalisation et de l'extensibilité d'Emacs et a créé un système de configuration où vous pouvez changer les couleurs et l'apparence de l'éditeur ;
    • Xi : Xi est un éditeur de texte également écrit en Rust, mais est purement un back-end pour le moment. Curlpipe a déclaré qu'il a décidé de faire d'Ox à la fois un front-end et un back-end, car Xi a de nombreux front-ends, mais la plupart d'entre eux sont fragmentés et il manque beaucoup de fonctionnalités ;
    • Kiro : Kiro est un éditeur de texte écrit en Rust qui ajoute des fonctionnalités telles que le support Unicode, une meilleure palette de couleurs et des petites choses comme le redimensionnement. Ox a repris les idées d'amélioration de Kiro, mais les a mises en œuvre différemment. Le code source de Kiro semble également être assez avancé dans certains domaines, Curlpipe a préféré garder Ox aussi simple que possible.

    Notez qu'Ox utilise NerdFonts pour afficher les icônes. Par ailleurs, l'auteur estime qu'actuellement, vous ne pouvez construire Ox qu'à partir des sources. « Bien que cela puisse sembler intimidant pour beaucoup de gens, ce n'est pas si difficile et cela prend une minute dans le pire des cas », a-t-il déclaré. Comme Ox est écrit avec Rust, vous devez avoir une version moderne et fonctionnelle de rustc et de cargo. Enfin, Ox est contrôlé via vos raccourcis clavier. Voici les raccourcis par défaut que vous pouvez utiliser :

    • Ctrl + Q : quitte l'onglet en cours ou l'éditeur si un seul onglet est ouvert ;
    • Ctrl + S : enregistre le fichier ouvert sur le disque ;
    • Ctrl + W : vous demande un nom de fichier et enregistre le fichier sur le disque sous ce nom ;
    • Ctrl + P : enregistre tous les fichiers actuellement ouverts sur le disque ;
    • Ctrl + N : crée un nouvel onglet avec un document vierge ;
    • Ctrl + O : vous demande un fichier et ouvre ce fichier dans un nouvel onglet ;
    • Ctrl + F : recherche le document pour une requête de recherche. Permet d'appuyer sur ↑ et ← pour déplacer le curseur sur l'occurrence précédente de la requête et sur ↓ et → pour passer à l'occurrence suivante de la requête. Appuyez sur Return pour annuler la recherche à la position actuelle du curseur ou sur Esc pour annuler la recherche et revenir à l'emplacement initial du curseur. Note : cela vous permet d'utiliser des expressions régulières ;
    • Ctrl + U : annule votre dernière action. Les modifications sont enregistrées dans la pile d'annulations chaque fois que vous appuyez sur la barre d'espacement, que vous créiez/détruisiez une nouvelle ligne et lorsqu'il n'y a plus d'activité après un certain temps, ce qui peut être utilisé pour capturer des points où vous faites une pause pour réfléchir ou prendre un café, etc. ;
    • Ctrl + Y : refait votre dernière action. Les choses se passent exactement comme dans le cas de Ctrl + Y ;
    • Ctrl + R : permet de remplacer des occurrences dans le document. Utilise les mêmes raccourcis clavier que la fonction de recherche : ↑ et ← pour déplacer le curseur sur l'occurrence précédente de la requête et ↓ et → pour passer à l'occurrence suivante de la requête. Vous pouvez également appuyer sur Return, Y ou Epace pour effectuer l'action de remplacement. Pour quitter le mode de remplacement une fois que vous avez terminé, vous pouvez appuyer sur Esc pour annuler et revenir à la position initiale du curseur. Note : cela vous permet d'utiliser des expressions régulières ;
    • Ctrl + A : exécute une option de remplacement par lots. Il vous demandera une cible à remplacer et ce par quoi vous voulez la remplacer et remplacera ensuite chaque occurrence du document. Note : cela vous permet d'utiliser des expressions régulières ;
    • Ctrl + D : permet de passer à l'onglet précédent ;
    • Ctrl + H : permet de passer à l'onglet suivant.

    Source : Page GitHub d'Ox

    Et vous ?

    Que pensez-vous de l'éditeur de texte Ox ?
    A-t-il une chance de devenir un standard dans le développement ?
    Peut-il surpasser les éditeurs dont il combine les meilleures fonctions ?

    Voir aussi

    L'éditeur de texte nano est disponible en version 5.0 avec des améliorations au niveau du menu principal, l'ajout de syntaxes pour Markdown, Haskell et Ada et plusieurs autres changements

    Atom : GitHub apporte des mises à jour à son éditeur de texte orienté développeurs et assure qu'il « comprend votre code mieux que jamais »

    Vim : la version 8.1 de l'éditeur de texte multiplateforme est disponible avec le support de l'exécution d'un terminal dans une fenêtre Vim

    GNU Emacs v27.1 est disponible avec la prise en charge de HarfBuzz pour la mise en forme de texte et la prise en charge native de l'analyse JSON

    GNU nano 3.0 est disponible en téléchargement. Tour d'horizon des principales nouveautés de cet éditeur de texte
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Membre expérimenté
    Ox ne peut remplacer que vim, et comme vim sert le plus souvent a l'édition via ssh sur des serveurs (du moins pour ma part), avant qu'il soit installer par défaut sur toutes les distrib, c'est pas pour tout de suite...
    Par contre j'ai installé Tau (https://github.com/Cogitri/Tau), un editeur Gtk full Rust. Il est encore très basique, mais il me plait bien pour remplacer Gedit (j'aime bien Gedit aussi).
    Tout ce que j'écris est libre de droits (Licence CC0) et je vous incite à faire de même.

###raw>template_hook.ano_emploi###