mirror of
https://github.com/Swarsel/.dotfiles.git
synced 2025-12-06 09:07:21 +01:00
chore: improve formatting
This commit is contained in:
parent
29533d6be6
commit
15e2355406
6 changed files with 466 additions and 39 deletions
File diff suppressed because it is too large
Load diff
|
|
@ -236,6 +236,48 @@ create a new one."
|
|||
(add-hook 'minibuffer-setup-hook #'swarsel/minibuffer-setup-hook)
|
||||
(add-hook 'minibuffer-exit-hook #'swarsel/minibuffer-exit-hook)
|
||||
|
||||
(defun swarsel/org-colorize-outline (parents raw)
|
||||
(let* ((palette ["#58B6ED" "#8BD49C" "#33CED8" "#4B9CCC"
|
||||
"yellow" "orange" "salmon" "red"])
|
||||
(n (length parents))
|
||||
(colored-parents
|
||||
(cl-mapcar
|
||||
(lambda (p i)
|
||||
(propertize p 'face `(:foreground ,(aref palette (mod i (length palette))) :weight bold)))
|
||||
parents
|
||||
(number-sequence 0 (1- n)))))
|
||||
(concat
|
||||
(when parents
|
||||
(string-join colored-parents "/"))
|
||||
(when parents "/")
|
||||
(propertize raw 'face `(:foreground ,(aref palette (mod n (length palette)))
|
||||
:weight bold)))))
|
||||
|
||||
(defun swarsel/org-insert-link-to-heading ()
|
||||
(interactive)
|
||||
(let ((candidates '()))
|
||||
(org-map-entries
|
||||
(lambda ()
|
||||
(let* ((raw (org-get-heading t t t t))
|
||||
(parents (org-get-outline-path t))
|
||||
(m (copy-marker (point)))
|
||||
(colored (swarsel/org-colorize-outline parents raw)))
|
||||
(push (cons colored m) candidates))))
|
||||
|
||||
(let* ((choice (completing-read "Heading: " (mapcar #'car candidates)))
|
||||
(marker (cdr (assoc choice candidates)))
|
||||
id raw-heading)
|
||||
(unless marker
|
||||
(user-error "No marker for heading??"))
|
||||
|
||||
(save-excursion
|
||||
(goto-char marker)
|
||||
(setq id (org-id-get-create))
|
||||
(setq raw-heading (org-get-heading t t t t)))
|
||||
|
||||
(insert (org-link-make-string (format "id:%s" id)
|
||||
raw-heading)))))
|
||||
|
||||
;; Make ESC quit prompts
|
||||
(global-set-key (kbd "<escape>") 'keyboard-escape-quit)
|
||||
|
||||
|
|
@ -334,6 +376,7 @@ create a new one."
|
|||
"<DUMMY-m>" 'swarsel/last-buffer
|
||||
"M-\\" 'indent-region
|
||||
"M-r" 'swarsel/consult-magit-repos
|
||||
"M-i" 'swarsel/org-insert-link-to-heading
|
||||
"<Paste>" 'yank
|
||||
"<Cut>" 'kill-region
|
||||
"<Copy>" 'kill-ring-save
|
||||
|
|
@ -348,12 +391,12 @@ create a new one."
|
|||
;; set Nextcloud directory for journals etc.
|
||||
(setq
|
||||
swarsel-emacs-directory "~/.emacs.d"
|
||||
swarsel-dotfiles-directory "~/.dotfiles"
|
||||
swarsel-dotfiles-directory (getenv "FLAKE")
|
||||
swarsel-swarsel-org-filepath (expand-file-name "SwarselSystems.org" swarsel-dotfiles-directory)
|
||||
swarsel-tasks-org-file "Tasks.org"
|
||||
swarsel-archive-org-file "Archive.org"
|
||||
swarsel-work-projects-directory "~/Documents/Work"
|
||||
swarsel-private-projects-directory "~/Documents/Private"
|
||||
swarsel-work-projects-directory (getenv "DOCUMENT_DIR_WORK")
|
||||
swarsel-private-projects-directory (getenv "DOCUMENT_DIR_PRIV")
|
||||
)
|
||||
|
||||
;; Change the user-emacs-directory to keep unwanted things out of ~/.emacs.d
|
||||
|
|
|
|||
|
|
@ -109,12 +109,14 @@ in
|
|||
secrets = {
|
||||
fever-pw = { path = "${homeDir}/.emacs.d/.fever"; };
|
||||
emacs-radicale-pw = { };
|
||||
github-forge-token = { };
|
||||
};
|
||||
templates = {
|
||||
authinfo = {
|
||||
path = "${homeDir}/.emacs.d/.authinfo";
|
||||
content = ''
|
||||
machine ${globals.services.radicale.domain} login ${radicaleUser} password ${config.sops.placeholder.emacs-radicale-pw}
|
||||
machine api.github.com login ${mainUser}^forge password ${config.sops.placeholder.github-forge-token}
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@ in
|
|||
github-nixpkgs-review-token = { owner = mainUser; };
|
||||
}) // (lib.optionalAttrs modules.emacs {
|
||||
emacs-radicale-pw = { owner = mainUser; };
|
||||
github-forge-token = { owner = mainUser; };
|
||||
}) // (lib.optionalAttrs modules.optional.work {
|
||||
harica-root-ca = { sopsFile = certsSopsFile; path = "${homeDir}/.aws/certs/harica-root.pem"; owner = mainUser; };
|
||||
}) // (lib.optionalAttrs modules.anki {
|
||||
|
|
|
|||
|
|
@ -17,6 +17,21 @@
|
|||
};
|
||||
deadnix.enable = true;
|
||||
statix.enable = true;
|
||||
shfmt = {
|
||||
enable = true;
|
||||
indent_size = 4;
|
||||
simplify = true;
|
||||
# needed to replicate what my Emacs shfmt does
|
||||
# there is no builtin option for space-redirects
|
||||
package = pkgs.symlinkJoin {
|
||||
name = "shfmt";
|
||||
buildInputs = [ pkgs.makeWrapper ];
|
||||
paths = [ pkgs.shfmt ];
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/shfmt -sr
|
||||
'';
|
||||
};
|
||||
};
|
||||
shellcheck.enable = true;
|
||||
};
|
||||
settings.formatter.shellcheck.options = [
|
||||
|
|
|
|||
|
|
@ -23,8 +23,9 @@ croc-password: ENC[AES256_GCM,data:uz7vI2rrPi1uTKEks4IPnWOt/R6ydlp/cQ==,iv:ZE01X
|
|||
#ENC[AES256_GCM,data:qsBNKxd3Ng==,iv:1fNMDJt7vgKFSdghYBZsuDoZ1sWvzj1Zu8NmkjX6Zh8=,tag:0D7EsgN8B1z7/y4iZS/PtQ==,type:comment]
|
||||
#ENC[AES256_GCM,data:G6Xk3eWNCSbuxzy91Yx/5ZGR2OgJHhJMnRWXwxJ96DW5K+igQjIimNBW90cXqs5iztjC3q4F/YUK2IStnqCgZQi1Gye2g8uHj+1Xa0bt5LKNdjWwwfcONxcKTq37R55sgMbIwdPqi2CBZAw/fdsXfKeDNz3V+7fKzkzX8EckUGj2v27TJoR0/fHjLA==,iv:la0FjH6m9ersNIEqcXmp2kpioL2kubzU2up9wJujDTQ=,tag:GvFW4wzi4PD9HdryfNQrwQ==,type:comment]
|
||||
github-api-token: ENC[AES256_GCM,data:jUruDrTBfuqYuNXOxEtFsFkeXW6UqPvFiVNIXHVeTBaDkELSmJnz3u80rdfuVhxmRlFg8/ApiiBCB5X5sd+6Zh0JgH7mbaxVe+lta1m1wiCm1fWRBkDOuEoHt7p4pVbec/LUJOyvhWzcTcWTtW1GT96DFxKHBt8v,iv:WAWIck/gqZD6Oq/2LxS7YCD1F1FfCq+ZK1ls6sPdJQk=,tag:VTfKIICDvAsVN+7Fx4o1XA==,type:str]
|
||||
#ENC[AES256_GCM,data:vQF1i7rtfz/MBElKIN9j8N0=,iv:jf2SZpulx85yx2sHcnA3iwkiXJcHq4x1fdBUcSRuiK0=,tag:WpUNpH6/8jDvQA8zRGrdKg==,type:comment]
|
||||
#ENC[AES256_GCM,data:zoXRtodA,iv:sMz6Fu4fcWC3QqLsJlxRiEV1DcYjdvemP9cLT00SOMs=,tag:36kstVjfCHVIyw6kMTRxfA==,type:comment]
|
||||
emacs-radicale-pw: ENC[AES256_GCM,data:BIORG0geX8s1WOA=,iv:SeoVn8xHlqQGxZzHrm5I5LITMoutRnz3OygswDc96ew=,tag:C3S4a8IEvCjHgAyRrCaaRw==,type:str]
|
||||
github-forge-token: ENC[AES256_GCM,data:i2c9n5+0Ij7lag5tepbrY/vOAvRQpaY+HiuaT1WzaAOJn+xZGIOUSw==,iv:OHZCJXbNpljnpH0IObVEWc7VSB2AB0OlSCDQJFzaMl4=,tag:ExyHhfBMXiPcmDcBGRy5Yg==,type:str]
|
||||
#ENC[AES256_GCM,data:qsBNKxd3Ng==,iv:1fNMDJt7vgKFSdghYBZsuDoZ1sWvzj1Zu8NmkjX6Zh8=,tag:0D7EsgN8B1z7/y4iZS/PtQ==,type:comment]
|
||||
github-nixpkgs-review-token: ENC[AES256_GCM,data:/4ssZAEwEc9fZeR69GCvLMm4eRv4uabyDbGDGqfRUllO5DVSbZxO+A==,iv:mcARvAyPAB9pyCGFy2A/6qeZbSepHyWVNyusaQ5ze3I=,tag:o7AP6g8XHkPUaCnXK3CFig==,type:str]
|
||||
#ENC[AES256_GCM,data:PI5MX6PgK1y0lqyoYA0=,iv:25UAvFaANHFD04GRafGlCzOc5h+15YPtSES2z2tmpXw=,tag:+XLwQ01+AtGWjtsSQhQ1AQ==,type:comment]
|
||||
|
|
@ -122,8 +123,8 @@ sops:
|
|||
ZmhYMGhpcndEMlNFMWVPWmFUQitmRkEKQoi4hri+lEDo7FWiiYlbw11MK+PRnIbD
|
||||
YYGmu44YDEMFZWAfszAaT6dYF0tJpyEuH0bOgcDEg7GlQf+BIIogtg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-11-25T09:18:55Z"
|
||||
mac: ENC[AES256_GCM,data:vUjq35hovsqOZoTuRZuPYLL6bCz96yYQr0+hjReXfc240+dZkZfpo/EH2U7kmKUXcfvXMR8ThextHNDcfBNo70EqyOdGZTrzUFIzdZw2rbYb8bVt1stSj8AAilIN5xgf+aKOYAuKxQoZ5zbtW9vCzrGI71PSp6gX7zNnEZI7QTs=,iv:+2p3A1hEDftpqMwPiQNXxVonZ8Xh+CaD9A7vcRmlJcY=,tag:4Mv7vMwW8buziYRJylLw0Q==,type:str]
|
||||
lastmodified: "2025-11-25T21:30:24Z"
|
||||
mac: ENC[AES256_GCM,data:kdyRIJYzWvHJp6Zu/1+JySrcfhjZpD5JQPIAuyHM5mxuUKBdH3dQGhrcJ3I7MOJBUrF+Bby4zakA57L7NBzwshNXsCFv9kCFolvE6m/Vhpv0SW2mzE8SguwxiU1xFC0kx2849YN539plhOEXK2be4TBxgTaFlimVtD4TtoWqt8c=,iv:DHKISvoLH4PFwqrd/iYULl+dFG7DYC57WuPHB5OyrAQ=,tag:TzTu8PWUBBAIBUmg6/fK+A==,type:str]
|
||||
pgp:
|
||||
- created_at: "2025-11-25T18:32:48Z"
|
||||
enc: |-
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue