diff options
author | Aryadev Chavali <aryadev@aryadevchavali.com> | 2021-03-09 18:11:57 +0000 |
---|---|---|
committer | Aryadev Chavali <aryadev@aryadevchavali.com> | 2021-03-09 18:11:57 +0000 |
commit | 55c0587735265689809591c9f4199f51a8481ad8 (patch) | |
tree | cfbbad5f5c2deca157ac87087eb804186d589527 /Emacs/.config | |
parent | 5d625c806871b9392e39d01f5592e22504ceae03 (diff) | |
download | dotfiles-55c0587735265689809591c9f4199f51a8481ad8.tar.gz dotfiles-55c0587735265689809591c9f4199f51a8481ad8.tar.bz2 dotfiles-55c0587735265689809591c9f4199f51a8481ad8.zip |
(Emacs)+custom personalised ada-mode
The defautl ada-mode requires the installation of many different
tools, the compilation of several different systems and much more. I
wasn't able to fix all the issues with my installation so I decided to
scrap it and make my own. This mode just colourises the buffer so
far, but I hope to implement indentation shortly.
Diffstat (limited to 'Emacs/.config')
-rw-r--r-- | Emacs/.config/emacs/ada-mode.el | 66 | ||||
-rw-r--r-- | Emacs/.config/emacs/config.org | 10 |
2 files changed, 76 insertions, 0 deletions
diff --git a/Emacs/.config/emacs/ada-mode.el b/Emacs/.config/emacs/ada-mode.el new file mode 100644 index 0000000..764a121 --- /dev/null +++ b/Emacs/.config/emacs/ada-mode.el @@ -0,0 +1,66 @@ +;;; ada-mode.el --- My custom ada-mode that colourises buffers -*- lexical-binding: t; -*- + +;; Copyright (C) 2021 Aryadev Chavali + +;; Author: Aryadev Chavali <aryadev@aryadevchavali.com> +;; Keywords: faces, languages + +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see <https://www.gnu.org/licenses/>. + +;;; Commentary: + +;; This provides colourising for ada files. Is not compatible with +;; standard ada-mode due to name conflicts. Personally I'd rather +;; have a mode for colourising a buffer which is what this is supposed +;; to be. + +;; I feel ada-modeā¢ (the official one) tries to do too many things at +;; once, so I want something that does the basics. Also want to take +;; this opportunity to make a new mode and what facilities Emacs +;; provides for it. + +;;; Code: + +(require 'generic-x) + +(define-generic-mode ada-mode + '("--") ; Comments + '("abort" "else" "new" "return" + "abs" "elsif" "not" "reverse" + "abstract" "end" "null" + "accept" "entry" "select" + "access" "exception" "of" "separate" + "aliased" "exit" "or" "subtype" + "all" "others" "synchronized" + "and" "for" "out" + "array" "function" "overriding" "tagged" + "at" "task" + "generic" "package" "terminate" + "begin" "goto" "pragma" "then" + "body" "private" "type" + "if" "procedure" + "case" "in" "protected" "until" + "constant" "interface" "use" + "is" "raise" + "declare" "range" "when" + "delay" "limited" "record" "while" + "delta" "loop" "rem" "with" + "digits" "renames" + "do" "mod" "requeue" "xor") ; Keywords + nil + '("\\.ad\\(b\\|s\\)") + nil) + +(provide 'ada-mode) +;;; ada-mode.el ends here diff --git a/Emacs/.config/emacs/config.org b/Emacs/.config/emacs/config.org index 326791f..4f9b9b4 100644 --- a/Emacs/.config/emacs/config.org +++ b/Emacs/.config/emacs/config.org @@ -1697,6 +1697,16 @@ use the current buffer?) but it works out. :keymaps 'pdf-view-mode-map "M-g" #'pdfgrep)) #+end_src +** Ada +Check out [[file:ada-mode.el][ada-mode*]], my custom ada-mode that replaces the default one. +This mode just colourises stuff, and uses eglot to do the heavy +lifting. + +#+begin_src emacs-lisp + (load-file (concat user-emacs-directory "ada-mode.el")) + (with-eval-after-load "eglot" + (add-hook 'ada-mode-hook #'eglot)) +#+end_src ** Org *** Org Core Variables Tons of variables for org-mode, including a ton of latex ones. |