Skapa en anpassad applikationsstartare med snabblista
Programstartare som du ser i huvudmenyn i din skrivbordsmiljö konfigureras med .skrivbordsfiler. Dessa .skrivbordsfiler innehåller kod som följer standarder som specificeras av freedesktop-specifikationer.
För att skapa en anpassad programstartare med snabblista är det viktigt att förstå strukturen för a .skrivbordsfilen först. Den här artikeln listar bara de alternativ som är nödvändiga för att skapa en enkel anpassad applikationsstartare. i alla fall, .skrivbordsfiler är riktigt kraftfulla och det är möjligt att skapa avancerade startprogram med hundratals alternativ som inkluderar språkspecifika strängar, begränsningar för skrivbordsmiljö, nyckelordstaggar och så vidare.
I exemplet nedan visas en anpassad programstartare som heter "Textredigerare" med två åtgärder i en snabblista:
[Skrivbordspost]Namn = Textredigerare
Kommentar = Mina favoritredigerare
Version = 1.0.0
Exec =
Terminal = falsk
Typ = applikation
StartupNotify = sant
Ikon = gedit
Åtgärder = Sublime-Text; Gedit;
[Desktop Action Sublime-Text]
Namn = Sublim text
Exec = subl% U
StartupNotify = sant
[Desktop Action Gedit]
Namn = Gedit
Exec = gedit% U
StartupNotify = sant
Var:
- namn är namnet på din anpassade applikationsstartare som kommer att visas i huvudmenyn
- Kommentar är den sökbara korta beskrivningen för den anpassade startprogrammet
- Version är den användardefinierade versionen för den anpassade appstartaren
- Exec är standardkommandot som ska köras när du vänsterklickar på ikonen för den anpassade appstartaren
- Terminal definierar om kommandot ska köras i en terminal eller inte
- Typ anger typ av applikation
- StartupNotify, om det är satt till sant låter systemet spåra starthändelser och åtgärder (exempel: markörändringar till en timglasfigur när du gör lite bakgrundsarbete)
- Ikon hänvisar till namnet på ikonen som ska användas för den anpassade programstartaren (läs anmärkningen nedan)
- Insatser ange beställningsposterna i en snabblista
- [Desktop Action XXXX] skapar en ny snabblistpost som använder några av alternativen som förklaras ovan
Så för att skapa en giltig .desktop launcher med snabblista, du måste ha en bred [Desktop Entry] -kategori först, följt av [Desktop Action XXXX] -poster som definierar beteendet hos enskilda åtgärder i en snabblista. Det är nödvändigt att du använder alla variabler som förklaras ovan, eftersom de är de minsta som krävs för en funktion .skrivbordsfil.
Observera att du måste ange ikonnamnet korrekt så att systemet automatiskt kan välja en ikon för din anpassade startprogram. Det är möjligt att använda din egen ikonfil, men för konsekvens och minskning av beroenden för den anpassade startprogrammet rekommenderas att du använder ikoner som redan ingår i dina distributioner.
För att se alla giltiga ikonnamn, kör kommandot nedan i en terminal:
$ tree -ialf / usr / share / icons / | grep .png | sed's:.* / :: '| sortera | uniq | sed's /.png // g 'För att spara alla giltiga ikonnamn i en textfil, kör kommandot nedan i en terminal:
$ tree -ialf / usr / share / icons / | grep .png | sed's:.* / :: '| sortera | uniq |sed's /.png // g '> ikon_namn.Text
För att aktivera en .startprogram för skrivbordsprogram med snabblista måste du spara den på lämplig plats. Kör kommandona nedan för att skapa önskat .skrivbordsfil:
$ cd ~ /.lokal / dela / applikationer$ subl textredigerare.skrivbordet
Ersätt "subl" med kommandot från din favorittextredigerare. Klistra in koden ovanifrån eller använd din egen kod, gör filen körbar med kommandot nedan:
$ chmod + x textredigerare.skrivbordetAlla snabblistor kan nu nås genom att högerklicka på ikonen för anpassad programstart. Så här ser slutresultatet ut med en applikationsstartare skapad från koden ovan:
Skapa en skärmdumpapplikation med endast anpassad startprogram och snabblistor
Eftersom du kan definiera vänster- och högerklickåtgärder för alla anpassade startprogram är det möjligt att skapa minimala appar utan mycket kod och GUI-gränssnitt. Kolla in ett exempel på en skärmdump-app som bara är gjord med snabblistor.
Till att börja med måste du installera några beroenden för att skärmdumpappen ska fungera:
$ sudo apt installera imagemagick xdotoolSkapa en ny .skrivbordsfil:
$ cd ~ /.lokal / dela / applikationer$ subl skärmdump-app.skrivbordet
Klistra in koden nedan i skärmdump-appen.skrivbordsfil:
[Skrivbordspost]Namn = Skärmdump-appen
Kommentar = Ta skärmdumpar på skrivbordet
Version = 1.0.0
Exec = bash -c 'import -window root ~ / Bilder / "$ (datum -Is)".png '
Terminal = falsk
Typ = applikation
StartupNotify = sant
Ikon = kamera
Åtgärder = Fullskärmsfördröjd; Fokuserad-fördröjd; Fokuserad; Välj-fönster
[Desktop Desktop Fullscreen-fördröjd]
Namn = Ta helskärm efter 5 sekunders fördröjning
Exec = bash -c 'sova 5; importera -window root ~ / Pictures / "$ (date -Is)".png '
StartupNotify = falskt
[Desktop Action Fokuserad-fördröjd]
Namn = Grab Focused Window efter 5 sekunder
Exec = bash -c 'fönster = $ (xdotool getwindowfocus); sova 5; import -fönster
"$ window" ~ / Bilder / "$ (datum -Is)".png '
StartupNotify = falskt
[Desktop Action Focused]
Namn = Grab Focused Window
Exec = bash -c 'fönster = $ (xdotool getwindowfocus); importera
-fönster "$ window" ~ / Bilder / "$ (datum -Is)".png '
StartupNotify = falskt
[Fönster för val av skrivbordshandling]
Namn = Välj fönster för att fånga
Exec = bash -c 'import ~ / Bilder / "$ (datum -Is)".png '
StartupNotify = falskt
Spara filen och gör den körbar:
$ chmod + x skärmdump-app.skrivbordetNu när du klickar på "Skärmdumpappen" kommer den att ta en skärmdump i helskärm och lagra den i ~ / Bilder-katalogen. Fler alternativ är tillgängliga när du högerklickar på appikonen.
Slutsats
Att skapa anpassade startprogram med snabblistor är ett utmärkt sätt att komma åt vanliga appar och kommandon. Eftersom dessa app-startare fungerar som alla andra skrivbordsapplikationer är det möjligt att fästa dem i aktivitetsfältet eller panelen som är tillgänglig i din skrivbordsmiljö. Om du håller beroenden minimala är dessa bärraketer ganska bärbara och kan delas mellan olika system.