summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Desktop.org175
-rw-r--r--Emacs.org105
-rw-r--r--Mail.org22
3 files changed, 209 insertions, 93 deletions
diff --git a/Desktop.org b/Desktop.org
index e24607e..595e278 100644
--- a/Desktop.org
+++ b/Desktop.org
@@ -8,93 +8,92 @@
8 8
9#+begin_src emacs-lisp 9#+begin_src emacs-lisp
10 10
11 (defun jd/exwm-update-class () 11 (defun jd/exwm-update-class ()
12 (exwm-workspace-rename-buffer exwm-class-name)) 12 (exwm-workspace-rename-buffer exwm-class-name))
13 13
14 (defun jd-exwm/run-in-background (command) 14 (defun jd-exwm/run-in-background (command)
15 (let ((command-parts (split-string command "[ ]+"))) 15 (let ((command-parts (split-string command "[ ]+")))
16 (apply #'call-process `(,(car command-parts) nil 0 nil ,@(cdr command-parts))))) 16 (apply #'call-process `(,(car command-parts) nil 0 nil ,@(cdr command-parts)))))
17 17
18 (defun jd-exwm/restart-process (program-name) 18 (defun jd-exwm/restart-process (program-name)
19 (call-process "killall" nil nil nil program-name) 19 (call-process "killall" nil nil nil program-name)
20 (jd-exwm/run-in-background program-name)) 20 (jd-exwm/run-in-background program-name))
21 21
22 (defun jd-exwm/exwm-init-hook () 22 (defun jd-exwm/exwm-init-hook ()
23 (jd-exwm/restart-process "polybar") 23 (jd-exwm/run-in-background "nitrogen --restore")
24 (jd-exwm/restart-process "nm-applet") 24 (start-process-shell-command "xinput" nil "xinput set-prop 'ETPS/2 Elantech Touchpad' 'Synaptics Tap Action' 1 1 1 2 1")
25 (jd-exwm/restart-process "redshift-gtk -l 54.37:18.6") 25 (start-process-shell-command "syndaemon" nil "syndaemon -i 0.8 -K -R -d")
26 (jd-exwm/restart-process "blueman-applet") 26
27 (jd-exwm/restart-process "pasystray")) 27 (jd-exwm/restart-process "polybar")
28 28 (jd-exwm/restart-process "nm-applet")
29 (defun jd-exwm/exwm-update-title () 29 (jd-exwm/restart-process "redshift-gtk -l 54.37:18.6")
30 (exwm-workspace-rename-buffer exwm-title)) 30 (jd-exwm/restart-process "blueman-applet"))
31 31
32 (defun jd-exwm/configure-window-by-class () 32 (defun jd-exwm/exwm-update-title ()
33 (interactive) 33 (exwm-workspace-rename-buffer exwm-title))
34 (pcase exwm-class-name 34
35 ("firefox" (exwm-workspace-move-window 2)) 35 (defun jd-exwm/configure-window-by-class ()
36 ("Brave" (exwm-workspace-move-window 2)) 36 (interactive)
37 ("qutebrowser" (exwm-workspace-move-window 2)) 37 (pcase exwm-class-name
38 ("discord" (exwm-workspace-move-window 5)) 38 ("firefox" (exwm-workspace-move-window 2))
39 ("obs" (exwm-workspace-move-window 5)) 39 ("Brave" (exwm-workspace-move-window 2))
40 ("Virt-manager" (exwm-workspace-move-window 4)))) 40 ("qutebrowser" (exwm-workspace-move-window 2))
41 41 ("discord" (exwm-workspace-move-window 5))
42 (use-package exwm 42 ("obs" (exwm-workspace-move-window 5))
43 :config 43 ("Virt-manager" (exwm-workspace-move-window 4))))
44 (setq exwm-workspace-number 10) 44
45 45 (use-package exwm
46 (add-hook 'exwm-init-hook #'jd-exwm/exwm-init-hook) 46 :config
47 (add-hook 'exwm-update-class-hook #'jd/exwm-update-class) 47 (setq exwm-workspace-number 10)
48 (add-hook 'exwm-update-title-hook #'jd-exwm/exwm-update-title) 48
49 (add-hook 'exwm-manage-finish-hook #'jd-exwm/configure-window-by-class) 49 (add-hook 'exwm-init-hook #'jd-exwm/exwm-init-hook)
50 50 (add-hook 'exwm-update-class-hook #'jd/exwm-update-class)
51 (start-process-shell-command "nitrogen" nil "nitrogen --restore") 51 (add-hook 'exwm-update-title-hook #'jd-exwm/exwm-update-title)
52 (start-process-shell-command "xinput" nil "xinput set-prop 'ETPS/2 Elantech Touchpad' 'Synaptics Tap Action' 1 1 1 2 1") 52 (add-hook 'exwm-manage-finish-hook #'jd-exwm/configure-window-by-class)
53 (start-process-shell-command "xmodmap" nil "xmodmap ~/dotfiles/.Xmodmap") 53
54 54 (require 'exwm-randr)
55 (require 'exwm-randr) 55 (setq exwm-randr-workspace-monitor-plist '(9 "eDP-1" 0 "eDP-1"))
56 (setq exwm-randr-workspace-monitor-plist '(9 "eDP-1" 0 "eDP-1")) 56 (exwm-randr-enable)
57 (exwm-randr-enable) 57
58 58 (setq exwm-input-simulation-keys
59 (setq exwm-input-simulation-keys 59 '(([?\C-h] . [left])
60 '(([?\C-b] . [left]) 60 ([?\C-l] . [right])
61 ([?\C-f] . [right]) 61 ([?\C-k] . [up])
62 ([?\C-p] . [up]) 62 ([?\C-j] . [down])))
63 ([?\C-n] . [down]))) 63
64 64 (setq exwm-input-prefix-keys
65 (setq exwm-input-prefix-keys 65 '(?\C-x
66 '(?\C-x 66 ?\C-u
67 ?\C-u 67 ?\C-h
68 ?\C-h 68 ?\M-x
69 ?\M-x 69 ?\M-`
70 ?\M-` 70 ?\M-&
71 ?\M-& 71 ?\M-:
72 ?\M-: 72 ?\C-\M-j
73 ?\C-\M-j 73 ?\C-\ ))
74 ?\C-\ )) 74
75 75 (define-key exwm-mode-map [?\C-q] 'exwm-input-send-next-key)
76 (define-key exwm-mode-map [?\C-q] 'exwm-input-send-next-key) 76 (exwm-input-set-key (kbd "s-p") 'counsel-linux-app)
77 (exwm-input-set-key (kbd "s-p") 'counsel-linux-app) 77
78 78 (setq exwm-input-global-keys
79 (setq exwm-input-global-keys 79 `(([?\s-R] . exwm-reset)
80 `(([?\s-R] . exwm-reset) 80
81 81
82 82 ([?\s-r] . (lambda (command)
83 ([?\s-r] . (lambda (command) 83 (interactive (list (read-shell-command "$ ")))
84 (interactive (list (read-shell-command "$ "))) 84 (start-process-shell-command command nil command)))
85 (start-process-shell-command command nil command))) 85
86 86 ([?\s-W] . exwm-workspace-move-window)
87 ([?\s-W] . exwm-workspace-move-window) 87 ([?\s-w] . exwm-workspace-switch)
88 ([?\s-w] . exwm-workspace-switch) 88
89 89 ,@(mapcar (lambda (i)
90 ,@(mapcar (lambda (i) 90 `(,(kbd (format "s-%d" i)) .
91 `(,(kbd (format "s-%d" i)) . 91 (lambda ()
92 (lambda () 92 (interactive)
93 (interactive) 93 (exwm-workspace-switch-create ,i))))
94 (exwm-workspace-switch-create ,i)))) 94 (number-sequence 0 9))))
95 (number-sequence 0 9)))) 95
96 96 (exwm-enable))
97 (exwm-enable))
98 97
99#+end_src 98#+end_src
100** Desktop mode 99** Desktop mode
@@ -173,6 +172,8 @@
173 export GTK_THEME="Adwaita:dark" 172 export GTK_THEME="Adwaita:dark"
174 export CALIBRE_USE_DARK_PALETTE=1 173 export CALIBRE_USE_DARK_PALETTE=1
175 174
175 gentoo-pipewire-launcher &
176
176 exec dbus-launch --exit-with-session emacs -mm --debug-init -l ~/.config/emacs/exwm/desktop.el 177 exec dbus-launch --exit-with-session emacs -mm --debug-init -l ~/.config/emacs/exwm/desktop.el
177 178
178#+end_src 179#+end_src
diff --git a/Emacs.org b/Emacs.org
index 3fabb47..536aa85 100644
--- a/Emacs.org
+++ b/Emacs.org
@@ -29,6 +29,7 @@
29 - [[#org-margin][Org margin]] 29 - [[#org-margin][Org margin]]
30 - [[#org-superstar][Org superstar]] 30 - [[#org-superstar][Org superstar]]
31 - [[#org-roam][Org roam]] 31 - [[#org-roam][Org roam]]
32 - [[#langtoolel][langtool.el]]
32- [[#development][Development]] 33- [[#development][Development]]
33 - [[#languages][Languages]] 34 - [[#languages][Languages]]
34 - [[#company][Company]] 35 - [[#company][Company]]
@@ -42,6 +43,7 @@
42 - [[#pdf-tools][PDF Tools]] 43 - [[#pdf-tools][PDF Tools]]
43 - [[#mu4e][Mu4e]] 44 - [[#mu4e][Mu4e]]
44 - [[#rss][RSS]] 45 - [[#rss][RSS]]
46- [[#custom][Custom]]
45- [[#runtime-performance][Runtime Performance]] 47- [[#runtime-performance][Runtime Performance]]
46 48
47* Startup Performance 49* Startup Performance
@@ -201,6 +203,8 @@
201 203
202 (global-set-key (kbd "<escape>") 'keyboard-escape-quit) 204 (global-set-key (kbd "<escape>") 'keyboard-escape-quit)
203 205
206 (global-prettify-symbols-mode 1)
207
204 (defalias 'yes-or-no-p 'y-or-n-p) 208 (defalias 'yes-or-no-p 'y-or-n-p)
205 209
206 (use-package doom-themes 210 (use-package doom-themes
@@ -505,14 +509,14 @@
505 (org-level-6 . 1.1) 509 (org-level-6 . 1.1)
506 (org-level-7 . 1.1) 510 (org-level-7 . 1.1)
507 (org-level-8 . 1.1))) 511 (org-level-8 . 1.1)))
508 (set-face-attribute (car face) nil :font "Monospace" :weight 'Bold :height (cdr face))) 512 (set-face-attribute (car face) nil :font "sans" :weight 'Bold :height (cdr face)))
509 513
510 ;; Ensure that anything that should be fixed-pitch in Org files appears that way 514 ;; Ensure that anything that should be fixed-pitch in Org files appears that way
511 (set-face-attribute 'org-block nil :font "hack" :inherit 'fixed-pitch) 515 (set-face-attribute 'org-block nil :font "hack" :inherit 'fixed-pitch)
512 (set-face-attribute 'org-table nil :inherit 'fixed-pitch) 516 (set-face-attribute 'org-table nil :inherit 'fixed-pitch)
513 (set-face-attribute 'org-formula nil :inherit 'fixed-pitch) 517 (set-face-attribute 'org-formula nil :inherit 'fixed-pitch)
514 (set-face-attribute 'org-code nil :inherit '(shadow fixed-pitch)) 518 (set-face-attribute 'org-code nil :inherit '(shadow fixed-pitch))
515 (set-face-attribute 'org-table nil :inherit '(shadow fixed-pitch)) 519 (set-face-attribute 'org-table nil :font "hack ":inherit '(shadow fixed-pitch))
516 (set-face-attribute 'org-verbatim nil :inherit '(shadow fixed-pitch)) 520 (set-face-attribute 'org-verbatim nil :inherit '(shadow fixed-pitch))
517 (set-face-attribute 'org-special-keyword nil :inherit '(font-lock-comment-face fixed-pitch)) 521 (set-face-attribute 'org-special-keyword nil :inherit '(font-lock-comment-face fixed-pitch))
518 (set-face-attribute 'org-meta-line nil :inherit '(font-lock-comment-face fixed-pitch)) 522 (set-face-attribute 'org-meta-line nil :inherit '(font-lock-comment-face fixed-pitch))
@@ -632,13 +636,51 @@
632 :config 636 :config
633 ;; If you're using a vertical completion framework, you might want a more informative completion interface 637 ;; If you're using a vertical completion framework, you might want a more informative completion interface
634 (setq org-roam-node-display-template (concat "${title:*} " (propertize "${tags:10}" 'face 'org-tag))) 638 (setq org-roam-node-display-template (concat "${title:*} " (propertize "${tags:10}" 'face 'org-tag)))
639 (setq org-roam-capture-templates
640 '(("a" "workstuff" plain (file (concat org-roam-directory "/work"))
641 :target (file+head "work/%<%Y%m%d%H%M%S>-${slug}.org"
642 "#+title: ${title}\n") :unnarrowed t)
643 ("b" "research" plain (file "~/Documents/roam/study/templates/research.org")
644 :target (file+head "study/%<%Y%m%d%H%M%S>-${slug}.org"
645 "#+title: ${title}\n") :unnarrowed t)
646 ))
647
635 (org-roam-db-autosync-mode)) 648 (org-roam-db-autosync-mode))
636 649
637#+end_src 650#+end_src
638 651
652** langtool.el
653
654#+begin_src emacs-lisp
655
656 (use-package langtool
657 :config
658 (setq langtool-language-tool-jar "/home/jakub/Documents/LanguageTool-6.0/languagetool-commandline.jar")
659 (setq langtool-default-language "pl-PL"))
660
661 (jd/leader-key-def
662 "l" '(:ignore t :which-key "langtool")
663 "lc" 'langtool-check-buffer
664 "ld" 'langtool-check-done
665 "li" 'langtool-interactive-correction)
666
667
668#+end_src
669
639* Development 670* Development
640** Languages 671** Languages
641 672
673*** C
674
675#+begin_src emacs-lisp
676
677 (setq c-default-style "linux"
678 c-basic-offset 8)
679
680 (setq gdb-many-windows t)
681
682#+end_src
683
642*** Lsp 684*** Lsp
643 685
644#+begin_src emacs-lisp 686#+begin_src emacs-lisp
@@ -900,9 +942,14 @@
900 942
901 943
902 (use-package vterm 944 (use-package vterm
945 :init
946 (add-to-list 'project-switch-commands '(project-vterm "Vterm") t)
947 (add-to-list 'project-kill-buffer-conditions '(major-mode . vterm-mode))
948 (setq vterm-copy-exclude-prompt t)
903 :config 949 :config
904 (setq vterm-buffer-name "vterm") 950 (setq vterm-buffer-name "vterm")
905 (evil-set-initial-state 'vterm-mode 'emacs)) 951 (evil-set-initial-state 'vterm-mode 'emacs)
952 (setq vterm-tramp-shells (append '(("ssh" "/bin/bash")) vterm-tramp-shells)))
906 953
907#+end_src 954#+end_src
908 955
@@ -983,7 +1030,57 @@
983 (use-package elfeed 1030 (use-package elfeed
984 :config 1031 :config
985 (setq elfeed-feeds 1032 (setq elfeed-feeds
986 '("https://www.reddit.com/r/emacs.rss"))) 1033 '(("https://www.reddit.com/r/emacs.rss" emacs)
1034 ("https://www.reddit.com/r/gnu.rss" gnu)
1035 ("https://stallman.org/rss/rss.xml" stallman))))
1036
1037#+end_src
1038
1039* Custom
1040
1041#+begin_src emacs-lisp
1042 (defun jd/generete-qr-from-clipboard ()
1043 (interactive)
1044 (let ((clipboard-value (x-get-clipboard))
1045 (clipboard-file-path "/tmp/clipboard_value.txt")
1046 (clipboard-out-image "/tmp/qr.png"))
1047 (with-temp-file clipboard-file-path
1048 (insert clipboard-value))
1049 (shell-command (concat
1050 "qrencode -o "
1051 clipboard-out-image
1052 " < "
1053 clipboard-file-path))
1054 (find-file clipboard-out-image)))
1055
1056
1057 ;; (defun jd/screenshot ()
1058 ;; (inactive)
1059 ;; (let* ((screenshot-command '("import" "png:-"))
1060 ;; (image
1061 ;; (with-temp-buffer
1062 ;; (set-buffer-multibyte nil)
1063 ;; (apply #'call-process
1064 ;; (car screenshot-command) nil (current-buffer) nil
1065 ;; (cdr screenshot-command))
1066 ;; (buffer-string))))
1067 ;; (set-mark (point))
1068 ;; (insert-image
1069 ;; (create-image image 'png t
1070 ;; :max-width (truncate (* (frame-pixel-width) 0.8))
1071 ;; :max-height (truncate (* (frame-pixel-height) 0.8))
1072 ;; :scale 1)
1073 ;; (format "<#part type=\"image/png\" disposition=inline data-encoding=base64 raw=t>\n%s\n<#/part>"
1074 ;; ;; Get a base64 version of the image -- this avoids later
1075 ;; ;; complications if we're auto-saving the buffer and
1076 ;; ;; restoring from a file.
1077 ;; (with-temp-buffer
1078 ;; (set-buffer-multibyte nil)
1079 ;; (insert image)
1080 ;; (base64-encode-region (point-min) (point-max) t)
1081 ;; (buffer-string))))
1082 ;; (insert "\n\n")
1083 ;; (message "")))
987 1084
988#+end_src 1085#+end_src
989 1086
diff --git a/Mail.org b/Mail.org
index c749918..1ded00d 100644
--- a/Mail.org
+++ b/Mail.org
@@ -59,16 +59,34 @@
59 smtpmail-smtp-service 465 59 smtpmail-smtp-service 465
60 smtpmail-stream-type 'ssl) 60 smtpmail-stream-type 'ssl)
61 61
62 (setq mu4e-compose-signature (concat
63 "Pozdrawiam,\n"
64 "Jakub Długosz"))
65
62 (mu4e t)) 66 (mu4e t))
63 67
68#+end_src
69
70*mu4e-alert*
71
72#+begin_src emacs-lisp
73 (use-package mu4e-alert
74 :defer 20
75 :config
76 (mu4e-alert-set-default-style 'libnotify)
77 (mu4e-alert-enable-mode-line-display)
78 (mu4e-alert-enable-notifications))
79#+end_src
80
81*mu4e bindings*
82
83#+begin_src emacs-lisp
64 (jd/leader-key-def 84 (jd/leader-key-def
65 "m" '(:ignore t :which-key "mail") 85 "m" '(:ignore t :which-key "mail")
66 "mm" 'mu4e 86 "mm" 'mu4e
67 "mc" 'mu4e-compose-new) 87 "mc" 'mu4e-compose-new)
68 88
69
70 (provide 'jd-mu4e) 89 (provide 'jd-mu4e)
71
72#+end_src 90#+end_src
73 91
74* mbsyncrc 92* mbsyncrc