Đây là vấn đề: Tôi muốn có thể nhận ra liệu thiết bị đầu cuối của tôi có khả năng unicode hay không, để sử dụng một số ký tự hay không, giống như các ánh nhìn, đôi khi sử dụng màu sắc và các phần khác.
Động lực phát sinh bởi vì trong bất kỳ loại thiết bị đầu cuối ảo nào tôi cũng có phông chữ đàng hoàng, nhưng tôi hiểu rằng bảng điều khiển Linux cơ bản có một bộ ký tự gồm 256 hoặc 512 ký hiệu đồng thời, vì vậy bạn không thể mong đợi hỗ trợ phông chữ đầy đủ.
Lúc đầu, tôi nghĩ rằng tôi có thể sử dụng $TERM
hoặc tty, nhưng đây là điểm thu hút: Tôi cũng đang sử dụng byobu, vì vậy $TERM
luôn luôn là "screen.linux". Đầu ra của tty cũng không nói rõ lắm: /dev/pts/<some number>
theo cả hai nghĩa "thực" và ảo.
$BYOBU_TTY
cũng không giúp được gì, vì ví dụ như có thể /dev/tty1
và khi phiên được mở trong Ctrl+ Alt+ F1các ký tự không hiển thị nhưng khi gắn vào cùng một phiên từ một số thuật ngữ X, chúng hiển thị đúng và vẫn $BYOBU_TTY
không thay đổi. Bên cạnh đó, tôi muốn có thể phát hiện ra điều này mà không cho rằng byobu có ở đó hay không.
Ngoài ra, ngôn ngữ hiển thị trong mọi trường hợp en_US.UTF-8
Tuy nhiên, bằng cách nào đó liếc nhìn (để đặt tên cho một công cụ cụ thể mà tôi thấy khi phát hiện ra điều này), ngay cả bên trong byobu, sử dụng đầu ra khác nhau tùy thuộc vào thiết bị đầu cuối mà tôi gắn vào phiên byobu.
Tôi gặp sự cố với google vì thiết bị đầu cuối và tty dường như quá phổ biến. Nhiều nhất tôi đến các giải pháp giới thiệu $TERM
hoặc tty.