Browse Source

More improvements

master
Juan Placencia 4 years ago
parent
commit
2339f72ff2
17 changed files with 180 additions and 54 deletions
  1. +11
    -10
      uno/bootstrap.org
  2. +1
    -1
      uno/modules/buffer.org
  3. +1
    -1
      uno/modules/dev/lsp.org
  4. +1
    -0
      uno/modules/dev/project.org
  5. +7
    -3
      uno/modules/dev/shell.org
  6. +9
    -3
      uno/modules/doc/org.org
  7. +2
    -0
      uno/modules/key/vim.org
  8. +7
    -0
      uno/modules/lang/+index.org
  9. +28
    -0
      uno/modules/lang/js/+index.org
  10. +8
    -2
      uno/modules/lang/js/ts.org
  11. +39
    -7
      uno/modules/mode.org
  12. +30
    -0
      uno/modules/ui/+index.org
  13. +1
    -1
      uno/modules/ui/dashboard.org
  14. +0
    -23
      uno/modules/ui/emacs.org
  15. +20
    -1
      uno/modules/ui/theme.org
  16. +13
    -0
      uno/modules/ui/window.org
  17. +2
    -2
      uno/modules/window.org

+ 11
- 10
uno/bootstrap.org View File

@ -40,15 +40,16 @@ Run bootstrap code for =straight= and have =use-package= ready.
(setq straight-use-package-by-default t)
(let ((bootstrap-file
(uno-emacs-path "straight/repos/straight.el/bootstrap.el"))
(bootstrap-version 5))
(uno-emacs-path "straight/repos/straight.el/bootstrap.el"))
(bootstrap-version 5))
(unless (file-exists-p bootstrap-file)
(with-current-buffer
(url-retrieve-synchronously
"https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el"
'silent 'inhibit-cookies) (goto-char (point-max))
(eval-print-last-sexp)))
(load bootstrap-file nil))
(url-retrieve-synchronously
"https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el"
'silent 'inhibit-cookies)
(goto-char (point-max))
(eval-print-last-sexp)))
(load bootstrap-file nil 'nomessage))
(straight-use-package 'use-package)
@ -74,13 +75,13 @@ Set up general and leader key binds that are used throughout.
"Mode leader key.")
:config
(general-create-definer uno-define
:states '(motion normal visual))
:states 'motion)
(general-create-definer uno-leader-define
:prefix uno-leader-key
:states '(motion normal visual))
:states 'motion)
(general-create-definer uno-mode-leader-define
:prefix uno-mode-leader-key
:states '(motion normal visual))
:states 'motion)
(uno-leader-define "" nil)
(uno-mode-leader-define "" nil))
#+END_SRC

+ 1
- 1
uno/modules/buffer.org View File

@ -74,5 +74,5 @@ Define useful and useless buffers. Borrowed from Spacemacs.
(interactive)
(with-current-buffer (messages-buffer)
(goto-char (point-max))
(switch-to-buffer (current-buffer)))))
(pop-to-buffer (current-buffer)))))
#+END_SRC

+ 1
- 1
uno/modules/dev/lsp.org View File

