Fönsterregler

Fönsterregler

Lauri Watts

Delar av den här dokumentationen är konverterat från KDE:s användarbas KWin Rules-sida, och uppdaterad till Plasma 5.8 av KDE:s dokumentationsgrupp.

Översättare: Stefan Asserhäll
Revision Plasma 5.8 (2016-06-23)

Här kan du specifikt anpassa fönsterinställningar för vissa fönster.


Kapitel 1. Fönsterspecifika inställningar: Snabbstart

Kapitel 1. Fönsterspecifika inställningar: Snabbstart

Här kan du specifikt anpassa fönsterinställningar för vissa fönster.

Notera

Observera att inställningen inte har någon effekt om du inte använder KWin som fönsterhanterare. Om du använder en annan fönsterhanterare, titta i dokumentationen för den om hur fönsterbeteendet kan anpassas.

Många av inställningarna du kan anpassa här är de du kan ställa in allmänt i systeminställningarnas modul Fönsterbeteende, men vissa är ännu mer detaljerade.

De omfattar geometri, placering, om ett fönster ska behållas ovanför eller under andra, att förhindra att fokus stjäls, och inställning av genomskinlighet.

Du kan komma åt modulen på två sätt: Från namnlisten i programmet du vill ställa in, eller från systeminställningarna. Om du startar den inne i systeminställningarna kan du använda Ny... för att skapa en fönsterprofil, och knappen Identifiera fönsteregenskaper i dialogrutan som visas för att delvis fylla i nödvändig information om programmet du vill ställa in.

Du kan också när som helst Ändra... eller Ta bort alla lagrade inställningsprofiler, samt ordna om listan. Att ordna om listan med knapparna Flytta upp och Flytta ner påverkar hur de används.

Kapitel 2. Översikt

Kapitel 2. Översikt

KWin låter slutanvändare definiera regler för att ändra ett programs fönsteregenskaper.

När ett program startas kan det exempelvis tvingas att alltid köra på Virtuellt skrivbord 2. Eller så kan en defekt i ett program hanteras genom att tvinga fönstret att visas ovanpå andra.

Stegvisa exempel tillhandahålls tillsammans med detaljerad information om hur regeleditorn i KWin används för att ange fönstermatchning och fönsteregenskaper.

Kapitel 3. Exempel och problemlösningar

Kapitel 3. Exempel och problemlösningar

För att se vad som är möjligt, tillhandahålls detaljerade exempel som också kan användas för att modellera egna regler.

En särskild sida ägnas åt att ta upp problemlösningar.

Kapitel 4. Regeleditorn i Kwin

Kapitel 4. Regeleditorn i Kwin

Starta regeleditorn i Kwin

Det finns flera sätt att starta regeleditorn i KWin. Nedan visas två:

  • Högerklicka på namnlisten i vilket fönster som helst, välj Fler åtgärderInställning av fönsterhantering... och välj Fönsterregler i fönstret Anpassa eller

  • SysteminställningarFönsterbeteendeFönsterregler

Huvudfönstret används för att:

  • Påverka regler med Ny..., Ändra... och Ta bort

  • Dela regler med andra via Importera och Exportera

  • Försäkra dig om önskad regelutvärdering genom att använda Flytta upp och Flytta ner

Regelutvärdering

När ett program startas (eller reglerna ändras) utvärderar KWin reglerna från listans början till slut. För alla regler som motsvarar ett fönster, tillämpas den samlade uppsättningen egenskaper på fönstret, och därefter visas det.

Skulle två eller flera matchande regler aktivera samma egenskap, används inställningen från den första regeln i listan.

Tips

Du kan skräddarsy programmets underliggande fönster genom att placera de mest restriktiva reglerna först: se exemplet med Kopete och Kopetes chattfönster.

Regeleditor

Regeleditor

Editorn består av fyra flikar:

  1. Fönstermatchning

  2. Storlek och position

  3. Arrangemang och åtkomst

  4. Utseende och korrigeringar

Som namnet anger, används Fönstermatchning för att ange kriterier för att matcha en eller flera fönster. De övriga tre flikarna används för att ändra egenskaperna för fönster som matchar.

Tips

Paneler kan också påverkas.

