Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 08/03/2007, à 20:35

mesmento

Comment réconcilier vi et emacs

l'article original est sur mon site :
http://jbbourgoin.free.fr/site/index.ph … &Itemid=57

Vous aimez Emacs, ses outils, sa puissance ? Vous aimez Emacs-Lisp ? Vous aimez ERC, Gnus, eshell ... Mais vous préférez l'élégance, la puissance (et le bien qu'elle vous fait aux doigts) de la configuration clavier de vi ?

Sachez qu'il existe un mode sur Emacs qui émule parfaitement vi, tout en vous offrant toute la puissance d'Emacs : viper !

Voici ce que nous dit le manuel de Viper :

Viper Is a Package for Emacs Rebels;
    it is a VI Plan for Emacs Rescue
    and/or a venomous VI PERil.

Et effectivement, jusqu'à aujourd'hui le choix entre Emacs et Vi était difficile (de manière plus profonde il s'agit aussi d'une manière d'aborder son système. dans mon cas ce problème n'est pas résolu) !

Suivez le guide, vous êtes sauf, vous pouvez revenir fièrement dans l'Église Emacs !

C'est très simple. Pour tester le mode vipe, faite le bien connu M-x puis "viper-mode". Et suivez les instructions.

Mais allons plus loin, et voyons comment en faire notre configuration par défaut :

1. dans votre .emacs

tapez :

    (setq viper-mode t)

    (require 'viper)

afin d'actuver viper au démarrage.

2.créez un fichier ~/.viper et tapez :

   ;; -*- lisp -*-
    ;; configuration du mode viper pour Emacs.

    ; inhiber le message d'information au démarrage
    (setq viper-inhibit-startup-message 't)

    ; niveau d'expertise emacs
    (setq viper-expert-level '5)

    ; viper laisse a C-h son rôle d'aide
    (setq viper-want-ctl-h-help 't)

    ; emacs décide si le buffer est en viper ou en emacs par défaut
    (setq viper-always t)

    ; se comporter comme vi dans le minibuffer
    (setq viper-vi-style-in-minibuffer nil)

    ; C-z fait passer du mode emacs à viper
    (setq viper-toggle-key "\C-z")

    ; régler les problèmes de viper avec eshell
    (add-hook 'eshell-mode-hook
              (lambda ()
                (when viper-mode
                  (setq viper-auto-indent nil))))

Le sens de la configuration est assez clair, non ?

Ensuite vous êtes en terrain connu : i pour insérer, echap pour quitter le mode insertion ;  : pour les commandes etc.

M-x, C-h, C-a, C-e, C-g continuent de fonctionner (il y a des exceptions, ou des changements de comportement pour certains).

un <V> dans la barre d'info indique que vous êtes en mode viper, un <E> en mode Emacs (ma config indique à Emacs de choisir automatiquement  entre l'un et l'autre en fonction du buffer) et un <I> en mode insertion viper.

Avec ça vous devriez commencer à vous amuser wink

Hors ligne

#2 Le 09/03/2007, à 06:29

Yannick_LM

Re : Comment réconcilier vi et emacs

Je suis tout simplement époustouflé !

Merci mille fois.
(et surtout aux dev de viper)


Trucs et astuces pour Vim
Ma web page  avec des trucs dessus ...

Hors ligne

#3 Le 09/03/2007, à 10:06

mesmento

Re : Comment réconcilier vi et emacs

Bien d'accord, les dévs de viper ont fait un super boulot (après il n'y a plus qu'à configurer tout ça aux petits ognon).

Encore une preuve de la flexibilité et la puissance de Lisp wink

Hors ligne