Brevfilter

Filterdialogrutan

Dialogrutan för att skapa filter

 

Efter du har använd KMail ett tag, kan du råka ut för att du har besvär med att sortera alla nya brev i din inkorg när de anländer. Filter låter dig automatiskt utföra vissa åtgärder på inkommande brev och manuellt utföra åtgärder på markerade brev i en korg.

Filter består av filterkriterier, vars regler används för att avgöra om det här filtret ska tillämpas på ett visst brev, och en lista med filteråtgärder som beskriver vad som ska göras med, eller i, brevet om sökmönstret matchar.

Notera

Filter tillämpas ett i taget, med början på det första filtret i listan. Det första vars mönster matchar det givna brevet utförs. Du kan begära att de följande filtren också ska behandlas, men förvalt värde är att sluta behandlingen vid det första filtret som matchar.

Oftast används filter på inkommande brev, men de kan också användas på skickade brev eller ett godtyckligt brev eller en godtycklig samling brev. För att filtrera utvalda brev, markera breven som du vill filtrera i brevlistan och skriv Ctrl+J eller välj BrevAnvänd filter. Det applicerar filtren (de som är markerade för manuell filtrering i den avancerade filterdialogrutan) för de breven.

Skapa filter snabbt

Det finns två sätt att skapa ett filter: Det snabba sättet är att använda BrevSkapa filter..., och välja ett kriterium i undermenyn. Det visar filterdialogrutan och visar ett nytt filter som har den första regeln i sökmönstret och den första åtgärden (som Flytta till korg) förinställda. I de flesta fall, är allt du vill göra att välja korgen som brevet ska flyttas till, men du kan förstås redigera filtret som du vill.

När ett filter för e-postlistor skapas, försöker den här metoden hitta ett villkor som ger en unik identifikation av brev från listan. Om det lyckas, visas det föreslagna namnet på listan i menyvalet BrevSkapa filterFiltrera på sändlista....

Den andra metoden är att skapa ett filter för hand från början genom att starta filterdialogrutan med InställningarAnpassa filter.... Filterdialogrutan beskrivs i detalj i det följande avsnittet.

 

Filterdialogrutan

Den här dialogrutan låter dig hantera och redigera din lista med filter.

Du kan antingen nå den med BrevSkapa filter eller InställningarAnpassa filter....

Dialogrutan är uppdelad i tre huvuddelar under flikarna Allmänt och Avancerat:

Tillgängliga filter

Den här gruppen innehåller listan på filter och åtgärdsknappar för att ändra filtren, nämligen att skapa nya filter, flytta dem upp och ner i listan, kopiera ett av dem, ta bort dem eller byta namn på dem. Om du markerar ett filter i listan, visas dess egenskaper i den högra delen av dialogrutan.

Filterkriterier

I den här gruppen kan du redigera mönstret som brev måste matcha innan filtret appliceras på dem. Du kan välja om alla angivna regler måste matcha eller om det räcker att en enda matchar. Se Sökmönster nedan för en detaljerad beskrivning av varje typ av sökregel.

Du kan klicka på  +  för att få ytterligare (ursprungligen tomma) regler om du vill ange mer komplexa mönster och på  −  för att ta bort den markerade regeln. Rensa tömmer mönstret, dvs. tar bort alla utom en regel från skärmen och nollställer den.

Filteråtgärder

I den här gruppen kan du redigera listan på åtgärder som tillämpas för alla brev som matchar det definierade filterkriteriet. Se Filteråtgärder nedanför för en detaljerad beskrivning av varje åtgärdstyp.

Du kan klicka på  +  för att få en ny, tom åtgärd om du vill definiera fler än en åtgärd och på  −  för att ta bort den markerade åtgärden. Rensa tömmer listan, dvs. tar bort alla utom en åtgärd och nollställer den.

Avancerade inställningar

I den här gruppen kan du definiera några avancerade alternativ, som låter dig finjustera filtreringen.

Med hjälp av den första raden med kryssrutor kan du välja när filtret används: Alternativet Använd filtret på inkommande brev anger att filtret används på brev när de tas emot (dvs. vid Kontrollera posten). Filtret kan användas för alla brev, för alla utom uppkopplade IMAP-konton eller för specifika inkommande e-postkonton.

Alternativet Använd filtret på skickade brev betyder att filtret används för brev när du skickar dem, och alternativet Använd filtret vid manuell filtrering styr att filtret ska användas när filtrering uttryckligen väljes (dvs. via BrevAnvänd filter).

