khôi phục cửa sổ crom / firefox về không gian làm việc / máy tính để bàn ban đầu


9

Tôi có một thiết lập ba màn hình, với hai màn hình được điều khiển trực tiếp bởi Ubuntu 12.04 cho tổng diện tích không gian làm việc / máy tính để bàn là 3840x1200¹. Tôi thường làm việc với 5 không gian làm việc ảo, thường là nhiều hơn nếu tôi làm việc trên một số dự án song song. Tôi thường có ít nhất 15 cửa sổ trình duyệt mở (chủ yếu là Firefox hàng đêm, nhưng cũng có 12.04 Firefox và Chrome tiêu chuẩn).

Bất cứ khi nào các trình duyệt cần khởi động lại do kết quả của một bản cập nhật (cq crash) hoặc cần bắt đầu sau khi đăng nhập, các cửa sổ trình duyệt sẽ quay trở lại vị trí ban đầu, nhưng tất cả đều nằm trên cùng một không gian làm việc. Sau đó, tôi phải tẻ nhạt di chuyển ít nhất 80% cửa sổ sang các không gian làm việc khác.

Cả Firefox và Chrome đều không lưu thông tin EWMH bổ sung cần thiết để khôi phục lại không gian làm việc ban đầu. Tôi đã đọc các báo cáo lỗi chưa được giải quyết có từ 4-5 năm trước về điều đó.

Dường như, ít nhất vài năm trở lại đây, KDE đã quản lý các không gian làm việc dưới dạng các khoảng trống lớn (rộng hơn chiều rộng màn hình), cho phép trình duyệt khôi phục lại không gian làm việc chính xác. Nhưng điều này dường như không còn là trường hợp nữa (được trích từ báo cáo lỗi, không phải từ kinh nghiệm cá nhân).

Có một không gian làm việc / trình quản lý máy tính để bàn nào không có hành vi khôi phục tất cả một không gian làm việc này với Firefox và Chrome (tốt nhất là trên Ubuntu hoặc Linux Mint) không?

Hoặc có cách nào khác để tăng cường Firefox và Chrome (ví dụ: tiện ích bổ sung) để thực thi hành vi này không?

Của tôi không phải là một bố cục cố định, trong đó Trình duyệt X trên không gian làm việc Y luôn mở ra một URL cụ thể. Chức năng khôi phục cung cấp cho tôi các cửa sổ, vị trí và URL chính xác theo cách tôi muốn. Họ "chỉ" cần phải ở trên không gian làm việc chính xác.

¹ Một 1200x1920 màn hình thứ ba là trên một máy riêng biệt với x2vnctừng chia sẻ một chuột và bàn phím. Điều đó độc đáo giữ tài liệu đọc của tôi như trang người đàn ông và tài liệu có sẵn (ở chế độ dọc).
² Tất cả nội dung của U & L đều có trên không gian làm việc 3. Tôi thường để máy chạy và đăng nhập, trong nhiều tuần liền, một trong những lý do cho việc đó là việc khôi phục các cửa sổ khác nhau.

Câu trả lời:


6

Dường như không có nhiều động lực để thực hiện một số hỗ trợ EWMH trong Firefox cũng như trong Chrome, mặc dù điều này sẽ giúp việc khôi phục vấn đề không gian làm việc được giải quyết với một số lượng lớn máy tính để bàn. Một lỗi đã được mở cho Firefox từ năm 2007 và một lỗi cho Chrome từ năm 2009.

Những gì bạn có thể làm bên ngoài Firefox và Chrome, nếu các TAB hoạt động trong các cửa sổ trình duyệt khác nhau trỏ đến các URL khác nhau, là sử dụng xu hướng các URL khác nhau thường có các tiêu đề khác nhau được liên kết với các trang và do đó có cửa sổ hiển thị.

Bắt đầu với ý tưởng đó, bạn có thể sử dụng đầu ra wmctrl -l -G -pcung cấp cho bạn

  • cửa sổ id
  • số không gian làm việc
  • xử lý ID
  • vị trí x, y của cửa sổ
  • chiều rộng và chiều cao của cửa sổ
  • tên may moc
  • tiêu đề cửa sổ (nếu có)

cho mỗi cửa sổ. Đưa ra một quy trình id id, bạn có thể thấy nơi liên kết /proc/PID/exetrỏ đến và lọc ra các cửa sổ không có trình duyệt. Đối với các cửa sổ liên quan đến trình duyệt, hãy lưu ít nhất tiêu đề cửa sổ và số vùng làm việc (cũng có thể là loại trình duyệt và tất cả các thông tin khác).

Sau khi trình duyệt khởi động lại, khi tất cả các cửa sổ được khôi phục, nhưng trên một không gian làm việc, hãy sử dụng dữ liệu đã lưu để tra cứu id cửa sổ mới, WID, được liên kết với một tiêu đề cụ thể và đẩy nó vào không gian làm việc liên quan được lấy wmctrl -i -r WID -t workspacenumber.


Nếu bạn không muốn tự mình thực hiện những điều trên (chủ yếu là xử lý văn bản và tra cứu liên kết tượng trưng) bằng ngôn ngữ trình bày hoặc ngôn ngữ kịch bản bạn chọn, bạn có thể tải xuống một chương trình thực hiện tất cả điều này cho bạn (và một chút nữa). Hoặc bạn có thể cài đặt nó từ PyPI bằng cách sử dụng:

sudo pip install ruamel.bws

sau đó bwslệnh sẽ khả dụng với các tùy chọn save(giữ nhiều lần lưu, 10 theo mặc định), list(hiển thị ngày đã lưu với số lượng cửa sổ được lưu) hoặc restore(theo mặc định là thông tin đã lưu mới nhất).


Firefox 75 bao gồm api cần thiết cho việc này với một số cảnh báo hg.mozilla.org/integration/autoland/rev/323e2a212629
Braiam
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.