Variable: asm-mode-hook

asm-mode-hook is a variable defined in asm-mode.el.gz.

Value

nil

Documentation

Hook run after entering asm-mode.

No problems result if this variable is not bound. add-hook automatically binds it. (This is true for all hook variables.)

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/asm-mode.el.gz
;;;###autoload
(define-derived-mode asm-mode prog-mode "Assembler"
  "Major mode for editing typical assembler code.
Features a private abbrev table and the following bindings:

\\[asm-colon]\toutdent a preceding label, tab to next tab stop.
\\[tab-to-tab-stop]\ttab to next tab stop.
\\[newline-and-indent]\tnewline, then tab to next tab stop.
\\[asm-comment]\tsmart 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}"
  (setq local-abbrev-table asm-mode-abbrev-table)
  (setq-local font-lock-defaults '(asm-font-lock-keywords))
  (setq-local indent-line-function #'asm-indent-line)
  ;; Stay closer to the old TAB behavior (was tab-to-tab-stop).
  (setq-local tab-always-indent nil)

  (run-hooks 'asm-mode-set-comment-hook)
  ;; Make our own local child of `asm-mode-map'
  ;; so we can define our own comment character.
  (use-local-map (nconc (make-sparse-keymap) asm-mode-map))
  (local-set-key (vector asm-comment-char) #'asm-comment)
  (set-syntax-table (make-syntax-table asm-mode-syntax-table))
  (modify-syntax-entry	asm-comment-char "< b")

  (setq-local comment-start (string asm-comment-char))
  (setq-local comment-add 1)
  (setq-local comment-start-skip "\\(?:\\s<+\\|/[/*]+\\)[ \t]*")
  (setq-local comment-end-skip "[ \t]*\\(\\s>\\|\\*+/\\)")
  (setq-local comment-end ""))