Metin tabanlı kullanıcı arayüzü - Text-based user interface

Bazı dosya yöneticileri bir TUI uygular ( burada: Midnight Commander )
Vim , çok yaygın olarak kullanılan bir TUI metin düzenleyicisidir.

Olarak işlem , metin tabanlı kullanıcı ara yüzleri ( TUI ) (alternatif olarak uç kullanıcı arayüzleri , özellikleri üzerine bir bağımlılık yansıtmak için bilgisayar terminalleri ve sadece metin), a, retronym bir türünü tanımlayan bir kullanıcı arayüzü erken bir formu olarak (UI) ortak bir insan-makine etkileşimi , ortaya çıkmasından önce bir grafiksel kullanıcı arabirimleri (GUI). GUI'ler gibi, tüm ekran alanını kullanabilir ve fare ve diğer girdileri kabul edebilirler . Ayrıca renk kullanabilirler ve genellikle Unicode'da "kutu çizimi" seti olarak adlandırılan ┌ ve ╣ gibi özel grafik karakterleri kullanarak ekranı yapılandırabilirler . Modern kullanım bağlamı genellikle bir terminal öykünücüsüdür .

Metin terminali türleri

Gönderen metin uygulaması 'ın (onunla ve iletişim) görünümü, bir metin ekranın noktasında (burada erişilebilirlik azalan sırayla sıralı) üç türden birine ait olabilir:

  1. Bir video bağdaştırıcısı veya merkezi işlemci tarafından kontrol edilen gerçek bir metin modu ekranı . Bu, çeşitli kişisel bilgisayar ve mobil aygıt türlerinde yerel olarak çalışan bir uygulama için normal bir durumdur . İşletim sistemi tarafından engellenmezse , akıllı bir program donanım metin modunun tüm gücünden yararlanabilir.
  2. Bir metin modu emülatörü . Örnekler, X Pencere Sistemi için xterm ve Microsoft Windows için win32 konsoludur (pencere modunda) . Bu, genellikle gerçek metin modunda bir görüntü bekleyen programları destekler, ancak önemli ölçüde daha yavaş çalışabilir. Kendi yazı tipi yükleme gibi gelişmiş bir metin modunun belirli işlevleri neredeyse kesinlikle kullanılamaz hale gelir.
  3. Uzak bir metin terminali . İletişim yetenekleri genellikle , Telnet ve Secure Shell gibi durumlarda bant dışı kanal olarak muhtemelen birkaç ioctl ()s ile bir seri hatta veya emülasyonuna indirgenir . Bu en kötü durumdur, çünkü yazılım kısıtlamaları bir uzak görüntüleme cihazının yeteneklerinin kullanımını engeller.

Linux ve diğer Unix benzeri sistemler altında , aynı arabirim (yani standart akışlar ) ekranı ve klavyeyi kontrol ettiğinden , bir program üç durumdan herhangi birine kolayca uyum sağlar . Ayrıca, özel programlama kitaplıkları , metnin verilen görüntüleme aygıtına ve arabirime uygun bir şekilde çıktısının alınmasına yardımcı olur. Windows ile bir karşılaştırma için aşağıya bakın .

ANSI uyumlu terminallerde

Amerikan Ulusal Standartlar Enstitüsü (ANSI) standardı ANSI X3.64 , TUI'ler oluşturmak üzere terminalleri sürmek için kullanılabilecek standart bir kaçış dizileri kümesi tanımlar (bkz. ANSI kaçış kodu ). Yukarıdaki bölümde bahsedilen her üç durum için kaçış dizileri desteklenebilir, bu da rastgele imleç hareketlerine ve renk değişikliklerine izin verir . Ancak, tüm terminaller bu standardı takip etmez ve birçok uyumlu olmayan ancak işlevsel olarak eşdeğer diziler mevcuttur.

DOS ve Microsoft Windows altında

FreeDOS Düzenleme kullanıcı arayüzü

On IBM kişisel bilgisayarlar ve uyumluları , Temel Giriş Çıkış Sistemi ( BIOS ) ve DOS sistem çağrıları ekranda yazma metni için bir yol sağlar ve ANSI.SYS sürücü standart ANSI çıkış sırasını süreç olabilir. Ancak, programcılar kısa süre sonra verileri doğrudan ekran arabelleğine yazmanın çok daha hızlı ve programlamanın daha basit olduğunu ve daha az hataya açık olduğunu öğrendiler ; ayrıntılar için VGA uyumlu metin moduna bakın. Programlama yöntemlerindeki bu değişiklik, birçok DOS TUI programının ortaya çıkmasına neden oldu.Win32 konsol çevre, belli EGA / VGA metin modu özellikleri, metin tampon özellikle rastgele erişim onun öykünme tanınıyor pencereden bile uygulama çalışır eğer. Öte yandan, Windows altında çalışan programlar (hem yerel hem de DOS uygulamaları), yukarıda belirtilen win32 konsol katmanı nedeniyle, ekran ve klavye üzerinde Linux ve DOS programlarından çok daha az kontrole sahiptir.