Om Använd filtret på skickade brev är markerat kommer filtret att användas efter brevet skickas, och påverkar bara den lokala kopian av brevet. Om mottagarens kopia också behöver ändras, använd istället Använd filtret innan brev skickas.

Kryssrutan Om detta filter matchar, avbryt behandlingen här bestämmer om filtret efter aktuellt filter behandlas när det aktuella filtret matchar.

Om kryssrutan Lägg till detta filter i menyn Välj filter är markerad, läggs filtret till i undermenyn BrevVälj filter. Därefter kan du använda det filtret för ett brev eller en uppsättning brev. Om det här alternativet används, kan valfritt en snabbtangent väljas och en särskild ikon infogas för att välja filtret i verktygsraden.

Ett annat sätt att filtrera är att använda menyalternativet BrevFiltrera, som använder alla filter, ett i taget, tills alla har används eller ett av filtren som matchar anger alternativet Om detta filter matchar, avbryt behandlingen här.

Notera

Filter namnges automatiskt, om du inte explicit döper om dem med knappen Byt namn.... Dialogrutan antar att den ska fortsätta att namnge filtren automatiskt medan filternamnet börjar med <.

Om du verkställer filterändringar, med Ok eller Verkställ, kopieras bara de giltiga filtren verkligen till den interna filterhanteraren.

På samma sätt tas tomma regler och åtgärdslistor bort från mönstret och åtgärdslistan, innan filtret sparas.

 

Sökmönster

Den vanligaste användningen av filter är att filtrera på brevets avsändare. Det kan göras genom att välja Från. Ett bra tips för en sändlista skulle vara Alla mottagare. Men det finns andra kriterier som ett filter kan leta efter. Observera att alla mönster tolkas utan att bry sig om stora och små bokstäver:

Hela brevet

Söker igenom hela brevet (dvs. rubrik, text och bilagor, om de finns).

Brevets text

Söker igenom brevets text (dvs. hela brevet utom huvuden).

Var som helst i huvudet

Söker igenom alla brevets huvudfält.

Alla mottagare

Söker igenom brevets rubrikfält Till och Kopia.

Storlek i byte

Ställer in övre eller undre gräns för brevets storlek.

Ålder i dagar

Ställer in övre eller undre gräns för brevets ålder.

Brevstatus

Anger begränsningar för brevets status (viktigt, läst, oläst, etc., se BrevMarkera brev >).

Brevetikett

Tittar efter brev med etiketter. Se BrevMarkera brev >.

Krypterad

Tittar efter krypterade brev.

Vilket annat värde som helst (Från, Till, Datum, etc.)

Söker i rubrikfältet med det namnet.

Listan över möjliga regler beror på vad du valde i den första kombinationsrutan. Tillgängliga regler är:

RegelTillgänglig förBeskrivning
innehåller/innehåller intealla sökobjekt med textMatchar om sökobjektet innehåller (eller inte innehåller) given text.
är lika med/är inte lika medde flesta sökobjekt med textMatchar om sökobjektet är lika med (eller inte lika med) given text.
börjar med/börjar inte medde flesta sökobjekt med textMatchar om sökobjektet börjar med (eller inte börjar med) given text.
slutar med/slutar inte medde flesta sökobjekt med textMatchar om sökobjektet slutar med (eller inte slutar med) given text.
uppfyller reguljärt uttryck/uppfyller inte reguljärt uttryckalla sökobjekt med textMatchar om en del av sökobjektet uppfyller det givna reguljära uttrycket (eller inte uppfyller det). Om editorn för reguljära uttryck är installerad, kan du redigera det reguljära uttrycket genom att klicka på knappen Redigera....
har en bilaga/har inte en bilagaHela brevetMatchar om brevet har en bilaga (eller inte har en bilaga).
är lika med/är inte lika mednumeriska sökobjektMatchar om sökobjektets värde är lika med (eller inte lika med) angivet värde.
är mindre ännumeriska sökobjektMatchar om sökobjektets värde är mindre än angivet värde.
är större ännumeriska sökobjektMatchar om sökobjektets värde är större än angivet värde.
är mindre än eller lika mednumeriska sökobjektMatchar om sökobjektets värde är mindre än eller lika med angivet värde.
är större än eller lika mednumeriska sökobjektMatchar om sökobjektets värde är större än eller lika med angivet värde.
är/är inteBrevstatusMatchar om brevet har (eller inte har) angiven status.
är efter/är före eller lika medDatumMatchar om brevet skickades efter (eller inte efter) angivet datum.
är före/är efter eller lika medDatumMatchar om brevet skickades före (eller inte före) angivet datum.

 

Filteråtgärd

Den vanligaste användningen av filter är att omdirigera några inkommande brev till särskilda korgar. Det kan göras genom att välja Flytta till korg. Här är en lista på alla möjliga åtgärder:

Flytta till korg

Flyttar brevet till en annan korg, och tar bort det från den nuvarande korgen.

Kopiera till korg

Kopierar brevet till en annan korg, och lämnar brevet i den nuvarande korgen.

Ange identitet till

Anger identiteten som används när du svarar på det här brevet.

Markera som

Det här låter dig markera brevet som läst eller viktigt (flaggat), men också som vidarebefordrat, besvarat, etc.

Lägg till etikett

Det här lägger till en etikett i brevet. Du kan välja från en lista med alla etiketter som har definierats.

Skicka förfalskad bekräftelse

Det här skickar en förfalskad brevhanteringsbekräftelse (dvs. en läsbekräftelse) till brevets avsändare.

Ange överföring till

Anger överföringsmetoden (t.ex. SMTP) som används när du svarar på brevet. Du kan välja den i en lista över alla dina utgående e-postkonton.

Ange svarsmottagare till

Ändrar fältet Svara till för det här brevet. Det kan vara användbart för e-postlistor som automatiskt anger en svara till adress som du inte vill använda.

Vidarebefordra till

Vidarebefordrar brevet direkt (dvs. som om du valde BrevVidarebefordraDirekt...) till en annan e-postadress. Du kan välja en egen vidarebefordringsmall om en sådan mall har definierats. Om adressboken är installerad, kan du välja adress för Vidarebefordra till i ett meddelandefönster.

Omdirigera till

Det här dirigerar om brevet som det är till en annan e-postadress. Om adressboken är installerad kan du välja adressen Omdirigera till i ett meddelandefönster.

Bekräfta utdelning

Skickar tillbaka ett brev till avsändaren som verifierar att brevet har levererats korrekt, om avsändaren begärt det.

Åtgärden låter dig välja vem som ska få utdelningsbesked av dig. Även om du generellt kan aktivera utdelningsbesked i dialogrutan Anpassa KMail... (på sidan Säkerhet) rekommenderar vi inte att du skickar dem till alla, eftersom det gör det mycket lätt för skräppostavsändare att spåra skräppost.

Kör kommando (bara för avancerade användare)

Kör ett program, men ändrar inte brevet. Ange hela sökvägen till programmet som du vill köra. KMail väntar tills programmet avslutas. Om du inte vill att KMail ska vänta, lägg då till '&' sist i kommandot. Du kan skicka in delar av brevet till programmet, en i taget: %0, %1 etc. står för filer som representerar brevets delar. För vanliga brev är %0 texten, %1 den första bilagan, och så vidare. Dessutom skickas hela brevet in till programmets stdin, och varje förekomst av %{namn} ersätts av innehållet i huvudet som anges av namn. Om brevet behöver identifieras enligt dess lagringsplats i Akonadi databasen, kan platsmarkörerna %{itemid} eller %{itemurl} användas för att åstadkomma det.

Varning

Det fungerar för närvarande bara om brevet har åtminstone en bilaga. Nej, inte ens %0 fungerar i det allmänna fallet!

Tips

Du kan ange godtyckligt komplexa skalkommandon här, eftersom KMail använder ett skal för att köra kommandoraden. Därför fungerar till och med det här kommandot (inom sina gränser): uudecode -o $(mktemp kmail-uudecoded.XXXXXX) && echo $'\a'

Skicka igenom

Skickar brevet till ett program. Om programmet returnerar utmatning, ersätts hela brevet (inklusive huvuden) med utmatningen. Om programmet inte returnerar utmatning eller avslutas med en annan kod än 0 (som anger att ett fel uppstått), ändras inte brevet. Ange hela sökvägen till programmet. Samma ersättningar (%n, %{huvud}) som för Kör kommando utförs på kommandoraden.

Både guiden för eliminering av skräppost och virus använder åtgärden Skicka igenom för att söka efter skräp eller skadliga program. De vanligt tillgängliga skräppost- och antivirusprogrammen returnerar brevet, och infogar en extra post i huvudet, om skräppost (eller ett virus) detekteras.

Varning

Var försiktig med åtgärden, eftersom den kan skada dina brev om filterprogrammet returnerar skräp eller extra rader.

Ta bort huvud

Tar bort alla rubrikfält med de angivna namnet från brevet. Det är i huvudsak användbart för att ta bort fingerade Svara till: rubriker.

