Aggiunta permanente del tipo di file a ack


16

Di recente ho imparato come consentire a ack di supportare più tipi di file (aggiungendo quanto segue a .ackrc):

--type-add
latte=.latte

Sfortunatamente, questo produce una riga informativa su ogni ricerca ack che uso, anche con 0 risultati.

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

C'è un modo per renderlo un'aggiunta più permanente? (cioè sbarazzarsi di questa riga di informazioni) Mi sembra che stia aggiungendo questo nuovo tipo ad ogni chiamata ack. È un problema con la mia installazione di ack?

Sono su Mac OS X 10.5.8 con ack 1.92 (in esecuzione in Perl 5.10.1)


Riguardo a 10.6-> 10.5.8: non ho davvero idea del motivo per cui ho scritto 10.6, ho sempre avuto 10.5.8 ... E quando me ne sono reso conto, l'ho cambiato ...
Martin Tóth,

1
Cronologia delle revisioni dispari: @Mehper ha iniziato a modificare entro il periodo di tolleranza di 5 minuti, quindi (dopo l' avvio di Mehper , ma prima di salvare ) Martin ha cambiato "10.6" in "10.5.8". Successivamente, la modifica è stata annullata quando Mehper ha salvato le modifiche nel (allora) testo precedente - che per la storia era ancora la stessa revisione a causa del periodo di grazia, quindi elencando Mehper come modifica della versione. Se sei preoccupato per questo, allora considera di votare per Dopo il salvataggio, avvisa quando nel frattempo la posta è stata salvata da qualcun altro .
Arjan,

+1 Stavo usando --type-set seguendo la documentazione ma non avevo idea che i tipi dovrebbero essere in una nuova riga
Marcelo Diniz

Risposte:


18

Mi sembra che la documentazione sostenga --type-setinvece che è necessario :

--type-set
latte=.latte

Mentre --type-addè per, enfatizzare il mio:

I file con le ESTENSIONI specificate sono riconosciuti come di tipo ( esistente ).


1
+1 Dice anche "Se si desidera definire un nuovo tipo o ridefinire completamente un tipo esistente, utilizzare --type-set".
In pausa fino a nuovo avviso.

Hmmm ... Ho letto quella sezione parecchie volte, ma non mi sono reso conto / a, che mi soddisfa le mie esigenze! Grazie!
Martin Tóth,

-1

Hmmm ... ackè fondamentalmente uno script Perl ... che è abbastanza facile da modificare:

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

Ma c'è ancora un'altra soluzione a questo?


4
Se modifichi ack-grep stesso perdi il vantaggio dei successivi aggiornamenti perché l'aggiornamento sovrascriverebbe le tue modifiche. La configurazione può essere fatta in .ackrc che è una soluzione superiore.
Niels Bom,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.