Fönstermatchning

Varje fönsterregel har användarspecificerade kriterier för fönstermatchning. KWin använder kriterierna för att bestämma om regeln ska tillämpas för ett program.

Fönsteregenskaper

Tillsammans med kriterierna för fönstermatchning har varje fönsterregel en uppsättning fönsteregenskaper. Egenskaperna åsidosätter motsvarande programinställningar och tillämpas innan fönstret visas av KWin.

Kapitel 5. Fönstermatchning

Kapitel 5. Fönstermatchning

Fliken Fönstermatchning används för att ange de kriterier som KWin utvärderar när regeln är tillämplig för ett givet fönster.

Noll (matcha vilket fönster som helst) eller flera av följande kan specificeras:

  • Fönsterklass (program): matcha klassen.

    • Matcha hela fönsterklassen: inkludera matchning av den sekundära klassen.

  • Fönsterroll: begränsa matchningen till fönstrets funktion (t.ex. ett huvudfönster, ett chattfönster, etc.)

  • Fönstertyper: begränsa matchningen till fönstrets typ, Normalt fönster, Dialogruta, etc.

  • Fönsterrubrik: begränsa matchningen till fönstrets rubrik.

  • Dator (värddatornamn): begränsa matchningen till värddatornamnet som hör ihop med fönstret.

Tips

Även om det är möjligt att skriva in informationen ovan för hand, är den rekommenderade metoden att använda knappen Identifiera fönsteregenskaper.

Följande operatorer kan användas med fältvärdet i varje fält:

  • Oviktig: ignorera fältet.

  • Matcha exakt

  • Matcha delsträng

Notera

Både Matcha exakt och Matcha delsträng implementerar skiftlägesokänslig matchning. Exempelvis matchar AB strängarna AB, ab, Aboch aB.

Identifiera fönsteregenskaper

Funktionen Identifiera fönsteregenskaper förenklar processen att skriva in matchningskriterier.

  1. Starta programmet som du vill skapa en regel för.

  2. Ställ därefter in antal sekunders fördröjning innan funktionen Identifiera fönsteregenskaper startar under fliken Fönstermatchning. Förvalt värde är noll sekunder.

  3. Klicka på Identifiera fönsteregenskaper och

  4. När muspekaren ändras till ett hårkors, placera det i programmets fönster (inte namnlisten) och vänsterklicka.

  5. Ett nytt fönster visas med information om det markerade fönstret. Välj önskade fält:

    • Sekundärt klassnamn: Vissa program har ett sekundärt klassnamn. Detta värde kan användas för att begränsa fönster enligt värdet.

    • Fönsterroll

    • Fönstertyp

    • Fönsternamn

Klicka på knappen Ok för att fylla i kriterierna under Fönstermatchning.

Genom att använda en kombination av informationen kan en regel gälla ett helt program (enligt Klass) eller en specifikt Typ av fönster inom en Klass, exempelvis ett Verktygsfönster.

Kapitel 6. Fönsteregenskaper

Kapitel 6. Fönsteregenskaper

Egenskaperna som kan ställas in är grupperade enligt funktion under tre flikar:

  1. Storlek och position

  2. Arrangemang och åtkomst

  3. Utseende och korrigeringar

Varje egenskap har en uppsättning parametrar som bestämmer dess verkan.

Parametrar

Varje egenskap accepterar åtminstone en av följande parametrar. Dessutom anges egenskapsspecifika parametrar tillsammans med definitionen av varje egenskap.

Påverka inte

Försäkra att en följande regel som motsvarar fönstret inte påverkar egenskapen.

Tillämpa från början

Starta fönstret med egenskapen och låt det ändras under körning.

Kom ihåg

Använd egenskapens inställning som den definieras av regeln, och om den ändras under körning, spara och använd det nya värdet istället.

Tvinga

Inställningen kan inte ändras under körning.

Tillämpa nu, Tvinga tillfälligt

Verkställ eller tvinga inställningen en gång och ta bort egenskapen. Skillnaden mellan de två är vid körning. Verkställ nu låter egenskapen ändras och Tvinga tillfälligt förhindrar att den ändras till alla påverkade fönster avslutats.

Varning

