From c65cf688fca3075f9d194e1ca8b954f9ddfd983c Mon Sep 17 00:00:00 2001 From: dx Date: Fri, 24 Apr 2020 02:53:57 +0100 Subject: ~doom.d -> Doom/.doom.d Proper naming, GNU/Stow style. --- .../.doom.d/modules/private/gentemplate/README.org | 19 +++++++ Doom/.doom.d/modules/private/gentemplate/config.el | 31 +++++++++++ Doom/.doom.d/modules/private/ocaml/README.org | 16 ++++++ Doom/.doom.d/modules/private/ocaml/config.el | 20 +++++++ Doom/.doom.d/modules/private/ocaml/packages.el | 6 +++ Doom/.doom.d/modules/private/oreoline/README.org | 13 +++++ Doom/.doom.d/modules/private/oreoline/config.el | 62 ++++++++++++++++++++++ Doom/.doom.d/modules/private/oreoline/packages.el | 5 ++ 8 files changed, 172 insertions(+) create mode 100644 Doom/.doom.d/modules/private/gentemplate/README.org create mode 100644 Doom/.doom.d/modules/private/gentemplate/config.el create mode 100644 Doom/.doom.d/modules/private/ocaml/README.org create mode 100644 Doom/.doom.d/modules/private/ocaml/config.el create mode 100644 Doom/.doom.d/modules/private/ocaml/packages.el create mode 100644 Doom/.doom.d/modules/private/oreoline/README.org create mode 100644 Doom/.doom.d/modules/private/oreoline/config.el create mode 100644 Doom/.doom.d/modules/private/oreoline/packages.el (limited to 'Doom/.doom.d/modules/private') diff --git a/Doom/.doom.d/modules/private/gentemplate/README.org b/Doom/.doom.d/modules/private/gentemplate/README.org new file mode 100644 index 0000000..c09f20e --- /dev/null +++ b/Doom/.doom.d/modules/private/gentemplate/README.org @@ -0,0 +1,19 @@ +#+TITLE: private/gentemplate +#+DATE: March 17, 2020 + +* Description +This module allows users to clone templates from my Github to specific machines. +These templates allow for quick and easy setup for languages or frameworks where +this sort of thing isn't very nice to do (for example C++). + +This module is used through the main function =+gentemplate/generate-template=. +It will ask what template you want to use then where to put it, finally doing +the necessary work to get you that template. You may mutate the variables +=+gentemplate/template-list= and =+gentemplate/profile-url= to customise your +templates. +* Prerequisites +- git +* Requirements +- ivy +- magit +- cl diff --git a/Doom/.doom.d/modules/private/gentemplate/config.el b/Doom/.doom.d/modules/private/gentemplate/config.el new file mode 100644 index 0000000..5f00084 --- /dev/null +++ b/Doom/.doom.d/modules/private/gentemplate/config.el @@ -0,0 +1,31 @@ +;;; private/gentemplate/config.el -*- lexical-binding: t; -*- + +(require 'cl) + +(setq +gentemplate/template-list (list "CTemplate" "CPPTemplate" "PythonTemplate" "NodeTemplate" "ArduinoTemplate" "JavaTemplate")) +(setq +gentemplate/profile-url "https://github.com/oreodave/") + +(defun +gentemplate/offline () + (eq (list-length (network-interface-list)) 1)) + +(defun +gentemplate/copy-template (template-name dest) + "Copy a template project via it's `template-name' to a folder called `dest'" + (copy-directory (expand-file-name (concat "~/Code/Templates/" template-name)) dest)) + +(after! (ivy magit-clone) + (defun +gentemplate/download-template (template-name dest) + "Download a given template via its `template-name' to the `dest' folder" + (magit-clone-regular (concat +gentemplate/profile-url template-name) dest nil)) + + (defun +gentemplate/generate-template () + (interactive) + (ivy-read + "Enter template: " + +gentemplate/template-list + :action + (lambda (template-name) + (let ((dir (read-directory-name "Enter directory to download to: ")) + (offline (+gentemplate/offline))) + (if offline + (+gentemplate/copy-template template-name dir) + (+gentemplate/download-template template-name dir))))))) diff --git a/Doom/.doom.d/modules/private/ocaml/README.org b/Doom/.doom.d/modules/private/ocaml/README.org new file mode 100644 index 0000000..de29e59 --- /dev/null +++ b/Doom/.doom.d/modules/private/ocaml/README.org @@ -0,0 +1,16 @@ +#+TITLE: private/ocaml +#+DATE: March 29, 2020 + +* Description +My own ocaml module. Has LSP support, which is well defined. + +Pretty minimalist and allows for quick coding. Uses the terminal a lot so I'd +suggest using vterm as well for quick access to the terminal. +* Prerequisites +- ocaml compiler +- opam +- ocamllsp (from opam) (if LSP) +* Requirements +- lsp +- tuareg +- utop diff --git a/Doom/.doom.d/modules/private/ocaml/config.el b/Doom/.doom.d/modules/private/ocaml/config.el new file mode 100644 index 0000000..df138ad --- /dev/null +++ b/Doom/.doom.d/modules/private/ocaml/config.el @@ -0,0 +1,20 @@ +;;; private/ocaml/config.el -*- lexical-binding: t; -*- + +(use-package! utop + :config + (map! + :localleader + :map tuareg-mode-map + :desc "Repl" "c" #'utop + (:prefix ("e" . "eval") + :desc "Buffer" "b" #'utop-eval-buffer + :desc "Region" "r" #'utop-eval-region))) + + +(when (featurep! +lsp) + (after! lsp + (lsp-register-client + (make-lsp-client :new-connection (lsp-stdio-connection "ocamllsp") + :major-modes '(tuareg-mode) + :server-id 'ocaml-lsp)) + (add-hook 'tuareg-mode-hook #'lsp!))) diff --git a/Doom/.doom.d/modules/private/ocaml/packages.el b/Doom/.doom.d/modules/private/ocaml/packages.el new file mode 100644 index 0000000..61f1c8d --- /dev/null +++ b/Doom/.doom.d/modules/private/ocaml/packages.el @@ -0,0 +1,6 @@ +;; -*- no-byte-compile: t; -*- +;;; private/ocaml/packages.el + + +(package! tuareg) +(package! utop) diff --git a/Doom/.doom.d/modules/private/oreoline/README.org b/Doom/.doom.d/modules/private/oreoline/README.org new file mode 100644 index 0000000..57b24e9 --- /dev/null +++ b/Doom/.doom.d/modules/private/oreoline/README.org @@ -0,0 +1,13 @@ +#+TITLE: private/oreoline +#+DATE: March 29, 2020 + +* Description +My very own modeline. Minimalist, isn't particularly fancy but does the job. +Uses telephone line with some configuration. Has support for a light version as well. + +Has LSP support as well as evil support (can present evil modes and LSP mode). +* Prerequisites +None +* Requirements +- telephone line +- evil-anzu diff --git a/Doom/.doom.d/modules/private/oreoline/config.el b/Doom/.doom.d/modules/private/oreoline/config.el new file mode 100644 index 0000000..7616ca4 --- /dev/null +++ b/Doom/.doom.d/modules/private/oreoline/config.el @@ -0,0 +1,62 @@ +;;; ui/telephone/config.el -*- lexical-binding: t; -*- + +(use-package! telephone-line + :hook (after-init . telephone-line-mode) + :init + ; Faces + (defface my-accent-dark '((t (:foreground "Black" :background "Cadet Blue"))) "") + (defface my-evil-dark '((t (:foreground "White" :background "Black"))) "") + (defface my-accent-light '((t (:foreground "black" :background "Light Slate Grey"))) "") + (defface my-evil-light '((t (:foreground "black" :background "Sky Blue"))) "") + + ;; Set telephone line faces + (setq telephone-line-faces + '((evil . (my-evil-dark . my-evil-dark)) + (modal . telephone-line-modal-face) + (ryo . telephone-line-ryo-modal-face) + (accent . (my-accent-dark . telephone-line-accent-inactive)) + (nil mode-line . mode-line-inactive))) + (when (featurep! +light) + (setq telephone-line-faces + '((evil . (my-evil-light . my-evil-light)) + (modal . telephone-line-modal-face) + (ryo . telephone-line-ryo-modal-face) + (accent . (my-accent-light . telephone-line-accent-inactive)) + (nil mode-line . mode-line-inactive)))) + + ; Seperators + (setq telephone-line-primary-left-separator 'telephone-line-abs-left + telephone-line-secondary-left-separator 'telephone-line-identity-hollow-left + telephone-line-primary-right-separator 'telephone-line-abs-right + telephone-line-secondary-right-separator 'telephone-line-identity-hollow-right) + + ; LSP segment + (telephone-line-defsegment +oreoline-lsp-segment () + (after! lsp-mode + (if (lsp-workspaces) + (propertize "") + (propertize "")))) + + ; LHS + (setq telephone-line-lhs + '((evil . (telephone-line-evil-tag-segment + telephone-line-buffer-modified-segment)) + (accent . (telephone-line-vc-segment + telephone-line-filesize-segment + telephone-line-buffer-name-segment + telephone-line-erc-modified-channels-segment + telephone-line-process-segment)) + (nil . ()))) + + ; RHS + (setq telephone-line-rhs + '((nil . (telephone-line-misc-info-segment)) + (accent . (telephone-line-major-mode-segment + +oreoline-lsp-segment + telephone-line-flycheck-segment)) + (evil . (telephone-line-airline-position-segment)))) + :config + (size-indication-mode +1)) + +(use-package! evil-anzu + :after-call evil-ex-start-search evil-ex-start-word-search evil-ex-search-activate-highlight) diff --git a/Doom/.doom.d/modules/private/oreoline/packages.el b/Doom/.doom.d/modules/private/oreoline/packages.el new file mode 100644 index 0000000..9479896 --- /dev/null +++ b/Doom/.doom.d/modules/private/oreoline/packages.el @@ -0,0 +1,5 @@ +;; -*- no-byte-compile: t; -*- +;;; ui/telephone/packages.el + +(package! telephone-line) +(package! evil-anzu) -- cgit v1.2.3-13-gbd6f