diff --git a/.gitignore b/.gitignore
index 2e686e6..c545fde 100755
--- a/.gitignore
+++ b/.gitignore
@@ -16,3 +16,5 @@ home/pure_emacs/.emacs.d/recentf
home/pure_emacs/.emacs.d/transient/
home/pure_emacs/.emacs.d/.org-id-locations
home/pure_emacs/.emacs.d/.lsp-session-v1
+home/pure_emacs/.emacs.d/url
+home/pure_emacs/.emacs.d/session*
diff --git a/home/cava/.config/cava/config b/home/cava/.config/cava/config
old mode 100755
new mode 100644
index 22cf3da..1e841a9
--- a/home/cava/.config/cava/config
+++ b/home/cava/.config/cava/config
@@ -108,7 +108,7 @@ method = ncurses
; raw_target = /dev/stdout
# Raw data format. Can be 'binary' or 'ascii'.
-; data_format = ascii
+; data_format = binary
# Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530).
; bit_format = 16bit
@@ -159,7 +159,7 @@ waves = 5
# Set gravity percentage for "drop off". Higher values means bars will drop faster.
# Accepts only non-negative values. 50 means half gravity, 200 means double. Set to 0 to disable "drop off".
-; gravity = 800
+; gravity = 100
# In bar height, bars that would have been lower that this will not be drawn.
diff --git a/home/gtk/.config/gtk-2.0/gtkfilechooser.ini b/home/gtk/.config/gtk-2.0/gtkfilechooser.ini
old mode 100755
new mode 100644
index 5f1e0ab..46dc0e0
--- a/home/gtk/.config/gtk-2.0/gtkfilechooser.ini
+++ b/home/gtk/.config/gtk-2.0/gtkfilechooser.ini
@@ -2,10 +2,10 @@
LocationMode=path-bar
ShowHidden=false
ShowSizeColumn=true
-GeometryX=0
-GeometryY=0
-GeometryWidth=768
-GeometryHeight=972
+GeometryX=630
+GeometryY=118
+GeometryWidth=660
+GeometryHeight=864
SortColumn=modified
SortOrder=descending
StartupMode=recent
diff --git a/home/gtk/.config/gtk-3.0/bookmarks b/home/gtk/.config/gtk-3.0/bookmarks
old mode 100755
new mode 100644
index ba90f8d..a19eb53
--- a/home/gtk/.config/gtk-3.0/bookmarks
+++ b/home/gtk/.config/gtk-3.0/bookmarks
@@ -1,10 +1,8 @@
-file:///home/horhik/KB
-file:///home/horhik/.config/eww
-file:///home/horhik/Documents/Icons/Notion%20Icons%203.0
-file:///usr/share/icons/Papirus-Dark/96x96
-file:///tmp/mozilla_horhik0
file:///home/horhik/code
file:///home/horhik/Documents
file:///home/horhik/Music
file:///home/horhik/Pictures
+file:///home/horhik/Videos
file:///home/horhik/Downloads
+file:///home/horhik/Nextcloud
+file:///home/horhik/Nextcloud2
diff --git a/home/gtk/.config/gtk-3.0/settings.ini b/home/gtk/.config/gtk-3.0/settings.ini
old mode 100755
new mode 100644
index c0e1b4a..0a869a5
--- a/home/gtk/.config/gtk-3.0/settings.ini
+++ b/home/gtk/.config/gtk-3.0/settings.ini
@@ -1,17 +1,16 @@
[Settings]
-gtk-theme-name=Adwaita-dark
-gtk-icon-theme-name=Papirus-Dark
-gtk-font-name=Roboto 11
-gtk-cursor-theme-size=18
+gtk-theme-name=Materia-dark
+gtk-icon-theme-name=Paper-Mono-Dark
+gtk-font-name=Noto Sans 11
+gtk-cursor-theme-name=Bibata-Modern-Ice
+gtk-cursor-theme-size=0
gtk-toolbar-style=GTK_TOOLBAR_ICONS
-gtk-toolbar-icon-size=GTK_ICON_SIZE_BUTTON
+gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=1
gtk-menu-images=1
-gtk-enable-event-sounds=1
-gtk-enable-input-feedback-sounds=1
+gtk-enable-event-sounds=0
+gtk-enable-input-feedback-sounds=0
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle=hintfull
-gtk-xft-rgba=rgb
-gtk-cursor-theme-name=Premium
-gtk-application-prefer-dark-theme=0
+gtk-xft-rgba=none
diff --git a/home/gtk/.config/gtk-4.0/settings.ini b/home/gtk/.config/gtk-4.0/settings.ini
old mode 100755
new mode 100644
index 7c6461a..29322c1
--- a/home/gtk/.config/gtk-4.0/settings.ini
+++ b/home/gtk/.config/gtk-4.0/settings.ini
@@ -1,2 +1,2 @@
[Settings]
-gtk-application-prefer-dark-theme=0
+gtk-application-prefer-dark-theme=1
diff --git a/home/gtk/.gtkrc-2.0 b/home/gtk/.gtkrc-2.0
old mode 100755
new mode 100644
index 807c203..4e68fcd
--- a/home/gtk/.gtkrc-2.0
+++ b/home/gtk/.gtkrc-2.0
@@ -1,14 +1,19 @@
-# -- THEME AUTO-WRITTEN DO NOT EDIT
-include "/home/horhik/.themes/darkink/gtk-2.0/gtkrc"
+# DO NOT EDIT! This file will be overwritten by LXAppearance.
+# Any customization should be done in ~/.gtkrc-2.0.mine instead.
-style "user-font" {
- font_name = "Mononoki 12"
-}
-
-widget_class "*" style "user-font"
-
-gtk-font-name="Mononoki 12"
-
-include "/home/horhik/.gtkrc.mine"
-
-# -- THEME AUTO-WRITTEN DO NOT EDIT
+include "/home/horhik/.gtkrc-2.0.mine"
+gtk-theme-name="Materia-dark"
+gtk-icon-theme-name="Paper-Mono-Dark"
+gtk-font-name="Noto Sans 11"
+gtk-cursor-theme-name="Bibata-Modern-Ice"
+gtk-cursor-theme-size=0
+gtk-toolbar-style=GTK_TOOLBAR_ICONS
+gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
+gtk-button-images=1
+gtk-menu-images=1
+gtk-enable-event-sounds=0
+gtk-enable-input-feedback-sounds=0
+gtk-xft-antialias=1
+gtk-xft-hinting=1
+gtk-xft-hintstyle="hintfull"
+gtk-xft-rgba="none"
diff --git a/home/pure_emacs/.emacs.d/.lsp-session-v1 b/home/pure_emacs/.emacs.d/.lsp-session-v1
index c619bfb..b10f9c5 100644
--- a/home/pure_emacs/.emacs.d/.lsp-session-v1
+++ b/home/pure_emacs/.emacs.d/.lsp-session-v1
@@ -1 +1 @@
-#s(lsp-session ("/home/horhik/code/cp-tasks" "/home/horhik/code/competitive") nil #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()) #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()) #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()))
\ No newline at end of file
+#s(lsp-session ("/home/horhik/code/projects/слово-to-slovo" "/home/horhik" "/home/horhik/code/cp-tasks" "/home/horhik/code/competitive") nil #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()) #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()) #s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()))
\ No newline at end of file
diff --git a/home/pure_emacs/.emacs.d/config.org b/home/pure_emacs/.emacs.d/config.org
index da98506..49c2619 100755
--- a/home/pure_emacs/.emacs.d/config.org
+++ b/home/pure_emacs/.emacs.d/config.org
@@ -57,25 +57,27 @@
** Theme
#+begin_src emacs-lisp
- (require 'use-package)
- (custom-set-variables
- ;; custom-set-variables was added by Custom.
- ;; If you edit it by hand, you could mess it up, so be careful.
- ;; Your init file should contain only one such instance.
- ;; If there is more than one, they won't work right.
- '(custom-safe-themes
- '("75b8719c741c6d7afa290e0bb394d809f0cc62045b93e1d66cd646907f8e6d43" "7661b762556018a44a29477b84757994d8386d6edee909409fabe0631952dad9" default))
- '(package-selected-packages
- '(neotree treemacs-persp spaceline-all-the-icons all-the-icons-ivy-rich all-the-icons-ivy treemacs-the-icons dired-icon treemacs-magit treemacs-projectile nlinum linum-mode unicode-fonts ewal-doom-themes ivy-rich which-key counsel org-roam treemacs-evil treemacs-all-the-icons treemacs use-package general gruvbox-theme flycheck-rust cargo linum-relative ac-racer lusty-explorer doom-modeline doom-themes rainbow-delimiters evil-mc rustic lsp-mode avy)))
-(use-package doom-themes)
- '(custom-enabled-themes '(gruvbox))
+ (require 'use-package)
+ ;; (custom-set-variables
+ ;; ;; custom-set-variables was added by Custom.
+ ;; ;; If you edit it by hand, you could mess it up, so be careful.
+ ;; ;; Your init file should contain only one such instance.
+ ;; ;; If there is more than one, they won't work right.
+ ;; '(custom-safe-themes
+ ;; '("75b8719c741c6d7afa290e0bb394d809f0cc62045b93e1d66cd646907f8e6d43" "7661b762556018a44a29477b84757994d8386d6edee909409fabe0631952dad9" default))
+ ;; '(package-selected-packages
+ ;; '(neotree treemacs-persp spaceline-all-the-icons all-the-icons-ivy-rich all-the-icons-ivy treemacs-the-icons dired-icon treemacs-magit treemacs-projectile nlinum linum-mode unicode-fonts ewal-doom-themes ivy-rich which-key counsel org-roam treemacs-evil treemacs-all-the-icons treemacs use-package general gruvbox-theme flycheck-rust cargo linum-relative ac-racer lusty-explorer doom-modeline doom-themes rainbow-delimiters evil-mc rustic lsp-mode avy)))
+(use-package doom-themes
+ :ensure t
+ )
+ (load-theme 'doom-gruvbox t)
- (use-package gruvbox-theme
- :ensure t
- :config
- (load-theme 'doom-gruvbox)
- )
- (setq use-package-always-ensure t)
+ ;; (use-package gruvbox-theme
+ ;; :ensure t
+ ;; :config
+ ;; (load-theme 'doom-gruvbox)
+ ;; )
+ (setq use-package-always-ensure t)
@@ -110,6 +112,8 @@
(when (member "Twitter Color Emoji" (font-family-list))
(set-fontset-font t 'unicode "Twitter Color Emoji" nil 'prepend))
+(when (member "Twemoji" (font-family-list))
+ (set-fontset-font t 'unicode "Twemoji" nil 'prepend))
;; ☺️ ☻ 😃 😄 😅 😆 😊 😎 😇 😈 😏 🤣 🤩 🤪 🥳 😁 😀 😂 🤠 🤡 🤑 🤓 🤖 😗 😚 😘 😙 😉 🤗 😍 🥰 🤤 😋 🤔 🤨 🧐 🤭 🤫 😯 🤐 😌 😖 😕 😳 😔 🤥 🥴 😮 😲 🤯 😩 😫 🥱 😪 😴 😵 ☹️ 😦 😞 😥 😟 😢 😭 🤢 🤮 😷 🤒 🤕 🥵 🥶 🥺 😬 😓 😰 😨 😱 😒 😠 😡 😤 😣 😧 🤬 😸 😹 😺 😻 😼 😽 😾 😿 🙀 🙈 🙉 🙊 🤦 🤷 🙅 🙆 🙋 🙌 🙍 🙎 🙇 🙏 👯 💃 🕺 🤳 💇 💈 💆 🧖 🧘 🧍 🧎 👰 🤰 🤱 👶 🧒 👦 👧 👩 👨 🧑 🧔 🧓 👴 👵 👤 👥 👪 👫 👬 👭 👱 👳 👲 🧕 👸 🤴 🎅 🤶 🧏 🦻 🦮 🦯 🦺 🦼 🦽 🦾 🦿 🤵 👮 👷 💁 💂 🕴 🕵️ 🦸 🦹 🧙 🧚 🧜 🧝 🧞 🧛 🧟 👼 👿 👻 👹 👺 👽 👾 🛸 💀 ☠️ 🕱 🧠 🦴 👁 👀 👂 👃 👄 🗢 👅 🦷 🦵 🦶 💭 🗬 🗭 💬 🗨 🗩 💦 💧 💢 💫 💤 💨 💥 💪 🗲 🔥 💡 💩 💯
;; Fallback for emojies
@@ -144,7 +148,7 @@
(show-paren-mode t)) ;
(use-package rainbow-delimiters
:hook (prog-mode . rainbow-delimiters-mode))
-
+(global-prettify-symbols-mode +1)
#+end_src
#+RESULTS:
@@ -514,24 +518,64 @@
(company-idle-delay 0.0))
(use-package company-box
- :hook (company-mode . company-box-mode)) #+end_src
+ :hook (company-mode . company-box-mode))
#+end_src
** Popup
#+begin_src emacs-lisp
- (use-package ivy-postframe
- :config
- (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display)))
- ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-center)))
- ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-center)))
- ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-bottom-left)))
- ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-bottom-left)))
- ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-top-center)))
- (ivy-posframe-mode 1)
-)
+ ;; (use-package ivy-postframe
+ ;; :init
+ ;; (ivy-posframe-mode 1)
+ ;; ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-center)))
+ ;; ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-center)))
+ ;; ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-bottom-left)))
+ ;; ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-bottom-left)))
+ ;; ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-top-center)))
+ ;; )
#+end_src
* Org
+** Pretty symbols
+#+begin_src emacs-lisp
+ ;; (lambda ()
+ ;; (push '("TODO" . ?📥) prettify-symbols-alist)
+ ;; (push '("DONE" . ?☑) prettify-symbols-alist)
+ ;; (push '("NEXT" . ?⏭) prettify-symbols-alist)
+ ;; (push '("IDEA" . ?💡) prettify-symbols-alist)
+ ;; (push '("DREAM" . ?✨) prettify-symbols-alist)
+ ;; )
+
+ (setq-default prettify-symbols-alist
+ '(("#+BEGIN_SRC" . "λ")
+ ("#+END_SRC" . "λ")
+ ("#+end_src" . "λ")
+ ("#+begin_src" . "λ")
+ ("TODO"." T ")
+ ("DONE"." D ")
+ ("NEXT"." N ")
+ ("IDEA"." 💡 ")
+ ("DREAM"." ✨ ")
+ (":LOGBOOK:"." LOG ")
+ ))
+
+#+END_SRC
+** My org-mode functions
+#+begin_src emacs-lisp
+ (defun my/org-toggle-todo-and-fold ()
+ (interactive)
+ (save-excursion
+ (org-back-to-heading t) ;; Make sure command works even if point is
+ ;; below target heading
+ (cond ((looking-at "\*+ TODO")
+ (org-todo "DONE")
+ (sleep-for 0.5)
+ (org-archive-subtree-default-with-confirmation)
+ )
+ ((looking-at "\*+ DONE")
+ (org-todo "TODO")
+ (hide-subtree))
+ (t (message "Can only toggle between TODO and DONE.")))))
+#+end_src
** Fonts
#+begin_src emacs-lisp
@@ -541,15 +585,15 @@
:height 1.3
:weight 'light)
-(set-face-attribute 'org-document-title nil :font "ubuntu" :weight 'bold :height 1.3)
-(dolist (face '((org-level-1 . 1.18)
- (org-level-2 . 1.14)
- (org-level-3 . 1.05)
+(set-face-attribute 'org-document-title nil :font "ubuntu" :weight 'light :height 1.3)
+(dolist (face '((org-level-1 . 1.1)
+ (org-level-2 . 1.0)
+ (org-level-3 . 1.0)
(org-level-4 . 1.0)
- (org-level-5 . 1.1)
- (org-level-6 . 1.1)
- (org-level-7 . 1.1)
- (org-level-8 . 1.1)))
+ (org-level-5 . 0.9)
+ (org-level-6 . 0.9)
+ (org-level-7 . 0.9)
+ (org-level-8 . 0.9)))
(set-face-attribute (car face) nil :font "ubuntu" :weight 'bold :height (cdr face) ))
(require 'org-indent)
(set-face-attribute 'org-block nil :foreground nil :inherit 'fixed-pitch :font "Hack" )
@@ -581,15 +625,18 @@
(visual-line-mode 1)
(setq evil-auto-indent 1)
(variable-pitch-mode t)
+ (prettify-symbols-mode +1)
+ (display-line-numbers-mode 0)
)
-
(use-package org
:hook ((org-mode . my/org-mode-setup)
(org-mode . variable-pitch-mode)
(org-mode . org-inddent-mode)
+ (org-mode . prettify-symbols-mode)
)
- :config (setq org-agenda-files `("~/Notes" "~/Notes/Tasks/Tasks.org"))
+ :config (setq org-agenda-files `("~/Nextcloud2/Notes/Ideas💡.org" "~/Nextcloud2/Notes/Lists📜.org" "~/Nextcloud2/Notes/Projects💻.org" "~/Nextcloud2/Notes/Tasks🧾.org"))
+ (display-line-numbers-mode 0)
(org-bullets-mode t)
(org-indent-mode t)
(setq org-ellipsis " ▸" org-hide-emphasis-markers t org-src-fontify-natively t
@@ -621,9 +668,12 @@
("n" "Next Tasks" ((todo "NEXT" ((org-agenda-overriding-header
"Next Tasks")))))
("i" "Ideas" ((todo "IDEA" ((org-agenda-overriding-header
- "Ideas ")))))
+ "Ideas "))
+ )
+ (tags-todo "+idea")
+ ))
("A" "Articles" ((todo "Article" ((org-agenda-overriding-header
- "Article")))))
+ "Article")))))
("W" "Work Tasks" tags-todo "+work-email")
("W" "Work Tasks" tags-todo "+work-email")
("I" "ideas" tags-todo "+idea-article")
@@ -681,7 +731,9 @@
:general (general-nmap :prefix "SPC a"
:keymap 'org-agenda-mode-map
- "a" 'org-agenda))
+ "a" 'org-agenda
+ "d" 'my/org-toggle-todo-and-fold
+ ))
(use-package org-bullets
:after org
:hook
@@ -746,7 +798,7 @@
"b h" '(org-roam-buffer-deactivate :which-key "roam buffer hide ")
"s" '(org-roam-server-mode :which-key "roam server "))
:custom
- (org-roam-directory "~/Notes")
+ (org-roam-directory "~/Nextcloud2/Notes")
:config
(setq
org-roam-server-host "127.0.0.1"
@@ -793,11 +845,17 @@
(use-package lsp-mode
:init
(setq lsp-keymap-prefix "C-SPC c")
+;; (setq lsp-clients-clangd-args " --header-insertion-decorators=0 ")
;;(setq lsp-client-packages nil)
+ :hook (;; replace XXX-mode with concrete major-mode(e. g. python-mode)
+ (c++-mode . lsp)
+ ;; if you want which-key integration
+ (lsp-mode . lsp-enable-which-key-integration))
:config
- (add-hook 'c++-mode-hook #'lsp-mode)
- (add-hook 'rust-mode-hook #'lsp-mode)
- (add-hook 'c-mode-hook #'lsp-mode)
+ (add-hook 'c\+\+-mode-hook #'lsp-mode)
+ (add-hook 'rust-mode-hook #'lsp-mode)
+ (add-hook 'c-mode-hook #'lsp-mode)
+
;;(setq lsp-clients-clangd-executable "/home/horhik/code/competitive/clangd")
;;(setq lsp-clients-clangd-default-executable "/home/horhik/code/competitive/clangd")
;;(lsp-mode . lsp-enable-which-key-integration)
@@ -822,14 +880,12 @@
(setq irony-additional-clang-options
(append '("-std=c++17") irony-additional-clang-options))
)
- (add-to-list 'auto-mode-alist '("\\.cpp\\'" . cpp-hook))
- (add-to-list 'auto-mode-alist '("\\.cxx\\'" . cpp-hook))
- (add-to-list 'auto-mode-alist '("\\.c++\\'" . cpp-hook))
- (add-to-list 'auto-mode-alist '("\\.C\\'" . cpp-hook))
- (defun cpp-hook ()
- (c++-mode 1)
- (lsp-mode 1)
- )
+
+
+(add-to-list 'auto-mode-alist '("\\.h\\'" . c++-mode))
+(add-to-list 'auto-mode-alist '("\\.cxx\\'" . c++-mode))
+(add-to-list 'auto-mode-alist '("\\.cpp\\'" . c++-mode))
+(add-to-list 'auto-mode-alist '("\\.C\\'" . c++-mode))
#+end_src
** Markdown
#+begin_src emacs-lisp
@@ -840,7 +896,6 @@
(use-package tuareg)
#+end_src
-
** Nix
#+begin_src emacs-lisp
;; (use-package direnv
@@ -849,3 +904,23 @@
;; (add-hook 'lsp-mode-hook #'direnv-update-environment)
(use-package nix-mode)
#+end_src
+
+** Rust
+#+begin_src emacs-lisp
+ (use-package rust-mode
+ :config
+ (setq rust-format-on-save t)
+ (add-hook 'rust-mode-hook
+ (lambda () (setq indent-tabs-mode nil)))
+ )
+ (use-package rustic
+ :config
+ (setq rustic-lsp-server 'rls)
+ )
+
+#+end_src
+
+* Default file
+#+begin_src emacs-lisp
+(setq initial-buffer-choice "~/Nextcloud2/Notes/Tasks🧾.org")
+#+end_src
diff --git a/home/pure_emacs/.emacs.d/init.el b/home/pure_emacs/.emacs.d/init.el
index ef902f0..37324ae 100644
--- a/home/pure_emacs/.emacs.d/init.el
+++ b/home/pure_emacs/.emacs.d/init.el
@@ -27,24 +27,26 @@
(global-visual-line-mode)
(require 'use-package)
- (custom-set-variables
- ;; custom-set-variables was added by Custom.
- ;; If you edit it by hand, you could mess it up, so be careful.
- ;; Your init file should contain only one such instance.
- ;; If there is more than one, they won't work right.
- '(custom-safe-themes
- '("75b8719c741c6d7afa290e0bb394d809f0cc62045b93e1d66cd646907f8e6d43" "7661b762556018a44a29477b84757994d8386d6edee909409fabe0631952dad9" default))
- '(package-selected-packages
- '(neotree treemacs-persp spaceline-all-the-icons all-the-icons-ivy-rich all-the-icons-ivy treemacs-the-icons dired-icon treemacs-magit treemacs-projectile nlinum linum-mode unicode-fonts ewal-doom-themes ivy-rich which-key counsel org-roam treemacs-evil treemacs-all-the-icons treemacs use-package general gruvbox-theme flycheck-rust cargo linum-relative ac-racer lusty-explorer doom-modeline doom-themes rainbow-delimiters evil-mc rustic lsp-mode avy)))
-(use-package doom-themes)
- '(custom-enabled-themes '(gruvbox))
+ ;; (custom-set-variables
+ ;; ;; custom-set-variables was added by Custom.
+ ;; ;; If you edit it by hand, you could mess it up, so be careful.
+ ;; ;; Your init file should contain only one such instance.
+ ;; ;; If there is more than one, they won't work right.
+ ;; '(custom-safe-themes
+ ;; '("75b8719c741c6d7afa290e0bb394d809f0cc62045b93e1d66cd646907f8e6d43" "7661b762556018a44a29477b84757994d8386d6edee909409fabe0631952dad9" default))
+ ;; '(package-selected-packages
+ ;; '(neotree treemacs-persp spaceline-all-the-icons all-the-icons-ivy-rich all-the-icons-ivy treemacs-the-icons dired-icon treemacs-magit treemacs-projectile nlinum linum-mode unicode-fonts ewal-doom-themes ivy-rich which-key counsel org-roam treemacs-evil treemacs-all-the-icons treemacs use-package general gruvbox-theme flycheck-rust cargo linum-relative ac-racer lusty-explorer doom-modeline doom-themes rainbow-delimiters evil-mc rustic lsp-mode avy)))
+(use-package doom-themes
+ :ensure t
+ )
+ (load-theme 'doom-gruvbox t)
- (use-package gruvbox-theme
- :ensure t
- :config
- (load-theme 'doom-gruvbox)
- )
- (setq use-package-always-ensure t)
+ ;; (use-package gruvbox-theme
+ ;; :ensure t
+ ;; :config
+ ;; (load-theme 'doom-gruvbox)
+ ;; )
+ (setq use-package-always-ensure t)
(use-package doom-modeline
:init
@@ -62,6 +64,8 @@
(when (member "Twitter Color Emoji" (font-family-list))
(set-fontset-font t 'unicode "Twitter Color Emoji" nil 'prepend))
+(when (member "Twemoji" (font-family-list))
+ (set-fontset-font t 'unicode "Twemoji" nil 'prepend))
;; ☺️ ☻ 😃 😄 😅 😆 😊 😎 😇 😈 😏 🤣 🤩 🤪 🥳 😁 😀 😂 🤠 🤡 🤑 🤓 🤖 😗 😚 😘 😙 😉 🤗 😍 🥰 🤤 😋 🤔 🤨 🧐 🤭 🤫 😯 🤐 😌 😖 😕 😳 😔 🤥 🥴 😮 😲 🤯 😩 😫 🥱 😪 😴 😵 ☹️ 😦 😞 😥 😟 😢 😭 🤢 🤮 😷 🤒 🤕 🥵 🥶 🥺 😬 😓 😰 😨 😱 😒 😠 😡 😤 😣 😧 🤬 😸 😹 😺 😻 😼 😽 😾 😿 🙀 🙈 🙉 🙊 🤦 🤷 🙅 🙆 🙋 🙌 🙍 🙎 🙇 🙏 👯 💃 🕺 🤳 💇 💈 💆 🧖 🧘 🧍 🧎 👰 🤰 🤱 👶 🧒 👦 👧 👩 👨 🧑 🧔 🧓 👴 👵 👤 👥 👪 👫 👬 👭 👱 👳 👲 🧕 👸 🤴 🎅 🤶 🧏 🦻 🦮 🦯 🦺 🦼 🦽 🦾 🦿 🤵 👮 👷 💁 💂 🕴 🕵️ 🦸 🦹 🧙 🧚 🧜 🧝 🧞 🧛 🧟 👼 👿 👻 👹 👺 👽 👾 🛸 💀 ☠️ 🕱 🧠 🦴 👁 👀 👂 👃 👄 🗢 👅 🦷 🦵 🦶 💭 🗬 🗭 💬 🗨 🗩 💦 💧 💢 💫 💤 💨 💥 💪 🗲 🔥 💡 💩 💯
;; Fallback for emojies
@@ -83,6 +87,7 @@
(show-paren-mode t)) ;
(use-package rainbow-delimiters
:hook (prog-mode . rainbow-delimiters-mode))
+(global-prettify-symbols-mode +1)
(use-package all-the-icons)
(use-package all-the-icons-ivy
@@ -410,18 +415,53 @@
(company-idle-delay 0.0))
(use-package company-box
- :hook (company-mode . company-box-mode)) #+end_src
+ :hook (company-mode . company-box-mode))
-(use-package ivy-postframe
- :config
- (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display)))
- ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-center)))
- ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-center)))
- ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-bottom-left)))
- ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-bottom-left)))
- ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-top-center)))
- (ivy-posframe-mode 1)
-)
+;; (use-package ivy-postframe
+;; :init
+;; (ivy-posframe-mode 1)
+;; ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-center)))
+;; ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-center)))
+;; ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-bottom-left)))
+;; ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-window-bottom-left)))
+;; ;; (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-top-center)))
+;; )
+
+;; (lambda ()
+ ;; (push '("TODO" . ?📥) prettify-symbols-alist)
+ ;; (push '("DONE" . ?☑) prettify-symbols-alist)
+ ;; (push '("NEXT" . ?⏭) prettify-symbols-alist)
+ ;; (push '("IDEA" . ?💡) prettify-symbols-alist)
+ ;; (push '("DREAM" . ?✨) prettify-symbols-alist)
+ ;; )
+
+(setq-default prettify-symbols-alist
+ '(("#+BEGIN_SRC" . "λ")
+ ("#+END_SRC" . "λ")
+ ("#+end_src" . "λ")
+ ("#+begin_src" . "λ")
+ ("TODO"." T ")
+ ("DONE"." D ")
+ ("NEXT"." N ")
+ ("IDEA"." 💡 ")
+ ("DREAM"." ✨ ")
+ (":LOGBOOK:"." LOG ")
+ ))
+
+(defun my/org-toggle-todo-and-fold ()
+ (interactive)
+ (save-excursion
+ (org-back-to-heading t) ;; Make sure command works even if point is
+ ;; below target heading
+ (cond ((looking-at "\*+ TODO")
+ (org-todo "DONE")
+ (sleep-for 0.5)
+ (org-archive-subtree-default-with-confirmation)
+ )
+ ((looking-at "\*+ DONE")
+ (org-todo "TODO")
+ (hide-subtree))
+ (t (message "Can only toggle between TODO and DONE.")))))
(set-face-attribute 'variable-pitch nil
;; :font "Cantarell"
@@ -429,15 +469,15 @@
:height 1.3
:weight 'light)
-(set-face-attribute 'org-document-title nil :font "ubuntu" :weight 'bold :height 1.3)
-(dolist (face '((org-level-1 . 1.18)
- (org-level-2 . 1.14)
- (org-level-3 . 1.05)
+(set-face-attribute 'org-document-title nil :font "ubuntu" :weight 'light :height 1.3)
+(dolist (face '((org-level-1 . 1.1)
+ (org-level-2 . 1.0)
+ (org-level-3 . 1.0)
(org-level-4 . 1.0)
- (org-level-5 . 1.1)
- (org-level-6 . 1.1)
- (org-level-7 . 1.1)
- (org-level-8 . 1.1)))
+ (org-level-5 . 0.9)
+ (org-level-6 . 0.9)
+ (org-level-7 . 0.9)
+ (org-level-8 . 0.9)))
(set-face-attribute (car face) nil :font "ubuntu" :weight 'bold :height (cdr face) ))
(require 'org-indent)
(set-face-attribute 'org-block nil :foreground nil :inherit 'fixed-pitch :font "Hack" )
@@ -460,15 +500,18 @@
(visual-line-mode 1)
(setq evil-auto-indent 1)
(variable-pitch-mode t)
+ (prettify-symbols-mode +1)
+ (display-line-numbers-mode 0)
)
-
(use-package org
:hook ((org-mode . my/org-mode-setup)
(org-mode . variable-pitch-mode)
(org-mode . org-inddent-mode)
+ (org-mode . prettify-symbols-mode)
)
- :config (setq org-agenda-files `("~/Notes" "~/Notes/Tasks/Tasks.org"))
+ :config (setq org-agenda-files `("~/Nextcloud2/Notes/Ideas💡.org" "~/Nextcloud2/Notes/Lists📜.org" "~/Nextcloud2/Notes/Projects💻.org" "~/Nextcloud2/Notes/Tasks🧾.org"))
+ (display-line-numbers-mode 0)
(org-bullets-mode t)
(org-indent-mode t)
(setq org-ellipsis " ▸" org-hide-emphasis-markers t org-src-fontify-natively t
@@ -500,9 +543,12 @@
("n" "Next Tasks" ((todo "NEXT" ((org-agenda-overriding-header
"Next Tasks")))))
("i" "Ideas" ((todo "IDEA" ((org-agenda-overriding-header
- "Ideas ")))))
+ "Ideas "))
+ )
+ (tags-todo "+idea")
+ ))
("A" "Articles" ((todo "Article" ((org-agenda-overriding-header
- "Article")))))
+ "Article")))))
("W" "Work Tasks" tags-todo "+work-email")
("W" "Work Tasks" tags-todo "+work-email")
("I" "ideas" tags-todo "+idea-article")
@@ -560,7 +606,9 @@
:general (general-nmap :prefix "SPC a"
:keymap 'org-agenda-mode-map
- "a" 'org-agenda))
+ "a" 'org-agenda
+ "d" 'my/org-toggle-todo-and-fold
+ ))
(use-package org-bullets
:after org
:hook
@@ -609,7 +657,7 @@
"b h" '(org-roam-buffer-deactivate :which-key "roam buffer hide ")
"s" '(org-roam-server-mode :which-key "roam server "))
:custom
- (org-roam-directory "~/Notes")
+ (org-roam-directory "~/Nextcloud2/Notes")
:config
(setq
org-roam-server-host "127.0.0.1"
@@ -645,42 +693,46 @@
)
(use-package lsp-mode
- :init
- (setq lsp-keymap-prefix "C-SPC c")
- ;;(setq lsp-client-packages nil)
- :config
- (add-hook 'c++-mode-hook #'lsp-mode)
- (add-hook 'rust-mode-hook #'lsp-mode)
- (add-hook 'c-mode-hook #'lsp-mode)
- ;;(setq lsp-clients-clangd-executable "/home/horhik/code/competitive/clangd")
- ;;(setq lsp-clients-clangd-default-executable "/home/horhik/code/competitive/clangd")
- ;;(lsp-mode . lsp-enable-which-key-integration)
- :commands (lsp lsp-deferred)
- )
- (use-package lsp-treemacs
- :after lsp-mode
- )
-(use-package lsp-ivy)
-(use-package lsp-ui
-:after lsp)
+ :init
+ (setq lsp-keymap-prefix "C-SPC c")
+;; (setq lsp-clients-clangd-args " --header-insertion-decorators=0 ")
+ ;;(setq lsp-client-packages nil)
+ :hook (;; replace XXX-mode with concrete major-mode(e. g. python-mode)
+ (c++-mode . lsp)
+ ;; if you want which-key integration
+ (lsp-mode . lsp-enable-which-key-integration))
+ :config
+ (add-hook 'c\+\+-mode-hook #'lsp-mode)
+ (add-hook 'rust-mode-hook #'lsp-mode)
+ (add-hook 'c-mode-hook #'lsp-mode)
+
+ ;;(setq lsp-clients-clangd-executable "/home/horhik/code/competitive/clangd")
+ ;;(setq lsp-clients-clangd-default-executable "/home/horhik/code/competitive/clangd")
+ ;;(lsp-mode . lsp-enable-which-key-integration)
+ :commands (lsp lsp-deferred)
+ )
+ (use-package lsp-treemacs
+ :after lsp-mode
+ )
+ (use-package lsp-ivy)
+ (use-package lsp-ui
+ :after lsp)
(use-package irony
- :init
- (add-hook 'c++-mode-hook 'irony-mode)
- (add-hook 'c-mode-hook 'irony-mode)
- (add-hook 'objc-mode-hook 'irony-mode)
- (add-hook 'irony-mode-hook 'irony-cdb-autosetup-compile-options)
- (setq irony-additional-clang-options
- (append '("-std=c++17") irony-additional-clang-options))
- )
-(add-to-list 'auto-mode-alist '("\\.cpp\\'" . cpp-hook))
-(add-to-list 'auto-mode-alist '("\\.cxx\\'" . cpp-hook))
-(add-to-list 'auto-mode-alist '("\\.c++\\'" . cpp-hook))
-(add-to-list 'auto-mode-alist '("\\.C\\'" . cpp-hook))
-(defun cpp-hook ()
- (c++-mode 1)
- (lsp-mode 1)
- )
+ :init
+ (add-hook 'c++-mode-hook 'irony-mode)
+ (add-hook 'c-mode-hook 'irony-mode)
+ (add-hook 'objc-mode-hook 'irony-mode)
+ (add-hook 'irony-mode-hook 'irony-cdb-autosetup-compile-options)
+ (setq irony-additional-clang-options
+ (append '("-std=c++17") irony-additional-clang-options))
+ )
+
+
+(add-to-list 'auto-mode-alist '("\\.h\\'" . c++-mode))
+(add-to-list 'auto-mode-alist '("\\.cxx\\'" . c++-mode))
+(add-to-list 'auto-mode-alist '("\\.cpp\\'" . c++-mode))
+(add-to-list 'auto-mode-alist '("\\.C\\'" . c++-mode))
(use-package markdown-mode)
@@ -691,3 +743,23 @@
;; (direnv-mode))
;; (add-hook 'lsp-mode-hook #'direnv-update-environment)
(use-package nix-mode)
+
+(use-package rust-mode
+:config
+ (setq rust-format-on-save t)
+ (add-hook 'rust-mode-hook
+ (lambda () (setq indent-tabs-mode nil)))
+)
+(use-package rustic
+:config
+(setq rustic-lsp-server 'rls)
+ )
+
+(setq initial-buffer-choice "~/Nextcloud2/Notes/Tasks🧾.org")
+(custom-set-variables
+ ;; custom-set-variables was added by Custom.
+ ;; If you edit it by hand, you could mess it up, so be careful.
+ ;; Your init file should contain only one such instance.
+ ;; If there is more than one, they won't work right.
+ '(package-selected-packages
+ '(rustic rust-mode workgroups2 which-key visual-fill-column use-package undo-tree tuareg treemacs-projectile treemacs-persp treemacs-magit treemacs-icons-dired treemacs-evil treemacs-all-the-icons realgud rainbow-delimiters pretty-symbols org-roam-server org-caldav org-bullets ob-browser nix-mode neotree lsp-ui lsp-treemacs lsp-ivy ivy-posframe highlight-parentheses gruvbox-theme general flycheck-irony evil-collection elisp-lint doom-themes doom-modeline counsel-projectile company-box clang-format+ all-the-icons-ivy-rich all-the-icons-ivy)))
diff --git a/home/qutebrowser/.config/qutebrowser/bookmarks/urls b/home/qutebrowser/.config/qutebrowser/bookmarks/urls
old mode 100755
new mode 100644
diff --git a/home/qutebrowser/.config/qutebrowser/quickmarks b/home/qutebrowser/.config/qutebrowser/quickmarks
old mode 100755
new mode 100644
diff --git a/home/xmonad/.config/xmobar/bin/xmobarstatus2 b/home/xmonad/.config/xmobar/bin/xmobarstatus2
index 1b3b14b..abcbb1b 100755
--- a/home/xmonad/.config/xmobar/bin/xmobarstatus2
+++ b/home/xmonad/.config/xmobar/bin/xmobarstatus2
@@ -109,7 +109,7 @@ duration=$(echo $((duration_sec / (60 * 60))):$((duration_sec / 60 - duration_s
echo "—{$toggl_description("$duration")}"
}
-
+
echo "$(toggl_timer)$(wifi)$(battery)$(volume)$(layout)$(diskspace)$(timeanddate)—{$(calendar)}——"
#echo " "
diff --git a/home/xmonad/.config/xmobar/config.hs b/home/xmonad/.config/xmobar/config.hs
index de5ea90..3dad616 100755
--- a/home/xmonad/.config/xmobar/config.hs
+++ b/home/xmonad/.config/xmobar/config.hs
@@ -17,7 +17,7 @@ Config {
, sepChar = "%" -- delineator between plugin names and straight text
, alignSep = "][" -- separator between left-right alignment
- , template = "——{%StdinReader%}—————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————][%/home/horhik/.config/xmobar/bin/xmobarstatus%"
+ , template = "——{%StdinReader%}—————————————————————————————————————————————————————————————————————————————————————————————————————————————][%/home/horhik/.config/xmobar/bin/xmobarstatus%"
-- general behavior
, lowerOnStart = False -- send to bottom of window stack on start
diff --git a/home/xmonad/.config/xmobar/config_second.hs b/home/xmonad/.config/xmobar/config_second.hs
index cef0063..cb4911e 100755
--- a/home/xmonad/.config/xmobar/config_second.hs
+++ b/home/xmonad/.config/xmobar/config_second.hs
@@ -16,7 +16,7 @@
-- layout
, sepChar = "%" -- delineator between plugin names and straight text
, alignSep = "][" -- separator between left-right alignment
- , template = "--{%StdinReader%}————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————][%/home/horhik/.config/xmobar/bin/xmobarstatus2%"
+ , template = "--{%StdinReader%}—————————————————————————————————————————————————————————————————————————————————————————————————————————————————][%/home/horhik/.config/xmobar/bin/xmobarstatus2%"
-- general behavior
, lowerOnStart = False -- send to bottom of window stack on start
diff --git a/home/xmonad/.xmonad/xmonad.hs b/home/xmonad/.xmonad/xmonad.hs
index 60d2ae5..7e6db92 100755
--- a/home/xmonad/.xmonad/xmonad.hs
+++ b/home/xmonad/.xmonad/xmonad.hs
@@ -101,7 +101,7 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $
, ((modm , xK_e ), spawn "rofimoji")
, ((modm , xK_p ), spawn "rofi -show drun")
- , ((modm .|. shiftMask , xK_p ), spawn "rofi -show window")
+ , ((modm .|. shiftMask , xK_p ), spawn "rofi-pass")
-- close focused window
, ((modm .|. shiftMask, xK_c ), kill)
@@ -178,6 +178,7 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $
, ((modm .|. mod1Mask , xK_space ), spawn "$HOME/.local/scripts/deadd_notify")
-- change lang
, ((modm, xK_Control_R) , spawn "xkblayout-state set +1")
+ , ((modm, xK_Shift_R) , spawn "xkblayout-state set +1")
, ((modm, xK_d) , spawn "eww-toggl")
-- toggle fullscreen
, ((mod4Mask .|. shiftMask, xK_f), sendMessage ToggleStruts)
@@ -292,10 +293,10 @@ magnify = renamed [Replace "magnify"]
$ mySpacing 8
$ ResizableTall 1 (3/100) (1/2) []
monocle = renamed [Replace "monocle"]
- $ smartBorders
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ limitWindows 20 Full
+ $ noBorders
+ -- $ addTabs shrinkText myTabTheme
+ $ subLayout [] (smartBorders Simplest)
+ $ limitWindows 20 Full
floats = renamed [Replace "floats"]
$ smartBorders
$ limitWindows 20 simplestFloat
@@ -361,7 +362,7 @@ myLayoutHook = avoidStruts $ mouseResize $ windowArrange $ T.toggleLayouts float
where
myDefaultLayout = withBorder myBorderWidth tall
||| noBorders magnify
- ||| noBorders monocle
+ ||| monocle
||| floats
||| noBorders tabs
||| grid
diff --git a/home/zsh/.zshrc b/home/zsh/.zshrc
index b8003ab..e582fa7 100644
--- a/home/zsh/.zshrc
+++ b/home/zsh/.zshrc
@@ -12,7 +12,7 @@ export ZSH=/usr/share/oh-my-zsh/
# to know which specific one was loaded, run: echo $RANDOM_THEME
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
# if you installed the package oh-my-zsh-powerline-theme-git then you type here "powerline" as zsh theme
-ZSH_THEME="random"
+ZSH_THEME="sporty_256"
# Set list of themes to pick from when loading at random
# Setting this variable when ZSH_THEME=random will cause zsh to load
@@ -111,8 +111,8 @@ export HISTCONTROL=ignoreboth:erasedups
# Make nano the default editor
-export EDITOR='nano'
-export VISUAL='nano'
+export EDITOR='nvim'
+export VISUAL='nvim'
#PS1='[\u@\h \W]\$ '
@@ -405,3 +405,4 @@ compile_and_run() {
# eval $(thefuck --alias)
+if [ -e /home/horhik/.nix-profile/etc/profile.d/nix.sh ]; then . /home/horhik/.nix-profile/etc/profile.d/nix.sh; fi # added by Nix installer
diff --git a/install.sh b/install.sh
index caba680..451e184 100755
--- a/install.sh
+++ b/install.sh
@@ -90,3 +90,5 @@ cargo build --release
echo "installing tmp (tmux package manager)"
git clone https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tpm
+echo "installing gruvbox theme"
+yay -S gtk-engine-murrine gruvbox-material-git
diff --git a/suckless/dmenu-4.9/dmenu b/suckless/dmenu-4.9/dmenu
index bf00503..678dc87 100755
Binary files a/suckless/dmenu-4.9/dmenu and b/suckless/dmenu-4.9/dmenu differ
diff --git a/suckless/dmenu-4.9/stest b/suckless/dmenu-4.9/stest
index c93eed0..63e0ea3 100755
Binary files a/suckless/dmenu-4.9/stest and b/suckless/dmenu-4.9/stest differ
diff --git a/suckless/dwm-6.2/dwm b/suckless/dwm-6.2/dwm
index 8b3a367..90da942 100755
Binary files a/suckless/dwm-6.2/dwm and b/suckless/dwm-6.2/dwm differ