Om regeln inte har några andra egenskaper angivna, tas den bort efter utvärderingen för Verkställ nu, medan den tas bort efter det sista påverkade fönstret har avslutats för Tvinga tillfälligt.

Egenskaper

Egenskaper

Tips

Knappen Identifiera fönsteregenskaper fyller i egenskapsspecifika värden. För mer information se Fönstermatchning. Exempelvis ställs höjd- och breddvärden för egenskapen Storlek in till det detekterade fönstrets höjd och bredd.

Tips

Argumenten Ja/Nej används för att sätta på eller stänga av egenskaper. Förlåtande grammatik låter dig förstå hur en inställning behandlas. När t.ex. egenskapen Hoppa över aktivitetsfält är inställd till Nej innebär det att aktivitetsfältet inte ska hoppas över. Med andra ord, visa fönstret i aktivitetsfältet.

Storlek och position

Position

Placera fönstrets övre vänstra hörn vid de angivna x,y-koordinaterna.

Tips

KWins origo, (0,0), är skrivbordets övre vänstra hörn.

Storlek

Fönstrets höjd och bredd.

Horisontellt maximerat, Vertikalt maximerat

Dessa egenskaper används för att ändra fönsteregenskaperna maximera horisontellt, minimera horisontellt.

Skrivbord, Aktivitet, Skärm

Placera fönstret på angivet (Virtuellt) Skrivbord, Aktivitet eller Skärm. Använd Alla skrivbord för att placera fönstret på alla Virtuella skrivbord.

Fullskärm, Minimerat, Upprullat

Ändra fönsteregenskaperna Fullskärm, Minimera och Rulla upp. Ett fönster kan således startas minimerat, eller, om det startats minimerat, tvingas att inte starta minimerat.

Tips

Egenskapen Maximerat emuleras genom att använda både Horisontellt maximerat och Vertikalt maximerat eller Ursprunglig placering med argumentet Maximera.

Ursprunglig placering

Åsidosätt den globala fönsterplaceringsstrategin med en av följande:

  • Förval - använd den globala fönsterplaceringsstrategin.

  • Ingen placering - övre vänstra hörnet.

  • Smart - placera där inga andra fönster finns.

  • Maximera - starta fönstret maximerat.

  • Kaskad - i en trappform enligt namn.

  • Centrerad - mitt på skrivbordet.

  • Slumpmässig

  • Övre vänstra hörnet

  • Under musen

  • På huvudfönster - begränsa placering av underfönster till gränserna av det överordnade fönstret.

Ignorera begärd geometri

Ändra om du vill acceptera eller ignorera fönstrets begärda geometriposition. För att undvika konflikter mellan den förvalda placeringsstrategin och fönstrets begäran ignoreras placeringsstrategin när fönstrets begäran accepteras.

Minimal storlek, Maximal storlek

Fönstrets minsta och största tillåtna storlek.

Lyd geometribegränsningar

Ändra om du vill behålla fönstrets begärda proportioner eller grundökning. För att förstå den här egenskapen krävs en del bakgrundsinformation. I korthet, fönster måste begära en grundökning från fönsterhanteraren: minsta antal bildpunkter i höjd x bredd per begäran om storleksändring. I normala fall är det 1 x 1. Andra fönster däremot (t.ex. terminalemulatorer eller editorer), använder teckensnitt med fast bredd, och begär sin grundökning enligt storleken på ett tecken.

Arrangemang och åtkomst

Behåll över, Behåll under

Ändra om fönstret ska behållas över eller under alla andra.

Gruppera automatiskt med identiska

Ändra gruppering (vanligtvis kallat flikar) av fönster.

Gruppera automatiskt i förgrunden

Ändra om fönstret ska bli aktivt när det läggs till i nuvarande grupp med Gruppera automatiskt.

Gruppera automatiskt enligt identifikation

Skapa en grupp med en användardefinierad identifikation. Mer än en regel kan dela samma identifikation för att möjliggöra gruppering av fönster som egentligen inte har med varandra att göra.

Hoppa över aktivitetsfält

Ändra om fönstret ska visas i aktivitetsfältet.

Hoppa över skrivbordsvisning

Ändra om fönstret ska ingå i skrivbordsvisning.

Hoppa över programbyte

