Advertisement
Guest User

init.el

a guest
Jul 16th, 2018
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.65 KB | None | 0 0
  1.  
  2. ;;; Basic settings
  3. (setq delete-by-moving-to-trash 't)
  4. (setq inhibit-startup-screen t)
  5.  
  6. ;(setq-local accentcolor "#ffd05b")
  7.  
  8. (global-hl-line-mode t)
  9.  
  10. (tool-bar-mode -1)
  11. (scroll-bar-mode -1)
  12.  
  13. (line-number-mode)
  14. (column-number-mode)
  15.  
  16. (unless (string-equal system-type "darwin")
  17. (set-face-attribute 'default nil :height 115 :family "Consolas")
  18. )
  19.  
  20. (setq ns-use-srgb-colorspace nil)
  21.  
  22. ;; Default tab width 4
  23. (setq-default tab-width 4)
  24.  
  25. ;; Scrolling settings (primarily for Mac)
  26. (setq mouse-wheel-scroll-amount '(1))
  27. (setq mouse-wheel-progressive-speed nil)
  28.  
  29. ;; Parentheses highlighting and pairing
  30. (show-paren-mode)
  31. (electric-pair-mode)
  32.  
  33. (setq major-mode 'text-mode)
  34.  
  35. ;;Custom backup directory
  36. (setq backup-directory-alist
  37. `(("." . ,(concat user-emacs-directory "backups"))))
  38.  
  39. (setq auto-save-file-name-transforms
  40. `((".*" ,temporary-file-directory t)))
  41.  
  42. (setq create-lockfiles nil)
  43.  
  44. (ido-mode t)
  45.  
  46. (winner-mode t)
  47.  
  48. (windmove-default-keybindings)
  49.  
  50.  
  51. ;; Bootstrap use-package
  52. (setq package-enable-at-startup nil)
  53. (require 'package)
  54. (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/"))
  55. (package-initialize)
  56. (unless (package-installed-p 'use-package)
  57. (package-refresh-contents)
  58. (package-install 'use-package))
  59. (require 'use-package)
  60. (setq use-package-always-ensure t
  61. use-package-verbose t)
  62.  
  63. ;; Packages
  64.  
  65. ;; (use-package dracula-theme
  66. ;; :demand
  67. ;; :config
  68. ;; (load-theme 'dracula t))
  69.  
  70. (use-package solarized-theme
  71. :demand
  72. :config
  73. (setq x-underline-at-descent-line t)
  74. (load-theme 'solarized-dark t)
  75. (custom-set-faces
  76. '(mode-line ((t
  77. (:underline nil :overline nil :box
  78. (:line-width 1 :color "#fdf6e3")
  79. :foreground "#fdf6e3" :background "#657b83")))))
  80.  
  81. )
  82.  
  83. ;; (use-package moe-theme
  84. ;; :demand
  85. ;; :config
  86. ;; (moe-dark))
  87.  
  88. (use-package exec-path-from-shell
  89. :config
  90. (when (memq window-system '(mac ns x))
  91. (exec-path-from-shell-initialize)))
  92.  
  93. (use-package magit
  94. :config
  95. (global-set-key (kbd "C-x g") 'magit-status))
  96.  
  97. (use-package git-messenger)
  98.  
  99. (use-package focus)
  100.  
  101. (use-package elscreen
  102. :config
  103. (elscreen-start))
  104.  
  105. (use-package undo-tree)
  106.  
  107. (use-package restclient)
  108.  
  109. (use-package highlight-symbol)
  110.  
  111. (use-package highlight-parentheses
  112. :config
  113. (global-highlight-parentheses-mode))
  114.  
  115. (use-package dimmer
  116. :config
  117. (dimmer-mode))
  118.  
  119. (use-package md4rd)
  120.  
  121. (use-package sx
  122. :config
  123. (bind-keys :prefix "C-c s"
  124. :prefix-map my-sx-map
  125. :prefix-docstring "Global keymap for SX."
  126. ("q" . sx-tab-all-questions)
  127. ("i" . sx-inbox)
  128. ("o" . sx-open-link)
  129. ("u" . sx-tab-unanswered-my-tags)
  130. ("a" . sx-ask)
  131. ("s" . sx-search)))
  132.  
  133. ;; Cursor settings
  134. (setq-default cursor-type 'bar
  135. visible-bell 't
  136. ring-bell-function 'ignore)
  137.  
  138. (set-cursor-color "#00ff00")
  139.  
  140. (custom-set-variables
  141. ;; custom-set-variables was added by Custom.
  142. ;; If you edit it by hand, you could mess it up, so be careful.
  143. ;; Your init file should contain only one such instance.
  144. ;; If there is more than one, they won't work right.
  145. '(custom-safe-themes
  146. (quote
  147. ("8aebf25556399b58091e533e455dd50a6a9cba958cc4ebb0aab175863c25b9a4" "9d9fda57c476672acd8c6efeb9dc801abea906634575ad2c7688d055878e69d6" "d677ef584c6dfc0697901a44b885cc18e206f05114c8a3b7fde674fce6180879" "ecba61c2239fbef776a72b65295b88e5534e458dfe3e6d7d9f9cb353448a569e" "3d5720f488f2ed54dd4e40e9252da2912110948366a16aef503f3e9e7dfe4915" "c74e83f8aa4c78a121b52146eadb792c9facc5b1f02c917e3dbb454fca931223" "a27c00821ccfd5a78b01e4f35dc056706dd9ede09a8b90c6955ae6a390eb1c1e" "3c83b3676d796422704082049fc38b6966bcad960f896669dfc21a7a37a748fa" default)))
  148. '(dimmer-mode t nil (dimmer))
  149. '(git-messenger:show-detail t)
  150. '(git-messenger:use-magit-popup t)
  151. '(global-linum-mode t)
  152. '(global-magit-file-mode nil)
  153. '(md4rd-subs-active (quote (emacs runescape lisp+Common_Lisp prolog)))
  154. '(mode-line-format
  155. (quote
  156. ("%e"
  157. (:eval
  158. (let*
  159. ((active
  160. (powerline-selected-window-active))
  161. (mode-line-buffer-id
  162. (if active
  163. (quote mode-line-buffer-id)
  164. (quote mode-line-buffer-id-inactive)))
  165. (mode-line
  166. (if active
  167. (quote mode-line)
  168. (quote mode-line-inactive)))
  169. (face0
  170. (if active
  171. (quote powerline-active0)
  172. (quote powerline-inactive0)))
  173. (face1
  174. (if active
  175. (quote powerline-active1)
  176. (quote powerline-inactive1)))
  177. (face2
  178. (if active
  179. (quote powerline-active2)
  180. (quote powerline-inactive2)))
  181. (separator-left
  182. (intern
  183. (format "powerline-%s-%s"
  184. (powerline-current-separator)
  185. (car powerline-default-separator-dir))))
  186. (separator-right
  187. (intern
  188. (format "powerline-%s-%s"
  189. (powerline-current-separator)
  190. (cdr powerline-default-separator-dir))))
  191. (lhs
  192. (list
  193. (powerline-raw "%*" face0
  194. (quote l))
  195. (powerline-buffer-size face0
  196. (quote l))
  197. (powerline-buffer-id
  198. (\`
  199. (mode-line-buffer-id
  200. (\, face0)))
  201. (quote l))
  202. (powerline-raw " ")
  203. (funcall separator-left face0 face1)
  204. (powerline-narrow face1
  205. (quote l))
  206. (powerline-vc face1)))
  207. (rhs
  208. (list
  209. (powerline-raw global-mode-string face1
  210. (quote r))
  211. (powerline-raw "%4l" face1
  212. (quote r))
  213. (powerline-raw ":" face1)
  214. (powerline-raw "%3c" face1
  215. (quote r))
  216. (funcall separator-right face1 face0)
  217. (powerline-raw " ")
  218. (powerline-raw "%6p" face0
  219. (quote r))
  220. (powerline-hud face2 face1)
  221. (powerline-fill face0 0)))
  222. (center
  223. (list
  224. (powerline-raw " " face1)
  225. (funcall separator-left face1 face2)
  226. (when
  227. (and
  228. (boundp
  229. (quote erc-track-minor-mode))
  230. erc-track-minor-mode)
  231. (powerline-raw erc-modified-channels-object face2
  232. (quote l)))
  233. (powerline-major-mode face2
  234. (quote l))
  235. (powerline-process face2)
  236. (powerline-raw " :" face2)
  237. (powerline-minor-modes face2
  238. (quote l))
  239. (powerline-raw " " face2)
  240. (funcall separator-right face2 face1))))
  241. (concat
  242. (powerline-render lhs)
  243. (powerline-fill-center face1
  244. (/
  245. (powerline-width center)
  246. 2.0))
  247. (powerline-render center)
  248. (powerline-fill face1
  249. (powerline-width rhs))
  250. (powerline-render rhs)))))))
  251. '(mode-line-percent-position nil)
  252. '(nyan-mode nil)
  253. '(package-selected-packages
  254. (quote
  255. (git-messenger highlight-indentation anzu elscreen dashboard symon yasnippet-snippets yasnippet expand-region kotlin-mode moe-theme php-mode swift-mode perspective exec-path-from-shell highlight-parentheses dockerfile-mode restart-emacs avy helm-ag yaml-mode json-mode flycheck-popup-tip elogcat md4rd logcat-mode multi-term calfw smartparens-config powerline delight doom-themes flymd multiple-cursors helm-projectile dumb-jump beacon flycheck projectile android-mode telephone-line-mode sx csharp-mode dimmer highlight-symbol restclient undo-tree magit focus auto-complete dracula-theme darcula-theme rjsx-mode nyan-mode which-key solarized-theme rainbow-mode editorconfig helm use-package)))
  256. '(powerline-display-buffer-size nil)
  257. '(projectile-globally-ignored-directories
  258. (quote
  259. (".idea" ".ensime_cache" ".eunit" ".git" ".hg" ".fslckout" "_FOSSIL_" ".bzr" "_darcs" ".tox" ".svn" ".stack-work" "build")))
  260. '(restart-emacs-restore-frames t)
  261. '(rich-minority-mode nil)
  262. '(size-indication-mode nil))
  263. (custom-set-faces
  264. ;; custom-set-faces was added by Custom.
  265. ;; If you edit it by hand, you could mess it up, so be careful.
  266. ;; Your init file should contain only one such instance.
  267. ;; If there is more than one, they won't work right.
  268. '(mode-line ((t (:underline nil :overline nil :box (:line-width 1 :color "#fdf6e3") :foreground "#fdf6e3" :background "#657b83")))))
  269.  
  270. (defun indent-buffer ()
  271. "Indent an entire buffer using the default intenting scheme."
  272. (interactive)
  273. (save-excursion
  274. (delete-trailing-whitespace)
  275. (indent-region (point-min) (point-max) nil)
  276. (untabify (point-min) (point-max))))
  277.  
  278. (use-package calfw)
  279.  
  280. (use-package multi-term)
  281.  
  282. (use-package android-mode)
  283.  
  284. (use-package elogcat)
  285.  
  286. ;; Helm configuration
  287. (use-package helm
  288. :config
  289. (require 'helm-config)
  290. (setq helm-mode-fuzzy-match t
  291. helm-completion-in-region-fuzzy-match t)
  292. (setq helm-ff-skip-boring-files t
  293. helm-ff-file-name-history-use-recentf t)
  294. (setq helm-boring-file-regexp-list
  295. '("\\.git$" "^.$" "^..$"))
  296. ;; swap C-z and TAB in helm buffers
  297. ;; stolen from spacemacs
  298. (define-key helm-map (kbd "<tab>") 'helm-execute-persistent-action)
  299. (define-key helm-map (kbd "TAB") 'helm-execute-persistent-action)
  300. (define-key helm-map (kbd "C-z") 'helm-select-action)
  301. (helm-mode)
  302. :bind ("M-x" . helm-M-x)
  303. :bind ("C-x C-f" . helm-find-files)
  304. :bind ("C-x b" . helm-buffers-list)
  305. :bind ("C-c G" . helm-google-suggest)
  306. :bind ("C-c g" . helm-grep-do-git-grep)
  307. :bind (:map helm-map
  308. ("C-j" . helm-next-line)
  309. ("C-k" . helm-previous-line)
  310. ("C-h" . helm-next-source)
  311. ("C-j" . helm-next-line)
  312. ([escape] . helm-keyboard-quit)))
  313.  
  314. (use-package projectile
  315. :config
  316. (projectile-mode))
  317.  
  318. (use-package helm-projectile
  319. :config
  320. (helm-projectile-on))
  321.  
  322. (use-package helm-ag)
  323.  
  324. (use-package anzu
  325. :config
  326. (global-anzu-mode +1))
  327.  
  328. (use-package expand-region)
  329.  
  330. (use-package yasnippet
  331. :config
  332. (yas-global-mode 1))
  333.  
  334. (use-package yasnippet-snippets)
  335.  
  336. (use-package editorconfig
  337. :config
  338. (editorconfig-mode 1))
  339.  
  340. (use-package auto-complete
  341. :ensure t
  342. :config
  343. (ac-config-default)
  344. (setq ac-auto-show-menu 0.4)
  345. (add-to-list 'ac-modes 'rjsx-mode)
  346. (add-to-list 'ac-modes 'kotlin-mode)
  347. (global-auto-complete-mode t))
  348.  
  349. (use-package flycheck
  350. :ensure t
  351. :init (global-flycheck-mode))
  352.  
  353. (use-package flycheck-popup-tip)
  354.  
  355. (use-package rainbow-mode
  356. :config
  357. (rainbow-mode))
  358.  
  359. (use-package org)
  360.  
  361. (use-package rjsx-mode
  362. :config
  363. (add-to-list 'auto-mode-alist '("\\.jsx?$" . rjsx-mode)))
  364.  
  365.  
  366. (use-package json-mode)
  367.  
  368. (use-package csharp-mode)
  369.  
  370. (use-package kotlin-mode)
  371.  
  372. (use-package swift-mode)
  373.  
  374. (use-package php-mode)
  375.  
  376. (use-package yaml-mode
  377. :config
  378. (add-to-list 'auto-mode-alist '("\\.yml\\'" . yaml-mode)))
  379.  
  380. (use-package dockerfile-mode
  381. :config
  382. (add-to-list 'auto-mode-alist '("Dockerfile\\'" . dockerfile-mode)))
  383.  
  384. (use-package dumb-jump
  385. :config
  386. (dumb-jump-mode))
  387.  
  388. (use-package powerline
  389. :config
  390. (powerline-center-theme)
  391. (setq powerline-color1 "#073642")
  392. (setq powerline-color2 "#002b36")
  393. (remove-hook 'focus-out-hook 'powerline-unset-selected-window)
  394. (set-face-attribute 'mode-line nil
  395. :foreground "#fdf6e3"
  396. :background "#2aa198"
  397. :box nil)
  398. (set-face-attribute 'mode-line-inactive nil
  399. :box nil))
  400.  
  401. ;(set-face-background 'vertical-border accentcolor)
  402. ;(set-face-foreground 'vertical-border (face-background 'vertical-border))
  403.  
  404. (use-package which-key
  405. :config
  406. (setq which-key-idle-delay 0.5)
  407. (which-key-mode))
  408.  
  409. (use-package beacon
  410. :config
  411. (beacon-mode 1))
  412.  
  413. (use-package multiple-cursors
  414. :config
  415. (global-set-key (kbd "C-S-c C-S-c") 'mc/edit-lines)
  416. (global-set-key (kbd "C->") 'mc/mark-next-like-this)
  417. (global-set-key (kbd "C-<") 'mc/mark-previous-like-this))
  418.  
  419. (use-package avy
  420. :config
  421. (global-set-key (kbd "C-:") 'avy-goto-char))
  422.  
  423. (use-package delight
  424. :config
  425. (delight 'flycheck-mode " \u2714" 'flycheck)
  426. (delight 'auto-complete-mode " \u2630" 'auto-complete)
  427. (delight 'helm-mode " \u2388" 'helm)
  428. (delight 'editorconfig-mode nil 'editorconfig)
  429. (delight 'which-key-mode nil 'which-key)
  430. (delight 'beacon-mode nil 'beacon)
  431. (delight 'rainbow-mode nil 'rainbow-mode)
  432. (delight 'auto-revert-mode nil 'autorevert)
  433. (delight 'highlight-parentheses-mode nil 'highlight-parentheses)
  434. (delight 'eldoc-mode nil 'eldoc)
  435. (delight 'anzu-mode nil 'anzu))
  436.  
  437. (use-package nyan-mode
  438. :config
  439. (setq nyan-wavy-trail 't))
  440.  
  441. (use-package restart-emacs)
  442.  
  443. (use-package dashboard
  444. :config
  445. (dashboard-setup-startup-hook)
  446. (setq dashboard-banner-logo-title "Welcome back!")
  447. (setq dashboard-startup-banner 'logo)
  448. (setq dashboard-items '((recents . 5)
  449. (bookmarks . 5)
  450. (projects . 5)
  451. (agenda . 5)
  452. (registers . 5)))
  453. )
  454.  
  455. ;(global-unset-key "\C-z")
  456. ;(global-set-key (kbd "C-z") 'universal-argument)
  457. (global-linum-mode 1)
  458.  
  459.  
  460. ;; Completed initialization
  461. (message "Initialized successfully.")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement