emacs.d/bundle/bundle--gui.el
2024-03-30 10:33:45 +01:00

167 lines
5.3 KiB
EmacsLisp

;; (setq default-frame-alist
;; '((font . "MonoLisa-11")
;; (width . 85)
;; (height . 50)
;; (vertical-scroll-bars)))
(setq default-frame-alist
`((font . "MonoLisa-11")
(width . 85)
(height . 50)
(vertical-scroll-bars)
,@(cond ((eq system-type 'gnu/linux)
'((fullscreen . maximized)
(undecorated . t))))))
(setq frame-resize-pixelwise t)
(defun center-frame (&optional frame)
"Center FRAME on the screen."
(interactive)
(let ((frame (or frame (selected-frame))))
(let ((frame-width (frame-pixel-width frame))
(frame-height (frame-pixel-height frame))
(display-width (display-pixel-width))
(display-height (display-pixel-height)))
(set-frame-position frame
(/ (- display-width frame-width) 2)
(/ (- display-height frame-height) 2)))))
(add-hook 'after-make-frame-functions 'center-frame)
(use-package all-the-icons
:commands all-the-icons-install-fonts
:init
(unless (find-font (font-spec :name "all-the-icons"))
(all-the-icons-install-fonts t)))
(use-package all-the-icons-dired
:hook (dired-mode . all-the-icons-dired-mode))
(use-package emojify
:hook (erc-mode . emojify-mode)
:commands emojify-mode
:config
(when (member "Segoe UI Emoji" (font-family-list))
;; https://ianyepan.github.io/posts/emacs-emojis/
(set-fontset-font t 'symbol (font-spec :family "Segoe UI Emoji") nil 'prepend)
(setq emojify-display-style 'unicode)
(setq emojify-emoji-styles '(unicode))))
;; (defun my-vc-info ()
;; (when vc-mode
;; (concat (substring vc-mode 5)
;; " ["
;; (substring (vc-working-revision (buffer-file-name)) 0 8)
;; "] ")))
;; (defun my-project-name ()
;; (let ((proj (project-current)))
;; (if proj (file-name-base (directory-file-name (project-root proj)))
;; "NoProject")))
;; (setq-default header-line-format
;; (list "-%M"
;; '(:eval (my-project-name)) " "
;; system-name " " user-login-name " "
;; "-%-"))
;; (setq-default mode-line-format
;; (list "-%b %*%n %I %l:%c %p "
;; '(:eval mode-name) " "
;; '(:eval (my-vc-info))
;; '(:eval (if mode-line-process (concat ":" mode-line-process " ") ""))
;; 'default-directory
;; "-%-"))
;; (set-face-attribute 'mode-line nil :weight 'bold)
;; (set-face-attribute 'header-line nil :weight 'bold)
(setq-default mode-line-format
'("%e"
mode-line-front-space
"%b %*%n %I %l:%c %p"
(vc-mode vc-mode)
" "
mode-line-modes
mode-line-misc-info
mode-line-end-spaces))
(set-face-attribute 'mode-line nil
:family "MonoLisa"
:slant 'italic
:weight 'bold
:background (face-attribute 'default :background)
:foreground
(cond ((member 'doom-one custom-enabled-themes) "#5B6268")
((member 'doom-nord custom-enabled-themes) "#9099AB")
(t (face-attribute 'mode-line-inactive :foreground)))
:box '(:line-width (1 . 8) :style flat-button))
(set-face-attribute 'mode-line-inactive nil
:box '(:line-width (1 . 8) :style flat-button) :weight 'normal)
;; (use-package doom-modeline
;; :hook (after-init . doom-modeline-mode)
;; :custom
;; (doom-modeline-height 30)
;; (doom-modeline-bar-width 4)
;; (doom-modeline-icon nil)
;; (doom-modeline-major-mode-icon nil)
;; (doom-modeline-unicode-fallback nil)
;; (doom-modeline-minor-modes nil)
;; (doom-modeline-buffer-encoding nil)
;; (doom-modeline-battery nil))
(use-package helpful
:commands (helpful-callable helpful-variable helpful-command helpful-key)
:bind ([remap describe-command] . helpful-command) ([remap describe-key] . helpful-key))
(use-package rainbow-delimiters :hook (prog-mode . rainbow-delimiters-mode))
(use-package olivetti
:custom (olivetti-body-width 83)
:bind ("<f6>" . olivetti-mode))
(add-hook 'Info-mode-hook
(lambda ()
(make-local-variable 'olivetti-body-width)
(setq olivetti-body-width 75)
(olivetti-mode)))
(use-package ace-window :init (global-set-key (kbd "M-o") 'ace-window))
;; (use-package vertico :init (vertico-mode))
(use-package webjump
:bind ("C-c j" . webjump)
:custom
(webjump-sites
(append '(("Wikipedia_de" . [simple-query "de.wikipedia.org" "https://de.wikipedia.org/wiki/" ""])
("leo.org" . [simple-query "dict.leo.org" "https://dict.leo.org/german-english/" ""]))
webjump-sample-sites)))
(use-package tab-bar
:ensure nil
:init (tab-bar-mode 0)
:custom
(tab-bar-format
'(tab-bar-format-history
tab-bar-format-tabs-groups))
:config
(setq tab-line-close-button-show nil)
(setq tab-line-new-button-show nil)
(setq tab-line-tabs-function 'tab-line-tabs-mode-buffers))
(use-package doc-view
:ensure nil
:custom
(doc-view-dvipdfm-program "mutool")
(doc-view-odf->odf-converter-program "soffice")
(dov-view-odf->pdf-converter-function 'doc-view-odf->pdf-converter-soffice)
(doc-view-pdf->png-converter-function 'doc-view-pdf->png-converter-mupdf)
(doc-view-resolution 300))
(use-package yasnippet
:init
(yas-global-mode 1))