Impulse Tracker'da fare imleci . İmlecin görünür olduğu yerde kullanılan karakterlerin glifleri, her fare hareketinde gerçek zamanlı olarak yeniden oluşturularak daha kesin bir imleç (piksel başına çözünürlük) elde edildi.

Çoğu zaman, bu programlar ana ekran için beyaz veya sarı karakterlerle mavi bir arka plan kullandı, ancak genellikle kullanıcı renk özelleştirmesine de sahiplerdi. IBM'in kod sayfası 437'de genellikle kutu çizim karakterlerini kullandılar . Daha sonra arayüz , açılır menüler , örtüşen pencereler , iletişim kutuları ve anımsatıcılar veya klavye kısayolları tarafından çalıştırılan GUI widget'ları ekleyerek grafik kullanıcı arayüzlerinden (GUI) derinden etkilendi . Kısa süre sonra fare girişi eklendi - ya basit renkli bir kutu olarak metin çözünürlüğünde ya da Gelişmiş Grafik Bağdaştırıcısı (EGA) ve Video Grafik Dizisi (VGA) ekran bağdaştırıcılarının yazılım tarafından metin karakter şekillerini yeniden tanımlama yeteneği sayesinde grafik çözünürlükte  - ilave fonksiyonlar.

Bu türden bazı önemli programlar Microsoft Word , DOS Shell , WordPerfect , Norton Commander , Turbo Vision tabanlı Borland Turbo Pascal ve Turbo C (ikincisi conio kitaplığını içeriyordu ), Lotus 1-2-3 ve diğerleri idi. Bu arabirimlerden bazıları, 1990'ların başındaki Microsoft Windows 3.1x döneminde bile varlığını sürdürdü . Örneğin, 16-bit Windows altında gerçek GUI programları yazmak için kullanılan Microsoft C 6.0 derleyicisi hala kendi TUI'sine sahiptir.

Microsoft Windows , başlangıcından bu yana, DOS yazılımını görüntülemek için bir konsol içerir. Daha sonraki sürümler, Win32 konsolunu komut satırı arabirimi ve TUI programları için yerel bir arabirim olarak ekledi . Konsol genellikle pencere modunda açılır, ancak Alt ve Enter tuşlarına birlikte basılarak tam, gerçek metin modu ekranına veya tam tersine değiştirilebilir . Tam ekran modu, Windows Vista ve sonraki sürümlerde mevcut değildir, ancak bazı geçici çözümlerle birlikte kullanılabilir.

Unix benzeri sistemler altında

Mandriva Linux'ta grafik sistemi yapılandırmak için kullanılan bir TUI olan 'XFdrake'in anlık görüntüsü

Gelen Unix benzeri işletim sistemleri, tuis genellikle terminal kontrol kullanılarak inşa edilmektedir kütüphane küfürler veya ncurses (çoğunlukla uyumlu kütüphanesi), ya da alternatif bir S-Lang kitaplığı. Berkeley Unix ile birlikte lanetler kitaplığının ortaya çıkışı, TUI'leri yazmak için taşınabilir ve kararlı bir API yarattı. Aynı arayüzleri kullanarak çeşitli metin terminal türleriyle konuşma yeteneği, basit bir hat arayüzü kullanmak yerine tüm terminal ekranını işgal eden "görsel" Unix programlarının daha yaygın olarak kullanılmasına yol açtı. Bu görülebilir metin editörleri gibi vi , posta istemcileri gibi çam veya mutt gibi sistem yönetim araçları SMIT , SAM , FreeBSD 'nin sysinstall ve web tarayıcıları gibi vaşak . Bazı gibi uygulamalar w3m ve eski sürümleri çam ve vi az yetkin kullanmak termcap'in ile ilişkili fonksiyonların birçoğunu gerçekleştirmek, kütüphane küfürler uygulama içerisinde. Widget'lara dayalı özel TUI uygulamaları , diyalog programı ( ncurses tabanlı ) veya Whiptail programı ( S-Lang tabanlı ) kullanılarak kolayca geliştirilebilir .

Buna ek olarak, Linux'un popülaritesindeki artış, birçok eski DOS kullanıcısını Unix benzeri bir platforma getirdi ve bu da birçok TUI'de bir DOS etkisi yarattı. Örneğin minicom programı , popüler DOS programı Telix'ten sonra modellenmiştir . Twin masaüstü gibi bazı diğer TUI programları da aktarıldı .

Çoğu Unix benzeri işletim sistemi (Linux, FreeBSD, vb.) , genellikle bir Ctrl-Alt-F tuş kombinasyonu aracılığıyla erişilen sanal konsolları destekler . Örneğin, Linux altında, her biri tam ekran metin modunda görüntülenen 64 konsola (12 işlev tuşları aracılığıyla) erişilebilir.

Özgür yazılım programı GNU Screen tek TUI içine birden çok oturum yönetmek için sağlar ve böylece bir benzeri olarak düşünülebilir pencere yöneticisi metin modu ve komut satırı arayüzleri için. Tmux da bunu yapabilir.