Ändra om fönstret ingår i listan som visas med Alt+Tabulator.

Genväg

Tilldela en genväg till fönstret. När du klickar på Redigera... visas ytterligare instruktioner.

Utseende och korrigeringar

Ingen namnlist och ram

Ändra om titelraden och ramen runt fönstret ska visas.

Namnlistens färgschema

Välj ett färgschema för fönstrets namnlist.

Aktiv eller Inaktiv ogenomskinlighet

När fönstret är aktivt eller inaktivt, sätt dess ogenomskinglighet till angivet procentvärde.

Tips

Aktiv eller Inaktiv ogenomskinlighet kan bara påverkas när Skrivbordseffekter är aktiverade.

Förhindra att fokus stjäls

När ett fönster vill ha fokus, avgör om begäran ska beviljas och det placeras ovanför alla andra fönster, eller om dess begäran ignoreras (vilket kan leda till att fönstret döljs bakom andra fönster), enligt en skala (från Ingen till Extrem):

  • Ingen - Ge alltid fokus till fönstret.

  • Låg

  • Normal

  • Hög

  • Extrem - Fönstrets fokusbegäran avslås. Fokus ges bara genom att uttryckligen begära det med musen.

Tips

Se Acceptera fokus för skrivskydda ett fönster, och inte acceptera någon tangentbordsinmatning.

Acceptera fokus

Ändra om fönstret accepterar tangentbordsinmatning. Gör att fönstret blir skrivskyddat.

Ignorera globala genvägar

Ändra om globala genvägar ska ignoreras (enligt definitionen i SysteminställningarGenvägar och gesterGlobala genvägar eller genom att köra kcmshell5 keys i konsole) medan fönstret är aktivt.

Stängningsbart

Ändra om knappen för Stäng ska visas på namnlisten.

Tips

Ett terminalfönster kan fortfarande stängas av användaren genom att avsluta skalsessionen, men om du använder Acceptera fokus för att inaktivera tangentbordsinmatning blir det svårare att stänga fönstret.

Fönstertyp

Ändra fönstret till en annan typ, och ärv egenskaperna från det fönstret:

  • Normalt fönster

  • Dialogruta

  • Verktygsfönster

  • Dockat (panel)

  • Verktygsrad

  • Avriven meny

  • Startskärm

  • Skrivbord

  • Fristående menyrad

Varning

Använd med försiktighet, eftersom det kan leda till oönskade följder. En Starskärm stängs t.ex. automatiskt av KWin när du klickar på den.

Blockera skrivbordseffekter

Ändra om skrivbordseffekter ska inaktiveras medan fönstret finns. Om skrivbordseffekter har aktiverats, och regeln uttryckligen begär att effekterna stängs av, kommer de avaktiveras så länge något matchande fönster finns. Skrivbordseffekter aktiveras på nytt när det sista matchande fönstret stängs.

Kapitel 7. Exempel

Kapitel 7. Exempel

Notera

Det första exemplet beskriver alla nödvändiga steg för att skapa reglerna i detalj. För att låta sidan behålla hanterbar storlek visar efterföljande exempel bara de steg som är specifika för just det exemplet.

Notera

Egenskapen skrivbordsvisning gäller Hanteringen av virtuella skrivbord:

Lås ett fönster till ett skrivbord, och ange andra egenskaper

Lås Akregator till Virtuellt skrivbord 2. Starta dessutom programmet med en föredragen storlek och position. Använd parametern Tillämpa från början för varje egenskap, så att den kan åsidosättas under körning

KWin-regeln skapas så här:

  1. Starta Akregatorskrivbord två, justera storlek och position efter behov:

  2. Högerklicka på namnlisten och välj Fler åtgärderInställning av fönsterhantering...:

  3. Välj alternativet Fönsterregler i den vänstra kolumnen, och klicka på knappen Ny...:

  4. Fönstret Redigera fönsterspecifika inställningar visas. Fliken Fönstermatchning visas som förval:

  5. Klicka på Identifiera fönsteregenskaper med 0 s fördröjning ändras muspekaren omedelbart till ett hårkors. Klicka (varsomhelst) inuti Akregators fönster (men inte på namnlisten). Fönsteregenskaperna visas. Matcha bara enligt Primärt klassnamn, lämna alltså kryssrutorna omarkerade - för mer information, se fönstermatchning:

  6. Om du klickar på Ok i det föregående fönstret skrivs resultaten in under fliken Fönstermatchning. Skriv in en begriplig text i fältet Beskrivning (som visas i fönstret Kwin-regel):

  7. Aktivera fönsteregenskaperna: Position, Storlek och Skrivbord. Ursprungliga värden angavs av Identifiera fönsteregenskaper och kan åsidosättas:

  8. Att klicka på Ok i föregående fönster återgår till Kwin-regler. Den nya regeln med dess Beskrivning visas i listan:

  9. Klicka på Ok för att stänga fönstret.

  10. Klart.

Program på alla skrivbord och hantera ett delfönster unikt

Program på alla skrivbord och hantera ett delfönster unikt

Förutom konversationsfönster, visa Kopete och dess delfönster på alla skrivbord och hoppa över systembrickan och skrivbordsväljaren. Behandla delkonversationsfönster som det överordnade fönstret, men visa dem i systembrickan.

Använd parametern Tvinga för varje egenskap, så att den inte kan åsidosättas.

För att implementera ovanstående måste två regler skapas:

  1. En regel för Kopete chatt och

  2. En regel för Kopete

Matchningskriterier för regeln Kopete chatt är mer restriktiva än för Kopete, eftersom den måste matcha en specifik Fönsterroll: chattfönstret. På grund av processen vid regelutvärdering måste regeln Kopete chatt komma före Kopete i listan med Kwin-regler för Kopete.

Regel för Kopete chatt

Förutsatt att ett Kopete chattfönster är öppet:

  1. Använd Identifiera fönsteregenskaper och välj fönstret Kopete chatt. Kryssa för rutan Fönsterroll för att begränsa kriterierna till chattfönster - för ytterligare information, se fönstermatchning:

  2. Att klicka på Ok i föregående fönster fyller i resultaten under fliken Fönstermatchning. Skriv en begriplig text i rutan Beskrivning:

  3. Aktivera följande egenskaper:

  4. Klicka dig fram för att slutföra inmatning av regeln.

Notera

Egenskapen Hoppa över aktivitetsfält är inställd till Nej för att visa fönstret i aktivitetsfältet, vilket kan fritt översättas till: nej hoppa inte över aktivitetsfältet .

Regel för Kopete

Förutsatt att Kopete är öppet:

  1. Använd Identifiera fönsteregenskaper och välj fönstret Kopete. Matcha bara enligt Primärt klassnamn, lämna alltså kryssrutorna omarkerade - för mer information, se fönstermatchning:

  2. Att klicka på Ok i föregående fönster fyller i resultaten under fliken Fönstermatchning. Skriv en begriplig text i rutan Beskrivning:

  3. Aktivera följande egenskaper:

  4. Klicka dig fram för att slutföra inmatning av regeln.

Regellista för Kopete i Kwin-regler

Som tidigare nämnts, på grund av processen vid regelutvärdering måste regeln för Kopete chatt komma före regeln för Kopete:

Hindra ett fönster från att visas i skrivbordsvisningen

Hindra ett fönster från att visas i skrivbordsvisningen

Anteckningslappar tillåter för närvarande inte att dess anteckningar hoppar över visningen, men en regel tar enkelt hand om detta tillkortakommande.

Förutsatt att ett fönster med en anteckningslapp är tillgängligt:

  1. Använd Identifiera fönsteregenskaper och välj en anteckningslapp. Matcha bara enligt Primärt klassnamn, lämna alltså kryssrutorna omarkerade - för mer information, se fönstermatchning:

  2. Att klicka på Ok i föregående fönster fyller i resultaten under fliken Fönstermatchning. Skriv en begriplig text i rutan Beskrivning:

  3. Aktivera egenskapen Hoppa över skrivbordsvisning med parametern Tvinga:

  4. Klicka dig fram för att slutföra inmatning av regeln.

Tvinga ett fönster att visas överst

Tvinga ett fönster att visas överst

För att tvinga ett aktivt fönster att visas överst, ställ in egenskapen Förhindra att fokus stjäls till Ingen, tillsammans med parametern Tvinga:

