2009-01-15 6 views
3

En mode d'émulation Vim (viper + vimpulse), < < et >> fonctionnent de la même manière que Vim. Je voudrais juste qu'ils indentent avec 2 espaces. Comment je fais ça? (Je sais, trivial mais utile)Comment faire pour ajuster >> et << comportement dans Emacs (Vim émulation, indent, dedent)?

+0

Aucune infraction, mais étant donné que ceci est votre deuxième make emacs agissent comme poste de vim. Peut-être que vous devriez juste utiliser vim? –

+0

@ J.J. Je change de Vim en ce moment. Désolé pour les questions de base, j'essaie simplement de conserver le niveau de productivité précédent ou de minimiser la baisse, et j'espère obtenir des gains énormes dans le futur. –

+0

En règle générale, demander "comment puis-je faire en sorte que Y émule la fonction Z de Z?" devrait probablement être accompagné d'une explication de ce que Z fait ... – dmckee

Répondre

1

Après avoir lu le code viper-cmd.el (et tests), j'ai déterminé que la réponse correcte est:

(setq viper-shift-width 2) 
0

Je suppose que ce mode utilise probablement les paramètres tab-width ou c-basic-offset d'Emacs. Les deux peuvent être réglés avec: (. Bien sûr, l'utilisation quelle que soit la taille que vous voulez à la place de 4)

(setq tab-width 4) 
(setq c-basic-offset 4) 

0

Afin d'avoir un espace et non onglet, ajoutez à votre .emacs:

(setq-default indent-tabs-mode nil) 

Pour avoir tiret Emacs avec 2 espaces, faire comme mipadi vous dit, mais je voudrais utiliser default-tab-width

(setq default-tab-width 2) 
Questions connexes