2022-11-16 21:10:34 +00:00
|
|
|
;;; lisp/interface.el --- Changes to Emacs' interface -*- lexical-binding: t; -*-
|
|
|
|
;;; Commentary:
|
|
|
|
;;
|
|
|
|
;; Emacs has a little too much going on in it's interface by default - things
|
|
|
|
;; like GTK dialog boxes for quitting, a scroll bar, a menu bar, etc. are all
|
|
|
|
;; unnecessary for most users - so disabling that is done right in this file.
|
|
|
|
;; Additionally, the default theme isn't very aesthetic, so that obviously needs to change too.
|
|
|
|
;;
|
|
|
|
;;; Code:
|
2022-11-08 17:53:06 +00:00
|
|
|
|
|
|
|
;; Stop Emacs from resizing the window at startup
|
|
|
|
(setq frame-resize-pixelwise t)
|
|
|
|
|
|
|
|
;; Remove the startup screen
|
|
|
|
(setq inhibit-startup-message t)
|
|
|
|
|
2022-11-12 20:25:58 +00:00
|
|
|
;; Disable the GTK dialog that appears when exiting without saving
|
|
|
|
(setq use-dialog-box nil)
|
|
|
|
|
2022-11-08 17:53:06 +00:00
|
|
|
;; Enable line numbers globally
|
2023-07-01 16:19:53 +01:00
|
|
|
(setq display-line-numbers 'relative)
|
|
|
|
(add-hook 'prog-mode-hook 'display-line-numbers-mode)
|
2022-11-08 17:53:06 +00:00
|
|
|
|
2023-07-01 13:23:39 +01:00
|
|
|
;; Modeline
|
|
|
|
(use-package nano-modeline)
|
|
|
|
(add-hook 'prog-mode-hook #'nano-modeline-prog-mode)
|
2023-07-01 16:19:53 +01:00
|
|
|
(add-hook 'org-mode-hook #'nano-modeline-org-mode)
|
|
|
|
|
|
|
|
;; Window dividers + fringe
|
|
|
|
(set-fringe-mode 0)
|
|
|
|
(window-divider-mode 1)
|
2023-07-01 13:23:39 +01:00
|
|
|
|
2022-11-08 17:53:06 +00:00
|
|
|
;; Add a nice border around Emacs
|
|
|
|
(modify-all-frames-parameters
|
2022-12-18 19:28:44 +00:00
|
|
|
'((right-divider-width . 15)
|
|
|
|
(internal-border-width . 15)))
|
2023-07-01 16:42:05 +01:00
|
|
|
|
2022-11-20 08:03:40 +00:00
|
|
|
;; vertico - An amazing search engine!
|
|
|
|
(use-package vertico
|
|
|
|
:init
|
|
|
|
(vertico-mode 1))
|
|
|
|
|
2022-11-16 17:07:28 +00:00
|
|
|
;; Use the `orderless' completion mechanism
|
|
|
|
(use-package orderless
|
2022-11-20 08:03:40 +00:00
|
|
|
:after vertico
|
2022-11-16 17:07:28 +00:00
|
|
|
:init
|
|
|
|
(setq completion-styles '(orderless basic)
|
|
|
|
completion-category-defaults nil
|
|
|
|
completion-category-overrides '((file (styles basic partial-completion)))))
|
|
|
|
|
2022-11-08 17:53:07 +00:00
|
|
|
;; magit - A beautiful git porcelain for Emacs
|
|
|
|
(use-package magit)
|
|
|
|
|
|
|
|
;; which-key - a popup which displays available keybindings
|
2022-11-20 08:03:40 +00:00
|
|
|
(use-package which-key
|
2022-11-08 22:05:28 +00:00
|
|
|
:init
|
2022-11-20 08:03:40 +00:00
|
|
|
(which-key-mode)
|
|
|
|
:custom
|
|
|
|
(which-key-idle-delay 0.1) ; Make the popup appear faster
|
|
|
|
(which-key-separator " - ")) ; Change the seperator which-key uses
|
2022-11-08 22:05:28 +00:00
|
|
|
|
|
|
|
(use-package diredfl ; Colourise dired!
|
|
|
|
:hook dired-mode)
|
2022-11-16 21:10:34 +00:00
|
|
|
|
|
|
|
;;; interface.el ends here
|