Hinzufügen eines Dateityps zur permanenten Bestätigung


16

Ich habe kürzlich gelernt, wie man ack mehr Dateitypen unterstützen lässt (und Folgendes hinzufügt .ackrc):

--type-add
latte=.latte

Leider erzeugt das eine Info-Zeile bei jeder Suche, die ich benutze, auch bei einer mit 0 Ergebnissen.

$ ack --latte dump
ack: --type-add: Type "latte" does not exist, creating with ".latte" ...

Gibt es eine Möglichkeit, dies dauerhafter zu machen? (dh diese Infozeile loswerden) Für mich sieht es so aus, als würde dieser neue Typ bei jedem Bestätigungsaufruf hinzugefügt. Ist es ein Problem mit meiner Installation von ack?

Ich arbeite unter Mac OS X 10.5.8 mit ack 1.92 (läuft unter Perl 5.10.1)


Zu 10.6-> 10.5.8: Ich habe wirklich keine Ahnung, warum ich 10.6 geschrieben habe, ich hatte immer 10.5.8 ... Und als ich es erkannte, änderte ich es ...
Martin Tóth

1
Ungerade Änderungshistorie: @Mehper hat innerhalb der 5-minütigen Schonfrist mit der Bearbeitung begonnen, und dann (nachdem Mehper gestartet , aber bevor er gespeichert hat ) hat Martin "10.6" auf "10.5.8" geändert. Als nächstes wurde die Änderung rückgängig gemacht, als Mehper die Änderungen an dem (damals) älteren Text speicherte - der aufgrund der Kulanzfrist immer noch die gleiche Revision für den Verlauf aufwies, weshalb Mehper als Versionsänderung aufgeführt wurde. Wenn Sie sich darüber Gedanken machen, sollten Sie darüber nachdenken, nach dem Speichern abzustimmen, wenn der Beitrag zwischenzeitlich von einer anderen Person gespeichert wurde .
Arjan

+1 Ich habe --type-set gemäß der Dokumentation verwendet, hatte aber keine Ahnung, dass die Typen in einer neuen Zeile stehen sollten
Marcelo Diniz

Antworten:


18

Mir scheint, dass die Dokumentation aussagt, dass Sie --type-setstattdessen benötigen :

--type-set
latte=.latte

Ich --type-addbetone:

Dateien mit den angegebenen EXTENSION (en) werden als vom ( vorhandenen ) Typ TYPE erkannt .


1
+1 Es heißt auch: "Wenn Sie einen neuen Typ definieren oder einen vorhandenen Typ vollständig neu definieren möchten, verwenden Sie --type-set."
Bis auf weiteres angehalten.

Hmmm ... Ich habe diesen Abschnitt einige Male gelesen, aber ich habe nicht verstanden, dass ich meinen Bedürfnissen entspreche! Vielen Dank!
Martin Tóth

-1

Hmmm ... ackist im Grunde ein Perl-Skript ... das ganz einfach zu bearbeiten ist:

%mappings = (
    actionscript => [qw( as mxml )],
    ada         => [qw( ada adb ads )],
...
    latte       => [qw( latte )],
...
    yaml        => [qw( yaml yml )],
    xml         => [qw( xml dtd xslt ent )],
);

Aber gibt es noch eine andere Lösung dafür?


4
Wenn Sie ack-grep selbst bearbeiten, verlieren Sie den Vorteil nachfolgender Upgrades, da durch das Upgrade Ihre Änderungen überschrieben würden. Die Konfiguration kann in .ackrc erfolgen, was eine überlegene Lösung darstellt.
Niels Bom
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.