%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/progmodes/ |
Current File : //usr/local/share/emacs/27.2/lisp/progmodes/asm-mode.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\207" [custom-declare-group asm nil "Mode for editing assembler code." :link (custom-group-link :tag "Font Lock Faces group" font-lock-faces) :group languages custom-declare-variable asm-comment-char funcall function #[0 "\300\207" [59] 1] "The `comment-start' character assumed by Asm mode." :type character] 8) #@38 Syntax table used while in Asm mode. (defvar asm-mode-syntax-table (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\211\207" [make-syntax-table modify-syntax-entry 10 "> b" 47 ". 124b" 42 ". 23"] 5) (#$ . 806)) #@38 Abbrev table used while in Asm mode. (defvar asm-mode-abbrev-table nil (#$ . 1046)) (define-abbrev-table 'asm-mode-abbrev-table nil) #@22 Keymap for Asm mode. (defvar asm-mode-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307\300 B#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\211\207" [make-sparse-keymap define-key ":" asm-colon ";" comment-region [menu-bar asm-mode] "Asm" [menu-bar asm-mode comment-region] (menu-item "Comment Region" comment-region :help "Comment or uncomment each line in the region") [menu-bar asm-mode newline-and-indent] (menu-item "Insert Newline and Indent" newline-and-indent :help "Insert a newline, then indent according to major mode") [menu-bar asm-mode asm-colon] (menu-item "Insert Colon" asm-colon :help "Insert a colon; if it follows a label, delete the label's indentation")] 6) (#$ . 1185)) #@56 Additional expressions to highlight in Assembler mode. (defconst asm-font-lock-keywords (append '(("^\\(\\(\\sw\\|\\s_\\)+\\)\\>:?[ ]*\\(\\sw+\\(\\.\\sw+\\)*\\)?" (1 font-lock-function-name-face) (3 font-lock-keyword-face nil t)) ("^\\(\\.\\(\\sw\\|\\s_\\)+\\)\\>:" 1 font-lock-function-name-face) ("^\\((\\sw+)\\)?\\s +\\(\\(\\.?\\sw\\|\\s_\\)+\\(\\.\\sw+\\)*\\)" 2 font-lock-keyword-face) ("^\\(\\.\\(\\sw\\|\\s_\\)+\\)\\>[^:]?" 1 font-lock-keyword-face) ("%\\sw+" . font-lock-variable-name-face)) cpp-font-lock-keywords) (#$ . 1919)) (defvar asm-mode-hook nil) (byte-code "\300\301N\204\f \302\300\301\303#\210\304\305!\204 \302\305\306\307#\210\300\207" [asm-mode-hook variable-documentation put "Hook run after entering Assembler mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp asm-mode-map definition-name asm-mode] 4) (defvar asm-mode-map (make-sparse-keymap)) (byte-code "\301\302N\204 \303\301\302\304\305!#\210\306\307!\204 \303\307\310\311#\210\312\313 !\210\307\302N\204- \303\307\302\304\314!#\210\306\300!\204B \303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P \303\300\302\304\320!#\210\303\311\321\322#\207" [asm-mode-abbrev-table asm-mode-map variable-documentation put purecopy "Keymap for `asm-mode'." boundp asm-mode-syntax-table definition-name asm-mode (lambda (#1=#:def-tmp-var) (defvar asm-mode-syntax-table #1#)) make-syntax-table "Syntax table for `asm-mode'." (lambda (#1#) (defvar asm-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `asm-mode'." derived-mode-parent prog-mode] 5) #@682 Major mode for editing typical assembler code. Features a private abbrev table and the following bindings: \[asm-colon] outdent a preceding label, tab to next tab stop. \[tab-to-tab-stop] tab to next tab stop. \[newline-and-indent] newline, then tab to next tab stop. \[asm-comment] smart placement of assembler comments. The character used for making comments is set by the variable `asm-comment-char' (which defaults to `?\;'). Alternatively, you may set this variable in `asm-mode-set-comment-hook', which is called near the beginning of mode initialization. Turning on Asm mode runs the hook `asm-mode-hook' at the end of initialization. Special commands: \{asm-mode-map} (defalias 'asm-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203 \314\311\313\310\313N#\210\315!\204' \316\317 \"\210\320\f!\211\2035 \211\321 =\203; \322\f\323 \"\210\210\324 \325\"\204R 5=\204R \326 \3255C#\210\327!\210\330\f!\210 5 5\306\331!\210\332\306\333!\210\334\306\335!\210\336\337\340!\210\327\341 \244!\210\342\3436!\344\"\210\330\345\f!!\210\3466\347\"\210\306\350!\210\3516!(\306\352!\210\353*\306\354!\210\355,\306\356!\210\357.\306\360!\210\3610\3627)\363\364!\207" [delay-mode-hooks major-mode mode-name asm-mode-map asm-mode-syntax-table asm-mode-abbrev-table make-local-variable t prog-mode asm-mode "Assembler" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table font-lock-defaults (asm-font-lock-keywords) indent-line-function asm-indent-line tab-always-indent nil run-hooks asm-mode-set-comment-hook make-sparse-keymap local-set-key vector asm-comment make-syntax-table modify-syntax-entry "< b" comment-start string comment-add 1 comment-start-skip "\\(?:\\s<+\\|/[/*]+\\)[ ]*" comment-end-skip "[ ]*\\(\\s>\\|\\*+/\\)" comment-end "" " " run-mode-hooks asm-mode-hook local-abbrev-table asm-comment-char fill-prefix] 5 (#$ . 3563) nil]) #@31 Auto-indent the current line. (defalias 'asm-indent-line #[0 "`\3001 \212\301y\210\302\303w\210`Y\203 \303\262\304 \301])0\202! \210\301\203- \212\305!)\2020 \305!\207" [(error) 0 " " nil asm-calculate-indentation indent-line-to] 4 (#$ . 5610) nil]) (defalias 'asm-calculate-indentation #[0 "\301\302!\203 \303\207\301\304!\203 \303\207\301\305!\203 \206 \306\303!\207" [comment-column looking-at "\\(\\sw\\|\\s_\\)+:" 0 "\\s<\\s<\\s<" "\\s<\\(\\S<\\|\\'\\)" indent-next-tab-stop] 2]) #@72 Insert a colon; if it follows a label, delete the label's indentation. (defalias 'asm-colon #[0 "\300\212\301\302!\210\301\303!\210n\211\262\203 \304 \210)\305\306!\210\211\205\"