Forum Programmation.c Participez au développement de it-edit (Integrated Terminals Editor).

Posté par (page perso) . Licence CC by-sa
Tags : aucun
5
2
mar.
2016

Bonjours a tous le monde,

j'utilise la ligne de commande Linux au quotidien et j'ai donc développer une sorte de IDE donnant un accès totale a votre système et surtout a des terminaux, pendant l'édition de vos fichiers source.

it-edit n'est pas vraiment un IDE orienter vers un langage,

mais plutôt un éditeur de texte avec terminaux intégrés, capable de lire et surligner beaucoup de langage de programmation,

afin de ne pas perdre de vue la ligne commande pendant que vous programmez.

Vous pouvez donc librement éditer vos fichiers source et avoir un accès direct a des terminaux, qui sont bien placés (par rapport a d'autre IDE), afin de lancer vos commande de compilation, de débogage ou lancer un script… entre autres tâches que l'on peut accomplir dans un terminal.

Vous me direz ou sont les bénéfices d'un IDE (comme l'automatisation de la compilation) dans it-edit ?

Et bien il faut savoir que les point fort des IDE sont aussi leurs leurs désavantages: l'ont ne se rappelle plus de la syntaxe d'une commande ou carrément le nom du binaire.

it-edit se complète parfaitement avec un bon Makefile (comme celui fournis avec l'archive de développement de it-edit-2.0).


Je vous invite donc a participer au développement finale de it-edit car le programme est, dans sa version N° 2, est déjà complètement fonctionnel.

Mais j'aimerai que des professionnels comme vous jetiez un œil a mon humble éditeur de texte, afin de voir le code sous un œil neuf.

it-edit se base sur

  • gtk+-3.0 comme IHM.

  • gtksourceview-3.0 pour l'édition de texte.

  • libvte-2.90 pour l'émulation de terminaux virtuel (vte: Virtual Terminal Emulator).

Ce que vous pouvez faire pour aider:

  • Simplement essayer de compiler le programme pour voir si il fonctionne sur votre distribution favorite.

  • relire mon code et si nécessaire me suggérer des corrections. Comme l'a fait gentillement gérald3D lors de la sortie de la version 1.0 de it-edit.

  • Lancer des test de profilage, d'allocation mémoire,…

  • Corriger la doc:

La documentation comprend:

  • un README en anglais, servant aussi de notice ou mode d'emploi.

  • une page de manuel (man page).

  • un document *.texi d'après lequel ont générer de la documentation au formats *.info, *.html, *.pdf, etc…

Alors si vous pensez que ma manpage est mal structurée par exemple vous pourrez aisément la corriger, ainsi que mon humble anglais, car tous est inclus dans l'archive pour travailler sur ces fichiers.

Sinon toute aide est la bienvenue.

Si l'aventure vous tente vous pouvez télécharger l'archive de développement de it-edit qui comprend un Makefile qui est structuré de manière a ce que n'avez pas besoin d'installer le programme pour faire tester vos corrections.

les gars tapez:

make help

Afin de voir les target définis et la praticité d'un bon Makefile en conjonction avec it-edit.

Si vous m'aidez, je vous citerez comme contributeur au projet it-edit dans la page web de présentation, github, le README et tous les documents qui tournent autours de it-edit avec un lien vers l'adresse de votre choix et votre adresse mail si vous le désirez.

Merci pour votre aide précieuse si le cœur vous en dit.

  • # Mouai.

    Posté par . Évalué à 3.

    Je n'ai pas, et je ne ferai pas, fait l'effort d'aller voir de quoi tu parles. Pourquoi?

    Moi aussi j'utilise la ligne de commande en permanence. En fait, à part le navigateur web, je n'ai plus besoin de la souris, je fais tout en ligne de commande.
    Laisses-moi te dire de quoi se compose mon "IDE":

    • i3
    • urxvt
    • vim
    • cgdb
    • cmake
    • git
    • xxdiff
    • et… euh, bah c'est tout je crois…

    L'intérêt de mon approche (que je ne suis pas seul à utiliser, il suffit de s'inscrire à des listes de diffusions internationales de distro pendant quelques mois pour s'en apercevoir) comparé à la tienne, c'est que plutôt que d'intégrer le terminal dans l'éditeur de texte, on intègre tous les logiciels dans le gestionnaire de fenêtre, qui s'occupe de gérer les onglets, la position des fenêtres, etc etc. Et avec plus de flexibilité et d'efficacité (mémoire ET CPU) que ne pourront jamais en rêver tous les IDEs du monde.
    Ah, et pour trouver quel fichier source définit la classe Foobar, je fait: $ grep -r 'class Foobar'. Tout Simplement. Vue la direction que tu sembles prendre, je te conseilles d'essayer l'approche que j'utilise. Bon, moi je prend i3, mais il existe plein d'autres wm pavant, qui sont la base de cette approche. De même, j'utilise i3, mais tu peux prendre emacs ou kakoune ou whatever. Voire même un truc graphique, si le cœur t'en dit (rappelles toi juste que lancer un outil graphique à partir d'un terminal te bouffe de la place à l'écran pour des prunes).

    Sinon, si tu persévères dans ton idée, hé bien… bonne chance.

    • [^] # Re: Mouai.

      Posté par (page perso) . Évalué à 2.

      Bonjours,

      ont m'a déjà fait la remarque des wm pavant lors de la sortie des de la version 1.0.1 de it-edit.

      Comme tu utilise vim comme éditeur, tu n'a pas besoin de it-edit (un éditeur de texte graphique).

      J'aime appeler ma sorte de IDE un ITE (Integrated Terminals Editor).

      Intégrer un terminal dans une application graphique ne sert pas a lancer des applications graphiques a partir du terminal intégré.
      Mais la version 2 de it-edit permet de lancer des applications graphique (celles que tu veut) depuis l'éditeur.

      Du coup je n'ai besoin que de it-edit que j'utilise au quotidien depuis la sortie de la version 1.0.1.

      Et j'en suis très satisfait, j'ai simplement combler quelques lacunes d'ergonomie et bugfixer 2 ou 3 trucs, dans la version 2.0.

      Sinon concernant performances j'ai remarquer que it-edit démarre beaucoup plus vite que tous les autres éditeur graphique, je ne sais pourquoi.

      Je suis très fier de ma création qui me facilite grandement le développement au quotidien avec la même praticité que tu tu tire d'un wm pavant, mais en un seul logiciel: le miens.

      Après chacun sa manière de travailler.

      PS: Étant donner que tu utilise vim comme éditeur, dont il faut apprendre tous les raccourcis clavier (chose qui n'est pas aisé), je suppose que ça fait longtemps que tu programme moi ça ne fait que 4 ans et demie dont 3 ans de C.

      • [^] # Re: Mouai.

        Posté par . Évalué à 2.

        PS: Étant donner que tu utilise vim comme éditeur, dont il faut apprendre tous les raccourcis clavier (chose qui n'est pas aisé), je suppose que ça fait longtemps que tu programme moi ça ne fait que 4 ans et demie dont 3 ans de C.

        en meme temps en 4ans et demi, tu avais largement le temps d'apprendre les quelques raccourcis elementaires pour deja pouvoir faire pas mal de chose.
        probablement plus rapidement que de redevelopper un editeur à partir de rien.

        • [^] # Re: Mouai.

          Posté par (page perso) . Évalué à 2.

          Salut,

          En faîtes, j'ai développer cet environnement de développement avec terminaux intégrés(ITE), pour satisfaire tous mes besoins en termes de développement:

          • Une bonne intégration de terminaux.

          • Pouvoir enregistrez de la documentation locale qu'importe le format afin d'y pouvoir accéder en 2 cliques (pratique les packages *-doc).

          • Un manpage reader.

          • Lancer des applications graphiques, en 2 cliques.

          Etc…

          Tous ça directement depuis mon éditeur, que je connaît le mieux car c'est moi qui l'est écrit.
          Puis j'aime écrire des outils qui me sont pratiques et si ils peuvent être utiles aux autres tant mieux.

          L'utilisation d'un gros Makefile bien pratique en conjonction m'est venus plus tard.

          D'ailleurs ton bout bout code m'a donner l'idée du target suivant:

          .PHONY: search-pattern
          argv =
          search-pattern:
          [TAB]grep -r "$(argv)"

          a ajouter a mon Makefile de développement.

          Sinon la plupart des raccourcis clavier de it-edit sont les raccourcis les plus courant, car j'ai bien regarder les autres avant de me lancé:

          • Ctrl + O (Open file).

          • Ctrl + S (Save file).

          • Ctrl + Maj + S (Save all files).

          • Etc…

          Et puis c'était pas si difficile que ça.

          • [^] # Re: Mouai.

            Posté par (page perso) . Évalué à 2.

            Salut l'accro de la ligne de commande,

            Je voulais simplement te remercier pour m'avoir donner l'idée du nouveau target du Makefile.

            Donc un tip pour te remercier :

            un gestionnaire de presse-papier est pratique pour la ligne de commande.
            J'utilise xclip et j'ai définis l'alias suivant:

            alias gols='cd $(xclip -o) ; ls'

            ce qui me permet de juste surligner le dossier dans lequel je veut me rendre et de taper le court alias…

            Pour m'y retrouver.

            C'est un raccourcis maison assez pratique sinon tu peut lancer firefox avec un fichier comme argument:

            alias firepath='firefox $(xclip -o)'

            ou n'importe quel application avec comme argument ce que tu surligne dans le terminal.

      • [^] # Re: Mouai.

        Posté par . Évalué à 2.

        Après chacun sa manière de travailler.

        Yep. C'est juste que les IDEs ont tendance à t'imposer des émulateurs de terminaux (par exemple, Code::Blocks avait quantité de bugs quand on ne voulait pas utiliser xterm, a l'époque ou j'ai fini par switcher sur vim) et autres outils. C'est bien quand tu es sous windows (je viens de ce monde) mais sous linux c'est se limiter bêtement. Et je n'ai encore jamais vu d'outil intégré potable. Pourtant j'en ai testé… mais c'est ma façon de bosser, comme tu dis :)

        PS: Étant donner que tu utilise vim comme éditeur, dont il faut apprendre tous les raccourcis clavier (chose qui n'est pas aisé), je suppose que ça fait longtemps que tu programme moi ça ne fait que 4 ans et demie dont 3 ans de C.

        Je l'utilise à un niveau très faible, hein. Et depuis à peine 3-4 ans, je dirais.

        Si tu veux l'essayer, je n'ai qu'une chose à dire: "$ sudo apt install vim; vimtutor". En gros, tu as… allez, 10 trucs à savoir pour le début:

        • jklm pour déplacer le curseur en mode normal. Mais les touches fléchées marchent aussi.
        • [echap] pour revenir au mode normal, ":" pour débuter une commande. ":w" pour "write", ":q" pour "quit".
        • pour passer en mode édition: "i", "a": "insert", "append".
        • supprimer-couper-copier-coller: on ne supprime jamais, en fait tout est "coupé". Donc, "d" pour "delete" (qui coupe, en fait), "p" pour "paste" (coller), "y" pour "yank" (copier).

        Ça s'apprend en 1 heure, a peu près, avec vimtutor.

    • [^] # Re: Mouai.

      Posté par (page perso) . Évalué à 1.

      En fait, à part le navigateur web, je n'ai plus besoin de la souris

      Vimperator (Firefox), cVim (Chrome), Vimium (Chrome)… C'est quoi une souris ?

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.