Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;; -*- lexical-binding: t; -*-
- (profiler-start 'cpu+mem)
- (require 'package)
- (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
- ;; Comment/uncomment this line to enable MELPA Stable if desired. See `package-archive-priorities`
- ;; and `package-pinned-packages`. Most users will not need or want to do this.
- ;;(add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/") t)
- (package-initialize)
- (if (not (package-installed-p 'use-package))
- (package-refresh-contents)
- (package-install 'use-package))
- (setq custom-file (expand-file-name "~/.config/emacs/customize.el"))
- (load custom-file)
- (use-package reverse-im
- :ensure t
- :custom
- (reverse-im-input-methods '("russian-typewriter"))
- :config
- (reverse-im-mode t))
- (use-package async
- :ensure t
- :config
- (dired-async-mode))
- (use-package yasnippet
- :ensure t
- :init
- (yas-global-mode)
- :hook
- (yas-after-exit-snippet . indent-according-to-mode))
- (use-package yasnippet-snippets
- :ensure t)
- ;; (use-package ctrlf
- ;; :ensure t
- ;; :init (ctrlf-mode +1))
- (use-package company-auctex
- :ensure company-auctex
- :init (company-auctex-init))
- (use-package company-math
- :ensure t)
- (use-package tex
- :ensure auctex
- :config
- (setq TeX-auto-save t))
- (use-package magit
- :ensure t)
- (use-package vterm
- :ensure t)
- (use-package gcmh
- :ensure t
- :init
- (gcmh-mode 1))
- (use-package auto-package-update
- :ensure t
- :config
- (setq auto-package-update-delete-old-versions t
- auto-package-update-interval 1)
- (auto-package-update-maybe))
- (use-package flycheck
- :ensure t)
- (add-hook 'prog-mode-hook (lambda () (flycheck-mode -1)))
- ;; Theme
- ;; (use-package modus-operandi-theme
- ;; :ensure t
- ;; :initnn
- ;; ;; (load-theme 'modus-operandi t)
- ;; )
- (use-package consult-selectrum
- :ensure t
- :bind
- ("C-x b" . consult-buffer)
- ("M-y" . consult-yank-pop)
- ("C-," . consult-line))
- (use-package base16-theme
- :ensure t
- :config
- (setq base16-highlight-mode-line t)
- (load-theme 'base16-google-light))
- (defun ap/garbage-collect ()
- (interactive)
- (message (cl-loop for (type size used free) in (garbage-collect)
- for used = (* used size)
- for free = (* (or free 0) size)
- for total = (file-size-human-readable (+ used free))
- for used = (file-size-human-readable used)
- for free = (file-size-human-readable free)
- concat (format "%s: %s + %s = %s\n" type used free total))))
- ;; replaces Emacs' icomplete with selectrum
- (use-package selectrum-prescient
- :ensure t
- :init
- (selectrum-mode +1)
- :config
- ;; to make sorting and filtering more intelligent
- (selectrum-prescient-mode +1)
- ;; to save your command history on disk, so the sorting gets more
- ;; intelligent over time
- (prescient-persist-mode +1)
- (setq selectrum-refine-candidates-function #'orderless-filter)
- (setq selectrum-highlight-candidates-function #'orderless-highlight-matches))
- ;; Enable richer annotations using the Marginalia package
- (use-package marginalia
- :ensure t
- :config
- (marginalia-mode)
- (setq marginalia-annotators '(marginalia-annotators-heavy marginalia-annotators-light)))
- (use-package which-key
- :ensure t
- :config
- (which-key-mode))
- (use-package elpy
- :ensure t
- :init
- (elpy-enable))
- (use-package racket-mode
- :ensure t
- :hook (racket-mode . racket-xp-mode))
- (use-package company
- :ensure t
- :config
- (setq company-minimum-prefix-length 2)
- (setq company-idle-delay 0.1)
- (setq company-tooltip-align-annotations t)
- (setq company-dabbrev-other-buffers nil)
- :hook
- (after-init . global-company-mode))
- ;; (add-hook after-init-hook )
- (use-package org
- :ensure t
- :defer t
- :config
- (setq org-hide-emphasis-markers t)
- (setq org-startup-folded nil)
- )
- (use-package org-bullets
- :ensure t
- :config
- (setq inhibit-compacting-font-caches t)
- (add-hook 'org-mode-hook (lambda () (org-bullets-mode 1))))
- (setq company-dabbrev-downcase 0)
- (setq company-idle-delay 0)
- (use-package rainbow-delimiters
- :ensure t
- :hook
- (prog-mode . rainbow-delimiters-mode))
- (use-package avy
- :ensure t
- :config
- (setq avy-keys '(?e ?t ?h ?u ?o ?n))
- (setq avy-timeout-seconds 0.7)
- :bind
- ("C-'" . avy-goto-char-timer))
- (use-package emacs
- :init
- (async-bytecomp-package-mode 1))
- ;; automatic switch to help buffers
- (setq-default help-window- t)
- (use-package projectile
- :ensure t)
- ;; y/n instead of yes/no everywhere
- (defalias 'yes-or-no-p 'y-or-n-p)
- (setq-default frame-title-format '("%f [%m]"))
- ;; load files with customization
- (load-file (expand-file-name "customs.el" user-emacs-directory)) ; custom shortcuts, making Emacs behave the way I like
- (load-file (expand-file-name "functions.el" user-emacs-directory)) ; functionality that isn't in Emacs but 4chin helped me add it
- (load-file (expand-file-name "menuprefix.el" user-emacs-directory))
- (put 'downcase-region 'disabled nil)
- (put 'narrow-to-region 'disabled nil)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement