From 556bbd7fd182937e32eb5320a27ba337ac454be0 Mon Sep 17 00:00:00 2001 From: Peter Son Struschka Date: Tue, 21 Jul 2020 12:12:52 +0800 Subject: doom-emacs: update repository and init.el --- doom-emacs/.config/doom/.projectile | 0 doom-emacs/.config/doom/config.el | 94 +++++++++++ doom-emacs/.config/doom/config.org | 129 +++++++++++++++ doom-emacs/.config/doom/init.el | 182 +++++++++++++++++++++ .../.config/doom/modules/tools/cc-ide/config.el | 61 +++++++ .../.config/doom/modules/tools/cc-ide/packages.el | 10 ++ doom-emacs/.config/doom/packages.el | 9 + doom-emacs/.doom.d/.projectile | 0 doom-emacs/.doom.d/config.el | 94 ----------- doom-emacs/.doom.d/config.org | 129 --------------- doom-emacs/.doom.d/init.el | 177 -------------------- doom-emacs/.doom.d/modules/tools/cc-ide/config.el | 61 ------- .../.doom.d/modules/tools/cc-ide/packages.el | 10 -- doom-emacs/.doom.d/packages.el | 9 - doom-emacs/.emacs.d | 2 +- 15 files changed, 486 insertions(+), 481 deletions(-) create mode 100644 doom-emacs/.config/doom/.projectile create mode 100644 doom-emacs/.config/doom/config.el create mode 100644 doom-emacs/.config/doom/config.org create mode 100644 doom-emacs/.config/doom/init.el create mode 100644 doom-emacs/.config/doom/modules/tools/cc-ide/config.el create mode 100644 doom-emacs/.config/doom/modules/tools/cc-ide/packages.el create mode 100644 doom-emacs/.config/doom/packages.el delete mode 100644 doom-emacs/.doom.d/.projectile delete mode 100644 doom-emacs/.doom.d/config.el delete mode 100644 doom-emacs/.doom.d/config.org delete mode 100644 doom-emacs/.doom.d/init.el delete mode 100644 doom-emacs/.doom.d/modules/tools/cc-ide/config.el delete mode 100644 doom-emacs/.doom.d/modules/tools/cc-ide/packages.el delete mode 100644 doom-emacs/.doom.d/packages.el (limited to 'doom-emacs') diff --git a/doom-emacs/.config/doom/.projectile b/doom-emacs/.config/doom/.projectile new file mode 100644 index 0000000..e69de29 diff --git a/doom-emacs/.config/doom/config.el b/doom-emacs/.config/doom/config.el new file mode 100644 index 0000000..e363dfc --- /dev/null +++ b/doom-emacs/.config/doom/config.el @@ -0,0 +1,94 @@ +(setq + doom-font (font-spec :family "Fira Code" :size 14) + doom-big-font (font-spec :family "Fira Code" :size 24) + doom-variable-pitch-font (font-spec :family "Fira Code" :size 16)) + +(setq projectile-project-search-path '("~/code")) + +(setq display-line-numbers-type 'relative) + +(add-hook 'org-mode-hook #'auto-fill-mode) + +(after! org + (map! :map org-mode-map + :n "M-j" #'org-metadown + :n "M-k" #'org-metaup + )) + +(after! org + (setq org-capture-templates '(("t" "Personal todo" entry + (file+headline +org-capture-todo-file "Inbox") + "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) + ("n" "Personal notes" entry + (file+headline +org-capture-notes-file "Inbox") + "* %u %?\n%i\n%a" :prepend t :kill-buffer t) + ("p" "Templates for projects") + ("pt" "Project todo" entry + (file+headline +org-capture-project-todo-file "Inbox") + "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) + ("pn" "Project notes" entry + (file+headline +org-capture-project-notes-file "Inbox") + "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) + ("pc" "Project changelog" entry + (file+headline +org-capture-project-notes-file "Unreleased") + "* TODO %?\n%i\n%a" :prepend t :kill-buffer t)))) + +(use-package! org-super-agenda + :after org-agenda + :init + (setq org-super-agenda-groups '((:name "Today" + :time-grid t + :scheduled today) + (:name "Due today" + :deadline today) + (:name "Important" + :priority "A") + (:name "Overdue" + :deadline past) + (:name "Due soon" + :deadline future) + (:name "Big Outcomes" + :tag "bo"))) + :config + (org-super-agenda-mode) +) + +(setq imenu-anywhere-delimiter ": ") + +(add-hook 'imenu-after-jump-hook #'better-jumper-set-jump) + +(after! imenu-list + (setq imenu-list-idle-update-delay 0.5) + + (set-popup-rule! "^\\*Ilist" + :side 'right :size 35 :quit nil :select nil :ttl 0)) + +(setf tramp-shell-prompt-pattern "\\(?:^\\|^M\\)[^]#$%>\n]*#?[]#$%>].* *\\(^[\\[[0-9;]*[a-zA-Z] *\\)*") + +;;(map! :leader +;; (:prefix-map ("/" . "search")) +;; (:when (featurep! :ui workspaces) +;; (:prefix-map ("TAB" . "workspace"))) +;; (:prefix-map ("b" . "buffer")) +;; (:prefix-map ("c" . "code")) +;; (:prefix-map ("f" . "file")) +;; (:prefix-map ("g" . "git")) +;; (:prefix-map ("i" . "insert")) +;; (:prefix-map ("n" . "notes")) +;; (:prefix-map ("o" . "open") +;; (:prefix-map ("p" . "project")) +;; (:prefix-map ("q" . "session")) +;; (:when (featurep! :editor upload) +;; (:prefix-map ("r" . "remote"))) +;; (:when (featurep! :editor snipets) +;; (:prefix-map ("s" . "snippets"))) +;; (:prefix-map ("t" . "toggle") +;; :desc "Toggle imenu-list" "m" #'imenu-list-smart-toggle))) + +(setq dired-dwim-target t) + +(use-package! tide + :after (typescript-mode company flycheck) + :hook ((typescript-mode . tide-setup) + (typescript-mode . tide-hl-identifier-mode) + (before-save . tide-format-before-save))) diff --git a/doom-emacs/.config/doom/config.org b/doom-emacs/.config/doom/config.org new file mode 100644 index 0000000..e6fb8df --- /dev/null +++ b/doom-emacs/.config/doom/config.org @@ -0,0 +1,129 @@ +#+TITLE: config + +* Font settings +#+BEGIN_SRC emacs-lisp +(setq + doom-font (font-spec :family "Fira Code" :size 14) + doom-big-font (font-spec :family "Fira Code" :size 24) + doom-variable-pitch-font (font-spec :family "Fira Code" :size 16)) +#+END_SRC + +* Projectile +Projectile Path +#+BEGIN_SRC emacs-lisp +(setq projectile-project-search-path '("~/code")) +#+END_SRC + +* Relative line numbers +#+BEGIN_SRC emacs-lisp +(setq display-line-numbers-type 'relative) +#+END_SRC + +* Org +#+BEGIN_SRC emacs-lisp +(add-hook 'org-mode-hook #'auto-fill-mode) +#+END_SRC + +#+BEGIN_SRC emacs-lisp +(after! org + (map! :map org-mode-map + :n "M-j" #'org-metadown + :n "M-k" #'org-metaup + )) +#+END_SRC + +Org capture +#+BEGIN_SRC emacs-lisp +(after! org + (setq org-capture-templates '(("t" "Personal todo" entry + (file+headline +org-capture-todo-file "Inbox") + "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) + ("n" "Personal notes" entry + (file+headline +org-capture-notes-file "Inbox") + "* %u %?\n%i\n%a" :prepend t :kill-buffer t) + ("p" "Templates for projects") + ("pt" "Project todo" entry + (file+headline +org-capture-project-todo-file "Inbox") + "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) + ("pn" "Project notes" entry + (file+headline +org-capture-project-notes-file "Inbox") + "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) + ("pc" "Project changelog" entry + (file+headline +org-capture-project-notes-file "Unreleased") + "* TODO %?\n%i\n%a" :prepend t :kill-buffer t)))) +#+END_SRC + +Org Super Agenda +#+BEGIN_SRC emacs-lisp +(use-package! org-super-agenda + :after org-agenda + :init + (setq org-super-agenda-groups '((:name "Today" + :time-grid t + :scheduled today) + (:name "Due today" + :deadline today) + (:name "Important" + :priority "A") + (:name "Overdue" + :deadline past) + (:name "Due soon" + :deadline future) + (:name "Big Outcomes" + :tag "bo"))) + :config + (org-super-agenda-mode) +) +#+END_SRC +* IMenu +#+BEGIN_SRC emacs-lisp +(setq imenu-anywhere-delimiter ": ") + +(add-hook 'imenu-after-jump-hook #'better-jumper-set-jump) + +(after! imenu-list + (setq imenu-list-idle-update-delay 0.5) + + (set-popup-rule! "^\\*Ilist" + :side 'right :size 35 :quit nil :select nil :ttl 0)) +#+END_SRC +* Tramp +#+BEGIN_SRC emacs-lisp +(setf tramp-shell-prompt-pattern "\\(?:^\\|^M\\)[^]#$%>\n]*#?[]#$%>].* *\\(^[\\[[0-9;]*[a-zA-Z] *\\)*") +#+END_SRC +* Leader keys +#+BEGIN_SRC emacs-lisp +;;(map! :leader +;; (:prefix-map ("/" . "search")) +;; (:when (featurep! :ui workspaces) +;; (:prefix-map ("TAB" . "workspace"))) +;; (:prefix-map ("b" . "buffer")) +;; (:prefix-map ("c" . "code")) +;; (:prefix-map ("f" . "file")) +;; (:prefix-map ("g" . "git")) +;; (:prefix-map ("i" . "insert")) +;; (:prefix-map ("n" . "notes")) +;; (:prefix-map ("o" . "open") +;; (:prefix-map ("p" . "project")) +;; (:prefix-map ("q" . "session")) +;; (:when (featurep! :editor upload) +;; (:prefix-map ("r" . "remote"))) +;; (:when (featurep! :editor snipets) +;; (:prefix-map ("s" . "snippets"))) +;; (:prefix-map ("t" . "toggle") +;; :desc "Toggle imenu-list" "m" #'imenu-list-smart-toggle))) +#+END_SRC +* Dired +Do what I mean target allows dired to use window context for copying and moving +#+BEGIN_SRC emacs-lisp +(setq dired-dwim-target t) +#+END_SRC +* Laguages +Typescript +#+BEGIN_SRC emacs-lisp +(use-package! tide + :after (typescript-mode company flycheck) + :hook ((typescript-mode . tide-setup) + (typescript-mode . tide-hl-identifier-mode) + (before-save . tide-format-before-save))) +#+END_SRC diff --git a/doom-emacs/.config/doom/init.el b/doom-emacs/.config/doom/init.el new file mode 100644 index 0000000..722c555 --- /dev/null +++ b/doom-emacs/.config/doom/init.el @@ -0,0 +1,182 @@ +;;; init.el -*- lexical-binding: t; -*- + +;; This file controls what Doom modules are enabled and what order they load +;; in. Remember to run 'doom sync' after modifying it! + +;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's +;; documentation. There you'll find a "Module Index" link where you'll find +;; a comprehensive list of Doom's modules and what flags they support. + +;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or +;; 'C-c c k' for non-vim users) to view its documentation. This works on +;; flags as well (those symbols that start with a plus). +;; +;; Alternatively, press 'gd' (or 'C-c c d') on a module to browse its +;; directory (for easy access to its source code). + +(doom! :input + ;;chinese + ;;japanese + + :completion + company ; the ultimate code completion backend + ;;helm ; the *other* search engine for love and life + ;;ido ; the other *other* search engine... + ivy ; a search engine for love and life + + :ui + ;;deft ; notational velocity for Emacs + doom ; what makes DOOM look the way it does + doom-dashboard ; a nifty splash screen for Emacs + doom-quit ; DOOM quit-message prompts when you quit Emacs + fill-column ; a `fill-column' indicator + hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW + hydra + indent-guides ; highlighted indent columns + minimap ; show a map of the code on the side + modeline ; snazzy, Atom-inspired modeline, plus API + nav-flash ; blink the current line after jumping + ;;neotree ; a project drawer, like NERDTree for vim + ophints ; highlight the region an operation acts on + (popup +defaults) ; tame sudden yet inevitable temporary windows + ;;(pretty-code) ; replace bits of code with pretty symbols + ;; +fira) + tabs ; a tab bar for Emacs + treemacs ; a project drawer, like neotree but cooler + unicode ; extended unicode support for various languages + vc-gutter ; vcs diff in the fringe + vi-tilde-fringe ; fringe tildes to mark beyond EOB + window-select ; visually switch windows + workspaces ; tab emulation, persistence & separate workspaces + zen ; distraction-free coding or writing + + :editor + (evil +everywhere); come to the dark side, we have cookies + file-templates ; auto-snippets for empty files + fold ; (nigh) universal code folding + ;;(format +onsave) ; automated prettiness + ;;god ; run Emacs commands without modifier keys + ;;lispy ; vim for lisp, for people who dont like vim + multiple-cursors ; editing in many places at once + ;;objed ; text object editing for the innocent + ;;parinfer ; turn lisp into python, sort of + rotate-text ; cycle region at point between text candidates + snippets ; my elves. They type so I don't have to + word-wrap ; soft wrapping with language-aware indent + + :emacs + dired ; making dired pretty [functional] + electric ; smarter, keyword-based electric-indent + ibuffer ; interactive buffer management + undo ; persistent, smarter undo for your inevitable mistakes + vc ; version-control and Emacs, sitting in a tree + + :term + eshell ; a consistent, cross-platform shell (WIP) + ;;shell ; a terminal REPL for Emacs + term ; terminals in Emacs + ;;vterm ; another terminals in Emacs + + :checkers + syntax ; tasing you for every semicolon you forget + ;;spell ; tasing you for every misspelling + ;;grammer ; tasing grammer mistakes every you make + + :tools + ;;ansible + debugger ; FIXME stepping through code, to help you add bugs + ;;direnv + ;;docker + editorconfig ; let someone else argue about tabs vs spaces + ;;ein ; tame Jupyter notebooks with emacs + (eval +overlay) ; run code, run (also, repls) + ;;gist ; interacting with github gists + lookup ; navigate your code and its documentation + ;;lsp + ;;macos ; MacOS-specific commands + magit ; a git porcelain for Emacs + make ; run make tasks from Emacs + ;;pass ; password manager for nerds + pdf ; pdf enhancements + ;;prodigy ; FIXME managing external services & code builders + rgb ; creating color strings + ;;taskrunner ; taskrunner for all your projects + ;;terraform ; infrastructure as code + tmux ; an API for interacting with tmux + upload ; map local to remote projects via ssh/ftp + + :lang + ;;agda ; types of types of types of types... + (cc ; C/C++/Obj-C madness + +rtags + +irony) + ;;clojure ; java with a lisp + ;;common-lisp ; if you've seen one lisp, you've seen them all + ;;coq ; proofs-as-programs + ;;crystal ; ruby at the speed of c + ;;csharp ; unity, .NET, and mono shenanigans + data ; config/data formats + ;;(dart +flutter) ; paint ui and not much else + elixir ; erlang done right + ;;elm ; care for a cup of TEA? + emacs-lisp ; drown in parentheses + ;;erlang ; an elegant language for a more civilized age + ;;ess ; emacs speaks statistics + ;;faust ; dsp, but you get to keep your soul + ;;fsharp ; ML stands for Microsoft's Language + ;;fstar ; (dependent) types and (monadic) effects and Z3 + ;;gdscript ; the language you waited for + (go +lsp) ; the hipster dialect + (haskell +dante) ; a language that's lazier than I am + ;;hy ; readability of scheme w/ speed of python + ;;idris + json ; At least it ain't XML + (java +meghanada) ; the poster child for carpal tunnel syndrome + ;;javascript ; all(hope(abandon(ye(who(enter(here)))))) + ;;julia ; a better, faster MATLAB + kotlin ; a better, slicker Java(Script) + latex ; writing papers in Emacs has never been so fun + ;;lean + ;;factor + ledger ; an accounting system in Emacs + ;;lua ; one-based indices? one-based indices + markdown ; writing docs for people to ignore + ;;nim ; python + lisp at the speed of c + ;;nix ; I hereby declare "nix geht mehr!" + ;;ocaml ; an objective camel + org ; organize your plain life in plain text + ;;php ; perl's insecure younger brother + ;;plantuml ; diagrams for confusing people more + ;;purescript ; javascript, but functional + python ; beautiful is better than ugly + ;;qt ; the 'cutest' gui framework ever + ;;racket ; a DSL for DSLs + ;;raku ; the artist formerly known as perl6 + rest ; Emacs as a REST client + ;;rst ; ReST in peace + ;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} + rust ; Fe2O3.unwrap().unwrap().unwrap().unwrap() + scala ; java, but good + ;;scheme ; a fully conniving family of lisps + sh ; she sells {ba,z,fi}sh shells on the C xor + ;;sml + ;;solidity ; do you need a blockchain? No. + ;;swift ; who asked for emoji variables? + ;;terra ; Earth and Moon in alignment for performance. + web ; the tubes + yaml ; JSON, but readable + + :email + ;;(mu4e +gmail) + ;;notmuch + ;;(wanderlust +gmail) + + :app + ;;calendar + ;;irc ; how neckbeards socialize + ;;(rss +org) ; emacs as an RSS reader + ;;twitter ; twitter client https://twitter.com/vnought + + :config + literate + (default +bindings +smartparens)) diff --git a/doom-emacs/.config/doom/modules/tools/cc-ide/config.el b/doom-emacs/.config/doom/modules/tools/cc-ide/config.el new file mode 100644 index 0000000..c96fd19 --- /dev/null +++ b/doom-emacs/.config/doom/modules/tools/cc-ide/config.el @@ -0,0 +1,61 @@ +;;; tools/gtags/config.el -*- lexical-binding: t; -*- + +(use-package! ggtags + :unless (or (featurep! :completion ivy) (featurep! :completion helm)) + :config + (add-hook! (c-mode c++-mode java-mode asm-mode) (ggtags-mode 1)) + (map! :map ggtags-mode-map + "C-c g s" 'ggtags-find-other-symbol + "C-c g h" 'ggtags-view-tag-history + "C-c g r" 'ggtags-find-reference + "C-c g f" 'ggtags-find-file + "C-c g c" 'ggtags-create-tags + "C-c g u" 'ggtags-update-tags + "M-," 'pop-tag-mark) + (setq-hook! 'ggtags-mode-hook imenu-create-index-function 'ggtags-build-imenu-index) + ) + +(use-package! helm-gtags + :when (featurep! :completion helm) + :after helm + :init + (setq! helm-gtags-ignore-case t + helm-gtags-auto-update t + helm-gtags-use-input-at-cursor t + helm-gtags-pulse-at-cursor t + helm-gtags-prefix-key "\C-cg" + helm-gtags-suggested-key-mapping t) + :config + (add-hook! (dired-mode eshell-mode c-mode c++-mode asm-mode) (helm-gtags-mode)) + (map! :map helm-gtags-mode-map + "C-c g a" 'helm-gtags-tags-in-this-function + "C-j" 'helm-gtags-select + "M-." 'helm-gtags-dwim + "M-," 'helm-gtags-pop-stack + "C-c <" 'helm-gtags-previous-history + "C-c >" 'helm-gtags-next-history) + ) + +(use-package! counsel-gtags + :when (featurep! :completion ivy) + :after ivy + :config + (add-hook! (c-mode c++-mode asm-mode) #'counsel-gtags-mode) + (map! :map counsel-gtags-mode-map + "C-c g t" 'counsel-gtags-find-definition + "C-c g r" 'counsel-gtags-find-reference + "C-c g s" 'counsel-gtags-find-symbol + "C-c g f" 'counsel-gtags-find-file + "C-c g c" 'counsel-gtags-create-tags + "C-c g u" 'counsel-gtags-update-tags + "M-," 'counsel-gtags-dwim + "C-c <" 'counsel-gtags-go-backward + "C-c >" 'counsel-gtags-go-forward) + ) + +(use-package! function-args + :init + (setq-default semantic-case-fold t) + :config + (add-hook! (c-mode c++-mode asm-mode) #'function-args-mode) + ) diff --git a/doom-emacs/.config/doom/modules/tools/cc-ide/packages.el b/doom-emacs/.config/doom/modules/tools/cc-ide/packages.el new file mode 100644 index 0000000..f4840d5 --- /dev/null +++ b/doom-emacs/.config/doom/modules/tools/cc-ide/packages.el @@ -0,0 +1,10 @@ +;; -*- no-byte-compile: t; -*- +;;; tools/gtags/packages.el + +(if (featurep! :completion ivy) + (package! counsel-gtags) + (if (featurep! :completion helm) + (package! helm-gtags) + (package! ggtags))) + +(package! function-args) diff --git a/doom-emacs/.config/doom/packages.el b/doom-emacs/.config/doom/packages.el new file mode 100644 index 0000000..7655397 --- /dev/null +++ b/doom-emacs/.config/doom/packages.el @@ -0,0 +1,9 @@ +;; -*- no-byte-compile: t; -*- +;;; ~/repos/dotfiles/doom-emacs/.doom.d/packages.el + +(package! org-super-agenda) + +(package! imenu-list) +(package! imenu-anywhere) + +(package! tide) diff --git a/doom-emacs/.doom.d/.projectile b/doom-emacs/.doom.d/.projectile deleted file mode 100644 index e69de29..0000000 diff --git a/doom-emacs/.doom.d/config.el b/doom-emacs/.doom.d/config.el deleted file mode 100644 index e363dfc..0000000 --- a/doom-emacs/.doom.d/config.el +++ /dev/null @@ -1,94 +0,0 @@ -(setq - doom-font (font-spec :family "Fira Code" :size 14) - doom-big-font (font-spec :family "Fira Code" :size 24) - doom-variable-pitch-font (font-spec :family "Fira Code" :size 16)) - -(setq projectile-project-search-path '("~/code")) - -(setq display-line-numbers-type 'relative) - -(add-hook 'org-mode-hook #'auto-fill-mode) - -(after! org - (map! :map org-mode-map - :n "M-j" #'org-metadown - :n "M-k" #'org-metaup - )) - -(after! org - (setq org-capture-templates '(("t" "Personal todo" entry - (file+headline +org-capture-todo-file "Inbox") - "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) - ("n" "Personal notes" entry - (file+headline +org-capture-notes-file "Inbox") - "* %u %?\n%i\n%a" :prepend t :kill-buffer t) - ("p" "Templates for projects") - ("pt" "Project todo" entry - (file+headline +org-capture-project-todo-file "Inbox") - "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) - ("pn" "Project notes" entry - (file+headline +org-capture-project-notes-file "Inbox") - "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) - ("pc" "Project changelog" entry - (file+headline +org-capture-project-notes-file "Unreleased") - "* TODO %?\n%i\n%a" :prepend t :kill-buffer t)))) - -(use-package! org-super-agenda - :after org-agenda - :init - (setq org-super-agenda-groups '((:name "Today" - :time-grid t - :scheduled today) - (:name "Due today" - :deadline today) - (:name "Important" - :priority "A") - (:name "Overdue" - :deadline past) - (:name "Due soon" - :deadline future) - (:name "Big Outcomes" - :tag "bo"))) - :config - (org-super-agenda-mode) -) - -(setq imenu-anywhere-delimiter ": ") - -(add-hook 'imenu-after-jump-hook #'better-jumper-set-jump) - -(after! imenu-list - (setq imenu-list-idle-update-delay 0.5) - - (set-popup-rule! "^\\*Ilist" - :side 'right :size 35 :quit nil :select nil :ttl 0)) - -(setf tramp-shell-prompt-pattern "\\(?:^\\|^M\\)[^]#$%>\n]*#?[]#$%>].* *\\(^[\\[[0-9;]*[a-zA-Z] *\\)*") - -;;(map! :leader -;; (:prefix-map ("/" . "search")) -;; (:when (featurep! :ui workspaces) -;; (:prefix-map ("TAB" . "workspace"))) -;; (:prefix-map ("b" . "buffer")) -;; (:prefix-map ("c" . "code")) -;; (:prefix-map ("f" . "file")) -;; (:prefix-map ("g" . "git")) -;; (:prefix-map ("i" . "insert")) -;; (:prefix-map ("n" . "notes")) -;; (:prefix-map ("o" . "open") -;; (:prefix-map ("p" . "project")) -;; (:prefix-map ("q" . "session")) -;; (:when (featurep! :editor upload) -;; (:prefix-map ("r" . "remote"))) -;; (:when (featurep! :editor snipets) -;; (:prefix-map ("s" . "snippets"))) -;; (:prefix-map ("t" . "toggle") -;; :desc "Toggle imenu-list" "m" #'imenu-list-smart-toggle))) - -(setq dired-dwim-target t) - -(use-package! tide - :after (typescript-mode company flycheck) - :hook ((typescript-mode . tide-setup) - (typescript-mode . tide-hl-identifier-mode) - (before-save . tide-format-before-save))) diff --git a/doom-emacs/.doom.d/config.org b/doom-emacs/.doom.d/config.org deleted file mode 100644 index e6fb8df..0000000 --- a/doom-emacs/.doom.d/config.org +++ /dev/null @@ -1,129 +0,0 @@ -#+TITLE: config - -* Font settings -#+BEGIN_SRC emacs-lisp -(setq - doom-font (font-spec :family "Fira Code" :size 14) - doom-big-font (font-spec :family "Fira Code" :size 24) - doom-variable-pitch-font (font-spec :family "Fira Code" :size 16)) -#+END_SRC - -* Projectile -Projectile Path -#+BEGIN_SRC emacs-lisp -(setq projectile-project-search-path '("~/code")) -#+END_SRC - -* Relative line numbers -#+BEGIN_SRC emacs-lisp -(setq display-line-numbers-type 'relative) -#+END_SRC - -* Org -#+BEGIN_SRC emacs-lisp -(add-hook 'org-mode-hook #'auto-fill-mode) -#+END_SRC - -#+BEGIN_SRC emacs-lisp -(after! org - (map! :map org-mode-map - :n "M-j" #'org-metadown - :n "M-k" #'org-metaup - )) -#+END_SRC - -Org capture -#+BEGIN_SRC emacs-lisp -(after! org - (setq org-capture-templates '(("t" "Personal todo" entry - (file+headline +org-capture-todo-file "Inbox") - "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) - ("n" "Personal notes" entry - (file+headline +org-capture-notes-file "Inbox") - "* %u %?\n%i\n%a" :prepend t :kill-buffer t) - ("p" "Templates for projects") - ("pt" "Project todo" entry - (file+headline +org-capture-project-todo-file "Inbox") - "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) - ("pn" "Project notes" entry - (file+headline +org-capture-project-notes-file "Inbox") - "* TODO %?\n%i\n%a" :prepend t :kill-buffer t) - ("pc" "Project changelog" entry - (file+headline +org-capture-project-notes-file "Unreleased") - "* TODO %?\n%i\n%a" :prepend t :kill-buffer t)))) -#+END_SRC - -Org Super Agenda -#+BEGIN_SRC emacs-lisp -(use-package! org-super-agenda - :after org-agenda - :init - (setq org-super-agenda-groups '((:name "Today" - :time-grid t - :scheduled today) - (:name "Due today" - :deadline today) - (:name "Important" - :priority "A") - (:name "Overdue" - :deadline past) - (:name "Due soon" - :deadline future) - (:name "Big Outcomes" - :tag "bo"))) - :config - (org-super-agenda-mode) -) -#+END_SRC -* IMenu -#+BEGIN_SRC emacs-lisp -(setq imenu-anywhere-delimiter ": ") - -(add-hook 'imenu-after-jump-hook #'better-jumper-set-jump) - -(after! imenu-list - (setq imenu-list-idle-update-delay 0.5) - - (set-popup-rule! "^\\*Ilist" - :side 'right :size 35 :quit nil :select nil :ttl 0)) -#+END_SRC -* Tramp -#+BEGIN_SRC emacs-lisp -(setf tramp-shell-prompt-pattern "\\(?:^\\|^M\\)[^]#$%>\n]*#?[]#$%>].* *\\(^[\\[[0-9;]*[a-zA-Z] *\\)*") -#+END_SRC -* Leader keys -#+BEGIN_SRC emacs-lisp -;;(map! :leader -;; (:prefix-map ("/" . "search")) -;; (:when (featurep! :ui workspaces) -;; (:prefix-map ("TAB" . "workspace"))) -;; (:prefix-map ("b" . "buffer")) -;; (:prefix-map ("c" . "code")) -;; (:prefix-map ("f" . "file")) -;; (:prefix-map ("g" . "git")) -;; (:prefix-map ("i" . "insert")) -;; (:prefix-map ("n" . "notes")) -;; (:prefix-map ("o" . "open") -;; (:prefix-map ("p" . "project")) -;; (:prefix-map ("q" . "session")) -;; (:when (featurep! :editor upload) -;; (:prefix-map ("r" . "remote"))) -;; (:when (featurep! :editor snipets) -;; (:prefix-map ("s" . "snippets"))) -;; (:prefix-map ("t" . "toggle") -;; :desc "Toggle imenu-list" "m" #'imenu-list-smart-toggle))) -#+END_SRC -* Dired -Do what I mean target allows dired to use window context for copying and moving -#+BEGIN_SRC emacs-lisp -(setq dired-dwim-target t) -#+END_SRC -* Laguages -Typescript -#+BEGIN_SRC emacs-lisp -(use-package! tide - :after (typescript-mode company flycheck) - :hook ((typescript-mode . tide-setup) - (typescript-mode . tide-hl-identifier-mode) - (before-save . tide-format-before-save))) -#+END_SRC diff --git a/doom-emacs/.doom.d/init.el b/doom-emacs/.doom.d/init.el deleted file mode 100644 index bb2149e..0000000 --- a/doom-emacs/.doom.d/init.el +++ /dev/null @@ -1,177 +0,0 @@ -;;; init.el -*- lexical-binding: t; -*- - -;; Copy this file to ~/.doom.d/init.el or ~/.config/doom/init.el ('doom install' -;; will do this for you). The `doom!' block below controls what modules are -;; enabled and in what order they will be loaded. Remember to run 'doom refresh' -;; after modifying it. -;; -;; More information about these modules (and what flags they support) can be -;; found in modules/README.org. - -(doom! :input - ;;chinese - ;;japanese - - :completion - company ; the ultimate code completion backend - ;;helm ; the *other* search engine for love and life - ;;ido ; the other *other* search engine... - ivy ; a search engine for love and life - - :ui - ;;deft ; notational velocity for Emacs - doom ; what makes DOOM look the way it does - doom-dashboard ; a nifty splash screen for Emacs - doom-quit ; DOOM quit-message prompts when you quit Emacs - fill-column ; a `fill-column' indicator - hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW - hydra - indent-guides ; highlighted indent columns - modeline ; snazzy, Atom-inspired modeline, plus API - nav-flash ; blink the current line after jumping - ;;neotree ; a project drawer, like NERDTree for vim - ophints ; highlight the region an operation acts on - (popup +defaults) ; tame sudden yet inevitable temporary windows - ;;(pretty-code) ; replace bits of code with pretty symbols - ;; +fira) - tabs ; a tab bar for Emacs - treemacs ; a project drawer, like neotree but cooler - unicode ; extended unicode support for various languages - vc-gutter ; vcs diff in the fringe - vi-tilde-fringe ; fringe tildes to mark beyond EOB - window-select ; visually switch windows - workspaces ; tab emulation, persistence & separate workspaces - zen ; distraction-free coding or writing - - :editor - (evil +everywhere); come to the dark side, we have cookies - file-templates ; auto-snippets for empty files - fold ; (nigh) universal code folding - ;;(format +onsave) ; automated prettiness - ;;god ; run Emacs commands without modifier keys - ;;lispy ; vim for lisp, for people who dont like vim - multiple-cursors ; editing in many places at once - ;;objed ; text object editing for the innocent - ;;parinfer ; turn lisp into python, sort of - rotate-text ; cycle region at point between text candidates - snippets ; my elves. They type so I don't have to - word-wrap ; soft wrapping with language-aware indent - - :emacs - dired ; making dired pretty [functional] - electric ; smarter, keyword-based electric-indent - ibuffer ; interactive buffer management - undo ; persistent, smarter undo for your inevitable mistakes - vc ; version-control and Emacs, sitting in a tree - - :term - eshell ; a consistent, cross-platform shell (WIP) - shell ; a terminal REPL for Emacs - ;;term ; terminals in Emacs - ;;vterm ; another terminals in Emacs - - :checkers - syntax ; tasing you for every semicolon you forget - ;;spell ; tasing you for every misspelling - ;;grammer ; tasing grammer mistakes every you make - - :tools - ;;cc-ide - ;;ansible - debugger ; FIXME stepping through code, to help you add bugs - ;;direnv - ;;docker - editorconfig ; let someone else argue about tabs vs spaces - ;;ein ; tame Jupyter notebooks with emacs - (eval +overlay) ; run code, run (also, repls) - ;;gist ; interacting with github gists - (lookup ; helps you navigate your code and documentation - +docsets) ; ...or in Dash docsets locally - lsp - ;;macos ; MacOS-specific commands - magit ; a git porcelain for Emacs - make ; run make tasks from Emacs - ;;pass ; password manager for nerds - pdf ; pdf enhancements - ;;prodigy ; FIXME managing external services & code builders - rgb ; creating color strings - ;;terraform ; infrastructure as code - tmux ; an API for interacting with tmux - upload ; map local to remote projects via ssh/ftp - - :lang - ;;agda ; types of types of types of types... - (cc ; C/C++/Obj-C madness - +rtags - +irony) - ;;clojure ; java with a lisp - ;;common-lisp ; if you've seen one lisp, you've seen them all - ;;coq ; proofs-as-programs - ;;crystal ; ruby at the speed of c - ;;csharp ; unity, .NET, and mono shenanigans - data ; config/data formats - ;;(dart +flutter) ; paint ui and not much else - elixir ; erlang done right - ;;elm ; care for a cup of TEA? - emacs-lisp ; drown in parentheses - ;;erlang ; an elegant language for a more civilied age - ;;ess ; emacs speaks statistics - ;;faust ; dsp, but you get to keep your soul - ;;fsharp ; ML stands for Microsoft's Language - ;;fstar ; (dependent) types and (monadic) effects and Z3 - (go +lsp) ; the hipster dialect - ;;(haskell +dante) ; a language that's lazier than I am - ;;hy ; readability of scheme w/ speed of python - ;;idris - json ; At least it ain't XML - (java +meghanada) ; the poster child for carpal tunnel syndrome - ;;javascript ; all(hope(abandon(ye(who(enter(here)))))) - ;;julia ; a better, faster MATLAB - kotlin ; a better, slicker Java(Script) - latex ; writing papers in Emacs has never been so fun - ;;lean - ;;factor - ledger ; an accounting system in Emacs - ;;lua ; one-based indices? one-based indices - markdown ; writing docs for people to ignore - ;;nim ; python + lisp at the speed of c - ;;nix ; I hereby declare "nix geht mehr!" - ;;ocaml ; an objective camel - (org ; organize your plain life in plain text - +dragndrop ; file drag & drop support - +pandoc ; pandoc integration into org's exporter - +present) ; using Emacs for presentations - ;;perl ; write code no one else can comprehend - ;;php ; perl's insecure younger brother - ;;plantuml ; diagrams for confusing people more - ;;purescript ; javascript, but functional - python ; beautiful is better than ugly - ;;qt ; the 'cutest' gui framework ever - ;;racket ; a DSL for DSLs - rest ; Emacs as a REST client - ;;rst $ ReST in peace - ;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} - rust ; Fe2O3.unwrap().unwrap().unwrap().unwrap() - scala ; java, but good - ;;scheme ; a fully conniving family of lisps - sh ; she sells {ba,z,fi}sh shells on the C xor - ;;solidity ; do you need a blockchain? No. - ;;swift ; who asked for emoji variables? - ;;terra ; Earth and Moon in alignment for performance. - web ; the tubes - yaml ; JSON, but readable - - :email - ;;(mu4e +gmail) - ;;notmuch - ;;(wanderlust +gmail) - - :app - ;;calendar - ;;irc ; how neckbeards socialize - ;;(rss +org) ; emacs as an RSS reader - ;;twitter ; twitter client https://twitter.com/vnought - - :config - literate - (default +bindings +smartparens)) diff --git a/doom-emacs/.doom.d/modules/tools/cc-ide/config.el b/doom-emacs/.doom.d/modules/tools/cc-ide/config.el deleted file mode 100644 index c96fd19..0000000 --- a/doom-emacs/.doom.d/modules/tools/cc-ide/config.el +++ /dev/null @@ -1,61 +0,0 @@ -;;; tools/gtags/config.el -*- lexical-binding: t; -*- - -(use-package! ggtags - :unless (or (featurep! :completion ivy) (featurep! :completion helm)) - :config - (add-hook! (c-mode c++-mode java-mode asm-mode) (ggtags-mode 1)) - (map! :map ggtags-mode-map - "C-c g s" 'ggtags-find-other-symbol - "C-c g h" 'ggtags-view-tag-history - "C-c g r" 'ggtags-find-reference - "C-c g f" 'ggtags-find-file - "C-c g c" 'ggtags-create-tags - "C-c g u" 'ggtags-update-tags - "M-," 'pop-tag-mark) - (setq-hook! 'ggtags-mode-hook imenu-create-index-function 'ggtags-build-imenu-index) - ) - -(use-package! helm-gtags - :when (featurep! :completion helm) - :after helm - :init - (setq! helm-gtags-ignore-case t - helm-gtags-auto-update t - helm-gtags-use-input-at-cursor t - helm-gtags-pulse-at-cursor t - helm-gtags-prefix-key "\C-cg" - helm-gtags-suggested-key-mapping t) - :config - (add-hook! (dired-mode eshell-mode c-mode c++-mode asm-mode) (helm-gtags-mode)) - (map! :map helm-gtags-mode-map - "C-c g a" 'helm-gtags-tags-in-this-function - "C-j" 'helm-gtags-select - "M-." 'helm-gtags-dwim - "M-," 'helm-gtags-pop-stack - "C-c <" 'helm-gtags-previous-history - "C-c >" 'helm-gtags-next-history) - ) - -(use-package! counsel-gtags - :when (featurep! :completion ivy) - :after ivy - :config - (add-hook! (c-mode c++-mode asm-mode) #'counsel-gtags-mode) - (map! :map counsel-gtags-mode-map - "C-c g t" 'counsel-gtags-find-definition - "C-c g r" 'counsel-gtags-find-reference - "C-c g s" 'counsel-gtags-find-symbol - "C-c g f" 'counsel-gtags-find-file - "C-c g c" 'counsel-gtags-create-tags - "C-c g u" 'counsel-gtags-update-tags - "M-," 'counsel-gtags-dwim - "C-c <" 'counsel-gtags-go-backward - "C-c >" 'counsel-gtags-go-forward) - ) - -(use-package! function-args - :init - (setq-default semantic-case-fold t) - :config - (add-hook! (c-mode c++-mode asm-mode) #'function-args-mode) - ) diff --git a/doom-emacs/.doom.d/modules/tools/cc-ide/packages.el b/doom-emacs/.doom.d/modules/tools/cc-ide/packages.el deleted file mode 100644 index f4840d5..0000000 --- a/doom-emacs/.doom.d/modules/tools/cc-ide/packages.el +++ /dev/null @@ -1,10 +0,0 @@ -;; -*- no-byte-compile: t; -*- -;;; tools/gtags/packages.el - -(if (featurep! :completion ivy) - (package! counsel-gtags) - (if (featurep! :completion helm) - (package! helm-gtags) - (package! ggtags))) - -(package! function-args) diff --git a/doom-emacs/.doom.d/packages.el b/doom-emacs/.doom.d/packages.el deleted file mode 100644 index 7655397..0000000 --- a/doom-emacs/.doom.d/packages.el +++ /dev/null @@ -1,9 +0,0 @@ -;; -*- no-byte-compile: t; -*- -;;; ~/repos/dotfiles/doom-emacs/.doom.d/packages.el - -(package! org-super-agenda) - -(package! imenu-list) -(package! imenu-anywhere) - -(package! tide) diff --git a/doom-emacs/.emacs.d b/doom-emacs/.emacs.d index 265e801..348a2d6 160000 --- a/doom-emacs/.emacs.d +++ b/doom-emacs/.emacs.d @@ -1 +1 @@ -Subproject commit 265e80123a261c83fd3fcc83cd41dc2cd28bf26f +Subproject commit 348a2d6c6e1ce63067e8f479ca6877530600f835 -- cgit v1.2.3