Some changes for wayland

This commit is contained in:
Chris Cochrun 2021-08-16 06:15:10 -05:00
parent 178638f314
commit 043d6b41cb
2 changed files with 74 additions and 66 deletions

View file

@ -102,9 +102,11 @@ In order to have this config work on both my desktop with regular joe-schmoe mon
(defun chris/set-transparency () (defun chris/set-transparency ()
"Set the frame to be transparent on Wayland compositors" "Set the frame to be transparent on Wayland compositors"
(if (string= x-display-name "wayland-0") (if (string-search "wayland" x-display-name)
((set-frame-parameter (selected-frame) 'alpha '(90 . 90)) (set-frame-parameter (selected-frame) 'alpha '(100 . 100))
(add-to-list 'default-frame-alist '(alpha . (90 . 90)))))) (set-frame-parameter (selected-frame) 'undecorated t)
(add-to-list 'default-frame-alist '(undecorated . t))
(add-to-list 'default-frame-alist '(alpha . (100 . 100)))))
(if (daemonp) (if (daemonp)
(add-hook 'after-make-frame-functions (add-hook 'after-make-frame-functions
@ -112,8 +114,7 @@ In order to have this config work on both my desktop with regular joe-schmoe mon
(with-selected-frame frame (with-selected-frame frame
(chris/set-font-faces) (chris/set-font-faces)
(chris/set-transparency))) (chris/set-transparency)))
(chris/set-font-faces)) (chris/set-font-faces)))
(chris/set-transparency))
#+end_src #+end_src
Then let's make sure line-numbers are relative and on. And let's turn on visual-line-mode globally. Then let's make sure line-numbers are relative and on. And let's turn on visual-line-mode globally.
@ -634,7 +635,7 @@ Marginalia makes for some great decoration to our minibuffer completion items. W
:custom :custom
(company-dabbrev-other-buffers t) (company-dabbrev-other-buffers t)
(company-minimum-prefix-length 1) (company-minimum-prefix-length 1)
(company-idle-delay 0.2) (company-idle-delay 0.1)
:general :general
(general-def '(normal insert) company-active-map (general-def '(normal insert) company-active-map
"TAB" 'company-complete-selection "TAB" 'company-complete-selection
@ -787,7 +788,7 @@ LSP is useful...
(use-package lsp-ui (use-package lsp-ui
:hook (lsp-mode . lsp-ui-mode) :hook (lsp-mode . lsp-ui-mode)
:custom :custom
(lsp-ui-doc-position 'bottom)) (lsp-ui-doc-position 'top))
(use-package lsp-treemacs (use-package lsp-treemacs
:after lsp) :after lsp)
@ -905,7 +906,10 @@ I may get into flutter development over using felgo..... but i'm not happy about
(use-package lsp-dart) (use-package lsp-dart)
(use-package flutter (use-package flutter
:after dart) :after dart
:general
(chris/leader-keys dart-mode-map
"rf" 'flutter-run-or-hot-reload))
(use-package hover (use-package hover
:after dart) :after dart)
#+end_src #+end_src

120
init.el
View file

@ -2,9 +2,9 @@
(defun chris/display-startup-time () (defun chris/display-startup-time ()
(message "Emacs loaded in %s with %d garbage collections." (message "Emacs loaded in %s with %d garbage collections."
(format "%.2f seconds" (format "%.2f seconds"
(float-time (float-time
(time-subtract after-init-time before-init-time))) (time-subtract after-init-time before-init-time)))
gcs-done)) gcs-done))
(add-hook 'emacs-startup-hook #'chris/display-startup-time) (add-hook 'emacs-startup-hook #'chris/display-startup-time)
(setq inhibit-startup-message t) (setq inhibit-startup-message t)
@ -38,9 +38,11 @@
(defun chris/set-transparency () (defun chris/set-transparency ()
"Set the frame to be transparent on Wayland compositors" "Set the frame to be transparent on Wayland compositors"
(if (string= x-display-name "wayland-0") (if (string-search "wayland" x-display-name)
((set-frame-parameter (selected-frame) 'alpha '(90 . 90)) (set-frame-parameter (selected-frame) 'alpha '(100 . 100))
(add-to-list 'default-frame-alist '(alpha . (90 . 90)))))) (set-frame-parameter (selected-frame) 'undecorated t)
(add-to-list 'default-frame-alist '(undecorated . t))
(add-to-list 'default-frame-alist '(alpha . (100 . 100)))))
(if (daemonp) (if (daemonp)
(add-hook 'after-make-frame-functions (add-hook 'after-make-frame-functions
@ -48,8 +50,7 @@
(with-selected-frame frame (with-selected-frame frame
(chris/set-font-faces) (chris/set-font-faces)
(chris/set-transparency))) (chris/set-transparency)))
(chris/set-font-faces)) (chris/set-font-faces)))
(chris/set-transparency))
(setq display-line-numbers-type 'relative) (setq display-line-numbers-type 'relative)
(global-display-line-numbers-mode +1) (global-display-line-numbers-mode +1)
@ -65,7 +66,7 @@
;; ...especially on linux ;; ...especially on linux
(setq x-gtk-use-system-tooltips nil) (setq x-gtk-use-system-tooltips nil)
;; Favor vertical splits over horizontal ones. Screens are usually wide. ;; Favor vertical splits over horizontal ones. Screens are usually wide.
(setq split-width-threshold 160 (setq split-width-threshold 160
split-height-threshold nil) split-height-threshold nil)
@ -99,8 +100,8 @@
(straight-use-package 'use-package) (straight-use-package 'use-package)
(setq use-package-verbose t) (setq use-package-verbose t)
(use-package command-log-mode (use-package command-log-mode
:commands command-log-mode) :commands command-log-mode)
(use-package all-the-icons) (use-package all-the-icons)
@ -294,19 +295,19 @@
;; We need to fix selectrums minibuffer handling for Emacs 28 ;; We need to fix selectrums minibuffer handling for Emacs 28
(defun selectrum--set-window-height (window &optional height) (defun selectrum--set-window-height (window &optional height)
"Set window height of WINDOW to HEIGHT pixel. "Set window height of WINDOW to HEIGHT pixel.
If HEIGHT is not given WINDOW will be updated to fit its content If HEIGHT is not given WINDOW will be updated to fit its content
vertically." vertically."
(let* ((lines (length (let* ((lines (length
(split-string (split-string
(overlay-get selectrum--candidates-overlay 'after-string) (overlay-get selectrum--candidates-overlay 'after-string)
"\n" t))) "\n" t)))
(dheight (or height (dheight (or height
(* lines selectrum--line-height))) (* lines selectrum--line-height)))
(wheight (window-pixel-height window)) (wheight (window-pixel-height window))
(window-resize-pixelwise t)) (window-resize-pixelwise t))
(window-resize (window-resize
window (- dheight wheight) nil nil 'pixelwise))) window (- dheight wheight) nil nil 'pixelwise)))
:general :general
@ -341,10 +342,10 @@ vertically."
(use-package marginalia (use-package marginalia
:bind (:map minibuffer-local-map :bind (:map minibuffer-local-map
("C-M-a" . marginalia-cycle) ("C-M-a" . marginalia-cycle)
;; :map embark-general-map ;; :map embark-general-map
;; ("A" . marginalia-cycle) ;; ("A" . marginalia-cycle)
) )
;; The :init configuration is always executed (Not lazy!) ;; The :init configuration is always executed (Not lazy!)
:init :init
@ -367,7 +368,7 @@ vertically."
:custom :custom
(company-dabbrev-other-buffers t) (company-dabbrev-other-buffers t)
(company-minimum-prefix-length 1) (company-minimum-prefix-length 1)
(company-idle-delay 0.2) (company-idle-delay 0.1)
:general :general
(general-def '(normal insert) company-active-map (general-def '(normal insert) company-active-map
"TAB" 'company-complete-selection "TAB" 'company-complete-selection
@ -473,7 +474,7 @@ vertically."
(use-package lsp-ui (use-package lsp-ui
:hook (lsp-mode . lsp-ui-mode) :hook (lsp-mode . lsp-ui-mode)
:custom :custom
(lsp-ui-doc-position 'bottom)) (lsp-ui-doc-position 'top))
(use-package lsp-treemacs (use-package lsp-treemacs
:after lsp) :after lsp)
@ -483,7 +484,7 @@ vertically."
(use-package friar (use-package friar
:straight (:host github :repo "warreq/friar" :branch "master" :straight (:host github :repo "warreq/friar" :branch "master"
:files (:defaults "*.lua" "*.fnl")) :files (:defaults "*.lua" "*.fnl"))
:after fennel-mode) :after fennel-mode)
(use-package yaml-mode (use-package yaml-mode
@ -542,7 +543,10 @@ vertically."
(use-package lsp-dart) (use-package lsp-dart)
(use-package flutter (use-package flutter
:after dart) :after dart
:general
(chris/leader-keys dart-mode-map
"rf" 'flutter-run-or-hot-reload))
(use-package hover (use-package hover
:after dart) :after dart)
@ -819,17 +823,17 @@ vertically."
:after org :after org
:init :init
(setq org-super-agenda-groups '((:name "Today" (setq org-super-agenda-groups '((:name "Today"
:time-grid t :time-grid t
:scheduled today) :scheduled today)
(:name "Due Today" (:name "Due Today"
:deadline today) :deadline today)
(:name "Important" (:name "Important"
:priority "A") :priority "A")
(:name "Overdue" (:name "Overdue"
:time-grid t :time-grid t
:scheduled today) :scheduled today)
(:name "Due soon" (:name "Due soon"
:deadline future))) :deadline future)))
:config :config
(org-super-agenda-mode) (org-super-agenda-mode)
(setq org-super-agenda-header-map nil)) (setq org-super-agenda-header-map nil))
@ -1336,20 +1340,20 @@ If on a:
(add-hook 'eshell-mode-hook '(display-line-numbers-mode -1)) (add-hook 'eshell-mode-hook '(display-line-numbers-mode -1))
(setq eshell-command-aliases-list (setq eshell-command-aliases-list
'(("ls" "exa $1") '(("ls" "exa $1")
("la" "exa -la $1") ("la" "exa -la $1")
("q" "exit") ("q" "exit")
("f" "find-file $1") ("f" "find-file $1")
("ff" "find-file $1") ("ff" "find-file $1")
("d" "dired $1") ("d" "dired $1")
("bd" "eshell-up $1") ("bd" "eshell-up $1")
("rg" "rg --color=always $*") ("rg" "rg --color=always $*")
("ll" "ls -lah $*") ("ll" "ls -lah $*")
("gg" "magit-status") ("gg" "magit-status")
("clear" "clear-scrollback") ("clear" "clear-scrollback")
("!c" "eshell-previous-input 2") ("!c" "eshell-previous-input 2")
("yay" "paru $1") ("yay" "paru $1")
("yeet" "paru -Rns $1"))) ("yeet" "paru -Rns $1")))
:general :general
(chris/leader-keys (chris/leader-keys
@ -1364,8 +1368,8 @@ If on a:
(use-package pdf-tools (use-package pdf-tools
:straight (:host github :straight (:host github
:repo "flatwhatson/pdf-tools" :repo "flatwhatson/pdf-tools"
:branch "fix-macros") :branch "fix-macros")
:defer 1 :defer 1
:config :config
(pdf-tools-install) (pdf-tools-install)
@ -1524,11 +1528,11 @@ interfere with the default `bongo-playlist-buffer'."
transmission-files-mode transmission-files-mode
transmission-info-mode transmission-info-mode
transmission-peers-mode))) transmission-peers-mode)))
:general :general
(chris/leader-keys (chris/leader-keys
:states 'normal :states 'normal
:keymaps 'override :keymaps 'override
"ot" 'transmission)) "ot" 'transmission))
(use-package auth-source-pass (use-package auth-source-pass
:defer 1 :defer 1