Hoe om lange lijnen automatisch te breken?

Ik heb de googlewebs doorzocht, maar ik heb geen emacs-pakket kunnen vinden dat automatisch lange lijnen in een (Python) taal conformeert. Bijvoorbeeld:

    def _formatDependencyList(usedList):
        if len(usedList) == 0:
            return '(This thing does not use modules)'
        return ', '.join([_escapeUnderscores(_getBaseNameHead(s)) for s in usedList])

De s in de uiterst rechtse instantie van usedList bevindt zich in kolom 80 in mijn bestand, en na het bereiken van het einde van de regel zou ik graag een commando willen geven, net zoals de opdracht Mq / vul-alinea om deze regel te 'herstellen' en er zo uit te zien:

        return ', '.join([
                _escapeUnderscores(_getBaseNameHead(s)) for s in usedList])

In dit speciale geval zijn de ( en de [ die join volgen aangrenzend, dus ik zou de regel na [. (In het meer typische geval zou ik de regel doorbreken bij het eerste ( of [ karakter.)

Dit lijkt mij iets dat emacs zou kunnen doen, en waarschijnlijk ook doet (ergens), en het zou me een hele lotta </​​em> toetsaanslag besparen. Eerlijk gezegd weet ik niet hoe mensen redacteurs gebruiken die geen alinea's kunnen invullen, en als ik dit ook zou hebben, zou ik ook niet zonder kunnen blijven leven.

5
Dit gaat niet over het invullen van paragrafen, maar over het automatisch coderen van formulieren, een verrassend moeilijk probleem . U zult meer succes hebben bij het vinden van een extern programma dat dit doet, en het dan over uw code laten lopen.
toegevoegd de auteur ICodeForCoffee, de bron
Pep8ify is een geweldig programma om dit voor python te doen. Standaard maakt het geen lange regels, maar u moet de lange-regelvlag wijzigen als u het uitvoert.
toegevoegd de auteur Airsick, de bron

1 antwoord

Geef het een keer multi-line . Zonder configuratie kunt u met een enkele druk op de knop door verschillende witruimtebeleidsregels bladeren.

Alles wat ik doe is:

(use-package multi-line :bind ("C-;" . multi-line))
1
toegevoegd