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

326 lines
9.2 KiB
EmacsLisp

;; 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)
(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 t)
(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-babel-shell-names (quote
("sh" "bash" "csh" "ash" "dash" "ksh" "mksh" "posh")))
(org-capture-templates (quote
(("t" "Task" entry (file+headline "tasks.org" "Tasks") "* OPEN %?\n\s %u\n\s %a")
("j" "Journal" entry (file+headline "journal.org" "Journal") "* %<%Y-%m-%d %H:%M:%S %p %Z>\n\s %?")
("a" "Appointment" entry (file+headline "appointments.org" "Appointments") "* %?\n\s %T\n"))))
(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 (quote
(ascii beamer html icalendar latex md odt)))
(org-global-properties (quote
(("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 (quote
("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 (quote
(("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 (quote
((sequence "OPEN" "TODO" "DOING" "|" "DONE"))))
(org-use-property-inheritance nil)
:config
(org-babel-do-load-languages
'org-babel-load-languages (quote
((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)
)
(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" "#commonlisp")))
(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))