emacs.d/bundle/bundle--package.el

407 lines
11 KiB
EmacsLisp
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

;; PACKAGE
(require 'package)
(setq package-archives '(("melpa" . "https://melpa.org/packages/")
("org" . "https://orgmode.org/elpa/")
("elpa" . "https://elpa.gnu.org/packages/")))
(package-initialize)
(unless package-archive-contents
(package-refresh-contents))
(unless (package-installed-p 'use-package)
(package-install 'use-package))
;; USE-PACKAGE
(require 'use-package)
(setq use-package-always-ensure t)
(use-package company
:init
(global-company-mode))
(use-package counsel
:bind (("C-M-j" . 'counsel-switch-buffer)
:map minibuffer-local-map
("C-r" . 'counsel-minibuffer-history))
:custom
(counsel-linux-app-format-function #'counsel-linux-app-format-function-name-only)
:config
(counsel-mode 1))
(use-package magit)
(use-package all-the-icons
:if (display-graphic-p)
:commands all-the-icons-install-fonts
:init
(unless (find-font (font-spec :name "all-the-icons"))
(all-the-icons-install-fonts t)))
(use-package all-the-icons-dired
:if (display-graphic-p)
:hook (dired-mode . all-the-icons-dired-mode))
(use-package ivy
:bind (("C-s" . swiper))
:init
(ivy-mode 1))
(use-package olivetti
:custom (olivetti-body-width 89))
(use-package shrface
:config
(shrface-basic)
(shrface-trial)
(shrface-default-keybindings)
(setq shrface-href-versatile t
shrface-toggle-bullets t
shr-width nil))
(use-package eww
:init
(add-hook 'eww-after-render-hook #'shrface-mode)
:config
(require 'shrface)
(setq shr-use-colors nil
shr-use-fonts nil
shr-cookie-policy nil
browse-url-browser-function (quote eww-browse-url)))
(use-package nov
:hook (nov-mode . olivetti-mode)
:init
(add-hook 'nov-mode-hook #'shrface-mode)
:config
(require 'shrface)
(setq nov-shr-rendering-functions '((img . nov-render-img) (title . nov-render-title)))
(setq nov-shr-rendering-functions (append nov-shr-rendering-functions shr-external-rendering-functions))
(setq nov-text-width nil
nov-variable-pitch nil))
(use-package projectile
:init
(projectile-mode +1)
:config
(setq projectile-completion-system (quote ivy)))
(define-key projectile-mode-map (kbd "s-p") 'projectile-command-map)
(define-key projectile-mode-map (kbd "C-c p") 'projectile-command-map)
;; (use-package elpy
;; :config (setq elpy-modules
;; '(elpy-module-autodoc
;; elpy-module-company
;; elpy-module-eldoc
;; elpy-module-pyvenv
;; elpy-module-yasnippet)
;; elpy-test-pytest-runner-command '("pytest")))
;; (use-package pyvenv
;; :init (pyvenv-mode 1))
(use-package eglot
:init
(add-hook 'python-mode-hook 'eglot-ensure))
(use-package go-mode
:hook (go . eglot-ensure)
:init
(add-hook 'before-save-hook #'gofmt-before-save))
(use-package rust-mode
:hook (rust . eglot-ensure))
(use-package typescript-mode
:hook (typescript . eglot-ensure))
(use-package ob-go)
(use-package ob-http)
(use-package ob-rust)
(use-package ob-typescript)
(use-package web-mode
;; :hook html-mode
:mode "\\.html?\\'"
:custom
(web-mode-markup-indent-offset 2)
(web-mode-css-indent-offset 2)
(web-mode-code-indent-offset 2)
(web-mode-enable-auto-pairing nil)
(web-mode-enable-auto-closing t)
(web-mode-enable-current-element-highlight t)
(web-mode-enable-current-column-highlight t))
(use-package slime
:custom
(slime-autodoc-use-multiline-p 1)
:config
(setq inferior-lisp-program (executable-find "sbcl"))
(slime-setup '(slime-autodoc
slime-fancy
slime-asdf
slime-indentation
slime-sbcl-exts
slime-company)))
(use-package org
:init
(org-babel-lob-ingest "~/.emacs.d/library-of-babel.org")
:custom
(org-adapt-indentation nil)
(org-agenda-prefix-format
'((agenda . " %i %-12:c%?-12t%-6e% s")
(todo . " %i %-12:c %-6e")
(tags . " %i %-12:c")
(search . " %i %-12:c")))
(org-agenda-dim-blocked-tasks nil)
(org-agenda-inhibit-startup nil)
(org-agenda-span 14)
(org-agenda-start-on-weekday nil)
(org-agenda-include-diary t)
(org-capture-templates
'(("t" "Task"
entry (file+headline "tasks.org" "Tasks") "* OPEN %?\n%u\n%a")
("j" "Journal"
entry (file+headline "journal.org" "Journal") "* %<%Y-%m-%d %H:%M:%S %p %Z>\n%?")
("a" "Appointment"
entry (file+headline "appointments.org" "Appointments") "* %?\n%T\n")
("l" "Logbook"
entry (file+olp+datetree "logbook.org") "** %U - %^{Activity}  :LOG:")))
(org-clock-out-remove-zero-time-clocks t)
(org-clock-persist t)
(org-clock-rounding-minutes 30)
(org-confirm-babel-evaluate nil)
(org-duration-format (quote h:mm))
(org-export-with-sub-superscripts nil)
(org-export-dispatch-use-expert-ui nil)
(org-export-backends
'((ascii beamer html icalendar latex md odt)))
(org-global-properties
'(("EFFORT_ALL" . "1:00 2:00 3:00 5:00 8:00 13:00")))
(org-html-doctype "html5")
(org-html-html5-fancy t)
(org-html-htmlize-output-type nil)
(org-latex-pdf-process
'(("latexmk -xelatex -shell-escape -quiet -f %f")))
(org-latex-compiler "xelatex")
(org-latex-listings t)
(org-log-done (quote time))
(org-refile-targets '((nil :maxlevel . 3)))
(org-startup-folded t)
(org-startup-truncated nil)
(org-src-fontify-natively t)
(org-src-tab-acts-natively t)
(org-src-window-setup 'other-window)
(org-src-lang-modes
'(("bash" . sh)
("elisp" . emacs-lisp)
("beamer" . latex)
("calc" . fundamental)
("dot" . fundamental)
("screen" . shell-script)
("shell" . sh)
("C" . c)
("sqlite" . sql)
("scheme" . racket)
("plantuml" . plantuml)))
(org-time-stamp-rounding-minutes '(30 30))
(org-todo-keywords
'((sequence "OPEN" "TODO" "DOING" "|" "DONE")))
(org-use-property-inheritance nil)
:config
(org-babel-do-load-languages
'org-babel-load-languages
'((emacs-lisp . t)
(js . t)
(lisp . t)
(python . t)
(sqlite . t)
(shell . t)
(plantuml . t)
(http . t))))
(use-package helpful
:commands (helpful-callable helpful-variable helpful-command helpful-key)
:custom
(counsel-describe-function-function #'helpful-callable)
(counsel-describe-variable-function #'helpful-variable)
:bind
([remap describe-function] . counsel-describe-function)
([remap describe-command] . helpful-command)
([remap describe-variable] . counsel-describe-variable)
([remap describe-key] . helpful-key))
(use-package ox-reveal)
(use-package powershell)
;; (use-package geiser
;; :config
;; (setq geiser-active-implementations '(racket)))
;; (use-package geiser-racket)
(use-package racket-mode)
(use-package doom-modeline
:init (doom-modeline-mode 1))
(use-package doom-themes
:init (load-theme 'doom-nord t))
(use-package rainbow-delimiters
:hook (prog-mode . rainbow-delimiters-mode))
(use-package flyspell
:config
;;(add-hook 'text-mode-hook #'flyspell-mode)
;;(add-hook 'prog-mode-hook #'flyspell-prog-mode)
(setq ispell-dictionary "en_US")
:hook (text-mode . flyspell-mode))
(use-package org-tree-slide
:custom
(org-image-actual-width nil))
(use-package ace-window)
(use-package markdown-mode)
(use-package yaml-mode)
(use-package webpaste)
(use-package slime-company
:after (slime company)
:custom (slime-company-after-completion 'slime-company-just-one-space))
(use-package erc
:custom
(erc-track-shorten-start 8)
(erc-kill-buffer-on-part t)
(erc-auto-query 'bury)
(erc-hide-list '("JOIN" "PART" "QUIT"))
(erc-network-hide-list '(("irc.libera.chat" "JOIN" "PART" "QUIT")))
(erc-channel-hide-list '(("#emacs" "JOIN" "PART" "QUIT")))
(erc-rename-buffers t)
(erc-autojoin-channels-alist '(("libera.chat" "#emacs")))
(erc-interpret-mirc-color t)
(erc-modules '(autojoin
button
completion
fill
irccontrols
list
match
menu
move-to-prompt
netsplit
networks
noncommands
notifications
readonly
ring
stamp
track
truncate)))
(use-package erc-image
:after erc
:custom (erc-image-inline-rescale 300)
:config (add-to-list 'erc-modules 'image))
(use-package emojify
:hook (erc-mode . emojify-mode)
:commands emojify-mode)
(use-package org-web-tools
:custom (org-web-tools-pandoc-sleep-time 0.4))
(use-package webjump
:bind ("C-c j" . webjump)
:custom
(webjump-sites
(append '(("Wikipedia_de" . [simple-query
"de.wikipedia.org"
"https://de.wikipedia.org/wiki/" ""]))
webjump-sample-sites)))
(use-package plantuml-mode
:mode "\\.puml?\\'")
(use-package unicode-fonts
:config
(unicode-fonts-setup))
(use-package pyvenv)
(add-to-list 'auto-mode-alist '("\\.webmanifest\\'" . js-mode))
(use-package python
:mode ("\\.py\\'" . python-mode)
("\\.wsgi$" . python-mode)
:init
(setq-default indent-tabs-mode nil)
:custom
(fill-column 79)
(python-indent-offset 4))
(use-package csv-mode)
(use-package elfeed
:bind ("C-x w" . elfeed)
:config
(setq elfeed-feeds
'("http://nullprogram.com/feed/"
"http://planet.sbcl.org/rss20.xml"
"https://planet.emacslife.com/atom.xml"
"https://sachachua.com/blog/category/emacs-news/feed"
"https://drewdevault.com/blog/index.xml"
"https://emacsredux.com/atom.xml"
"https://endlessparentheses.com/atom.xml"
"https://norvig.com/rss-feed.xml"
"https://blog.mozilla.org/en/feed/"
"https://blog.codinghorror.com/rss/"
"https://blog.chromium.org/feeds/posts/default"
"https://blog.rust-lang.org/"
"https://hacks.mozilla.org/feed/"
"https://www.interaction-design.org/rss/site_news.xml"
"https://www.nngroup.com/feed/rss/"
"https://uxpamagazine.org/?feed=full"
"https://feedpress.me/UXmatters"
"https://uxmovement.com/feed"
"https://www.uxbeginner.com/feed/"
"https://jeffgothelf.com/feed/"
"https://irreal.org/blog/?feed=rss2"
"https://emacs.stackexchange.com/feeds"
"https://www.planetpython.org/rss20.xml"
"https://www.colinmclear.net/posts/index.xml"
"https://www.phoronix.com/rss.php")))
(use-package smartparens)
(use-package org-roam
:init
(setq org-roam-v2-ack t)
:bind (("C-c r l" . org-roam-buffer-toggle)
("C-c r f" . org-roam-node-find)
("C-c r g" . org-roam-graph)
("C-c r i" . org-roam-node-insert)
("C-c r c" . org-roam-capture)
;; Dailies
("C-c r j" . org-roam-dailies-capture-today)
("C-M-i" . completion-at-point))
:custom
(org-roam-completion-everywhere t)
(org-roam-capture-templates
'(("d" "default" plain
"%?"
:if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n")
:unnarrowed t)))
:config
(org-roam-db-autosync-mode))
(use-package simple-httpd)