.emacs-mac 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. ;;; Slime/etc
  2. (setq inferior-lisp-program "/opt/homebrew/bin/sbcl")
  3. (load (expand-file-name "~/.local/opt/quicklisp/slime-helper.el"))
  4. ; Smooth mouse scroll a bit
  5. (setq mouse-wheel-scroll-amount '(1 ((shift) . 1) ((control) . nil)))
  6. (setq mouse-wheel-progressive-speed nil)
  7. ;; normal home/end behavior
  8. (global-set-key (kbd "<home>") 'beginning-of-line)
  9. (global-set-key (kbd "<end>") 'end-of-line)
  10. ;;; erc config
  11. (setq erc-nick "speskk")
  12. (defvar bootstrap-version)
  13. (let ((bootstrap-file
  14. (expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
  15. (bootstrap-version 5))
  16. (unless (file-exists-p bootstrap-file)
  17. (with-current-buffer
  18. (url-retrieve-synchronously
  19. "https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el"
  20. 'silent 'inhibit-cookies)
  21. (goto-char (point-max))
  22. (eval-print-last-sexp)))
  23. (load bootstrap-file nil 'nomessage))
  24. ;; packages to install and load
  25. (straight-use-package 'auto-complete)
  26. (straight-use-package '(nano-theme :type git :host github
  27. :repo "rougier/nano-theme"))
  28. ;;(straight-use-package
  29. ;; '(nano-emacs :type git :host github :repo "rougier/nano-emacs"))
  30. (straight-use-package
  31. '(slime-company :type git :host github :repo "anwyn/slime-company"))
  32. (straight-use-package 'sublimity)
  33. (straight-use-package 'dashboard)
  34. (straight-use-package 'all-the-icons)
  35. (straight-use-package 'neotree)
  36. (straight-use-package 'rust-mode)
  37. (straight-use-package 'powerline)
  38. (straight-use-package 'markdown-mode)
  39. (straight-use-package 'moe-theme)
  40. (straight-use-package 'ample-theme)
  41. (straight-use-package 'slime)
  42. (straight-use-package 'ac-slime)
  43. ;; Not enabled/required by default
  44. (straight-use-package 'evil)
  45. (straight-use-package 'dimmer)
  46. (straight-use-package 'magit)
  47. (require 'dimmer)
  48. (setq dimmer-fraction 0.4)
  49. (dimmer-mode t)
  50. ;; always enable ido mode
  51. (require 'ido)
  52. (ido-mode t)
  53. (require 'evil)
  54. (evil-mode 1)
  55. ;; Enable tab behavior like vi
  56. (straight-use-package '(evil-tabs :type git :host github
  57. :repo "krisajenkins/evil-tabs"))
  58. (require 'evil-tabs)
  59. (global-evil-tabs-mode t)
  60. (require 'auto-complete)
  61. (global-auto-complete-mode t)
  62. (require 'slime)
  63. (require 'ac-slime)
  64. (slime-setup '(slime-fancy ac-slime))
  65. (add-hook 'slime-mode-hook 'set-up-slime-ac)
  66. (add-hook 'slime-repl-mode-hook 'set-up-slime-ac)
  67. (eval-after-load "auto-complete"
  68. '(add-to-list 'ac-modes 'slime-repl-mode))
  69. (require 'markdown-mode)
  70. (require 'powerline)
  71. (powerline-default-theme)
  72. (require 'neotree)
  73. (global-set-key [f8] 'neotree-toggle)
  74. (require 'dashboard)
  75. (dashboard-setup-startup-hook)
  76. (require 'all-the-icons)
  77. (require 'sublimity)
  78. (require 'sublimity-scroll)
  79. (require 'sublimity-map) ;; experimental
  80. (require 'sublimity-attractive)
  81. (setq sublimity-scroll-weight 10
  82. sublimity-scroll-drift-length 5)
  83. (setq sublimity-map-size 30)
  84. (setq sublimity-map-fraction 0.3)
  85. (setq sublimity-map-text-scale -5)
  86. (sublimity-map-set-delay nil)
  87. (setq sublimity-attractive-centering-width nil)
  88. (add-to-list 'default-frame-alist '(font . "GohuFont" ))
  89. (set-face-attribute 'default t :font "GohuFont" )
  90. (setq backup-directory-alist
  91. `((".*" . ,temporary-file-directory)))
  92. (setq auto-save-file-name-transforms
  93. `((".*" ,temporary-file-directory t)))
  94. ;(load-theme 'moe-light t)
  95. (load-theme 'nano t)
  96. (nano-dark)
  97. ;; Allow M-up / M-down behavior to switch windows
  98. (windmove-default-keybindings 'meta)
  99. (display-time-mode t)
  100. (display-line-numbers-mode t)
  101. ;;; Custom commands
  102. (load "/Users/swatson/.emacs.d/.erc-auth.el")
  103. (defun connect-to-libera-erc () (interactive)
  104. (erc :server "irc.libera.chat" :port "6667"
  105. :nick "speskk" :password *libera-chat*))
  106. (custom-set-variables
  107. ;; custom-set-variables was added by Custom.
  108. ;; If you edit it by hand, you could mess it up, so be careful.
  109. ;; Your init file should contain only one such instance.
  110. ;; If there is more than one, they won't work right.
  111. '(custom-safe-themes
  112. '("01106ca9b4446341ecb86a76b9db48f1100e2eb13980aa0ec6f6adf8e69fd9a7" "bf798e9e8ff00d4bf2512597f36e5a135ce48e477ce88a0764cfb5d8104e8163" "0feb7052df6cfc1733c1087d3876c26c66410e5f1337b039be44cb406b6187c6" default))
  113. '(display-time-mode t)
  114. '(frame-background-mode 'dark))
  115. (custom-set-faces
  116. ;; custom-set-faces was added by Custom.
  117. ;; If you edit it by hand, you could mess it up, so be careful.
  118. ;; Your init file should contain only one such instance.
  119. ;; If there is more than one, they won't work right.
  120. )