i3 và vmware: Làm cách nào để phát hiện thay đổi độ phân giải và đặt độ phân giải hiện tại thành thay đổi độ phân giải mới?


7

Tôi đang sử dụng vmware để chạy arch linux. Tôi đã thiết lập i3-gaps và mọi thứ được thiết lập chính xác trong khi sử dụng Lemonbar, tuy nhiên, vấn đề duy nhất của tôi là Lemonbar được đặt cho độ phân giải hiện tại. Khi tôi thay đổi kích thước VMware, độ phân giải thay đổi và thanh không được hiển thị chính xác nữa. Điều gì sẽ là cách tốt nhất để làm mới độ phân giải khi tôi thay đổi kích thước cửa sổ vmware?

Tôi đang sử dụng bản tổng hợp VMware mới nhất 8.1. Hiện tại, tôi đang sử dụng Lemonbar để tìm độ phân giải hiện tại thông qua xrandr -q và sử dụng awk để lấy độ rộng của độ phân giải hiện tại.

Câu trả lời:


1

Một điều bạn có thể làm là theo dõi nhật ký X11 thông qua tailf /var/log/Xorg.0.log.
Tôi không biết VMware thay đổi độ phân giải như thế nào, nhưng có khả năng nó sẽ ghi một thông điệp vào nhật ký khi có, đại loại như:

[ 55152.166] (II) modeset(0): Allocate new frame buffer 6548x2160 stride

Nhật ký này thường có thể đọc được bởi một người dùng bình thường, vì vậy bạn sẽ không cần root cho nó.
Nếu bạn sử dụng tailfthay vì tail -f, về mặt lý thuyết thì cũng cần ít tài nguyên hơn (xem câu trả lời này .)

Ngoài ra, nếu VMware sử dụng lệnh để thay đổi độ phân giải khi thay đổi kích thước, bạn có thể "chiếm quyền điều khiển" lệnh đó và thay thế nó bằng lệnh trình bao bọc của riêng bạn, để nó làm những gì bạn cần và sau đó chạy lệnh gốc.
Vì tôi không sử dụng VMware nên tôi không chắc họ xử lý việc này chính xác như thế nào, vì vậy tôi không biết liệu nó có hoạt động không.

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.