X-Git-Url: https://code.delx.au/dotemacs/blobdiff_plain/33ec1aad063d30fd422b248fdaee20654cb8fc22..2bdd331d6ec61f949ffe22940be8aabd60902237:/lisp/my-gui.el?ds=sidebyside diff --git a/lisp/my-gui.el b/lisp/my-gui.el index 4408b31..9c3dce1 100644 --- a/lisp/my-gui.el +++ b/lisp/my-gui.el @@ -1,6 +1,24 @@ ;;; -*- lexical-binding: t -*- (require 'pastels-on-dark-theme) +(setq frame-background-mode 'dark) + +(setq default-frame-alist '((vertical-scroll-bars) + (background-mode . dark) + (alpha . 95) + (font . "monospace 11"))) + +(require 'ansi-color) +(setq ansi-color-names-vector + '("#000000" + "#fc391f" + "#31e722" + "#eaec23" + "#4856f7" + "#f935f8" + "#14f0f0" + "#e9ebeb")) +(setq ansi-color-map (ansi-color-make-color-map)) (menu-bar-mode -1) (tool-bar-mode -1) @@ -16,74 +34,25 @@ (show-paren-mode t) +(dolist (hook '(prog-mode-hook text-mode-hook)) + (add-hook hook (lambda () + (setq show-trailing-whitespace t)))) + +(setq shift-select-mode nil) +(delete-selection-mode t) +(setq sentence-end-double-space nil) + (require 'uniquify) (setq uniquify-strip-common-suffix t) (setq uniquify-buffer-name-style 'post-forward) -(add-to-list 'delete-frame-functions #'my/kill-buffers-if-deleting-last-frame) - -(setq frame-title-format '((:eval (funcall #'my/generate-frame-title)))) -(setq icon-title-format frame-title-format) - -(add-to-list 'post-command-hook #'my/terminal-update-title) - (defalias 'yes-or-no-p 'y-or-n-p) +(setq find-file-visit-truename t) -(defun my/frame-initial-frame-p (frame) - "Returns true if the given frame is the magic 'initial frame' that always exists in GUI emacs sessions" - (equal "initial_terminal" (terminal-name frame))) - -(defun my/frame-list-ignoring-initial-frame () - "Returns all frames except the magic 'initial frame' that always exists in GUI emacs sessions" - (filtered-frame-list (lambda (frame) (not (my/frame-initial-frame-p frame))))) - -(defun my/generate-frame-title () - "Returns a string like 'filename (dirname) - Emacs'" - (if (buffer-file-name) - (concat - (file-name-nondirectory (buffer-file-name)) - (if (buffer-modified-p) - " +") - " (" - (abbreviate-file-name (substring (file-name-directory (buffer-file-name)) 0 -1)) - ") - Emacs" - ) - (concat - (buffer-name) - (if (buffer-modified-p) - " +") - " - Emacs"))) - -(defun my/kill-buffer-safely (buffer) - "Kill the buffer if it is not special or modified" - (if (and - (not (string-match "^ " (buffer-name buffer))) - (not (equal "*Messages*" (buffer-name buffer))) - (or - (not (buffer-modified-p buffer)) - (null (buffer-file-name buffer)))) - (kill-buffer buffer))) - -(defun my/kill-buffers-if-deleting-last-frame (frame) - "Kill all buffers when closing the last frame" - (when (equal (list frame) (my/frame-list-ignoring-initial-frame)) - (dolist (buffer (buffer-list)) - (my/kill-buffer-safely buffer)))) +(setq disabled-command-function nil) -(defun my/kill-buffers-not-in-frame () - "Kill buffers which are not loaded into some frame" - (interactive) - (let ((kill-count 0)) - (dolist (buffer (buffer-list)) - (let* ((window (get-buffer-window buffer t)) - (frame (window-frame window))) - (if (or (null frame) (not (window-live-p window)) (my/frame-initial-frame-p frame)) - (if (my/kill-buffer-safely buffer) - (cl-incf kill-count))))) - (message "Killed %d buffers" kill-count))) +(setq save-interprogram-paste-before-kill t) -(defun my/terminal-update-title () - "If using a terminal frame then sends the escape codes to update the title." - (if (terminal-parameter (frame-terminal) 'terminal-initted) - (send-string-to-terminal (concat "\033]0;" (my/generate-frame-title) "\007")))) +(setq undo-limit 10000000) +(setq undo-strong-limit undo-limit)