Lägg till huvud

Om det inte redan finns ett sådant fält, så läggs ett nytt huvudfält till i brevet med det givna namnet och värdet. Om det redan finns ett huvudfält med det namnet, skrivs det över med det givna värdet. Om det redan finns flera huvuden med det givna namnet (t.ex. Mottaget: huvuden), skrivs ett godtyckligt över och de övriga lämnas oförändrade - det är en känd begränsning. Du skulle kunna kombinera det här filtret med filtret Ta bort huvud ovan för att försäkra dig om att det inte finns några andra huvuden med samma namn i brevet.

Skriv om huvud

Söker igenom det givna huvudfältet, ändrar innehållet och skriver tillbaka det. Söksträngen tolkas alltid som ett reguljärt uttryck som beror på små och stora bokstäver. Ersättningssträngen infogas som den ser ut, utom förekomster av \n, $n och ${nn}, där n är ett positivt tal (en siffra, utom för den tredje formen) eller 0. De här sammansättningarna tolkas som bakåtreferenser till delsträngar som innefattas i parenteser i söksträngen.

Motsvarande begränsningar som för åtgärden Lägg till huvud gäller också här.

Spela ett ljud

Spelar det angivna ljudet. En bläddringsknapp låter dig välja ett förinspelad ljudfil (t.ex. .wav).

Lägg till i adressboken

Om adressboken är installerad låter åtgärden dig ange vilken rad som ska sökas igenom (Från, Till, Kopia, eller Dold kopia), vilken etikett som ska tilldelas, om någon, och vilken namngiven adressbok som adresserna ska lagras i.

Ta bort brev

Tar bort de markerade brevet eller breven. Använd alternativet med försiktighet. Borttagna brev kan inte återställas.

Ta bort status

Det här är inversen av Markera som ovan. Istället för att ange det markerade brevet som viktigt, läst, etc., tar åtgärden bort den angivna flaggan.

Kryptera

Krypterar det valda brevet eller de valda breven med angiven öppen nyckel. Du kan välja från vilken öppen eller privat nyckel som helst sparad i din nyckelring.

Avkoda

Avkodar det markerade brevet eller de markerade breven. Använd åtgärden med försiktighet. KMail avkodar automatiskt brev när du öppnar dem för visning, så du behöver troligtvis egentligen inte använda åtgärden.

 

Exempel på filter

För närvarande markerar eller färglägger inte KMail brev som har extrahuvudet Priority: (Prioritet). Om du vill markera alla brev betecknade med urgent (brådskande) som viktiga, kan du använda ett filter:

Procedur 3.1. Markera brådskande brev som viktiga

  1. Öppna dialogrutan InställningarAnpassa filter... och klicka på ikonen Nytt under listan Tillgängliga filter.

  2. I gruppen Filterkriterier, välj Var som helst i huvudet och innehåller i kombinationsrutorna, och skriv in Priority i textfältet. Välj samma kriterium på nästa rad och skriv in urgent i den andra kombinationsrutans textfält.

    Filtret kommer alltså att matcha alla brev som innehåller huvudfältet Priority: urgent (Prioritet: brådskande).

  3. Hoppa ner till gruppen Filteråtgärder. Välj Markera som i den första kombinationsrutan. En ny kombinationsruta som innehåller en lista med markeringsbeteckningar visas. Välj Viktigt i kombinationsrutan.

  4. Eftersom du inte vill att filtret ska förhindra att övriga brevfilterregler används, avmarkera noga alternativet Om detta filter matchar, avbryt behandlingen här under fliken Avancerat.

  5. Klicka på Ok så är du klar.

    Kom bara ihåg att flytta filterposten Priority: urgent överst i listan Tillgängliga filter varje gång du lägger till ett nytt filter, så att filtret som skickar igenom alltid utförs först.

Om du prenumererar på den (allmänna) KDE-listan, skulle du kunna skapa en korg för listan (låt oss kalla den KDE-allmänt) och använda ett filter för att automatiskt överföra nya brev från inkorgen till korgen KDE-allmänt om de kommer från KDE-listan. Här visas hur man skapar filtret:

