Textanvändargränssnitt

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 28 februari 2022; kontroller kräver 3 redigeringar .

Textanvändargränssnitt , TPI ( eng.  Text user interface, TUI ; även Character User Interface, CUI ) är en typ av användargränssnitt som endast använder en uppsättning alfanumeriska tecken och pseudografiska tecken för input-output och presentation av information . Det kännetecknas av låga krav på resurserna för in- och utmatningsutrustning (särskilt minne ) och hög hastighet att visa information. Dök upp i ett av de inledande stadierna av utvecklingen av datorteknik , med utvecklingen av hårdvarufunktioner som syftar till att implementera kommandoradsgränssnittet som dök upp tidigare , vilket i sin tur är arvtagaren till användningen av teletyper som ett gränssnitt för datorteknik . Kommandoradsgränssnittet har ett antal användbarhetsfördelar jämfört med det grafiska gränssnittet , så program med ett textgränssnitt skapas och används än i dag, särskilt i specifika områden och på utrustning med låg effekt.

Nackdelen med denna typ av gränssnitt är de begränsade visuella medlen på grund av det begränsade antalet tecken som ingår i typsnittet som tillhandahålls av hårdvaran.

Program med ett textgränssnitt kan implementera ett fönstergränssnitt , vilket särskilt underlättas av användningen av pseudografiska symboler.

Kommandoradsgränssnitt

Ett textgränssnitt som återger funktionerna hos en teletyp, det vill säga det imiterar ett oändligt pappersband som rullar på skärmen, på vilket användaren kan skriva in texten på kommandon och nedan ta emot resultatet av sitt arbete också i form av text , kallas kommandoradsgränssnittet . Sådana program kallas också ofta konsolprogram  - eftersom system där information skrivs in och matas ut via en textkonsol, implementerar i princip kommandoradsgränssnittet.

Textgränssnittsfunktioner

I det enklaste fallet använder ett textbaserat gränssnitt ett kommandoradsgränssnitt , men många program använder interaktiva element för att skapa ett mer användarvänligt gränssnitt som närmar sig grafiskt i bekvämlighet .

Textgränssnittet kan implementera alla grundläggande gränssnittselement som används i det grafiska gränssnittet - menyer , knappar , växlar , kryssrutor, rullgardinslistor , rullningslister och så vidare. Många program implementerade ett avancerat fönstersystem, med hjälp av bibliotek som CScape , D-Flat , Turbo Vision och många andra, några hade föränderliga teman (som DOS Navigator ) och stödde olika interaktiva interaktionsenheter som mus , joystick , ljuspenna .

På programnivå använder konsolprogram standardinmatnings-/utgångsenheter ( stdin, stdout, stderr) för att mata in och mata ut information, även om de kan öppna andra filer , nätverksanslutningar och utföra andra åtgärder som är tillgängliga i miljön som exekverar dem. Utmatning av utskrivbara tecken till stdoutoch stderrgör att dessa tecken visas på utmatningsenheten och tas emot av användaren.

Konsolprogram för mer avancerade operativsystem , särskilt UNIX , tenderar att kunna köras på en ganska bred klass av implementeringar av användargränssnitt. För att förenkla att skriva sådana program används ncurses- biblioteket i stor utsträckning .

Implementering av textgränssnittet

Konsolprogrammet behöver inte ta hand om implementeringen av själva användarinteraktionen, eftersom det är begränsat till I/O på standardenheter , med hjälp av bibliotek som ncurses eller andra programmeringsgränssnitt . Själva interaktionen med användaren utförs vanligtvis av operativsystemet eller annan programvara.

Den klassiska implementeringen av ett textgränssnitt, som går tillbaka till 1900-talets första hälft , är en alfanumerisk in- och utmatningsenhet, till exempel en uppsättning tangentbord och ADC ( teleprinter ). Därefter, istället för ATsPU, började monitorer utrustade med en teckengenerator användas, vilket gjorde det möjligt att snabbt och bekvämt organisera en dialog med användaren. Nästan varje modern dator är eller kan utrustas med sådana enheter . Sådana uppsättningar av en bildskärm och tangentbord (ibland med tillägg av en mus ) kallas en datorkonsol.

I linje med traditionen med konsolprogram som använder tangentbordet och ADPU för inmatning respektive utmatning, reducerades interaktionen av sådana program med användaren till att läsa från stdin och utmatning till stdout. Således blev det möjligt att omdirigera input-output-strömmar genom att interagera med användaren genom andra enheter, inklusive de som är anslutna via nätverket , samt att använda speciella program - terminalemulatorer , till exempel rita ett fönster med text i det grafiska användargränssnittet ( textfönster ).

1970 -talet och senare producerades även speciella enheter som implementerar ett textgränssnitt - textterminaler anslutna via en seriell port till en dator direkt eller via ett modem . Med spridningen av persondatorer utförs funktionerna hos en textterminal som regel av en dator, den som konsolprogrammet körs på eller en annan. Telnet- och ssh - programmen tillåter en användare att interagera med ett konsolprogram som körs på en fjärrdator (som vanligtvis kör UNIX) över Internet eller ett lokalt nätverk . Programmen xterm , rxvt , konsole och många andra implementerar ett textgränssnitt genom ett textfönster i X Window System- miljön .

Ett alternativt tillvägagångssätt för konsolutgång har använts i persondatorer, särskilt (men inte uteslutande) IBM-datorn som kör DOS . Programmet kan inte bara mata ut data via stdout, utan också direkt ändra innehållet i ett visst minnesområde som är associerat med bildskärmens teckengenerator , vilket leder till en omedelbar förändring av data som är synliga på monitorn. Sådana program kan också köras i en Microsoft Windows- miljö . Dessutom har Windows stöd för textfönster som på många sätt är överlägset det för DOS, inklusive för Windows inbyggda applikationer.

Linux ger ännu fler alternativ för konsolprogram. I synnerhet, även utan något grafiskt gränssnitt, kan flera program som körs samtidigt interagera med användaren utan konflikt, vilket skapar en illusion av att det finns flera konsoler (virtuella konsoler) i systemet.

I POSIX -kompatibla system, såsom UNIX och Linux, utförs användarens interaktion med terminalen med hjälp av ett speciellt undersystem som kallas TTY-abstraktion .

Exempel på konsolprogram

Vissa program med TPI kan också fungera i konsolläge: