mylisp-obsolete/iar4-linker-config-mode.el
author Oleksandr Gavenko <gavenkoa@gmail.com>
Thu, 02 Feb 2023 02:14:23 +0200
changeset 1770 2b93801abc3c
parent 1718 9d72f4424570
permissions -rw-r--r--
Disable diff-font-lock-syntax as it visits files from Git and this is extremely slow in Cygwin+antivirus.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
257
2f3ac763c340 Make docs headers according to 'Conventional Headers for Emacs Libraries'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 236
diff changeset
     1
;;; iar-linker-config-mode.el --- major mode for highlighting IAR Embedded Workbench 4.x linker scripts
2f3ac763c340 Make docs headers according to 'Conventional Headers for Emacs Libraries'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 236
diff changeset
     2
2f3ac763c340 Make docs headers according to 'Conventional Headers for Emacs Libraries'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 236
diff changeset
     3
;;; Commentary:
2f3ac763c340 Make docs headers according to 'Conventional Headers for Emacs Libraries'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 236
diff changeset
     4
;;
1718
9d72f4424570 Removed mentioning of author and copyright from all files' headers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1662
diff changeset
     5
;; Very poor highlighting, not all syntax is covered.
257
2f3ac763c340 Make docs headers according to 'Conventional Headers for Emacs Libraries'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 236
diff changeset
     6
2f3ac763c340 Make docs headers according to 'Conventional Headers for Emacs Libraries'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 236
diff changeset
     7
;;; Code:
2f3ac763c340 Make docs headers according to 'Conventional Headers for Emacs Libraries'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 236
diff changeset
     8
274
7c18567f0754 Added autoload magic comment for main mode function.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 270
diff changeset
     9
;;;###autoload
210
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    10
(define-generic-mode iar4-linker-config-mode
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    11
  '("// " ("/*" . "*/"))
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    12
  nil
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    13
  '(
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    14
    ("^\\(-c\\)\\([_a-zA-Z]+\\)"
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    15
     (1 font-lock-keyword-face)
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    16
     (2 font-lock-variable-name-face) )
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    17
    ("^\\(-D\\)\\([_a-zA-Z0-9]+\\)=\\(\\(0x\\)?[0-9a-fA-F]+\\|.[0-9]+\\)"
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    18
     (1 font-lock-keyword-face)
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    19
     (2 font-lock-variable-name-face)
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    20
     (3 font-lock-constant-face) )
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    21
    ("^\\(-Q\\)\\([_a-zA-Z]+\\)=\\([_a-zA-Z]+\\)"
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    22
     (1 font-lock-keyword-face)
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    23
     (2 font-lock-variable-name-face)
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    24
     (3 font-lock-variable-name-face) )
236
848b9cd2e47c Correct highlight patterns.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 210
diff changeset
    25
    ("^\\(-Z\\|-P\\|-b\\)(\\([_a-zA-Z]+\\))\\([_a-zA-Z]+\\)="
210
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    26
     (1 font-lock-keyword-face)
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    27
     (2 font-lock-variable-name-face)
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    28
     (3 font-lock-variable-name-face) )
236
848b9cd2e47c Correct highlight patterns.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 210
diff changeset
    29
    ("^\\(-Z\\|-P\\|-b\\)(\\([_a-zA-Z]+\\))\\([_a-zA-Z]+\\)\\+\\([_a-zA-Z]+\\)="
210
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    30
     (1 font-lock-keyword-face)
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    31
     (2 font-lock-variable-name-face)
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    32
     (3 font-lock-variable-name-face)
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    33
     (4 font-lock-variable-name-face) )
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    34
    )
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    35
  (list "\\.\\(xcl\\)\\'")
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    36
  (list
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    37
   (lambda () (setq comment-start "// " comment-end ""))
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    38
   )
b1404f54ec30 Added iar4-linker-config-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    39
  "Generic mode for iar linker config files.")
258
29533873ee3e Fix docs headers according to 'Conventional Headers for Emacs Libraries'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 257
diff changeset
    40
29533873ee3e Fix docs headers according to 'Conventional Headers for Emacs Libraries'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 257
diff changeset
    41
(provide 'iar4-linker-config-mode)
29533873ee3e Fix docs headers according to 'Conventional Headers for Emacs Libraries'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 257
diff changeset
    42
257
2f3ac763c340 Make docs headers according to 'Conventional Headers for Emacs Libraries'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 236
diff changeset
    43
;;; iar4-linker-config-mode.el ends here