emacs bắt đầu tối đa hóa


5

Tôi muốn một phím tắt để mở emacs trong một cửa sổ tối đa. Tôi đã thử emacs --fullscreen, nhưng đó là toàn màn hình chứ không phải là cửa sổ tối đa ... Đó là, cửa sổ emacs bao gồm các thanh menu ub Ubuntu. emacs -fw có được một cửa sổ chiều rộng đầy đủ và emacs -fh có một cửa sổ chiều cao đầy đủ, nhưng nếu bạn đặt cả hai tùy chọn, nó chỉ đọc cái thứ hai. Hiện tại, tôi chỉ có một phím tắt khác để tối đa hóa một cửa sổ. Có cách nào để có được emacs để bắt đầu tối đa hóa?

Ubuntu 9.10, emacs 22, nếu điều đó tạo ra sự khác biệt.

Câu trả lời:


3

Tôi có cái này trong .emacs của tôi, cái mà sau đó tôi liên kết với một khóa:

(defun my-frame-toggle ()
  "Maximize/Restore Emacs frame using 'wmctrl'."
  (interactive)
  (shell-command "wmctrl -r :ACTIVE: -btoggle,maximized_vert,maximized_horz"))

(global-set-key [(control f4)] 'my-frame-toggle)

Sau đó bạn có thể đánh Ctrl F4 và chuyển đổi giữa màn hình thông thường và toàn màn hình (nhưng không bao gồm thanh menu và thanh Ubuntu ở dưới cùng của màn hình có tên tôi đang trống vào lúc này). Để bắt đầu theo cách đó chỉ cần gọi nó:

$ emacs -e "my-frame-toggle"

2

Tôi đã từng gặp vấn đề tương tự. Tìm thấy câu trả lời trong chủ đề này: http://ubuntuforums.org/showthread.php?t=1619533

Về cơ bản từ dòng lệnh bắt đầu emacs với các tham số này:

  • emacs -fs // nếu bạn muốn emacs che hết màn hình của bạn (che thanh ubfox)
  • emacs -mm // nếu bạn muốn emacs bắt đầu giống như bạn nhấn nút phóng to (hiển thị thanh ubfox)

Tất nhiên bạn có thể liên kết các tùy chọn bắt đầu đó với một biểu tượng và có các emacs luôn bắt đầu theo cách bạn muốn.


Tuyệt vời! emacs -fs hoạt động hoàn hảo trong Ubuntu 12.10
Chris McCauley

1

Tôi có các hàm sau trong .emacs của mình, trước tiên xác định mã để gửi trình quản lý cửa sổ để tối đa hóa khung trên X.org và Win32, sau đó thêm mã này làm móc cài đặt, nếu có:

(defun x-maximize-frame ()
    "Maximize the current frame (to full screen)"
    (interactive)
    (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 '(2 "_NET_WM_STATE_MAXIMIZED_HORZ" 0))
    (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 '(2 "_NET_WM_STATE_MAXIMIZED_VERT" 0)))

(defun w32-maximize-frame ()
  "Maximize the current frame (to full screen)"
  (interactive)
  (w32-send-sys-command 61488))

(defun maximize-frame ()
    (if (eq window-system 'w32)
            (w32-maximize-frame)
        (x-maximize-frame)))

(if window-system
    (add-hook 'window-setup-hook 'maximize-frame t))

0

Điều này có thể là những gì bạn đang tìm kiếm. Bạn cũng có thể mã hóa chiều rộng / chiều cao pixel cho màn hình của mình và đặt nó trong tệp .emacs của bạn (tác giả trình bày về điều đó đây ).

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.