Tescilli macOS metin düzenleyicisi BBEdit , tam ekran bir kabuk penceresi olarak çalışan bir kabuk çalışma sayfası işlevi içerir . Serbest Emacs metin editörü benzer bir işlevsellik temin etmek üzere kendi tamponlardan biri bir kabuk iç çalıştırabilir. Emacs'ta birkaç kabuk uygulaması vardır, ancak yalnızca ansi-termTUI programlarını çalıştırmak için uygundur. Diğer yaygın kabuk modları shellve eshellyalnızca komut satırlarını taklit eden ve TUI programları "Terminal tam olarak işlevsel değil" şikayetinde bulunacak veya bozuk bir arayüz görüntüleyecektir. Serbest um ve Neovim metin düzenleyicileri terminal penceresi (taklit sahip xterm ). Bu özellik, işleri, paralel yapıları veya testleri çalıştırmak için tasarlanmıştır, ancak aynı zamanda (pencere bölmeleri ve sekme sayfaları ile) hafif bir terminal çoklayıcı olarak da kullanılabilir.

OpenVMS

VAX/VMS (daha sonra OpenVMS olarak bilinir ) , Screen Management tesisi veya SMG olarak bilinen lanetlere benzer bir tesise sahipti . Bu, komut satırından çağrılabilir veya SMG$ kitaplığını kullanan programlardan çağrılabilir.

Oberon

Bir resmi ve birkaç metin görüntüleyiciyi gösteren bir Oberon Sisteminin masaüstünün ekran görüntüsü

Başka bir TUI türü , ilk olarak 1988'de piyasaya sürülen ve halen sürdürülen Oberon işletim sisteminin birincil arayüzüdür . Diğer metin tabanlı kullanıcı arabirimlerinin çoğundan farklı olarak, Oberon bir metin modu konsolu veya terminali kullanmaz, ancak fare tıklamaları için metnin birincil hedef olduğu büyük bir bit eşlemeli görüntü gerektirir. Biçimdeki komutlar , köprüler gibi orta tıklamayla etkinleştirilebilir . Ekranın herhangi bir yerinde görüntülenen metin düzenlenebilir ve gerekli komut sözdizimi ile biçimlendirilirse, orta tıklanabilir ve yürütülebilir. Uygun biçimde biçimlendirilmiş komutları içeren herhangi bir metin dosyası , araç metni adı verilen bir şey olarak kullanılabilir , böylece kullanıcı tarafından yapılandırılabilen bir menü işlevi görür . Bir önceki komutun çıktısı bile düzenlenebilir ve yeni bir komut olarak kullanılabilir. Bu yaklaşım, hem geleneksel diyalog odaklı konsol menülerinden hem de komut satırı arayüzlerinden kökten farklıdır . Module.Procedure parameters ~

Grafik widget'ları kullanmadığı , yalnızca düz metin kullandığı, ancak döşeme penceresi yöneticisine sahip bir GUI ile karşılaştırılabilir işlevsellik sunduğu için, Metin Kullanıcı Arayüzü veya TUI olarak adlandırılır. Kısa bir giriş için, Oberon Sistemi üzerine ilk yayınlanan Raporun dördüncü sayfasındaki 2. paragrafa bakın .

Oberon'un kullanıcı arayüzü , Bell Labs işletim sisteminden Plan 9 için Acme metin düzenleyicisinin ve e-posta istemcisinin tasarımını etkiledi .

gömülü sistemlerde

LCD ekranda menüyü görüntüleyen gömülü sistem

Modern gömülü sistemler , kişisel bilgisayarlar gibi bir monitörde TUI'yi görüntüleme yeteneğine sahiptir. Bu işlevsellik genellikle özel entegre devreler, modüller veya FPGA kullanılarak uygulanır .

Video devreleri veya modülleri genellikle UART üzerinden VT100 uyumlu komut seti kullanılarak kontrol edilir , FPGA tasarımları genellikle doğrudan video belleği erişimine izin verir.

Diğer kullanımlar

  • Tam ekran editörü ait Commodore 64 8-bit bilgisayarlar zamanı için pazar segmentinde ortaya atıldı. Kullanıcılar imleci tüm ekran alanı üzerinde hareket ettirerek, BASIC program satırlarını ve ayrıca doğrudan mod komutlarını girerek ve düzenleyebilirler . Tüm Commodore 8-bit bilgisayarlar , TUI yapmaya uygun karakter gliflerini içeren PETSCII karakter setini kullandı .
  • Apple'ın Macintosh Programmer's Workshop programlama ortamı, bir TUI kabuğu olan Commando'yu içeriyordu. BBEdit'in kabuk çalışma sayfası için ilham kaynağı oldu.
  • Daha sonraki Apple II modelleri , bir TUI yapmak için kullanılan bir dizi grafik glif olan MouseText'i içeriyordu .
  • Corvus Konsept 1982 bilgisayar kullanılan fonksiyon tuşu tam sayfa döner ekranda tabanlı metin arayüzü.

Ayrıca bakınız

Programlama kitaplıkları örnekleri

Referanslar