103 lines
2.1 KiB
Plaintext
103 lines
2.1 KiB
Plaintext
(setq custom-file "~/.emacs.custom.el")
|
|
|
|
(require 'package)
|
|
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
|
|
(require 'use-package)
|
|
(setq
|
|
use-package-always-ensure t
|
|
use-package-verbose t)
|
|
|
|
(setq auto-save-default nil)
|
|
(setq make-backup-files nil)
|
|
(setq create-lockfiles nil)
|
|
|
|
(setq display-line-numbers-type 'relative)
|
|
(global-display-line-numbers-mode t)
|
|
|
|
(setq ring-bell-function 'ignore)
|
|
|
|
(set-face-attribute 'default nil :font "IosevkaNF-18")
|
|
|
|
(tool-bar-mode -1)
|
|
(menu-bar-mode -1)
|
|
(scroll-bar-mode -1)
|
|
|
|
(setq-default dired-dwim-target t)
|
|
(windmove-default-keybindings)
|
|
|
|
(setq split-height-threshold 0)
|
|
(setq split-width-threshold nil)
|
|
|
|
(setq-default show-trailing-whitespace t)
|
|
(setq-default tab-width 4)
|
|
(setq-default indent-tabs-mode nil)
|
|
|
|
(add-hook 'c-mode-hook
|
|
(lambda ()
|
|
(setq c-basic-offset 2)
|
|
(setq tab-width 2)
|
|
(setq indent-tabs-mode nil)))
|
|
|
|
(ido-mode 1)
|
|
(ido-everywhere 1)
|
|
(use-package smex
|
|
:init
|
|
(smex-initialize))
|
|
|
|
(use-package kaolin-themes
|
|
:config
|
|
(load-theme 'kaolin-bubblegum t))
|
|
|
|
(use-package lsp-mode
|
|
:config
|
|
(setq lsp-headerline-breadcrumb-enable nil))
|
|
(use-package lsp-ui)
|
|
|
|
(use-package company
|
|
:init
|
|
(global-company-mode)
|
|
:config
|
|
(setq company-minimum-prefix-length 1
|
|
company-idle-delay 0.0)
|
|
(global-set-key (kbd "M-<tab>") 'company-complete))
|
|
|
|
(use-package evil
|
|
:init
|
|
(setq evil-want-C-u-scroll t)
|
|
(setq evil-want-keybinding nil)
|
|
(evil-mode))
|
|
|
|
(use-package evil-collection
|
|
:after evil
|
|
:init
|
|
(evil-collection-init))
|
|
|
|
(with-eval-after-load 'evil-maps
|
|
(define-key evil-motion-state-map (kbd "SPC") nil))
|
|
|
|
(with-eval-after-load 'company
|
|
(define-key company-active-map (kbd "C-y") #'company-complete-selection))
|
|
|
|
(use-package general
|
|
:init
|
|
(general-evil-setup)
|
|
(general-override-mode))
|
|
|
|
(general-create-definer my-leader-def
|
|
:states '(normal visual motion emacs)
|
|
:keymaps 'override
|
|
:prefix "SPC"
|
|
:global-prefix "M-SPC")
|
|
|
|
(my-leader-def
|
|
"f" 'find-file
|
|
"b" 'switch-to-buffer
|
|
"x" 'smex
|
|
"c" 'compile
|
|
"j" 'dired-jump)
|
|
|
|
(define-key minibuffer-local-map [escape] 'keyboard-escape-quit)
|
|
|
|
(use-package haskell-mode)
|
|
(use-package go-mode)
|