Procedur 3.2. Filtrering av en sändlista

  1. Kontrollera om BrevSkapa filterFiltrera på sändlista... kan identifiera sändlistan (namnet på listan ska då visas i menyvalet). I det här fallet, fungerar det och ett filter visas som har List-Id innehåller <kde.kde.org> ifyllt. Välj därefter den önskade målkorgen i menyn med korgar i gruppen Filteråtgärder så är allt klart.

    Om det inte fungerar, fundera ut ett unikt sätt att identifiera breven som du vill filtrera. Den (nästan) unika egenskapen hos brev från KDE-listan är att de alltid innehåller kde@mail.kde.org i fälten Till: eller Kopia:. Det är inte helt perfekt, eftersom det inte fungerar för överskickade brev.

  2. Välj InställningarAnpassa filter....

  3. Klicka på knappen för att skapa ett tomt filter. Det visas som <okänt>.

  4. I gruppen Filterkriterier, välj Alla mottagare i den första kombinationsrutan, innehåller från den andra kombinationsrutan, och skriv in kde@kde.org i textrutan.

  5. Hoppa ner till gruppen Filteråtgärder. Välj Flytta till korg i den första kombinationsrutan. Klicka på korgikonen så visas ett fönster som innehåller en lista med korgar. Välj korgen som du vill att de filtrerade breven ska överföras till. I det här exemplet skulle du välja KDE-allmänt.

Du kan märka att du behöver använda mer kraftfulla kriterier för att filtrera dina brev på ett riktigt sätt. Du kanske till exempel bara vill filtrera brev från KDE-listan som är skrivna av din vän Anna Johansson <aj@någonstans.com>. Det är nu som resten av gruppen filterkriteria kommer till användning:

Procedur 3.3. Att utöka filtret

  1. Öppna fönstret Anpassa filter... och välj filtret som du just skapade.

  2. Eftersom du vill filtrera alla brev som har kde@kde.org i fälten Till: eller Kopia: och är från Anna, markera knappen Matchar alla följande.

  3. Gå nu till den andra sökregeln och välj följande från menyerna: Från, innehåller. Skriv nu in aj@någonstans.com i textfältet.

Nu har du ett filter som identifierar alla brev från KDE-listan som är från aj@någonstans.com.

 

Filteroptimering

Det är viktigt att inse att filterordningen har betydelse för hastigheten hos filterbehandlingen. Här är några idéer som kan hjälpa dig att förbättra filtreringsprestanda:

Stoppa filterbehandling så snart som möjligt:

Om du vet att ett filter slutbehandlar en viss klass av brev, försäkra dig om att du markerar alternativet Om detta filter matchar, avbryt behandlingen här för filtret. Det undviker utvärdering av filterreglerna för alla efterföljande filter. (Se avancerade alternativ i filterdialogrutan).

Ett exempel är filtrering av brev från e-postlistor via huvudet List-id till skilda korgar. När du har fått reda på att ett brev kom från lista A, betyder det att du kan undvika att kontrollera med nästa filter om brevet kom från lista B.

Tänk på kostnaden för utvärdering av filterregler:

Tiden som krävs för att utvärdera en filterregel beror på sättet som regeln är konstruerad. I synnerhet är sökning efter en delsträng med åtgärden innehåller snabbare än en mönstermatchning med åtgärden uppfyller reguljärt uttryck.

Ett annat beroende gäller mängden data som används för utvärdering av en filterregel. Om regeln är baserad på brevhuvudet, bör dess utvärdering normalt vara mycket snabbare än utvärderingen av en regel som är baserad på hela brevet.

Försök hålla filterreglerna så enkla som möjligt.

Kontrollera ordningen av dina filter:

De olika filteråtgärderna har olika komplexitetsgrader. De dyraste filteråtgärderna är Skicka igenom och Kör kommando, eftersom båda kräver att externa program körs. Att lägga filter som innehåller dessa filteråtgärder efter andra filter som kan reducera antalet gånger dessa komplexa åtgärder krävs är nyttigt, om filterlogiken tillåter det.

Ett exempel är filtrering av brev från en sändlista och detektering av skräppost. För skräpposten används oftast ett externt verktyg via åtgärden Skicka igenom. Filtrering av brevet för sändlistan görs via huvudet List-Id. Om du inte också vill kontrollera att brev från sändlistan är skräppost, är det bättre att lägga filtret för sändlistan före filtret för detektering av skräppost. På så sätt undviker du den dyra och långsamma kontrollen av skräppost för alla brev som identifieras som brev från sändlistan.

Filterlogg

Om du vill kontrollera att dina filter fungerar som avsett, kan du visa filterloggen via VerktygVisning av filterlogg....

I visningsfönstret kan du anpassa loggning av filterbehandlingen. Du kan styra loggens detaljnivå, rensa loggen, begränsa loggens storlek och spara den som en fil. Loggen kan ge värdefull information om du vill förbättra dina filtreringsregler.