4 votes

Formatage du code Python dans Vim

J'utilise le plugin auto-paires pour aider à fermer automatiquement les parenthèses.

Dans vim, lorsque vous définissez des dicts ou des listes, il y a un formatage automatique comme ceci

| est la position du curseur

a_dict = {
        | # the indent is 8 spaces width, but I already set 4 spaces width indent in .vimrc
        }

a_lst = [
        |
        ]

a_lst_with_a_very_loooooooooooong_name = [
        |
        ]

mais je veux que le code soit formaté comme ceci

lst = [
    |
]

Comment puis-je le faire ?

3voto

Adalee Points 372

Pour l'indentation Python dans vim, j'utilise ce plugin pour l'indentation pep8 con Vundle . Ce plugin fonctionne avec le vôtre et vous donne la fonctionnalité que vous voulez (au moins sur ma machine).

Ejemplo:

lst = [
    |
]

abc = {
    |
}

Vous voulez surtout le let g:pymode_indent = 0 dans votre .vimrc pour le plugin pep8.

Quelqu'un qui est compétent en programmation vim pourrait être en mesure de modifier votre plugin pour faire ce dont vous avez besoin, mais cette solution pourrait vous apporter d'autres avantages si vous utilisez vim pour la programmation Python.

Pour résoudre le problème de la tabulation à 8 espaces, essayez d'avoir toutes les tabulations à 8 espaces.

set tabstop=4
set shiftwidth=4
set expandtab
filetype indent on

dans votre .vimrc (c'est ce que j'ai et cela me donne une indentation de 4 espaces)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X