Flera regler per program

Flera regler per program

Thunderbird har flera olika delfönster. I detta exempel:

  • Lås huvudfönstret i ThunderbirdVirtuellt skrivbord 1 med en specifik storlek och position på skrivbordet.

  • Tillåt att brevfönstret i Thunderbird visas på alla skrivbord, och när det aktiveras, ge det fokus och visa det ovanför alla andra fönster.

  • Visa påminnelser från Thunderbird överst, och ge dem inte fokus så att de inte stängs av misstag.

Varje regels matchningskriterium är nog restriktivt så att deras ordning i KWins huvudfönster inte spelar någon roll för regelutvärderingen.

Thunderbird - Huvudfönster

Förutsatt att Thunderbirds huvudfönster är öppet, och att storlek och position är som du vill ha dem:

  1. Använd Identifiera fönsteregenskaper och välj Thunderbirds huvudfönster. Kryssa för rutan Fönsterroll för att begränsa kriteriet till huvudfönstret - för ytterligare information, se fönstermatchning:

  2. Att klicka på Ok i föregående fönster fyller i resultaten under fliken Fönstermatchning. Skriv en begriplig text i rutan Beskrivning:

  3. Aktivera följande egenskaper:

  4. Klicka dig fram för att slutföra inmatning av regeln.

Thunderbird - Brevfönster

Förutsatt att ett Thunderbird brevfönster är öppet:

  1. Använd Identifiera fönsteregenskaper och välj Thunderbirds brevfönster. Kryssa för rutorna Fönsterroll och Fönstertyp för att begränsa kriteriet till brevfönster - för ytterligare information, se fönstermatchning:

  2. Att klicka på Ok i föregående fönster fyller i resultaten under fliken Fönstermatchning. Skriv en begriplig text i rutan Beskrivning:

  3. Aktivera följande egenskaper:

  4. Klicka dig fram för att slutföra inmatning av regeln.

Thunderbird - Påminnelse

Förutsatt att ett fönster med en Thunderbird påminnelse är öppet:

  1. Använd Identifiera fönsteregenskaper och välj Thunderbirds påminnelsefönster. Kryssa för rutorna Sekundärt klassnamn och Fönstertyp för att begränsa kriteriet till påminnelsefönster - för ytterligare information, se fönstermatchning:

  2. Att klicka på Ok i föregående fönster fyller i resultaten under fliken Fönstermatchning. Skriv en begriplig text i rutan Beskrivning:

  3. Aktivera följande egenskaper:

  4. Klicka dig fram för att slutföra inmatning av regeln.

Kapitel 8. Problemlösningar för program

Kapitel 8. Problemlösningar för program

Nedan visas problemlösningar för program som inte beter sig som de ska.

Tips

Om du inte känner dig hemma med hur man skapar regler för KWin, se detta detaljerade exempel, för att få något att basera den nya regeln på.

Fel vid storleksändring till fullskärm

Emacs och gVim kan, när de maximeras (fullskärmsläge) och under vissa omständigheter, stöta på problem vid storleksändring av fönstret - se Emacs window resizes ... En regel i KWin kringgår problemet.

Förutsatt att ett Emacs-fönster är öppet:

  1. Använd Identifiera fönsteregenskaper och välj Emacs-fönstret. Matcha bara enligtPrimärt klassnamn; lämna alltså kryssrutorna omarkerade - för ytterligare information, se fönstermatchning

  2. Att klicka på Ok i föregående fönster fyller i resultaten under fliken Fönstermatchning. Skriv en begriplig text i rutan Beskrivning:

  3. Ignorera Emacs begäran om fullskärm genom att aktivera egenskapen Lyd geometribegränsningar, ändra den till avstängd (Nej) för att ignorera den, och ställ in parametern Tvinga:

  4. Klicka dig fram för att slutföra inmatning av regeln.

Kapitel 9. Tack till och licens

Kapitel 9. Tack till och licens

För dokumentationens upphovsrätts, se KWin-regelsidans historik på användarbasen

Översättning Stefan Asserhäll

Översättning Arve Eriksson

Den här dokumentationen licensieras under villkoren i GNU Free Documentation License.