Skip to content

Instantly share code, notes, and snippets.

@taktoa
Created November 3, 2021 18:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save taktoa/df1049506448c7f1a593ce2d1bb86380 to your computer and use it in GitHub Desktop.
Save taktoa/df1049506448c7f1a593ce2d1bb86380 to your computer and use it in GitHub Desktop.
(require 'package)
(add-to-list
'package-archives
'("melpa" . "https://melpa.org/packages/") t)
(package-initialize)
(when (not package-archive-contents)
(package-refresh-contents))
(package-install 'use-package)
(use-package use-package-ensure
:config (setq use-package-always-ensure t))
(unless (package-installed-p 'quelpa)
(with-temp-buffer
(url-insert-file-contents "https://github.com/quelpa/quelpa/raw/master/quelpa.el")
(eval-buffer)
(quelpa-self-upgrade)))
(quelpa
'(quelpa-use-package
:fetcher git
:url "https://github.com/quelpa/quelpa-use-package.git"))
(require 'quelpa-use-package)
(defvar default-font "DejaVu Sans Mono-12")
(set-frame-font default-font nil t)
(setq default-frame-alist (list (cons 'font default-font)))
(setq-default fill-column 80)
(setq-default indent-tabs-mode nil)
(recentf-mode)
(cua-mode)
(global-auto-revert-mode)
(global-subword-mode)
(global-unset-key (kbd "<insert>"))
(global-unset-key (kbd "C-z"))
(global-unset-key (kbd "C-a"))
(global-unset-key (kbd "C-<next>"))
(setq-default cursor-type 'bar)
(global-set-key (kbd "C-k") 'kill-whole-line)
(windmove-default-keybindings 'meta)
(defvar windmove-wrap-around t)
(global-set-key (kbd "C-<next>") 'scroll-down-command)
(global-set-key (kbd "C-<prior>") 'scroll-up-command)
(global-set-key (kbd "<C-M-prior>") 'backward-page)
(global-set-key (kbd "<C-M-next>") 'forward-page)
(global-set-key (kbd "s-<left>") 'shrink-window-horizontally)
(global-set-key (kbd "s-<right>") 'enlarge-window-horizontally)
(global-set-key (kbd "s-<up>") 'shrink-window)
(global-set-key (kbd "s-<down>") 'enlarge-window)
(global-set-key (kbd "C-x C-k") 'kill-buffer)
(global-set-key (kbd "C-F") 'find-file)
(global-set-key (kbd "M-g") 'goto-line)
(global-set-key (kbd "M-\\") 'delete-trailing-whitespace)
(global-set-key (kbd "M-r") 'replace-string)
(global-set-key (kbd "C-S-r") 'replace-regexp)
(global-set-key (kbd "C-S-a") 'align-regexp)
(add-hook 'before-save-hook 'delete-trailing-whitespace)
(setq backup-directory-alist '(("." . "~/.emacs.d/saves")))
(customize-set-variable 'backup-by-copying t)
(customize-set-variable 'delete-old-versions t)
(customize-set-variable 'kept-new-versions 6)
(customize-set-variable 'kept-old-versions 2)
(customize-set-variable 'version-control t)
(defconst emacs-tmp-dir (format "%s/%s%s/"
temporary-file-directory
"emacs"
(user-uid)))
(setq auto-save-file-name-transforms `((".*" ,emacs-tmp-dir t)))
(setq auto-save-list-file-prefix emacs-tmp-dir)
(defvar c-default-style "linux")
(setq-default c-basic-offset 4
tab-width 4)
(c-set-offset 'innamespace 0)
(menu-bar-mode -1)
(toggle-scroll-bar -1)
(tool-bar-mode -1)
(setq inhibit-startup-message t)
(use-package helm
:ensure t
:bind
("C-x b" . helm-buffers-list)
("C-x C-b" . helm-buffers-list)
("C-M-F" . helm-find-files)
("C-x f" . helm-find-files)
("C-x C-f" . helm-find-files)
("C-x C-S-f" . helm-recentf))
(use-package fill-column-indicator
:ensure t
:config
(setq-default fci-rule-color "lightblue")
(add-hook 'prog-mode-hook (lambda ()
(interactive)
(defvar fci-rule-color)
(setq fci-rule-color "lightblue")))
(add-hook 'prog-mode-hook 'fci-mode))
(use-package zenburn-theme
:ensure t
:config
(load-theme 'zenburn t))
(use-package smartparens
:ensure t
:config
(smartparens-global-mode)
(show-smartparens-global-mode))
(use-package rainbow-delimiters
:ensure t
:config
(add-hook 'prog-mode-hook #'rainbow-delimiters-mode))
(use-package origami
:ensure t)
(use-package etags-table
:quelpa (etags-table
:fetcher url
:url "https://raw.githubusercontent.com/emacsmirror/etags-table/master/etags-table.el"))
(use-package windresize
:ensure t)
(use-package centaur-tabs
:ensure t
:demand
:config (centaur-tabs-mode t)
:bind
("C-<prior>" . centaur-tabs-backward)
("C-<next>" . centaur-tabs-forward)
("C-S-<prior>" . centaur-tabs-move-current-tab-to-left)
("C-S-<next>" . centaur-tabs-move-current-tab-to-right))
(use-package bm
:ensure t) ;; TODO: set this up
(use-package undo-tree
:ensure t
:config
(global-undo-tree-mode))
(use-package flycheck
:ensure t)
(use-package haskell-mode
:ensure t)
(use-package rust-mode
:ensure t)
(use-package csv-mode
:ensure t)
(use-package markdown-mode
:ensure t)
(use-package graphviz-dot-mode
:ensure t)
(use-package cmake-mode
:ensure t)
(use-package nix-mode
:ensure t)
(use-package scala-mode
:ensure t)
(use-package js2-mode
:ensure t)
(use-package magit
:ensure t)
(use-package lsp-mode
:ensure t)
(use-package tree-sitter
:ensure t)
(use-package string-inflection
:ensure t
:bind
("M-`" . string-inflection-cycle)
("M-1" . string-inflection-camelcase)
("M-2" . string-inflection-lower-camelcase)
("M-3" . string-inflection-underscore)
("M-4" . string-inflection-upcase))
(defconst taktoa-cc-style
'("cc-mode"
(c-offsets-alist . ((innamespace . [0])))))
(c-add-style "taktoa-cc-mode" taktoa-cc-style)
(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.
'(backup-by-copying t)
'(company-quickhelp-color-background "#4F4F4F")
'(company-quickhelp-color-foreground "#DCDCCC")
'(custom-safe-themes
'("e6df46d5085fde0ad56a46ef69ebb388193080cc9819e2d6024c9c6e27388ba9" default))
'(delete-old-versions t)
'(fci-rule-color "#383838")
'(kept-new-versions 6)
'(kept-old-versions 2)
'(nrepl-message-colors
'("#CC9393" "#DFAF8F" "#F0DFAF" "#7F9F7F" "#BFEBBF" "#93E0E3" "#94BFF3" "#DC8CC3"))
'(package-selected-packages
'(string-inflection tree-sitter emacs-tree-sitter lsp-mode js2-mode scala-mode magit nix-mode cmake-mode graphviz-dot-mode markdown-mode csv-mode rust-mode haskell-mode flycheck-mode bm centaur-tabs windresize etags-table origami rainbow-delimiters smartparens zenburn-theme fill-column-indicator helm use-package))
'(pdf-view-midnight-colors '("#DCDCCC" . "#383838"))
'(vc-annotate-background "#2B2B2B")
'(vc-annotate-color-map
'((20 . "#BC8383")
(40 . "#CC9393")
(60 . "#DFAF8F")
(80 . "#D0BF8F")
(100 . "#E0CF9F")
(120 . "#F0DFAF")
(140 . "#5F7F5F")
(160 . "#7F9F7F")
(180 . "#8FB28F")
(200 . "#9FC59F")
(220 . "#AFD8AF")
(240 . "#BFEBBF")
(260 . "#93E0E3")
(280 . "#6CA0A3")
(300 . "#7CB8BB")
(320 . "#8CD0D3")
(340 . "#94BFF3")
(360 . "#DC8CC3")))
'(vc-annotate-very-old-color "#DC8CC3")
'(version-control t))
(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.
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment