Le mariage heureux de Vim et KDE

Posté par  (site web personnel) . Modéré par Brice Favre.
Étiquettes :
0
11
avr.
2002
KDE
Nous avons le plaisir de vous annoncer que Vim, l'un des éditeurs les plus populaires du monde unix vient de gagner son support KDE. D'une part gvim a été porté pour utiliser les bibliothèques KDE, d'autre part il existe un composant KPart permettant d'incruster Vim à l'intérieur de Konqueror.


Il y a encore du travail à faire pour pouvoir utiliser Vim dans KMail, Kate ou KDevelop mais on y travaille.


Notons que les trois développeurs Thomas Capricelli, Mickael Marchand et moi-même sont français, et que le cvs est hebergé chez Tux Family.

Aller plus loin

  • # Cool, enfin.

    Posté par  . Évalué à -4.

    Hi,

    j'ai toujours dit que VIM avait une longueur d'avance sur ...l'autre edit...OS, em..emacs oui c'est ca.

    Plus serieusement, c'est super sympa vu qu'on pourra utiliser les nombreuses macros qu'on a fait (j'ai pas dit avec de la sueur mais je le pense =) avec amour.
    • [^] # Re: Cool, enfin.

      Posté par  . Évalué à 0.

      Trop gros passeras pas !

      Emacs (puisque tu pensais à lui) n'a pas besoin d'être intégrer à quoi que ce soit puisque qu'il est beaucoup trop puissant. Il est un wm à lui tout seul (enfin presque)

      Emacs roulaize !
      • [^] # D'ailleurs, ...

        Posté par  . Évalué à 10.

        On intégre vim à KDE, mais on parle plutot d'intégrer KDE à emacs
        • [^] # Re: D'ailleurs, ...

          Posté par  . Évalué à -6.

          Emacs n'a pas besoin de ça. Emacs c'est tout GNU à lui tout seul. Un vrai concentré de puissance. Vim n'a plus qu'à choper le premier slip qu'il trouve et à essayer de rattraper emacs.

          En plus la license de vim est bizarre !

          FSF/GNU Emacs roxor !
          • [^] # Re: D'ailleurs, ...

            Posté par  . Évalué à 8.

            Vim fait ce qu'il a à faire et il le fait bien.
            Il ne cherche pas à tout faire plus ou moin bien.
            Il peut être utilisé par des outils externes

            En quoi la license est bizarre ??
            • [^] # Re: D'ailleurs, ...

              Posté par  . Évalué à 10.

              Sur la license vim :
              Especially the license is a must read, because it's special. Vim is `charity ware', to help AIDS orphans in Uganda

              Pour plus d'info :
              http://www.vim.org/new.licensedraft.txt(...)

              D'apres les auteurs de vim cela reste compatible GPL (ca a l'air d'etre leur souhait). Donc, plus que bizarre, une bonne initiative.
      • [^] # Re: Cool, enfin.

        Posté par  (site web personnel) . Évalué à 7.


        > Emacs (puisque tu pensais à lui) n'a pas besoin d'être intégrer à quoi que ce soit


        Donc je suppose qu'on va éviter de parler des packages xemacs21-gnome-{mule,mule-canna-wnn,nomule} qu'on trouve dans la Debian, non ?


        seb.
        • [^] # Re: Cool, enfin.

          Posté par  . Évalué à 6.

          Rhaaa xemacs c'est pas emacs. Ca a le gout d'Emacs, ca sent Emacs mais ce n'est pas Emacs !!!

          Cherche pas Emacs c'est plus fort que toi :)
      • [^] # Re: Cool, enfin.

        Posté par  (site web personnel) . Évalué à 10.

        J'aime pas trop emacs mais je suis d'accord. Ce qui me tue, c'est qu'il y a des fonctionnalites dans emacs depuis des annees, qu'on commence tout juste a voir apparaitre dans d'autres logiciels. Pendant longtemp, emacs a ete le seul a gerer de la fusion de source (diff/merge), je crois que c'est reste un des meilleurs lecteur de news et de mails du marche, avec patchage automatique d'un source a partir d'un diff envoye dans un mail. Je suis vraiment impressionne. Le lisp, c'est a la fois puissant et trop lourd.

        Le probleme, c'est que c'est vraiment trop dur a utiliser. Ceux qui y arrivent facilement ne voient meme pas les obstacles. J'ai utilise emacs pendant un an avant de passer a autres chose (pico, mini-emacs, jed, joe, et enfin vim). J'ai jamais reussi a configurer quoi que ce soit. Les racourcis claviers sont obscurs, c'est dur d'avoir une aide coherente pour t'aider a acomplir une tache, ... En fait, ce qui m'a manque, c'est probablement des howto.

        Maintenant, je suis avec vim et je ne peux plus m'en passer, meme (et surtout) sous windows.
        • [^] # Re: Cool, enfin.

          Posté par  (site web personnel) . Évalué à 10.

          yop . Le truc c'est qu'on n'arrive plus à s'en passer, du mode commande/édition de vim ¹ ! ...

          Un aspect sympathique de cet éditeur, c'est qu'il essaye dans la mesure du possible d'agir comme un composant, d'être utilisé comme éditeur externe (dans mutt par exemple...). Ca suit tout à fait la philosophie unix, est c'est agréable de retrouver ses macros/raccourcis claviers à chaque fois que l'on veut taper du texte.

          La disponibilité de kvim, et surtout sa disponibilité en kpart est vraiment une excellente nouvelle pour les utilisateurs de kde : avec un peu de patience, ils pourront utiliser vim dans n'importe quel logiciel kde utilisant un éditeur ! Les composants, c'est bien. ;-)

          Bon qui en fait un bundle GNUstep ? ;-))

          ¹pour les réfractaires aux commandes vim, tapez evim dans un xterm !
      • [^] # Re: Cool, enfin.

        Posté par  (site web personnel) . Évalué à 7.

        E.M.A.C.S. = Escape Meta Alt Control Shift

        [vieux souvenir]
        "Emacs isn't just a software, it's a religion" RMS

        La preuve :
        * http://www.stallman.org/saint.html(...)
        * news:alt.religion.emacs
        * http://www.emacswiki.org/(...)
        • [^] # Re: Escape Meta Alt Control Shift (desole)

          Posté par  (site web personnel) . Évalué à 7.

          EMACS: Escape-Meta-Alt-Control-Shift
          EMACS: Eight Megabytes And Constantly Swapping
          EMACS: Even a Master of Arts Comes Simpler
          EMACS: Emacs Manuals Are Cryptic and Surreal
          EMACS: Energetic Merchants Always Cultivate Sales
          EMACS: Each Manual's Audience is Completely Stupified
          EMACS: Emacs Means A Crappy Screen
          EMACS: Eventually Munches All Computer Storage
          EMACS: Even My Aunt Crashes the System
          EMACS: Eradication of Memory Accomplished with Complete Simplicity
          EMACS: Elsewhere Maybe Alternative Civilizations Survive
          EMACS: Egregious Managers Actively Court Stallman
          EMACS: Esoteric Malleability Always Considered Silly
          EMACS: Emacs Manuals Always Cause Senility
          EMACS: Easily Maintained with the Assistance of Chemical Solutions
          EMACS: Edwardian Manifestation of All Colonial Sins
          EMACS: Extended Macros Are Considered Superfluous
          EMACS: Every Mode Accelerates Creation of Software
          EMACS: Elsewhere Maybe All Commands are Simple
          EMACS: Emacs May Allow Customised Screwups
          EMACS: Excellent Manuals Are Clearly Suppressed
          EMACS: Emetic Macros Assault Core and Segmentation
          EMACS: Embarrassed Manual-Writer Accused of Communist Subversion
          EMACS: Extensibility and Modifiability Aggravate Confirmed Simpletons
          EMACS: Emacs May Annihilate Command Structures
          EMACS: Easily Mangles, Aborts, Crashes and Stupifies
          EMACS: Extraneous Macros And Commands Stink
          EMACS: Exceptionally Mediocre Algorithm for Computer Scientists
          EMACS: EMACS Makes no Allowances Considering its Stiff price
          EMACS: Equine Mammals Are Considerably Smaller
          EMACS: Embarrassingly Mundane Advertising Cuts Sales
          EMACS: Every Moron Assumes CCA is Superior
          EMACS: Exceptionally Mediocre Autocratic Control System
          EMACS: EMACS May Alienate Clients and Supporters
          EMACS: Excavating Mayan Architecture Comes Simpler
          EMACS: Erasing Minds Allows Complete Submission
          EMACS: Emacs Makers Are Crazy Sickos
          EMACS: Eenie-Meenie-Miney-Mo- Macros Are Completely Slow
          EMACS: Experience the Mildest Ad Campaign ever Seen
          EMACS: Emacs Makefiles Annihilate C- Shells
          EMACS: Eradication of Memory Accomplished with Complete Simplicity
          EMACS: Emetic Macros Assault Core and Segmentation
          EMACS: Epileptic MLisp Aggravates Compiler Seizures
          EMACS: Evenings, Mornings, And a Couple of Saturdays
          EMACS: Emacs Makes All Computing Simple
          EMACS: Emacs Masquerades As Comfortable Shell
          EMACS: Emacs: My Alternative Computer Story
          EMACS: Emacs Made Almost Completely Screwed
          EMACS: Each Mail A Continued Surprise
          EMACS: Every Mode Acknowledges Customized Strokes
          EMACS: Eating Memory And Cycle-Sucking
          EMACS: Everyday Material Almost Compiled Successfully
          EMACS: Elvis Masterminds All Computer Software
          EMACS: Emacs Makes A Computer Slow
  • # OMG !

    Posté par  (site web personnel) . Évalué à -2.

    Si ils font des petits faudra les noyer
  • # vim *et* emacs

    Posté par  . Évalué à 10.

    Pour eviter un nouveau trol :
    Vim on l'ouvre et le ferme sans arret. Il est tres bien . et c'est une bonne nouvelle qu'on puisse l'utiliser directement dans Konqueror. Ca va aller plus vite.

    Emacs n'a pas le meme usage, on l'ouvre une fois et on le laisse ouvert toute la journee , voire la semaine... Il faut donc que l'on puisse faire facilement "Send to" emacs depuis Konqueror ou mieux encore du drag'nDrop. On doit pouvoir faire Send to avec gnuserv mais je n'ai pas essaye. Quelqu'un a plus d'infos ?
    • [^] # Re: vim *et* emacs

      Posté par  (site web personnel) . Évalué à 2.

      Tu peux dans emacs demarrer un serveur, puis plus tard ouvrir des documents depuis l'exterieur (depuis un bash par exemple) avec emacs-client
  • # Adresse de VIm

    Posté par  . Évalué à 10.

    Juste une petite info : l'adresse officielle de VIM est http://vim.sf.net(...) même si les downloads sont sur ftp://ftp.vim.org(...)
    Pour emacs avec le drag and drop, je n'ai pas essayé sous linux mais ca marche sous Windows.
  • # Double troll !

    Posté par  (site web personnel) . Évalué à -3.

    'tain, c'est kool !

    Dans la même dépêche, on peut troller à la fois KDE et vi !!! ;-)

    [-1] :-(
    • [^] # Re: Double troll !

      Posté par  (site web personnel) . Évalué à 5.

      peuh ! qu'est ce que ce troll lamentable sur KDE a à faire ici, alors qu'on peut joyeusement troller sur ce troll séculaire Vi(m)/(X)Emacs ? hmmm ? tu ne sait pas ce que sont les bonnes choses ! :o)
  • # Et maintenant...

    Posté par  (site web personnel) . Évalué à 6.

    ... savez-vous ce qui serait Bien[tm] ? C'est une version de ViM en console (ncurses) mais dont toutes les fonctions soient accessibles via des menus. Je m'explique : je n'ai rien contre les commandes ViM (dd, p, :set ts=2, :184,$s/[Ww]in/lose/g, :make, :faislecafe, etc.) mais je ne les connais pas toutes, loin de là. Aussi j'aimerais bien, plutôt que d'aller chaque fois que j'ai besoin d'une commande spécifique, pouvoir la trouver dans un menu, avec son raccourci indiqué. Après l'avoir utilisée quelques fois, je pourrais directement l'utiliser, mais pour apprendre le maniement du bestiau, ce serait bien plus simple...

    Mais bon, j'aime bien ViM quoi qu'il en soit, principalement parce que la doc d'Emacs me déplaît franchement : je ne suis jamais arrivé à être productif avec cet éditeur. En plus, les macros ViM sont aisement compréhensibles, et il n'en reste pas moins très puissant, bref je préfère (mais comme je l'ai dit, ce n'est pas encore la panacée : la courbe d'apprentissage de ces logiciels est vraiment trop raide pour des éditeurs de texte)...

    Envoyé depuis mon PDP 11/70

    • [^] # Re: Et maintenant...

      Posté par  (site web personnel) . Évalué à 10.

      Mais c'est possible ! :)

      Tapes ça :

      :source $VIMRUNTIME/menu.vim
      :set wildmenu
      :set cpo-=<
      :set wcm=<C-Z>
      :map <F4> :emenu <C-Z>

      tu appuie sur F4 pour lancer le menu, tu te déplace avec les flêches, et tu sélectionne en appuyant sur entrée...
      • [^] # Re: Et maintenant...

        Posté par  . Évalué à 5.

        mince, ca marche pas chez moi (sous konsole)
        pourtant <F4> a par l'air d'etre mappée par ailleurs.

        A ce propos, tu saurais comment faire pour reduire des portions de code sous vim ?(i.e. compacter des fonctions, des clauses entre {}, etc.) on m'a dit que c'etait faisable, mais je n'ai pas trouvé comment.

        NB : kvim + kdevelop roulaiz !!
        • [^] # Re: Et maintenant...

          Posté par  (site web personnel) . Évalué à 5.

          simple tu mets dans ton code source ou dans ton .vimrc, la ligne: set fdm=marker
          et puis dans ton code sources, il suffit de mettre {{{ ou }}} pour désigner une partie

          void toto() /* {{{ */
          {
          ... le corps de ta fonction ...
          } /* }}} */

          ca marche dans tous les langages.
          En python, je mets ca en début des sources:
          # vim:set ai et sts=2 sw=2:
          # vim600: set fdm=marker cms=#%s :

          Les touches pour ouvrir ou ferme un bloc (zo,zc).
          • [^] # Re: Et maintenant...

            Posté par  (site web personnel) . Évalué à 6.

            En fait il existe plusieurs modes pour faire du folding; personnellement je préfère le folding automatique. Il faut indiquer le type de region à replier et changer la procédure de folding (:help folding) . Par exemple :

            syn region myFold start="{" end="}" transparent fold
            setlocal foldmethod=syntax

            Ensuite on peut ouvrir/fermer un fold en tapant "zo/zc" . Perso j'ai mappé une petite fonction sur une touche :

            function Folding ()
            if (foldclosed (line(".")) > 0)
            exe 'foldo!'
            else
            exe 'foldc!'
            endif
            endfunction

            et je mets donc qq part dans mon vimrc :

            map <F10> :call Folding() <CR>

            On peut s'amuser aussi à avoir une méthode pour évaluer le niveau de folding d'une ligne, ou fonctionner avec des marqueurs. Bref, c'est assez souple. On peut redéfinir la ligne affichée quand le fold est replié (:help foldtext)

            Bref comme d'hab, RTFM :) (:help)
            • [^] # Re: Et maintenant...

              Posté par  . Évalué à 0.

              J'arrive un peu tard dans le débat, mais je trouve cette discussion fort intéressante. Le coup du menu, c'est tout simplement génial. Par contre, le coup du folding, j'ai pas tout compris...
              Enfin, si je ne me suis pas trompé en vous lisant, il s'agit d'occulter le code des fonctions (compris entre par exemple '{' et '}'), pour faciliter la lecture du source, et de n'ouvrir que les portions de code qui nous intéressent avec la commande zo. Avec quelle version de vim cela fonctionne-t-il ? J'ai la version 5.8 d'installée sur mon LFS, mais les commandes :help folding, :help foldtext, zo, zc ne fonctionnent pas. Pourtant, j'ai indiqué la commande suivante dans mon .vimrc personnel :
              syn region myFold start="{" end="}" transparent fold
              et vi à l'air de la digérer. Par contre, concernant :
              setlocal foldmethod=syntax
              Il n'en veut pas. Si quelqu'un pouvait éclairer ma lanterne, je suis preneur.

              Parallèlement à tout ça, j'ai finalement installé (après compilation des sources dans l'ordre requis), qt-x11-free-3.0.3 et tous les sources de kde3.0. Tout (ou presque) s'est bien passé, mais je n'ai plus accès aux caractères semi graphiques du clavier (antislash, accolades...) obtenues avec la touche alt-gr. Quelqu'un aurait-il une idée de l'origine du pb ? Ca fonctionnait bien avant, je ne vois pas pourquoi soudain kde3 aurait viré ces touches....
              • [^] # Re: Et maintenant...

                Posté par  (site web personnel) . Évalué à 0.

                Autant que je me souvienne, les fonctions de folding sont apparues dans vim 6.0 ...
                (enfin dans les versions bêtas > 5.8) .

                Sinon oui, l'objectif est bien de replier une partie de code. Pour ceux qui connaissent, on obtient un comportement similaire à celui de l'éditeur du GfA Basic sur Atari.

                Genre chez moi :

                int maprocedure (int n) {
                ... du code ...
                }

                devient par exemple :

                > maprocedure (int n) (20 lignes)

                et tient sur une ligne. Plutôt sympa non ? :-)
                un 'ti appui sur F4 (si on a mappé F4 avec la fonction cité plus haut) et ça plie ou déplie la procédure en dessous du curseur.
              • [^] # Re: Et maintenant...

                Posté par  (site web personnel) . Évalué à 1.

                Le repli et ses nombreuses possibilités fait parties des nouveautés de Vim 6. Je te suggère de passer à Vim 6.1, qui est sorti il y a une poignée de semaines, et qui est la version de Vim la plus stable qu'il soit.

                Quant à moi, j'attends avec impatience le jour où j'aurai Vim dans ma fenêtre KMail. J'en ai rêvé...
      • [^] # Re: Et maintenant...

        Posté par  . Évalué à -2.

        mince, ca marche pas chez moi (sous konsole)
        pourtant <F4> n'a pas l'air d'etre mappée par ailleurs.

        A ce propos, tu saurais comment faire pour reduire des portions de code sous vim ?(i.e. compacter des fonctions, des clauses entre {}, etc.) on m'a dit que c'etait faisable, mais je n'ai pas trouvé comment.

        NB : kvim + kdevelop roulaiz !!
        • [^] # Re: Et maintenant...

          Posté par  . Évalué à 1.

          le mieux pour apprendre et de lancer gvim.
          menu tools/folding.
          ou sinon [esc]:help folding
      • [^] # Re: Et maintenant...

        Posté par  (site web personnel) . Évalué à -1.

        Ah ben alors là, un grand merci, Nico :-) Je vais maintenant fouiller la doc pour me faire un menu personnalisé, histoire de remplacer toutes mes touches de fonctions déjà mappées. L'ergonomie de ces « menus à une ligne » n'est pas géniale mais c'est pas pire que ceux de l'Autre (menus affichés dans un buffer). Merci !

        [+] pour toi, et -1 parce que 3615 MAVIE ça intéresse personne.

        Envoyé depuis mon PDP 11/70

  • # KVigor ?

    Posté par  . Évalué à 5.

    Est-ce que l'indispensable vigor marche tjrs ?

    http://www.red-bean.com/~joelh/vigor/screenshots/(...)
  • # gnome-vim

    Posté par  . Évalué à 5.

    C'est un composant bonobo mettant en oeuvre les mêmes interfaces que le composant GtkHTML, sauf que 'édition est assuré par vim.
    On peut donc écrire ses mails dans evolution avec vim.

    http://www.opensky.ca/gnome-vim/(...)

    (le projet semble moribond...)
    • [^] # Re: gnome-vim

      Posté par  . Évalué à -1.

      <troll>
      gnome ?, ça existe encore ce machin
      </troll>
      • [^] # Re: gnome-vim

        Posté par  (site web personnel) . Évalué à 3.

        Implementation pathetique: il lance un terminal dans lequel il fait tourner vim.

        Il existe quelque part un gtkvim, qui fait intelligemment ce que gnome-vim essaye de faire pitoyablement: un widget gtk-vim. Le mec utilise une petite socket gtk pour incruster vim dans un widget gtk. Mais le composant bonobo reste a ecrire, KDE garde une longueur d'avance. :-)

Suivre le flux des commentaires

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