35 votes

Existe-t-il un moyen de faire en sorte que vim enveloppe automatiquement les chaînes python à 79 caractères ?

J'ai trouvé ceci réponse Le fait d'envelopper les chaînes de caractères à l'aide de parenthèses est extrêmement utile, mais existe-t-il un moyen de le faire automatiquement dans Vim ? Je veux être à l'intérieur d'une chaîne de caractères, en train de taper, et que Vim mette des parenthèses autour de ma chaîne et l'enroule si nécessaire. Pour moi, ce serait un gigantesque C'est un gain de temps, car je passe beaucoup de temps à envelopper manuellement de longues chaînes de caractères. Merci d'avance.

Ejemplo:

  1. Je tape le texte suivant :

    mylongervarname = "my really long string here so please wrap and quote
    automatically"
  2. Vim le fait automatiquement lorsque je touche la colonne 80 avec la chaîne :

    mylongervarname = ("my really long string here so please wrap and "
                       "quote automatically")

12voto

rampion Points 38697

Plus une direction qu'une solution.

Utilisez 'formatexpr' o 'formatprg' . Lorsqu'une ligne dépasse 'textwidth' et passe les critères fixés par le 'formatoptions' sont utilisées (si elles sont définies) pour rompre la ligne. La seule vraie différence est que 'formatexpr' est une expression vimscript, tandis que 'formatprg' filtre la ligne par un programme extérieur.

Donc, si vous connaissez un formateur capable d'effectuer cette transformation sur des lignes de code python, ou si vous êtes prêt à en écrire un, ceci vous donnera un moyen de l'exécuter. Et comme vim supporte python (voir :help python ) vous pouvez même écrire votre formateur python en python.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X