From dfa92e3cb7a07b56d75266335135757d92331a76 Mon Sep 17 00:00:00 2001 From: Peter Son Struschka Date: Tue, 11 Feb 2020 11:52:34 +0800 Subject: fixes and updates --- doom-emacs/.doom.d/init.el | 8 ++- doom-emacs/.doom.d/modules/tools/cc-ide/config.el | 61 ++++++++++++++++++++++ .../.doom.d/modules/tools/cc-ide/packages.el | 10 ++++ 3 files changed, 77 insertions(+), 2 deletions(-) create mode 100644 doom-emacs/.doom.d/modules/tools/cc-ide/config.el create mode 100644 doom-emacs/.doom.d/modules/tools/cc-ide/packages.el (limited to 'doom-emacs/.doom.d') diff --git a/doom-emacs/.doom.d/init.el b/doom-emacs/.doom.d/init.el index 470647f..3f75618 100644 --- a/doom-emacs/.doom.d/init.el +++ b/doom-emacs/.doom.d/init.el @@ -70,7 +70,13 @@ ;;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 @@ -78,8 +84,6 @@ editorconfig ; let someone else argue about tabs vs spaces ;;ein ; tame Jupyter notebooks with emacs (eval +overlay) ; run code, run (also, repls) - flycheck ; tasing you for every semicolon you forget - ;;flyspell ; tasing you for misspelling mispelling ;;gist ; interacting with github gists (lookup ; helps you navigate your code and documentation +docsets) ; ...or in Dash docsets locally diff --git a/doom-emacs/.doom.d/modules/tools/cc-ide/config.el b/doom-emacs/.doom.d/modules/tools/cc-ide/config.el new file mode 100644 index 0000000..c96fd19 --- /dev/null +++ b/doom-emacs/.doom.d/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/.doom.d/modules/tools/cc-ide/packages.el b/doom-emacs/.doom.d/modules/tools/cc-ide/packages.el new file mode 100644 index 0000000..f4840d5 --- /dev/null +++ b/doom-emacs/.doom.d/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) -- cgit v1.2.3