Ứng dụng nào là ứng dụng Mountain Lion Terminal mô phỏng?


4

Gần đây tôi đã di chuyển từ 10.6 đến 10.8. Tôi sử dụng Terminalđể kết nối với các hộp linux khác nhau trong đó biến TERM được quan sát thấy xterm-color. Điều này dường như phù hợp với cài đặt 10.6 của HẠN.

Tuy nhiên, kể từ khi nâng cấp, tôi gặp vấn đề với Terminalcác phiên của mình nếu / khi tôi thay đổi kích thước chúng thành một cái gì đó rộng hơn 80x24. Những gì thông thường sẽ là những dòng văn bản rất dài dường như bao bọc ở 80 cột cho đến khi tôi thay đổi kích thước một lần nữa, tại thời điểm đó nó sẽ hiển thị đúng. Đó là, nó giống như chiều rộng bị kẹt ở kích thước cuối cùng (bao bọc mọi thứ ở chiều rộng trước đó) cho đến khi thay đổi kích thước sau khi hiển thị một cái gì đó mong đợi chiều rộng lớn hơn.

Loại cảm giác này giống như mục [n] nguyền rủa xterm-colorđã bị thay đổi (nó không) hoặc đó terminalkhông thực sự mô phỏng một xterm-colorthiết bị. Hành vi là khác nhau (có thể tốt hơn - tôi vẫn đang đánh giá) nếu chỉ định đơn giản xterm.

Có cài đặt nào tốt hơn cho HẠN khi sử dụng Mountain Lion Terminalkhông?


Nó có thể là một lỗi trong thiết bị đầu cuối. Bạn đã thử iTerm 2 ( iterm2.com ) chưa? Nó có một số tính năng tốt mà thiết bị đầu cuối không cung cấp. Nếu nó hoạt động giống như Terminal.app của Apple, thì đó có thể là cài đặt trong một trong các tệp đăng nhập của bạn (.profile, .bashrc, .zshrc, v.v ... Tùy thuộc vào trình bao hiện tại của bạn).
Ɱark

1
@MarkThalman cảm ơn vì tiền boa; Tôi đã tránh sử dụng bất cứ thứ gì không có chứng khoán để tôi không tự vấp ngã khi đi chăm sóc máy móc của những người khác (toàn bộ "một khi bạn bay hạng nhất, bạn sẽ không bao giờ có thể đứng bay được nữa trong huấn luyện viên "điều ;-)
jhfrontz

Câu trả lời:


8

Cũng như nhiều trình giả lập thiết bị đầu cuối, Terminal mô phỏng hầu hết VT100 cộng với một số tính năng từ các thiết bị đầu cuối mới hơn và một số tiện ích mở rộng phổ biến từ xterm và các trình giả lập khác.

Không có tệp terminfo tương ứng chính xác với Terminal, nhưng trận đấu gần nhất được sử dụng xterm-color, đại diện cho một nhánh cũ của xterm. Tuy nhiên, trong các phiên bản gần đây, Terminal tương thích hoàn toàn hơn với xterm và xterm-256colorlà giá trị mặc định mới cho TERMbiến môi trường.

Trong Tùy chọn> Cài đặt> [hồ sơ]> Nâng cao> Giả lập có menu bật lên Khai báo thiết bị đầu cuối là: đặt giá trị của TERM(và đó là tất cả những gì nó làm, nó không thay đổi tính năng nào hỗ trợ Terminal). Nếu bạn đang sử dụng máy Mac đã nâng cấp từ phiên bản HĐH cũ hơn, bạn có thể muốn / cần cập nhật cài đặt để khớp với mặc định được đề xuất mới nếu nó vẫn được đặt thành xterm-color. Việc sử dụng xterm-colorkhông được khuyến khích và nó có thể gây ra sự cố vì nó không khớp với bộ tính năng hiện tại của Terminal.

Mặc dù thực tế là các bản cài đặt của ncurses nên bao gồm tất cả các tệp terminfo, một số bản phân phối Linux thì không, và đặc biệt là một số trong số chúng bỏ qua xterm-256color. Nếu đây là trường hợp bạn sẽ thấy các chương trình phàn nàn theo nhiều cách khác nhau về việc không thể tìm thấy nó và giải pháp là cài đặt toàn bộ tập tin terminfo hoặc ít nhất là tất cả các tệp xterm.

Nếu xterm-256colorkhông có sẵn, điều tốt nhất tiếp theo là xterm-16color, tiếp theo là xterm. Cả ba đều tương thích và đại diện cho phiên bản xterm hiện tại với số lượng màu được hỗ trợ giảm ( xtermchỉ khai báo tám màu ANSI cơ bản, mặc dù nhiều chương trình chỉ đơn giản bỏ qua điều đó và cho rằng mười sáu được hỗ trợ, nhưng xterm-16colorlà lựa chọn nếu bạn muốn tuyên bố rõ ràng hỗ trợ cho mười sáu màu).

Thật khó để nói chính xác những gì có thể gây ra vấn đề bạn đang gặp phải, nhưng điều đầu tiên cần thử là chạy infocmplệnh trên máy chủ từ xa để xem nó nói gì. Điều đó sẽ cho bạn biết terminfo mà nó đang mong đợi và liệu nó đã được tìm thấy.

Nếu đó là một vấn đề chung về thuật ngữ hoặc thuật ngữ, nó có thể xảy ra với các chương trình khác, như vim. Bạn có thể thử chạy vim hoặc ít hơn, ví dụ, để so sánh các hành vi. Nếu bạn cảm thấy có động lực, bạn có thể chạy vttest http://invisible-island.net/vttest/ trên máy chủ từ xa và kiểm tra xem Terminal có phản ứng phù hợp với các bài kiểm tra để vẽ thuộc tính văn bản, thay đổi kích thước màn hình và chuyển sang / từ màn hình thay thế.

Khi bạn thay đổi kích thước cửa sổ đầu cuối, chương trình đầu cuối sẽ thông báo cho thiết bị tty, nó sẽ gửi SIGWINCHtín hiệu đến các quá trình được kết nối với nó. Các chương trình có trách nhiệm đáp ứng tín hiệu một cách thích hợp. Một điều cần kiểm tra là liệu các biến LINESCOLUMNSđược cập nhật trong bash khi bạn thay đổi kích thước cửa sổ terminal. Nếu điều đó hoạt động, thì cơ chế tín hiệu đang hoạt động chính xác.

Một khả năng khác là chương trình không chuyển sang / từ màn hình thay thế một cách chính xác (điều này có thể xảy ra do có một thuật ngữ không tương thích được chọn). Bạn có thể kiểm tra mục menu View> Hide / Show Alternate Screen để xem màn hình nào đang hoạt động. Nếu màn hình hiển thị sai màn hình, bạn có thể thử chuyển đổi thủ công với mục menu và xem điều đó có làm rõ vấn đề không.


Aha, tôi không nhận thấy cài đặt TATE mặc định đã thay đổi-- Tôi có một Cài đặt được cá nhân hóa mà tôi đã sử dụng từ lâu và nó vẫn bị kẹt trên giá trị mặc định cũ / trước ML. Tất cả tốt hơn bây giờ, cảm ơn!
jhfrontz
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.