i showed you my dotfiles please respond 😭

This commit is contained in:
Ghostie 2025-05-22 00:24:07 +01:00
commit 08223cbc72
9 changed files with 404 additions and 0 deletions

3
.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
*~
#*#
*.eld

2
.projectile Normal file
View File

@ -0,0 +1,2 @@
-*~
-#*#

21
Emacs/.emacs Normal file
View File

@ -0,0 +1,21 @@
(require 'package)
(add-to-list 'package-archives
'("melpa" . "http://melpa.org/packages/") t)
(package-initialize)
(when (not package-archive-contents)
(package-refresh-contents))
(unless (package-installed-p 'use-package)
(package-install 'use-package))
(require 'use-package)
(setq use-package-always-ensure t)
(add-to-list 'load-path "~/.emacs.d/custom")
(require 'setup-general)
(require 'setup-org)
(require 'setup-appearance)
(require 'setup-c)
(require 'setup-web)

View File

@ -0,0 +1,71 @@
;; rainbow-delimiters
(use-package rainbow-delimiters
:hook (prog-mode . rainbow-delimiters-mode))
;; theme
(use-package doom-themes
:ensure t
:config
(setq doom-themes-enable-bold t
doom-themes-enable-italic t)
(load-theme 'doom-one-light t)
(doom-themes-org-config))
;; moody
(use-package moody
:config
(setq x-underline-at-descent-line t)
(moody-replace-mode-line-buffer-identification)
(moody-replace-vc-mode)
(moody-replace-eldoc-minibuffer-message-function))
(use-package dashboard
:ensure t
:config
(setq dashboard-banner-logo-title "We are all connected"
dashboard-startup-banner 'logo
dashboard-center-content t
dashboard-show-shortcuts t
dashboard-set-navigator t
dashboard-set-heading-icons t
dashboard-set-file-icons t
initial-buffer-choice (lambda () (get-buffer "*dashboard*"))
dashboard-projects-switch-function 'projectile-switch-project-by-name
dashboard-items '((recents . 15)
(agenda . 10)
(projects . 10)))
(dashboard-setup-startup-hook)
:init
(add-hook 'after-init-hook 'dashboard-refresh-buffer))
(use-package git-gutter-fringe
:hook ((prog-mode . git-gutter-mode)
(org-mode . git-gutter-mode)
(markdown-mode . git-gutter-mode)
(latex-mode . git-gutter-mode)))
(use-package ligature
:config
(ligature-set-ligatures 'prog-mode
'("|||>" "<|||" "<==>" "<!--" "####" "~~>" "***" "||=" "||>"
":::" "::=" "=:=" "===" "==>" "=!=" "=>>" "=<<" "=/=" "!=="
"!!." ">=>" ">>=" ">>>" ">>-" ">->" "->>" "-->" "---" "-<<"
"<~~" "<~>" "<*>" "<||" "<|>" "<$>" "<==" "<=>" "<=<" "<->"
"<--" "<-<" "<<=" "<<-" "<<<" "<+>" "</>" "###" "#_(" "..<"
"..." "+++" "/==" "///" "_|_" "www" "&&" "^=" "~~" "~@" "~="
"~>" "~-" "**" "*>" "*/" "||" "|}" "|]" "|=" "|>" "|-" "{|"
"[|" "]#" "::" ":=" ":>" ":<" "$>" "==" "=>" "!=" "!!" ">:"
">=" ">>" ">-" "-~" "-|" "->" "--" "-<" "<~" "<*" "<|" "<:"
"<$" "<=" "<>" "<-" "<<" "<+" "</" "#{" "#[" "#:" "#=" "#!"
"##" "#(" "#?" "#_" "%%" ".=" ".-" ".." ".?" "+>" "++" "?:"
"?=" "?." "??" ";;" "/*" "/=" "/>" "//" "__" "~~" "(*" "*)"
"\\\\" "://"))
(global-ligature-mode t))
(setq-default fill-column 80)
(display-fill-column-indicator-mode 1)
(provide 'setup-appearance)

8
Emacs/custom/setup-c.el Normal file
View File

@ -0,0 +1,8 @@
(use-package clang-format
:ensure t
:init
(add-hook 'before-save-hook (lambda ()
(when (or (equal major-mode 'c-mode) (equal major-mode 'c++-mode))
(clang-format-buffer)))))
(provide 'setup-c)

View File

@ -0,0 +1,132 @@
(menu-bar-mode -1)
(tool-bar-mode -1)
(scroll-bar-mode -1)
(setq gc-cons-threshold (* 100 1024 1024)
read-process-output-max (* 1024 1024)
inhibit-startup-message t
auto-save-default nil
create-lockfiles nil
make-backup-files nil)
(defalias 'yes-or-no-p 'y-or-n-p)
;; use tabs instead of spaces
(setq-default indent-tabs-mode t
tab-width 2)
(defvaralias 'c-basic-offset 'tab-width)
(defun tabify-before-save ()
(cond
((derived-mode-p 'prog-mode)
(tabify (point-min) (point-max)))
((eq major-mode 'org-mode)
(untabify (point-min) (point-max)))))
(add-hook 'before-save-hook #'tabify-before-save)
;; yasnippet
(use-package yasnippet
:config
(yas-global-mode))
(use-package yasnippet-snippets
:after yasnippet)
;; projectile
(use-package projectile
:config
(projectile-mode +1)
(define-key projectile-mode-map (kbd "C-c p") 'projectile-command-map)
(setq projectile-indexing-method 'hybrid))
;; hydra
(use-package hydra)
;; avy
(use-package avy)
;; helm
(use-package helm
:config
(helm-mode)
(global-set-key [remap find-file] #'helm-find-files)
(global-set-key [remap execute-extended-command] #'helm-M-x)
(global-set-key [remap switch-to-buffer] #'helm-mini))
(use-package helm-xref
:after helm)
;; multiple-cursors
(use-package multiple-cursors
:bind (("C-c f" . mc/mark-next-like-this)
("C-c b" . mc/mark-previous-like-this)))
;; texfrag
(use-package texfrag
:ensure t
:config
(add-hook 'prog-mode-hook (lambda () (texfrag-mode))))
;; which-key
(use-package which-key
:config
(which-key-mode))
(add-hook 'prog-mode-hook
(lambda ()
(electric-pair-mode)
(display-line-numbers-mode)
(setq display-line-numbers 'relative)
(column-number-mode)))
;; magit
(use-package magit
:ensure)
;; C-a goes to the first non-whitespace character
(defun my/move-beginning-of-line ()
(interactive)
(if (<= (current-column) (current-indentation))
(move-beginning-of-line nil)
(back-to-indentation)))
(global-set-key (kbd "C-a") 'my/move-beginning-of-line)
;; lsp,flycheck and company
(use-package lsp-mode
:ensure t
:init
(add-hook 'c-mode-hook 'lsp-deferred))
(use-package lsp-ui
:ensure t
:after lsp-mode
:custom
(setq lsp-ui-sideline-show-diagnostics t
lsp-ui-sideline-show-hover t
lsp-ui-sideline-show-code-actions t
lsp-ui-sideline-update-mode 'point
lsp-ui-sideline-delay 0.1
lsp-ui-peek-enable t
lsp-ui-doc-show-with-cursor t)
:custom
(define-key lsp-ui-mode-map [remap xref-find-definitions] #'lsp-ui-peek-find-definitions)
(define-key lsp-ui-mode-map [remap xref-find-references] #'lsp-ui-peek-find-references))
(use-package flycheck
:ensure
:config
(global-flycheck-mode +1))
(use-package company
:ensure
:init
(add-hook 'prog-mode-hook #'company-mode)
:custom
(company-idle-delay 0.0)
(company-minimum-prefix-length 1))
;; this is the most annoying thing in the worlddddd
(global-unset-key (kbd "C-z"))
(provide 'setup-general)

159
Emacs/custom/setup-org.el Normal file
View File

@ -0,0 +1,159 @@
(use-package org-bullets
:config
(add-hook 'org-mode-hook (lambda () (org-bullets-mode 1)))
:custom
(org-bullets-bullet-list '("" "" "" "" "" "" "")))
(setq org-hide-emphasis-markers t
org-pretty-entities t
org-agenda-tags-column 0
org-auto-align-tags nil
org-tags-column 0
org-catch-invisible-edits 'show-and-error
org-special-ctrl-a/e t
org-insert-heading-respect-content t
org-ellipsis "")
(add-hook 'org-mode-hook (lambda ()
(variable-pitch-mode)
(visual-line-mode)
(org-indent-mode)))
(defun update-org-last-modified ()
"Update the #+LAST_MODIFIED everytime we save."
(when (derived-mode-p 'org-mode)
(save-excursion
(goto-char (point-min))
(when (re-search-forward "^#\\+LAST_MODIFIED:" nil t)
(delete-region (point) (line-end-position))
(insert (format-time-string " %Y-%m-%dT%H:%M:%S%z" (current-time) t))))))
(add-hook 'before-save-hook 'update-org-last-modified)
(font-lock-add-keywords 'org-mode
'(("^ *\\([-]\\) "
(0 (prog1 () (compose-region (match-beginning 1) (match-end 1) ""))))))
(custom-theme-set-faces
'user
'(org-block ((t (:inherit fixed-pitch))))
'(org-code ((t (:inherit (shadow fixed-pitch)))))
'(org-document-info ((t (:foreground "dark orange"))))
'(org-document-info-keyword ((t (:inherit (shadow fixed-pitch)))))
'(org-indent ((t (:inherit (org-hide fixed-pitch)))))
'(org-link ((t (:foreground "royal blue" :underline t))))
'(org-meta-line ((t (:inherit (font-lock-comment-face fixed-pitch)))))
'(org-property-value ((t (:inherit fixed-pitch))) t)
'(org-special-keyword ((t (:inherit (font-lock-comment-face fixed-pitch)))))
'(org-table ((t (:inherit fixed-pitch :foreground "#83a598"))))
'(org-tag ((t (:inherit (shadow fixed-pitch) :weight bold :height 0.8))))
'(org-verbatim ((t (:inherit (shadow fixed-pitch))))))
(use-package org-roam
:ensure t
:custom
(org-roam-directory "~/RoamNotes")
:bind (("C-c n l" . org-roam-buffer-toggle)
("C-c n f" . org-roam-node-find)
("C-c n i" . org-roam-node-insert))
:config
(org-roam-setup))
(use-package org-drill
:ensure t)
;; setup agenda
(setq org-directory "~/Org"
org-agenda-files '("Tasks.org" "Birthdays.org" "Habits.org")
org-agenda-start-with-log-mode t
org-log-done 'time
org-log-into-drawer t)
(setq org-todo-keywords
'((sequence "TODO(t)" "NEXT(n)" "|" "DONE(d!)")
(sequence "BACKLOG(b)" "PLANNED(p)" "READY(r)" "ACTIVE(a)" "REVIEW(v)" "WAIT(w@/!)" "HOLD(h)" "|" "COMPLETED(c)")))
(setq org-agenda-custom-commands
'(("d" "Dashboard"
((agenda "" ((org-deadline-warning-days 7)))
(todo "NEXT"
((org-agenda-overriding-header "Next Tasks")))
(tags-todo "agenda/ACTIVE" ((org-agenda-overriding-header "Active Projects")))))
("n" "Next Tasks"
((todo "NEXT"
((org-agenda-overriding-header "Next Tasks")))))
;; Low-effort next actions
("e" tags-todo "+TODO=\"NEXT\"+Effort<15&+Effort>0"
((org-agenda-overriding-header "Low Effort Tasks")
(org-agenda-max-todos 20)
(org-agenda-files org-agenda-files)))
("w" "Workflow Status"
((todo "WAIT"
((org-agenda-overriding-header "Waiting on External")
(org-agenda-files org-agenda-files)))
(todo "REVIEW"
((org-agenda-overriding-header "In Review")
(org-agenda-files org-agenda-files)))
(todo "PLAN"
((org-agenda-overriding-header "In Planning")
(org-agenda-todo-list-sublevels nil)
(org-agenda-files org-agenda-files)))
(todo "BACKLOG"
((org-agenda-overriding-header "Project Backlog")
(org-agenda-todo-list-sublevels nil)
(org-agenda-files org-agenda-files)))
(todo "READY"
((org-agenda-overriding-header "Ready for Work")
(org-agenda-files org-agenda-files)))
(todo "ACTIVE"
((org-agenda-overriding-header "Active Projects")
(org-agenda-files org-agenda-files)))
(todo "COMPLETED"
((org-agenda-overriding-header "Completed Projects")
(org-agenda-files org-agenda-files)))
(todo "CANC"
((org-agenda-overriding-header "Cancelled Projects")
(org-agenda-files org-agenda-files)))))))
(setq org-capture-templates
`(("t" "Tasks / Projects")
("tt" "Task" entry (file+olp "~/Org/Tasks.org" "Inbox")
"* TODO %?\n %U\n %i" :empty-lines 1)
("ts" "Clocked Entry Subtask" entry (clock)
"* TODO %?\n %U\n %i" :empty-lines 1)
("j" "Journal Entries")
("jj" "Journal" entry
(file+olp+datetree "~/Org/Journal.org")
"\n* %<%I:%M %p> - Journal :journal:\n\n%?\n\n"
:clock-in :clock-resume
:empty-lines 1)
("jm" "Meeting" entry
(file+olp+datetree "~/Org/Tasks.org")
"* %<%I:%M %p> - Meeting :meetings:\n\n%?\n\n"
:clock-in :clock-resume
:empty-lines 1)))
(define-key global-map (kbd "C-c j")
(lambda () (interactive) (org-capture)))
;; org-habit
(require 'org-habit)
(add-to-list 'org-modules 'org-habit)
(setq org-habit-graph-column 60)
;; org-babel
(org-babel-do-load-languages
'org-babel-load-languages
'(
(C . t)
(scheme . t)))
(provide 'setup-org)

View File

@ -0,0 +1,5 @@
(use-package emmet-mode
:ensure t
:hook (sgml-mode . emmet-mode))
(provide 'setup-web)

3
Readme.org Normal file
View File

@ -0,0 +1,3 @@
* DotFiles
I showed you my dotfiles please respond :sob: