mirror of
https://github.com/emacscollective/emacs.g.git
synced 2025-05-16 12:08:45 -04:00
152 lines
4.9 KiB
EmacsLisp
152 lines
4.9 KiB
EmacsLisp
;;; init.el --- user-init-file -*- lexical-binding: t -*-
|
|
;;; Early birds
|
|
(progn ; startup
|
|
(defvar before-user-init-time (current-time)
|
|
"Value of `current-time' when Emacs begins loading `user-init-file'.")
|
|
(message "Loading Emacs...done (%.3fs)"
|
|
(float-time (time-subtract before-user-init-time
|
|
before-init-time)))
|
|
(setq user-init-file (or load-file-name buffer-file-name))
|
|
(setq user-emacs-directory (file-name-directory user-init-file))
|
|
(message "Loading %s..." user-init-file)
|
|
(setq package-enable-at-startup nil)
|
|
(setq inhibit-startup-buffer-menu t)
|
|
(setq inhibit-startup-screen t)
|
|
(setq inhibit-startup-echo-area-message "locutus")
|
|
(setq initial-buffer-choice t)
|
|
(setq initial-scratch-message "")
|
|
(setq load-prefer-newer t)
|
|
(scroll-bar-mode 0)
|
|
(tool-bar-mode 0)
|
|
(menu-bar-mode 0))
|
|
|
|
(progn ; `borg'
|
|
(add-to-list 'load-path (expand-file-name "lib/borg" user-emacs-directory))
|
|
(require 'borg)
|
|
(borg-initialize))
|
|
|
|
(progn ; `use-package'
|
|
(require 'use-package)
|
|
(setq use-package-verbose t))
|
|
|
|
(use-package auto-compile
|
|
:demand t
|
|
:config
|
|
(auto-compile-on-load-mode)
|
|
(auto-compile-on-save-mode)
|
|
(setq auto-compile-display-buffer nil)
|
|
(setq auto-compile-mode-line-counter t)
|
|
(setq auto-compile-source-recreate-deletes-dest t)
|
|
(setq auto-compile-toggle-deletes-nonlib-dest t)
|
|
(setq auto-compile-update-autoloads t)
|
|
(add-hook 'auto-compile-inhibit-compile-hook
|
|
'auto-compile-inhibit-compile-detached-git-head))
|
|
|
|
(use-package epkg
|
|
:defer t
|
|
:init (setq epkg-repository
|
|
(expand-file-name "var/epkgs/" user-emacs-directory)))
|
|
|
|
(use-package custom
|
|
:config
|
|
(setq custom-file (expand-file-name "custom.el" user-emacs-directory))
|
|
(when (file-exists-p custom-file)
|
|
(load custom-file)))
|
|
|
|
(use-package server
|
|
:config (or (server-running-p) (server-mode)))
|
|
|
|
(progn ; startup
|
|
(message "Loading early birds...done (%.3fs)"
|
|
(float-time (time-subtract (current-time)
|
|
before-user-init-time))))
|
|
|
|
;;; Long tail
|
|
|
|
(use-package dash
|
|
:config (dash-enable-font-lock))
|
|
|
|
(use-package diff-hl
|
|
:config
|
|
(setq diff-hl-draw-borders nil)
|
|
(global-diff-hl-mode)
|
|
(add-hook 'magit-post-refresh-hook 'diff-hl-magit-post-refresh t))
|
|
|
|
(use-package eldoc
|
|
:config (global-eldoc-mode))
|
|
|
|
(use-package help
|
|
:defer t
|
|
:config (temp-buffer-resize-mode))
|
|
|
|
(use-package magit
|
|
:defer t
|
|
:bind (("C-x g" . magit-status)
|
|
("C-x M-g" . magit-dispatch-popup))
|
|
:config
|
|
(magit-add-section-hook 'magit-status-sections-hook
|
|
'magit-insert-modules-unpulled-from-upstream
|
|
'magit-insert-unpulled-from-upstream)
|
|
(magit-add-section-hook 'magit-status-sections-hook
|
|
'magit-insert-modules-unpulled-from-pushremote
|
|
'magit-insert-unpulled-from-upstream)
|
|
(magit-add-section-hook 'magit-status-sections-hook
|
|
'magit-insert-modules-unpushed-to-upstream
|
|
'magit-insert-unpulled-from-upstream)
|
|
(magit-add-section-hook 'magit-status-sections-hook
|
|
'magit-insert-modules-unpushed-to-pushremote
|
|
'magit-insert-unpulled-from-upstream)
|
|
(magit-add-section-hook 'magit-status-sections-hook
|
|
'magit-insert-submodules
|
|
'magit-insert-unpulled-from-upstream))
|
|
|
|
(use-package paren
|
|
:config (show-paren-mode))
|
|
|
|
(use-package prog-mode
|
|
:config (global-prettify-symbols-mode))
|
|
|
|
(use-package recentf
|
|
:demand t
|
|
:config (add-to-list 'recentf-exclude "^/\\(?:ssh\\|su\\|sudo\\)?:"))
|
|
|
|
(use-package savehist
|
|
:config (savehist-mode))
|
|
|
|
(use-package saveplace
|
|
:config (save-place-mode))
|
|
|
|
(use-package simple
|
|
:config (column-number-mode))
|
|
|
|
(use-package tramp
|
|
:defer t
|
|
:config
|
|
(add-to-list 'tramp-default-proxies-alist '(nil "\\`root\\'" "/ssh:%h:"))
|
|
(add-to-list 'tramp-default-proxies-alist '("localhost" nil nil))
|
|
(add-to-list 'tramp-default-proxies-alist
|
|
(list (regexp-quote (system-name)) nil nil)))
|
|
|
|
(progn ; startup
|
|
(message "Loading %s...done (%.3fs)" user-init-file
|
|
(float-time (time-subtract (current-time)
|
|
before-user-init-time)))
|
|
(add-hook 'after-init-hook
|
|
(lambda ()
|
|
(message
|
|
"Loading %s...done (%.3fs) [after-init]" user-init-file
|
|
(float-time (time-subtract (current-time)
|
|
before-user-init-time))))
|
|
t))
|
|
|
|
(progn ; personalize
|
|
(let ((file (expand-file-name (concat (user-real-login-name) ".el")
|
|
user-emacs-directory)))
|
|
(when (file-exists-p file)
|
|
(load file))))
|
|
|
|
;; Local Variables:
|
|
;; indent-tabs-mode: nil
|
|
;; End:
|
|
;;; init.el ends here
|