dvtm ger konceptet för kakel fönsterhantering, populariserad av X11-fönsterhanterare likedwm till konsolen. Som en konsol windowmanager den försöker göra det enkelt att arbeta med flera konsol basedprograms.
nyheter
- dvtm-0.15 släppt (2016-01-09)
- dvtm-0.14 släppt (2015-02-19)
- dvtm-0.13 släppt (2014-11-15)
- dvtm-0.12 släppt (2014-07-05)
- dvtm-0.11released (2014-03-08)
- dvtm-0.10released (2013-12-28)
- dvtm-0.9released (2013-04-03)
- dvtm-0.8released (2012-08-01)
- dvtm-0.7released (2011-09-04)
- dvtm-0.6released (2010-10-08)
- dvtm-0.5.2released (2009-07-07)
- dvtm-0.5.1released (2009-02-08)
- dvtm-0.5released (2009-01-26)
- dvtm-0.4.1released (2008-05-10)
- dvtm-0.4released (2008-02-17)
- dvtm-0.3released (2008-01-12)
- dvtm-0.2released (2007-12-29)
- dvtm-0.1släppt (2007-12-21)
- dvtm-0.01 släppt (2007-12-08)
ladda ner
antingen ladda ner den senaste källan tarball, kompilera (du behöver förbannelser rubriker) och installera det
$EDITOR config.mk && $EDITOR config.def.h && make && sudo make install
eller använd en av de distributioner som tillhandahållsbinära paket.
varför dvtm? Filosofin bakom
dvtm strävar efter att följa theUnix philosophy.It försöker göra en sak, dynamisk fönsterhantering på konsolen och att göra det bra.
som sådan dvtm inte genomföra sessionshantering men insteaddelegates denna uppgift till ett separat verktyg som kallasabduco.
på samma sätt implementeras dvtm: s kopieringsläge genom att pipa scrollback buffercontent till en extern redigerare och bara lagra vad redaktören skriver stdout
. Därför delegeras urvalsprocessen till redigerarendär kraftfulla funktioner som reguljär uttryckssökning är tillgängliga.
som ett resultat dvtm källkod är relativt liten(~4000 rader av C),enkel och därför lätt att hacka på.
Snabbstart
alla dvtm-tangentbindningar börjar med en gemensam modifierare som från nowon hänvisas till som MOD
. Som standard MOD
är inställd på CTRL+g
howeverthis kan ändras vid runttime med -m
kommandoradsalternativ.Till exempel inställning MOD
till CTRL-b
uppnås genom att startadvtm -m ^b
.
Windows
nya fönster skapas med MOD+c
och stängs med MOD+x
.för att växla mellan windows använd MOD+j
och MOD+k
eller MOD+
där siffran motsvarar det fönsternummer som visasi namnlisten. Windows kan minimeras och återställas med MOD+.
.Input kan riktas till alla synliga fönster genom att trycka på MOD+a
, utfärdar samma tangentkombination åter återställer normal behaviouri.e. endast det för närvarande fokuserade fönstret kommer att få inmatning.
layouter
synliga fönster ordnas av en layout. Varje layout består av amaster och ett kakelområde. Vanligtvis upptar huvudområdet det störstaen del av skärmen och är avsedd för den för närvarande viktigastefönster. Storleken på huvudområdet kan krympas med MOD+h
och förstoras med MOD-l
respektive. Windows kan zoomas in ihuvudområdet med MOD+Enter
. Antalet fönster i masterområdet kan ökas och minskas med MOD+i
och MOD+d
.
som standard kommer dvtm med 4 olika layouter som kan cyklas via MOD+Space
- vertikal stack: master area på den vänstra halvan, andra clientsstacked till höger
- bottom stack: master area på den övre halvan, andra klienter staplade under
- grid: varje fönster får en lika stor del av skärmen
- fullscreen: endast det valda fönstret visas och upptar hela tillgängliga visningsområdet
MOD+m
ytterligare layouter ingår i källkarbollen men inaktiveras bydefault.
taggning
varje fönster har en icke tom uppsättning taggar associerade med den. En vybestår av ett antal taggar. Den aktuella vyn innehåller alla fönstersom är taggade med de för närvarande aktiva taggarna. Följande tangentbindningar används för att manipulera taggarna.
-
MOD-0
visa alla fönster med någon tagg -
Mod-v-Tab
växlar till de tidigare valda taggarna -
MOD-v-
visa alla fönster med nth tagg -
Mod-V-
Lägg till/ta bort alla fönster med nth tagg till/från vyn -
Mod-t-
applicera nth tagg till fokuserat fönster -
Mod-T-
Lägg till/ta bort nth tagg till/från fokuserat fönster
statusrad
dvtm kan instrueras att läsa och visa statusmeddelanden från en namedpipe. Som ett exempeldvtm-status
scriptis tillhandahålls som visar aktuell tid.
Copymode
MOD+e
rör hela rullningsbuffertinnehållet till en extern redigerare.Vad någonsin redaktören skriver till stdout
är ihågkommen av dvtm och canlater klistras med MOD+p
.
för att detta ska fungera måste redigeraren vara användbar som ett filter och bör använda stderr
för sitt användargränssnitt. Exempel där detta ärfallet inkluderar sandy(1)
och vis.
$ echo Hello World | vis - | cat
patchar
det finns ett antal av träd patchar som anpassar dvtm ’ bete:
- pertag (se även motsvarande postutskick)
FAQ
lossa / sätt tillbaka funktionalitet
dvtm har inte sessionsstöd inbyggt. Användabduco istället.
$ abduco -c dvtm-session
lossa med CTRL-\
och senare Sätt tillbaka med
$ abduco -a dvtm-session
Kopiera / Klistra fungerar inte under X
om du har musstöd aktiverat, vilket är fallet med standardinställningarna, måste du hålla ned Skift medan du väljeroch infoga text. Om du inte gillar det här beteendet hellerkör dvtm med kommandoradsargumentet -M
, inaktivera det vid körning med MOD+M
eller ändra config.def.h
för att inaktivera det heltvid kompileringstiden. Du kommer dock inte längre att kunna utföra andra musåtgärder som att välja fönster etc.
Hur ändrar du nyckelbindningarna?
konfigurationen av dvtm görs genom att skapa en anpassad config.h
och (åter) sammanställa källkoden. Se standard config.def.h
som ett exempel, att anpassa det till dina önskemål bör vara enkelt.Du definierar i princip en uppsättning layouter och nycklar som dvtm kommer att använda.Det finns några fördefinierade makron för att underlätta konfigurationen.
varning: terminalen är inte fullt fungerande
det betyder att du inte har installerat dvtm.info
terminfo-beskrivningenvilket kan göras med tic -s dvtm.info
. Om du av någon anledning inte kan installera nya terminfo-beskrivningar ställer du in DVTM_TERM
miljövariabel till en känd terminal När du startar dvtm
som i
$ DVTM_TERM=rxvt dvtm
detta kommer att instruera dvtm att använda rxvt som $TERM
värde i sina fönster.
Hur ställer du in fönstertiteln?
fönstertiteln kan ändras med hjälp av axterm extensionterminal escape sequence
$ echo -ne "3]0;Your title here7"
så till exempel i bash
om du vill visa den aktuella arbetskatalogen i fönstertiteln kan detta åstadkommas med hjälp av följande avsnitt i dina startfiler.
# If this is an xterm set the title to [email protected]:dircase "$TERM" indvtm*|xterm*|rxvt*) PROMPT_COMMAND='echo -ne "3]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}7"' ;;*) ;;esac
andra skal ger liknande funktionalitet, zsh som ett exempel har aprecmd funktionsom kan användas för att uppnå samma effekt.
något är fel med de visade färgerna
se till att du har ställt in $TERM
korrekt till exempel om du vill använda 256 färgprofiler måste du antagligen lägga till -256color
till ditt vanliga terminalnamn. Också på grund av begränsningar av ncurses bydefault du kan bara använda 255 färgpar samtidigt. Om du behöver mer än 255 olika färgpar samtidigt måste du bygga om ncurses med
$ ./configure ... --enable-ext-colors
Observera att detta ändrar ABI och därför sätter SONAME of thelibrary till 6 (dvs. du måste länka mot libncursesw.so.6
).
vissa tecken visas som skräp
se till att du sammanställt dvtm mot en unicode aware förbannelser bibliotek(i händelse av ncurses detta skulle vara libncursesw
). Se också till att dina lokala inställningar innehåller UTF-8.
det numeriska tangentbordet fungerar inte med Putty
inaktivera applikationstangentlägei Putty-konfigurationen under Terminal => Features => Disable application keypad mode
.
Unicode-tecken fungerar inte inom Putty
du måste berätta för Putty i vilkenkaraktärkodningde mottagna data är. Ställ in rullgardinsmenyn under Window => Translation
till UTF-8. För att få rätt linjeteckningstecken vill du proabablyalso ställa in termen miljövariabel till putty
eller putty-256color
.Om det fortfarande inte gör susen sedan försöka köra dvtm med thefollowing ncurses relaterade miljövariabel set NCURSES_NO_UTF8_ACS=1
.
utveckling
du kan alltid hämta den aktuella kodbasen från git repositorylocated på Github orSourcehut.