2017-07-22 18:48:50 +03:00
|
|
|
(require 'package)
|
2017-08-24 15:26:23 +03:00
|
|
|
(set-language-environment "UTF-8")
|
|
|
|
|
(set-default-coding-systems 'utf-8)
|
2017-07-22 18:48:50 +03:00
|
|
|
(setq package-enable-at-startup nil)
|
|
|
|
|
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))
|
|
|
|
|
;;(add-to-list 'package-archives '("marmalade" . "https://marmalade-repo.org/packages/"))
|
|
|
|
|
(add-to-list 'package-archives '("gnu" . "https://elpa.gnu.org/packages/"))
|
|
|
|
|
(package-initialize)
|
|
|
|
|
|
|
|
|
|
(unless (package-installed-p 'use-package)
|
|
|
|
|
(package-refresh-contents)
|
|
|
|
|
(package-install 'use-package))
|
|
|
|
|
|
|
|
|
|
(eval-when-compile
|
|
|
|
|
(require 'use-package))
|
|
|
|
|
(require 'diminish)
|
|
|
|
|
(require 'bind-key)
|
|
|
|
|
|
|
|
|
|
(use-package better-defaults
|
|
|
|
|
:ensure t)
|
|
|
|
|
|
|
|
|
|
(use-package powerline
|
|
|
|
|
:ensure t
|
|
|
|
|
:config
|
|
|
|
|
(powerline-default-theme)
|
|
|
|
|
:init
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
;; helm
|
|
|
|
|
(use-package helm
|
|
|
|
|
:ensure t
|
|
|
|
|
:bind (("M-x" . helm-M-x)
|
|
|
|
|
("C-x C-f" . helm-find-files)
|
|
|
|
|
("C-x b" . helm-mini)
|
|
|
|
|
("C-x C-d" . helm-browse-project)
|
|
|
|
|
)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
(use-package helm-themes
|
|
|
|
|
:ensure t)
|
|
|
|
|
(use-package helm-tramp
|
|
|
|
|
:ensure t)
|
2017-08-18 18:41:58 +03:00
|
|
|
|
2017-10-23 10:50:15 +03:00
|
|
|
(use-package unicode-fonts
|
|
|
|
|
:ensure t
|
|
|
|
|
:init (unicode-fonts-setup)
|
|
|
|
|
)
|
|
|
|
|
|
2017-08-18 18:41:58 +03:00
|
|
|
(use-package company
|
|
|
|
|
:ensure t
|
|
|
|
|
:init (global-company-mode)
|
|
|
|
|
:config
|
|
|
|
|
(progn
|
|
|
|
|
;; use company for completion
|
|
|
|
|
(bind-key [remap completion-at-point] #'company-complete company-mode-map)
|
|
|
|
|
|
|
|
|
|
(setq company-tooltip-align-annotations t
|
|
|
|
|
;; Easy navigation to candidates with M-<n>
|
|
|
|
|
company-show-numbers t)
|
|
|
|
|
)
|
|
|
|
|
:diminish company-mode
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
(use-package company-quickhelp ; Documentation popups for Company
|
|
|
|
|
:ensure t
|
|
|
|
|
:defer t
|
|
|
|
|
:init (add-hook 'global-company-mode-hook #'company-quickhelp-mode))
|
|
|
|
|
|
|
|
|
|
(use-package company-go
|
|
|
|
|
:ensure t
|
|
|
|
|
:defer t
|
|
|
|
|
:init
|
|
|
|
|
(with-eval-after-load 'company
|
|
|
|
|
(add-to-list 'company-backends 'company-go)))
|
|
|
|
|
|
|
|
|
|
(use-package flycheck
|
|
|
|
|
:ensure t
|
|
|
|
|
:defer t
|
|
|
|
|
:init (add-hook 'sh-mode-hook 'flycheck-mode)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
(use-package yasnippet
|
|
|
|
|
:ensure t
|
|
|
|
|
:init (yas-global-mode 1)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
(use-package go-mode
|
|
|
|
|
:ensure t
|
|
|
|
|
:init
|
|
|
|
|
(progn
|
|
|
|
|
(setq gofmt-command "goimports")
|
|
|
|
|
(add-hook 'before-save-hook 'gofmt-before-save)
|
|
|
|
|
(bind-key [remap find-tag] #'godef-jump))
|
|
|
|
|
:config
|
|
|
|
|
(add-hook 'go-mode-hook 'electric-pair-mode)
|
|
|
|
|
(setq company-tooltip-limit 20)
|
|
|
|
|
(setq company-idle-delay .3)
|
|
|
|
|
(setq company-echo-delay 0)
|
|
|
|
|
(setq company-begin-commands '(self-insert-command))
|
|
|
|
|
)
|
|
|
|
|
|
2017-07-22 18:48:50 +03:00
|
|
|
(use-package markdown-mode
|
|
|
|
|
:ensure t)
|
|
|
|
|
|
|
|
|
|
(use-package magit
|
|
|
|
|
:ensure t
|
|
|
|
|
:bind (("C-x g" . magit-status)
|
|
|
|
|
)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
(use-package paradox
|
|
|
|
|
:ensure t
|
|
|
|
|
:defer t)
|
2017-08-18 18:41:58 +03:00
|
|
|
|
2018-06-16 13:52:48 +03:00
|
|
|
(use-package helm-unicode
|
|
|
|
|
:ensure t
|
|
|
|
|
:defer t)
|
|
|
|
|
|
|
|
|
|
(use-package color-theme-solarized
|
|
|
|
|
:ensure t
|
|
|
|
|
:defer t)
|
|
|
|
|
|
|
|
|
|
(use-package subatomic256-theme
|
|
|
|
|
:ensure t
|
|
|
|
|
:defer t
|
|
|
|
|
)
|
|
|
|
|
|
2017-09-15 22:42:02 +03:00
|
|
|
;; kill the damned gnu screen
|
|
|
|
|
(setq inhibit-startup-screen t)
|
|
|
|
|
|
2017-07-22 18:48:50 +03:00
|
|
|
(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.
|
|
|
|
|
'(ansi-color-faces-vector
|
|
|
|
|
[default default default italic underline success warning error])
|
2017-10-06 10:33:59 +03:00
|
|
|
'(ansi-color-names-vector
|
|
|
|
|
(vector "#c5c8c6" "#cc6666" "#b5bd68" "#f0c674" "#81a2be" "#b294bb" "#8abeb7" "#373b41"))
|
2017-11-17 12:12:57 +02:00
|
|
|
'(ansi-term-color-vector
|
|
|
|
|
[unspecified "#000000" "#ff6c60" "#a8ff60" "#ffffb6" "#96cbfe" "#ff73fd" "#96cbfe" "#b5b3aa"])
|
|
|
|
|
'(custom-safe-themes
|
|
|
|
|
(quote
|
|
|
|
|
("8db4b03b9ae654d4a57804286eb3e332725c84d7cdab38463cb6b97d5762ad26" "50ff65ab3c92ce4758cc6cd10ebb3d6150a0e2da15b751d7fbee3d68bba35a94" "d5b121d69e48e0f2a84c8e4580f0ba230423391a78fcb4001ccb35d02494d79e" "5cd0afd0ca01648e1fff95a7a7f8abec925bd654915153fb39ee8e72a8b56a1f" default)))
|
2017-10-06 10:33:59 +03:00
|
|
|
'(fci-rule-color "#373b41")
|
|
|
|
|
'(flycheck-color-mode-line-face-to-color (quote mode-line-buffer-id))
|
|
|
|
|
'(frame-background-mode (quote dark))
|
2017-09-16 00:38:29 +03:00
|
|
|
'(linum-format "%3i")
|
2017-07-22 18:48:50 +03:00
|
|
|
'(nrepl-message-colors
|
|
|
|
|
(quote
|
|
|
|
|
("#336c6c" "#205070" "#0f2050" "#806080" "#401440" "#6c1f1c" "#6b400c" "#23733c")))
|
|
|
|
|
'(package-selected-packages
|
|
|
|
|
(quote
|
2017-11-17 12:12:57 +02:00
|
|
|
(roguel-ike helm-unicode unicode-fonts color-theme-sanityinc-tomorrow color-theme-solarized distinguished-theme alect-themes bubbleberry-theme go-snippets company-go cyberpunk-theme dad-joke darkane-theme darkmine-theme helm-themes markdown-mode anti-zenburn-theme helm-tramp magit use-package powerline paradox helm)))
|
2017-07-22 18:48:50 +03:00
|
|
|
'(paradox-github-token t)
|
|
|
|
|
'(pdf-view-midnight-colors (quote ("#232333" . "#c7c7c7")))
|
2017-09-16 00:38:29 +03:00
|
|
|
'(powerline-color1 "#3d3d68")
|
|
|
|
|
'(powerline-color2 "#292945")
|
2017-07-22 18:48:50 +03:00
|
|
|
'(tool-bar-mode nil)
|
|
|
|
|
'(vc-annotate-background "#d4d4d4")
|
|
|
|
|
'(vc-annotate-color-map
|
|
|
|
|
(quote
|
|
|
|
|
((20 . "#437c7c")
|
|
|
|
|
(40 . "#336c6c")
|
|
|
|
|
(60 . "#205070")
|
|
|
|
|
(80 . "#2f4070")
|
|
|
|
|
(100 . "#1f3060")
|
|
|
|
|
(120 . "#0f2050")
|
|
|
|
|
(140 . "#a080a0")
|
|
|
|
|
(160 . "#806080")
|
|
|
|
|
(180 . "#704d70")
|
|
|
|
|
(200 . "#603a60")
|
|
|
|
|
(220 . "#502750")
|
|
|
|
|
(240 . "#401440")
|
|
|
|
|
(260 . "#6c1f1c")
|
|
|
|
|
(280 . "#935f5c")
|
|
|
|
|
(300 . "#834744")
|
|
|
|
|
(320 . "#732f2c")
|
|
|
|
|
(340 . "#6b400c")
|
|
|
|
|
(360 . "#23733c"))))
|
|
|
|
|
'(vc-annotate-very-old-color "#23733c"))
|
|
|
|
|
(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.
|
2017-08-21 17:29:08 +03:00
|
|
|
'(default ((t (:inherit nil :stipple nil :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 142 :width normal :foundry "unci" :family "MonofurForPowerline Nerd Font"))))
|
|
|
|
|
'(fixed-pitch ((t (:family "Iosevka")))))
|
2017-08-24 15:26:23 +03:00
|
|
|
|
|
|
|
|
;;; Fira code
|
|
|
|
|
;; This works when using emacs --daemon + emacsclient
|
|
|
|
|
(add-hook 'after-make-frame-functions (lambda (frame) (set-fontset-font t '(#Xe100 . #Xe16f) "Fira Code Symbol")))
|
|
|
|
|
;; This works when using emacs without server/client
|
|
|
|
|
(set-fontset-font t '(#Xe100 . #Xe16f) "Fira Code Symbol")
|
|
|
|
|
;; I haven't found one statement that makes both of the above situations work, so I use both for now
|
|
|
|
|
|
|
|
|
|
(defconst fira-code-font-lock-keywords-alist
|
|
|
|
|
(mapcar (lambda (regex-char-pair)
|
|
|
|
|
`(,(car regex-char-pair)
|
|
|
|
|
(0 (prog1 ()
|
|
|
|
|
(compose-region (match-beginning 1)
|
|
|
|
|
(match-end 1)
|
|
|
|
|
;; The first argument to concat is a string containing a literal tab
|
|
|
|
|
,(concat " " (list (decode-char 'ucs (cadr regex-char-pair)))))))))
|
|
|
|
|
'(("\\(www\\)" #Xe100)
|
|
|
|
|
("[^/]\\(\\*\\*\\)[^/]" #Xe101)
|
|
|
|
|
("\\(\\*\\*\\*\\)" #Xe102)
|
|
|
|
|
("\\(\\*\\*/\\)" #Xe103)
|
|
|
|
|
("\\(\\*>\\)" #Xe104)
|
|
|
|
|
("[^*]\\(\\*/\\)" #Xe105)
|
|
|
|
|
("\\(\\\\\\\\\\)" #Xe106)
|
|
|
|
|
("\\(\\\\\\\\\\\\\\)" #Xe107)
|
|
|
|
|
("\\({-\\)" #Xe108)
|
|
|
|
|
("\\(\\[\\]\\)" #Xe109)
|
|
|
|
|
("\\(::\\)" #Xe10a)
|
|
|
|
|
("\\(:::\\)" #Xe10b)
|
|
|
|
|
("[^=]\\(:=\\)" #Xe10c)
|
|
|
|
|
("\\(!!\\)" #Xe10d)
|
|
|
|
|
("\\(!=\\)" #Xe10e)
|
|
|
|
|
("\\(!==\\)" #Xe10f)
|
|
|
|
|
("\\(-}\\)" #Xe110)
|
|
|
|
|
("\\(--\\)" #Xe111)
|
|
|
|
|
("\\(---\\)" #Xe112)
|
|
|
|
|
("\\(-->\\)" #Xe113)
|
|
|
|
|
("[^-]\\(->\\)" #Xe114)
|
|
|
|
|
("\\(->>\\)" #Xe115)
|
|
|
|
|
("\\(-<\\)" #Xe116)
|
|
|
|
|
("\\(-<<\\)" #Xe117)
|
|
|
|
|
("\\(-~\\)" #Xe118)
|
|
|
|
|
("\\(#{\\)" #Xe119)
|
|
|
|
|
("\\(#\\[\\)" #Xe11a)
|
|
|
|
|
("\\(##\\)" #Xe11b)
|
|
|
|
|
("\\(###\\)" #Xe11c)
|
|
|
|
|
("\\(####\\)" #Xe11d)
|
|
|
|
|
("\\(#(\\)" #Xe11e)
|
|
|
|
|
("\\(#\\?\\)" #Xe11f)
|
|
|
|
|
("\\(#_\\)" #Xe120)
|
|
|
|
|
("\\(#_(\\)" #Xe121)
|
|
|
|
|
("\\(\\.-\\)" #Xe122)
|
|
|
|
|
("\\(\\.=\\)" #Xe123)
|
|
|
|
|
("\\(\\.\\.\\)" #Xe124)
|
|
|
|
|
("\\(\\.\\.<\\)" #Xe125)
|
|
|
|
|
("\\(\\.\\.\\.\\)" #Xe126)
|
|
|
|
|
("\\(\\?=\\)" #Xe127)
|
|
|
|
|
("\\(\\?\\?\\)" #Xe128)
|
|
|
|
|
("\\(;;\\)" #Xe129)
|
|
|
|
|
("\\(/\\*\\)" #Xe12a)
|
|
|
|
|
("\\(/\\*\\*\\)" #Xe12b)
|
|
|
|
|
("\\(/=\\)" #Xe12c)
|
|
|
|
|
("\\(/==\\)" #Xe12d)
|
|
|
|
|
("\\(/>\\)" #Xe12e)
|
|
|
|
|
("\\(//\\)" #Xe12f)
|
|
|
|
|
("\\(///\\)" #Xe130)
|
|
|
|
|
("\\(&&\\)" #Xe131)
|
|
|
|
|
("\\(||\\)" #Xe132)
|
|
|
|
|
("\\(||=\\)" #Xe133)
|
|
|
|
|
("[^|]\\(|=\\)" #Xe134)
|
|
|
|
|
("\\(|>\\)" #Xe135)
|
|
|
|
|
("\\(\\^=\\)" #Xe136)
|
|
|
|
|
("\\(\\$>\\)" #Xe137)
|
|
|
|
|
("\\(\\+\\+\\)" #Xe138)
|
|
|
|
|
("\\(\\+\\+\\+\\)" #Xe139)
|
|
|
|
|
("\\(\\+>\\)" #Xe13a)
|
|
|
|
|
("\\(=:=\\)" #Xe13b)
|
|
|
|
|
("[^!/]\\(==\\)[^>]" #Xe13c)
|
|
|
|
|
("\\(===\\)" #Xe13d)
|
|
|
|
|
("\\(==>\\)" #Xe13e)
|
|
|
|
|
("[^=]\\(=>\\)" #Xe13f)
|
|
|
|
|
("\\(=>>\\)" #Xe140)
|
|
|
|
|
("\\(<=\\)" #Xe141)
|
|
|
|
|
("\\(=<<\\)" #Xe142)
|
|
|
|
|
("\\(=/=\\)" #Xe143)
|
|
|
|
|
("\\(>-\\)" #Xe144)
|
|
|
|
|
("\\(>=\\)" #Xe145)
|
|
|
|
|
("\\(>=>\\)" #Xe146)
|
|
|
|
|
("[^-=]\\(>>\\)" #Xe147)
|
|
|
|
|
("\\(>>-\\)" #Xe148)
|
|
|
|
|
("\\(>>=\\)" #Xe149)
|
|
|
|
|
("\\(>>>\\)" #Xe14a)
|
|
|
|
|
("\\(<\\*\\)" #Xe14b)
|
|
|
|
|
("\\(<\\*>\\)" #Xe14c)
|
|
|
|
|
("\\(<|\\)" #Xe14d)
|
|
|
|
|
("\\(<|>\\)" #Xe14e)
|
|
|
|
|
("\\(<\\$\\)" #Xe14f)
|
|
|
|
|
("\\(<\\$>\\)" #Xe150)
|
|
|
|
|
("\\(<!--\\)" #Xe151)
|
|
|
|
|
("\\(<-\\)" #Xe152)
|
|
|
|
|
("\\(<--\\)" #Xe153)
|
|
|
|
|
("\\(<->\\)" #Xe154)
|
|
|
|
|
("\\(<\\+\\)" #Xe155)
|
|
|
|
|
("\\(<\\+>\\)" #Xe156)
|
|
|
|
|
("\\(<=\\)" #Xe157)
|
|
|
|
|
("\\(<==\\)" #Xe158)
|
|
|
|
|
("\\(<=>\\)" #Xe159)
|
|
|
|
|
("\\(<=<\\)" #Xe15a)
|
|
|
|
|
("\\(<>\\)" #Xe15b)
|
|
|
|
|
("[^-=]\\(<<\\)" #Xe15c)
|
|
|
|
|
("\\(<<-\\)" #Xe15d)
|
|
|
|
|
("\\(<<=\\)" #Xe15e)
|
|
|
|
|
("\\(<<<\\)" #Xe15f)
|
|
|
|
|
("\\(<~\\)" #Xe160)
|
|
|
|
|
("\\(<~~\\)" #Xe161)
|
|
|
|
|
("\\(</\\)" #Xe162)
|
|
|
|
|
("\\(</>\\)" #Xe163)
|
|
|
|
|
("\\(~@\\)" #Xe164)
|
|
|
|
|
("\\(~-\\)" #Xe165)
|
|
|
|
|
("\\(~=\\)" #Xe166)
|
|
|
|
|
("\\(~>\\)" #Xe167)
|
|
|
|
|
("[^<]\\(~~\\)" #Xe168)
|
|
|
|
|
("\\(~~>\\)" #Xe169)
|
|
|
|
|
("\\(%%\\)" #Xe16a)
|
|
|
|
|
;; ("\\(x\\)" #Xe16b) This ended up being hard to do properly so i'm leaving it out.
|
|
|
|
|
("[^:=]\\(:\\)[^:=]" #Xe16c)
|
|
|
|
|
("[^\\+<>]\\(\\+\\)[^\\+<>]" #Xe16d)
|
|
|
|
|
("[^\\*/<>]\\(\\*\\)[^\\*/<>]" #Xe16f))))
|
|
|
|
|
|
|
|
|
|
(defun add-fira-code-symbol-keywords ()
|
|
|
|
|
(font-lock-add-keywords nil fira-code-font-lock-keywords-alist))
|
|
|
|
|
|
2018-06-16 13:52:48 +03:00
|
|
|
(if window-system
|
|
|
|
|
(add-hook 'prog-mode-hook
|
|
|
|
|
#'add-fira-code-symbol-keywords)
|
|
|
|
|
)
|
2017-08-24 15:26:23 +03:00
|
|
|
|
2017-11-17 12:12:57 +02:00
|
|
|
(if window-system
|
|
|
|
|
(load-theme 'anti-zenburn t)
|
2018-06-16 13:52:48 +03:00
|
|
|
(load-theme 'subatomic256 t))
|
2017-11-17 12:12:57 +02:00
|
|
|
|
|
|
|
|
; screen size is off for some reason uless this is toggled on and off
|
|
|
|
|
(menu-bar-mode)
|
|
|
|
|
(menu-bar-mode)
|
|
|
|
|
|