(require 'package) (setq package-archives '(("melpa" . "https://melpa.org/packages/") ("melpa-stable" . "https://stable.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)) (require 'use-package) (setq use-package-always-ensure t) (menu-bar-mode -1) (scroll-bar-mode -1) (tool-bar-mode -1) (tooltip-mode -1) ;; disable tooltips (add-hook 'prog-mode-hook #'display-line-numbers-mode) (setq display-line-numbers-type 'relative) (setq inhibit-startup-message t) (setq visible-bell t) (set-fringe-mode 10) (use-package doom-themes :config (load-theme 'doom-solarized-dark t)) (use-package doom-modeline :ensure t :init (doom-modeline-mode 1)) (column-number-mode) (use-package olivetti :bind ("C-c f" . olivetti-mode) :init (setq-default olivetti-body-width 100) (add-hook 'org-mode-hook #'olivetti-mode) (add-hook 'text-mode-hook #'olivetti-mode)) (use-package ivy :bind (("C-s" . swiper) :map ivy-minibuffer-map ("TAB" . ivy-alt-done)) :config (ivy-mode 1)) (use-package ivy-rich :init (ivy-rich-mode 1)) (use-package counsel :bind (("M-x" . counsel-M-x) ("C-x b" . counsel-ibuffer) ("C-x C-f" . counsel-find-file)) :config (setq ivy-initial-inputs-alist nil)) ;; Don't start searches with ^ (use-package which-key :init (which-key-mode) :config (setq which-key-idle-delay 0.3)) (custom-set-faces '(org-block-begin-line ((t (:inherit default :background nil)))) '(org-block-end-line ((t (:inherit default :background nil))))) (setq org-startup-indented t) (use-package projectile :config (projectile-mode) :bind-keymap ("C-c p" . projectile-command-map)) (use-package counsel-projectile :config (counsel-projectile-mode)) (use-package direnv :config (direnv-mode)) (use-package magit :commands (magit-status magit-get-current-branch) :custom (magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1)) (use-package lsp-mode :init (setq lsp-keymap-prefix "C-c l") :config (lsp-enable-which-key-integration t) :commands lsp) (use-package company :after lsp-mode :hook (lsp-mode . company-mode) :bind (:map company-active-map ("" . company-complete-selection)) (:map lsp-mode-map ("" . company-indent-or-complete-common)) :custom (company-minimum-prefix-lenght 1) (company-idle-delay 0.0)) (load "~/.config/emacs/42header.el")