Viper-mode
Le viper-mode permet d'utiliser les raccourcis les plus importants de vim sous emacs. Voici une adaptation pour échanger les ctsr/hjkl et CTSR/HJKL. À placer dans votre .emacs ou dans votre .viper:
;;;;;;;;;;;;;;;;; bépo ;;viper (define-key viper-vi-global-user-map "c" 'viper-backward-char) (define-key viper-vi-global-user-map "t" 'viper-next-line) (define-key viper-vi-global-user-map "s" 'viper-previous-line) (define-key viper-vi-global-user-map "r" 'viper-forward-char) (define-key viper-vi-global-user-map "C" 'viper-window-top) (define-key viper-vi-global-user-map "T" 'viper-join-line) (define-key viper-vi-global-user-map "S" 'viper-nil) ; no manual :-( (define-key viper-vi-global-user-map "R" 'viper-window-bottom) (define-key viper-vi-global-user-map "h" 'viper-command-argument) (define-key viper-vi-global-user-map "j" 'viper-goto-char-forward) (define-key viper-vi-global-user-map "k" 'viper-substitute) (define-key viper-vi-global-user-map "l" 'viper-replace-char) (define-key viper-vi-global-user-map "H" 'viper-change-to-eol) (define-key viper-vi-global-user-map "J" 'viper-goto-char-backward) (define-key viper-vi-global-user-map "K" 'viper-substitute-line) (define-key viper-vi-global-user-map "L" 'viper-overwrite)
vimpulse permet de rajouter quelques commandes vim au viper-mode. Voici l'adaptation correspondante:
;; vimpulse (define-key viper-visual-mode-map "h" 'viper-visual-replace-region)