2011-12-30 29 views
6

Sử dụng XMonad.Layout.PerWorkspace, bạn có thể thiết lập bố cục độc lập cho mỗi không gian làm việc và chỉnh sửa chúng cho các ứng dụng của bạn. Tuy nhiên, tôi muốn một số không gian làm việc để theo dõi cài đặt của tôi. Ví dụ. nếu tôi nhấn Mod-h trên Workspace 2 bằng cách sử dụng bố cục Cao, tôi muốn bố cục Cao trên không gian làm việc 2 để có cửa sổ chính nhỏ hơn một chút vào lần tiếp theo tôi khởi động (hoặc khởi động lại X, cho vấn đề đó).Ghi bố cục không gian làm việc của xmonad?

Đây là tính năng được yêu cầu thường xuyên, nhưng tôi không thể tìm thấy giải pháp ở bất cứ đâu.

Lý tưởng nhất, chúng tôi sẽ lưu trữ trên một số tệp ~/.xmonad/persistentLayouts/workspace*/layout*.conf mà bạn có thể xóa/chỉnh sửa thủ công nếu được yêu cầu. Nhưng đó chỉ là tiền thưởng.

Tôi có thể sống với việc thực hiện bản thân mình nếu nó không tồn tại, nhưng tập tin I/O haskell của tôi là một chút rookyish, vì vậy có lẽ ai đó có thể cung cấp một số gợi ý.

+0

Bạn đã bao giờ có xung quanh để xây dựng một cái gì đó như thế này? – egasimus

+0

@egasimus: Xin lỗi, không bao giờ có xung quanh nó cho đến nay. Nếu tôi có được xung quanh nó, tôi sẽ đăng nó ở đây. – bitmask

Trả lời

6

xmonad đã duy trì trạng thái của nó qua các lần khởi động lại có thể thực thi (ví dụ: mod + q và tương tự), vậy tại sao không lấy cắp cơ chế đó? Tôi nghĩ rằng nó chỉ sử dụng đọc và hiển thị, vì vậy bạn không nên cần kỹ năng đặc biệt mạnh mẽ IO; readFilewriteFile là đủ. Bạn có thể ăn cắp một số mã từ chính xmonad. Mã serialization xuất phát từ restart và mã deserialization xuất phát từ xmonad. Bạn sẽ cần phải sửa đổi nó một chút - bạn không muốn giữ lại thông tin ID cửa sổ, vì nó sẽ bị vô hiệu hóa bởi phiên X mới - nhưng phần lớn nó có thể được bán sỉ.

Các vấn đề liên quan