summary refs log tree commit diff
path: root/init.el
diff options
context:
space:
mode:
authorPaweł Dybiec <pawel@dybiec.info>2023-01-15 17:42:03 +0000
committerPaweł Dybiec <pawel@dybiec.info>2023-01-15 17:42:03 +0000
commit34114ff3204030ced4cec7d362a7061bcc8f90fa (patch)
tree54380fa3efadd66d0068a970daa217e48f9f0d08 /init.el
parentInitial commit (diff)
Update editors and git config
Diffstat (limited to 'init.el')
-rw-r--r--init.el89
1 files changed, 89 insertions, 0 deletions
diff --git a/init.el b/init.el
new file mode 100644
index 0000000..9549479
--- /dev/null
+++ b/init.el
@@ -0,0 +1,89 @@
+;; disable toolbars
+(menu-bar-mode -1)
+(tool-bar-mode -1)
+(scroll-bar-mode -1)
+;; # apt install fonts-mononoki
+(set-face-attribute 'default nil
+                    :family "Iosevka Fixed"
+                    :height 120
+                    :weight 'normal
+                    :width  'normal)
+
+;;; packages stuff
+(custom-set-variables
+ ;; custom-set-variables was added by Custom.
+ ;; If you edit it by hand, you could mess it up, so be careful.
+ ;; Your init file should contain only one such instance.
+ ;; If there is more than one, they won't work right.
+ '(browse-url-browser-function 'browse-url-firefox)
+ '(custom-safe-themes
+   '("01cf34eca93938925143f402c2e6141f03abb341f27d1c2dba3d50af9357ce70" default))
+ '(helm-minibuffer-history-key "M-p")
+ '(inhibit-startup-screen t)
+ '(package-selected-packages
+   '(company doom-themes solarized-theme evil-tutor undo-fu evil-collection flycheck-rust rust-mode evil-visual-mark-mode tidal racket-mode helm helm-flycheck lsp-mode lsp-ui magit evil lsp-haskell use-package)))
+(require 'package)
+(add-to-list 'package-archives (cons "melpa"  "https://melpa.org/packages/") t)
+(package-initialize)
+;; Theme
+(load-theme 'doom-laserwave t)
+;; Programming languages
+(use-package flycheck
+  :ensure t
+  :init
+  (global-flycheck-mode t))
+(use-package lsp-mode
+  :ensure t
+  :config
+  (setq lsp-prefer-flymake nil)
+  :hook (haskell-mode . lsp-deferred)
+  (rust-mode . lsp-deferred)
+  :commands lsp)
+(use-package lsp-ui
+  :ensure t
+  :commands lsp-ui-mode)
+(use-package lsp-haskell
+ :ensure t
+ )
+(with-eval-after-load 'rust-mode
+  (add-hook 'flycheck-mode-hook #'flycheck-rust-setup))
+(add-hook 'prog-mode-hook 'linum-mode)
+;; Evil
+(use-package evil
+  :ensure t
+  :init
+  (setq evil-want-keybinding nil)
+  (setq evil-want-fine-undo nil)
+  (setq evil-undo-system 'undo-fu)
+  :config
+  (evil-mode 1))
+(use-package evil-collection
+  :after evil
+  :ensure t
+  :config
+  (evil-collection-init))
+;; Helm
+(use-package helm
+  :ensure t
+  :bind (("M-x" . helm-M-x)
+	("\C-x\C-f" . helm-find-files))
+  :config
+  (setq helm-M-x-fuzzy-match t)
+  (define-key evil-ex-map "x" 'helm-M-x)
+  (define-key evil-ex-map "b" 'helm-mini)
+  (define-key evil-ex-map "e" 'helm-find-files))
+
+(use-package magit
+  :ensure t
+  :bind (("C-x g". 'magit-status)))
+  
+(custom-set-faces
+ ;; custom-set-faces was added by Custom.
+ ;; If you edit it by hand, you could mess it up, so be careful.
+ ;; Your init file should contain only one such instance.
+ ;; If there is more than one, they won't work right.
+ )
+
+(add-to-list 'auto-mode-alist '("\\.lagda.md\\'" . agda2-mode))
+(load-file (let ((coding-system-for-read 'utf-8))
+                (shell-command-to-string "agda-mode locate")))