Bagaimana cara kerja Antarmuka Pengguna Teks (TUI)?

8

Saya baru-baru ini ditugaskan untuk port program COBOL lama. Saya sudah terbiasa dengan GUI, dan saya tidak bisa mengerti cara kerja TUI. Saya mencari banyak melalui Google tetapi tidak dapat menemukan sesuatu.

Saya tahu bahwa aplikasi konsol dapat menampilkan garis demi garis, tetapi bagaimana warna dll. Ditarik ke layar terminal? Bagaimana semua benda ini ditarik? Apakah terminal mendukungnya? Apakah ada standar? Saya benar-benar bingung.

GorillaApe
sumber
1
Platform apa yang akan Anda gunakan?
Jon Onstott
Coba ui.stackexchange.com
Maniero

Jawaban:

7

Cukup yakin jawaban Anda akan bervariasi berdasarkan platform di sini. Ada banyak jenis terminal / konsol dan untuk lebih dari satu standar untuk penulisan. Sebagian besar dari mereka saya telah melihat menggunakan semacam urutan melarikan diri (mis: karakter ANSI lolos untuk dos, YMMV) di mana Anda mengirim karakter khusus untuk menginterupsi penulisan ke layar maka Anda dapat memindahkan kursor, mengubah warna, dll.

Jika Anda menulis sesuatu secara harfiah untuk terminal bisu maka mungkin akan menggunakan sesuatu seperti https://secure.wikimedia.org/wikipedia/en/wiki/Ncurses

Tagihan
sumber
3
Server IBM cenderung menggunakan protokol 3270 dan 5250 di atas telnet. Pembaruan berorientasi halaman.
1
Jika ia mem-porting program COBOL / CICS ke platform kelas menengah maka kutukan adalah saran yang bagus. Pertanyaan tidak cukup memberi tahu kita.
Jeremy
Banyak platform lain menawarkan atau menggunakan protokol yang kompatibel dengan VT-100 atau VT-200, sehingga mereka akan menggunakan kode "ANSI" yang umum.
greyfade
@ Thorbjørn Ravn Andersen - Yup. Dan jika Anda melihat sesuatu yang disebut "Novell Virtual Terminal" di atas itu, jalankan .. jalankan seperti neraka
Tim Post
@Tim, bah, hadapi tantangan alih-alih melarikan diri dengan pengecut!
0

Istilah umum untuk antarmuka semacam itu adalah "baris perintah". Anda mungkin akan melakukan googling yang lebih baik daripada "antarmuka pengguna teks".

Dan Ray
sumber
4
Tidak, utilitas baris perintah hanya mendapatkan stdin dan argumen dan hanya bisa menampilkan stdout dan stderr dan kode kembali. TUI di sisi lain dapat memperbarui setiap posisi di layar dan memotong semua input terminal satu tombol pada suatu waktu. en.wikipedia.org/wiki/Text_user_interface
Jeremy
0

Jangan khawatir, ada ratusan standar untuk dipilih :)

Saya sedih lebih nyaman dengan aplikasi berbasis teks dan konsol daripada saudara-saudara jendela grafis mereka yang lebih tua. Terlalu banyak hari di FidoNet, saya khawatir.

Hal pertama yang akan saya lakukan adalah mempelajari beberapa kode VT100 dari perusahaan Digital lama. Anda mungkin tidak pernah menulis aplikasi dalam kode VT100 (mungkin menyarankan untuk tidak melakukannya), tetapi ini adalah pengantar yang sangat bagus dan sederhana untuk mengendalikan matriks konsol.

Perpustakaan seperti kutukan membungkus kode kontrol ini (dan banyak kode terminal gaya lainnya) dan abstrak sehingga pengguna dapat login melalui terminal mereka sendiri. Hal-hal seperti VT100 bahkan dapat melakukan pencetakan jarak jauh (lokal) yang masih kami perjuangkan hari ini di RDP.

Untuk memperburuk keadaan bagi Anda, sistem IBM tidak menggunakan kontrol berbasis garis atau karakter, tetapi protokol berbasis layar dan blok. Contohnya adalah protokol terminal 3270 dan 5250 yang karena kurangnya tindakan perbandingan yang lebih baik dalam arsitektur request | response, pikirkan HTTP. Meskipun mampu, mereka adalah PITA IMNSHO sejati yang dapat digunakan untuk bekerja dan harus menjadi pertanyaan mereka sendiri yang terpisah.

Lebih buruk dari itu adalah menulis aplikasi konsol di dunia DOS / Windows. Jawab dengan platform pengembangan target Anda.

Jé Queue
sumber