@ -25,8 +25,8 @@ Define LSP dev package.
:general
(uno-mode-leader-define
:keymaps 'lsp-mode-map
"a" '(lsp-execute-code-action :which-key "Execute action")
"h" '(:ignore t :which-key "Help")
"ha" '(lsp-execute-code-action :which-key "Execute action")
"hh" '(lsp-describe-thing-at-point :which-key "Describe")
"r" '(:ignore t :which-key "Refactor")
"rr" '(lsp-rename :which-key "Rename"))

+ 1
- 0
uno/modules/dev/project.org View File

@ -26,6 +26,7 @@ Define project dev package.
(uno-leader-define
"p" '(:ignore t :which-key "Project")
"pb" '(projectile-switch-to-buffer :which-key "Switch project buffer")
"pd" '(projectile-remove-known-project :which-key "Remove project")
"pf" '(projectile-find-file :which-key "Open project file")
"pk" '(projectile-kill-buffers :which-key "Kill project buffers")
"pp" '(projectile-switch-project :which-key "Switch project")

+ 7
- 3
uno/modules/dev/shell.org View File

@ -21,6 +21,8 @@ Configure eshell package.
:after uno-dev-shell
:custom
(eshell-banner-message "")
:hook
(eshell-mode . uno/dev/shell/eshell-alias)
:general
(uno-leader-define
"se" '(eshell :which-key "Eshell"))
@ -28,9 +30,11 @@ Configure eshell package.
(defun eshell/clear ()
(let ((inhibit-read-only t))
(erase-buffer)))
(eshell/alias "e" "find-file $*")
(eshell/alias "hgrep" "history | grep $*")
(eshell/alias "la" "ls -lAh $*"))
(defun uno/dev/shell/eshell-alias ()
"Set up aliases for commands."
(eshell/alias "e" "find-file $1")
(eshell/alias "hgrep" "history | grep $*")
(eshell/alias "la" "ls -lAh $*")))
(use-package eshell
:after (uno-dev-shell projectile)

+ 9
- 3
uno/modules/doc/org.org View File

@ -48,7 +48,9 @@ Define Org document package.
'(org-level-3 ((t (:inherit outline-3 :height 1.4))))
'(org-level-4 ((t (:inherit outline-4 :height 1.3))))
'(org-level-4 ((t (:inherit outline-5 :height 1.2))))
'(org-level-5 ((t (:inherit outline-6 :height 1.1))))))))
'(org-level-5 ((t (:inherit outline-6 :height 1.1)))))))
:config
(require 'ox-beamer))
(use-package org-superstar
:if (display-graphic-p)
@ -67,14 +69,12 @@ Define Org document package.
(use-package org-present
:after uno-doc-org
:hook
(org-present-mode . evil-motion-state)
(org-present-mode . org-display-inline-images)
(org-present-mode . org-present-big)
(org-present-mode . org-present-hide-cursor)
(org-present-mode . org-present-read-only)
(org-present-mode . uno/doc/org/present)
(org-present-mode-quit . blink-cursor-mode)
(org-present-mode-quit . evil-normal-state)
(org-present-mode-quit . fringe-mode)
(org-present-mode-quit . org-present-read-write)
(org-present-mode-quit . org-present-show-cursor)
@ -102,6 +102,12 @@ Define Org document package.
(unless org-startup-with-inline-images
(org-remove-inline-images))))
(use-package org-present
:after (uno-doc-org evil)
:hook
(org-present-mode . evil-motion-state)
(org-present-mode-quit . evil-normal-state))
(use-package hide-mode-line
:after (uno-doc-org org-present)
:hook

+ 2
- 0
uno/modules/key/vim.org View File

@ -21,6 +21,8 @@ Define Vim key package.
(evil-split-window-before t)
(evil-vsplit-window-right t)
(evil-want-integration t)
:hook
(uno-special-mode . evil-motion-state)
:general
(uno-define ";" 'evil-ex)
:init

+ 7
- 0
uno/modules/lang/+index.org View File

@ -11,3 +11,10 @@ Define language package.
:config
(provide 'uno-lang))
#+END_SRC
* JSON
#+BEGIN_SRC emacs-lisp
(use-package json-mode
:after uno-lang)
#+END_SRC

+ 28
- 0
uno/modules/lang/js/+index.org View File

@ -11,3 +11,31 @@ Define JavaScript language package.
:config
(provide 'uno-lang-js))
#+END_SRC
#+BEGIN_SRC emacs-lisp
(use-package emacs
:after uno-lang-js
:init
(defvar uno-lang-js-ligatures '("=="
"==="
"!=="
"!="
"=>"
"<>"
"</"
"/>"
"</>"
"__"
"/*"
"*/"
"**"
"??"
"?."
"//"
">="
"<="
"..."
"||"
"&&")
"Ligature symbols for JS."))
#+END_SRC

+ 8
- 2
uno/modules/lang/js/ts.org View File

@ -23,13 +23,19 @@ Define TypeScript JavaScript language package.
:init
(define-derived-mode typescript-tsx-mode web-mode "typescript-tsx")
(push '("\\.tsx\\'" . typescript-tsx-mode) auto-mode-alist))
(use-package emacs
:after (uno-lang-js-ts ligature typescript-mode)
:config
(ligature-set-ligatures 'typescript-mode uno-lang-js-ligatures)
(ligature-set-ligatures 'typescript-tsx-mode uno-lang-js-ligatures))
#+END_SRC
* LSP Integration
#+BEGIN_SRC emacs-lisp
(use-package typescript-mode
:after (uno-lang-js-ts uno-lang-js-yarn)
(use-package emacs
:after (uno-lang-js-ts uno-lang-js-yarn typescript-mode)
:hook
(uno-lang-js-yarn . uno/lang/js/ts/yarn)
((typescript-mode typescript-tsx-mode) . uno/lang/js/yarn/check)

+ 39
- 7
uno/modules/mode.org View File

@ -12,28 +12,60 @@ Define core mode package.
(provide 'uno-mode))
#+END_SRC
* Program/Text Mode
* Program Mode
Define custom =prog-mode= and =text-mode= as there are some libraries that do not abide.
Define custom =prog-mode= as there are some libraries that do not abide.
#+BEGIN_SRC emacs-lisp
(use-package emacs
:after uno-mode
:hook
((conf-mode prog-mode) . uno/run-prog-mode-hook)
(text-mode . uno/run-text-mode-hook)
:init
(defvar uno--prog-based-modes '(nxml-mode)
(defvar uno-prog-based-modes '(nxml-mode)
"List of prog based modes.")
(defun uno/add-prog-mode (mode)
"Consider MODE prog based."
(push mode uno--prog-based-modes))
(push mode uno-prog-based-modes))
(defun uno/run-prog-mode-hook ()
"Configure program mode."
(run-hooks 'uno-prog-mode-hook))
(run-hooks 'uno-prog-mode-hook)))
#+END_SRC
* Text Mode
Define custom =text-mode= as there are some libraries that do not abide.
#+BEGIN_SRC emacs-lisp
(use-package emacs
:after uno-mode
:hook
(text-mode . uno/run-text-mode-hook)
:init
(defun uno/run-text-mode-hook ()
"Configure text mode, checking for prog mode."
(if (member major-mode uno--prog-based-modes)
(if (member major-mode uno-prog-based-modes)
(uno/run-prog-mode-hook)
(run-hooks 'uno-text-mode-hook))))
#+END_SRC
* Special Mode
Define custom =special-mode= as there are some libraries that do not abide.
#+BEGIN_SRC emacs-lisp
(use-package emacs
:after uno-mode
:hook
(special-mode . uno/run-special-mode-hook)
:init
(defvar uno-non-special-based-modes nil
"List of special based modes to exclude.")
(defun uno/exclude-special-mode (mode)
"Exclude MODE as special based."
(push mode uno-non-special-based-modes))
(defun uno/run-special-mode-hook ()
"Configure program mode."
(unless (member major-mode uno-non-special-based-modes)
(run-hooks 'uno-special-mode-hook))))
#+END_SRC

+ 30
- 0
uno/modules/ui/+index.org View File

@ -21,6 +21,16 @@ Add support for icons via =all-the-icons=.
:after uno-ui)
#+END_SRC
* Ligatures
#+BEGIN_SRC emacs-lisp
(use-package ligature
:after uno-ui
:straight (:type git :host github :repo "mickeynp/ligature.el")
:config
(global-ligature-mode 1))
#+END_SRC
* Which Key
#+BEGIN_SRC emacs-lisp
@ -29,3 +39,23 @@ Add support for icons via =all-the-icons=.
:config
(which-key-mode 1))
#+END_SRC
* Olivetti
#+BEGIN_SRC emacs-lisp
(use-package olivetti
:after uno-ui
:hook
(uno-prog-mode . uno/ui/olivetti-prog)
(uno-text-mode . uno/ui/olivetti-text)
:general
(uno-leader-define
"tw" '(olivetti-mode :which-key "Toggle writing mode"))
:init
(defun uno/ui/olivetti-prog ()
"Configure Olivetti for prog mode."
(setq-local olivetti-body-width 85))
(defun uno/ui/olivetti-text ()
"Configure Olivetti for text mode."
(setq-local olivetti-body-width 0.6)))
#+END_SRC

+ 1
- 1
uno/modules/ui/dashboard.org View File

@ -42,7 +42,7 @@ Define UI dashboard package.
(dashboard-setup-startup-hook)
:config
(uno/add-useless-buffer "\\*dashboard\\*")
(uno/ui/exclude-center-cursor 'dashboard-mode))
(uno/exclude-special-mode 'dashboard-mode))
(use-package dashboard
:after (uno-ui-dashboard projectile)

+ 0
- 23
uno/modules/ui/emacs.org View File

@ -44,26 +44,3 @@ Define UI Emacs package.
(menu-bar-mode -1)
(tool-bar-mode -1))
#+END_SRC
* Centered Cursor
Hide UI items, set up relative line numbers, and highlight current line.
#+BEGIN_SRC emacs-lisp
(use-package emacs
:after uno-ui-emacs
:init
(defvar uno--ui-center-cursor-blacklist nil
"Major modes to exclude center cursor mode.")
(defun uno/ui/exclude-center-cursor (mode)
"Exclude major MODE from center cursor."
(push mode uno--ui-center-cursor-blacklist))
(defun uno/ui/center-cursor ()
"Set up center cursor unless excluded."
(unless (member major-mode uno--ui-center-cursor-blacklist)
(setq-local
scroll-preserve-screen-position t
scroll-conservatively 0
maximum-scroll-margin 0.5
scroll-margin 99999))))
#+END_SRC

+ 20
- 1
uno/modules/ui/theme.org View File

@ -12,7 +12,7 @@ Define UI theme package.
(provide 'uno-ui-theme))
#+END_SRC
* Theme
* Doom Theme
#+BEGIN_SRC emacs-lisp
(use-package doom-themes
@ -26,3 +26,22 @@ Define UI theme package.
(when (display-graphic-p)
(doom-themes-treemacs-config)))
#+END_SRC
* Font
#+BEGIN_SRC emacs-lisp
(use-package emacs
:after uno-ui-theme
:if (display-graphic-p)
:config
(let ((-fixed-font "Victor Mono")
(-variable-font "PT Sans"))
(when (x-list-fonts -fixed-font)
(set-face-attribute 'default nil
:family -fixed-font
:height 100
:weight 'medium)
(set-face-attribute 'fixed-pitch nil :family -fixed-font))
(when (x-list-fonts -variable-font)
(set-face-attribute 'variable-pitch nil :family -variable-font))))
#+END_SRC

+ 13
- 0
uno/modules/ui/window.org View File

@ -45,3 +45,16 @@ Define UI window package.
:config
(winum-mode 1))
#+END_SRC
* Centered Cursor
Hide UI items, set up relative line numbers, and highlight current line.
#+BEGIN_SRC emacs-lisp
(use-package centered-cursor-mode
:after uno-ui-window
:custom
(ccm-recenter-at-end-of-file t)
:hook
((uno-special-mode uno-prog-mode uno-text-mode) . centered-cursor-mode))
#+END_SRC

+ 2
- 2
uno/modules/window.org View File

@ -27,8 +27,8 @@ Define where certain buffers go where in the window.
(let* ((-side (if (member side '(top left right)) side 'bottom))
(-slot (if (integerp slot) slot 0))
(-size (if (member -side '(left right))
'window-height
'window-width)))
'window-width
'window-height)))
(push `(,buffer
(display-buffer-in-side-window)
(,-size . 0.25)

Loading…
Cancel
Save