Kann Vim einen Lizenzblock am Anfang einer Datei ignorieren?

8

Gibt es eine Möglichkeit, Falten oder eine andere schwarze Magie von Vim-Script zu verwenden, um Lizenzblöcke an der Spitze von Dateien zu verstecken? Ich mag es nicht, dass sie einen so großen Ausschnitt meines Bearbeitungsfensters einnehmen; Ich mag es, einen Sinn dafür zu bekommen, was eine Datei macht, wenn ich sie zum ersten Mal öffne, anstatt ein Gesicht voller Textplatte.

    
Steven Dee 12.02.2010, 06:18
quelle

4 Antworten

4

Versuchen Sie dies in einem Autokommando.

%Vor%

Passen Sie den Bereich in Zeile 4 entsprechend an. Im schlimmsten Fall, wo das Copyright an verschiedenen Stellen beginnt und eine variable Länge hat, sollte dieses Muster genügen:

%Vor%     
Steve K 12.02.2010, 11:16
quelle
2

Es hängt davon ab, ob es eine konsistente Form für den Lizenzblock gibt und welche Sprache Sie programmieren. Python verwendet zum Beispiel häufig einen 'foldexpr', um das Falten zu definieren, also müssen Sie das ersetzen existierende Funktion mit einer neuen (oder loswerden der bestehenden Faltung). Ich glaube, der Standard in C ist das manuelle Falten (obwohl es möglich ist, dass ich es selbst so konfiguriere: ich kann mich nicht erinnern), also ist es viel einfacher, zusätzliches Falten hinzuzufügen.

Mit einer einfachen GPL-Copyright-Nachricht wie der am Ende dieses Beitrags, könnten Sie foldmethod auf manuell setzen und eine einfache Funktion haben, die eine Faltung erzeugt. Es hängt alles von der Form des Copyrights ab und wie wichtig es für Sie ist, die bestehende Faltung beizubehalten. Ich fürchte, ich brauche etwas mehr Details, um eine nützlichere Antwort zu geben. Wie auch immer, hier ist ein Beispielskript, mit dem der Copyright-Hinweis am Ende dieses Posts geklappt werden kann:

%Vor%

Unter der Annahme eines Copyright-Hinweises wie diesem:

%Vor%     
DrAl 12.02.2010 08:41
quelle
2

Ich habe dafür ein kleines vim-Plugin erstellt. Es wird bestimmt, wenn der erste Kommentar der Seite gefaltet werden soll. Es hat bei meinen Testfällen funktioniert, aber natürlich ist jede Verbesserung willkommen. Es sollte einfach sein, andere einzelne oder mehrere Zeilenbezeichner hinzuzufügen.

Holen Sie sich hier . Um es wie jedes andere Plugin zu installieren, legen Sie es einfach in Ihr ~ / .vim / plugin.

Bearbeiten: Änderte den Link zu vim.org und löschte die Antwort

    
fotanus 06.02.2011 00:32
quelle
0

Wie wäre es, sie zu löschen? Ernsthaft.

Der Quellcode ist durch Rechtebesitz und Lizenzierung geschützt, nicht durch das Muster. Es muss nicht dort sein - zumindest in den meisten Fällen.

Im Fall von GPL und anderen ähnlichen Schemata, bei denen der Text tatsächlich vorhanden sein muss, kann er an den unteren Rand der Datei verschoben werden oder was auch immer.

    
wallyk 12.02.2010 06:23
quelle