Jak sprawić, aby emacs był naprawdę pełny ekran przy uruchomieniu?

9

Chcę, aby emacs był naprawdę zmaksymalizowany przy starcie.

Istnieją rozwiązania tego problemu, które powodują, że szerokość okna emacsa na ekranie. To mi nie wystarcza. Chcę, aby okno emacsa było zadokowane w prawym górnym rogu ekranu, aby po naciśnięciu myszy myszą zamknąłem emacsa, a nie Firefoksa lub Krusadera lub cokolwiek maksymalizowanego w tle.

Próbowałem to zrobić z Kwinem - ale bez powodzenia.

PS Używam Kubuntu, a emacs jest całkiem nowy 23.2 lub coś w tym rodzaju.

Cegła suszona na słońcu
źródło
@ użytkownik zmaksymalizowany lub pełny ekran - czego chcesz? Twój drugi akapit jest nieco niejasny.
David LeBauer
Istnieje kilka rozwiązań zależnych od menedżera okien. Którego WM używasz? W Fluxboksie używam tego ~/.fluxbox/appspliku, aby ustawić maksymalne preferencje dla określonych aplikacji.
Daniel Andersson
Używam KWM (jest to domyślny KDE). Ma opcję „zmaksymalizowaną” - ale okno emacsa nie jest naprawdę zmaksymalizowane: jeśli naciśniesz „x” w prawym górnym rogu za pomocą myszy - zamkniesz coś innego - nie emacsa.
Adobe,

Odpowiedzi:

7

Jakiś czas temu wziąłem to gdzieś na emacswiki. Zauważ, że już go nie używam, ponieważ przełączyłem się na dwm, aby mieć wszystko na pełnym ekranie, ale kiedyś działało.

(defun fullscreen ()
       (interactive)
       (x-send-client-message nil 0 nil "_NET_WM_STATE" 32
                 '(2 "_NET_WM_STATE_FULLSCREEN" 0)))

Jeśli chcesz, aby działał przy starcie, powinieneś być w stanie dodać

(fullscreen)

dla Twojej .emacs

EDYCJA: Ponownie kierując pytanie, myślę, że nie tego chcesz. To będzie naprawdę pełnoekranowe, a nie zmaksymalizowane: nie będziesz miał żadnego przycisku zamykania.

Ten powinien zrobić:

(defun fullscreen (&optional f)
  (interactive)
  (x-send-client-message nil 0 nil "_NET_WM_STATE" 32
             '(2 "_NET_WM_STATE_MAXIMIZED_VERT" 0))
  (x-send-client-message nil 0 nil "_NET_WM_STATE" 32
             '(2 "_NET_WM_STATE_MAXIMIZED_HORZ" 0)))

Teraz jest bezpośrednio z http://www.emacswiki.org/emacs/FullScreen

Tiago
źródło
3

Oto dwa sposoby na osiągnięcie tego samego:

  1. Alias ​​do twojego emacspolecenia emacs -fs. Dodaj ten wiersz kodu do swojego .bashrcpliku w katalogu domowym:

    alias emacs='emacs -fs'
    

    Osobiście nie podoba mi się to podejście, ponieważ nie chciałbym, aby Emacs cały czas uruchamiał się na pełnym ekranie i chciałbym mieć trochę kontroli.

  2. Moje rozwiązanie: w Ubuntu możesz przypisać skrót klawiaturowy do „pełnego ekranu” w dowolnym oknie. Jest to najwygodniejsza i najprostsza opcja. Poza tym zaletą jest to, że ten sam skrót dotyczy również wszystkich aplikacji.

GeneralBecos
źródło
+1 Jest też -mm(skrót od --maximized), który „zmaksymalizuje pierwszą klatkę”. Efekty korzystania z tej opcji są nieco mniej „drastyczne” niż -fsopcja (pasek tytułu Emacsa i panele systemu operacyjnego pozostają widoczne).
itsjeyd
3

Umieść (w32-send-sys-command ?\xf030) swój .emacsplik. Myślę, że to rozwiązuje twój problem.

(działa tylko w systemie Windows)

Paulo Tomé
źródło
Fajnie, tylko że pracuję w systemie Linux. Ale nadal - czasami muszę też pracować w systemie Windows. Dzięki.
Adobe
Zapomniałem wspomnieć. To rozwiązanie jest tylko dla systemu Windows.
Paulo Tomé
Tak, widzę to w32.
Adobe
1

Jeśli chcesz przełączać pełny ekran w emacsie za pomocą klawisza F11, dodaj następujące polecenie do .emacs:

;; the following should give fullscreen mode when F11 is depressed
(defun fullscreen ()
 (interactive)
 (set-frame-parameter nil 'fullscreen
              (if (frame-parameter nil 'fullscreen) nil 'fullboth))

Jeśli chcesz, aby emacs na pełnym ekranie był bardzo minimalny (bez paska narzędzi, paska przewijania lub paska menu, dodaj także:

(progn
  (if (fboundp 'tool-bar-mode) (tool-bar-mode -1))  ;; no toolbar
  (menu-bar-mode -1) ;;no menubar
  (scroll-bar-mode -1) ;; no scroll bar
  )
)
David LeBauer
źródło
0

Myślę, że emacs będzie szanował ustawienia gconf, więc możesz ustawić / apps / emacs / maximize, ale nie wiem, czy to pomoże na Kubuntu - warto spróbować.

jaybee
źródło
0

Używam następujących w systemie Linux:

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

a następnie powiąż go z kluczem:

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

Jeśli chcesz zacząć zmaksymalizować, możesz po prostu dodać połączenie my-frame-togglena końcu pliku .emacs.

Joe Casadonte
źródło
Kiedy piszę twój kod, na mój plik .emacs. Pokazuje błąd analizatora składni.
Pratik Singhal
0

Znalazłem zabawne rozwiązanie:

emacs -nw

uruchamia emacsa w konsoli - i możesz zmaksymalizować samą konsolę!

Cegła suszona na słońcu
źródło