%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/textmodes/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/textmodes/sgml-mode.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file contains utf-8 non-ASCII characters,
;;; and so cannot be loaded into Emacs 22 or earlier.
(and (boundp 'emacs-version)
     (< (aref emacs-version (1- (length emacs-version))) ?A)
     (string-lessp emacs-version "23")
     (error "`%s' was compiled for Emacs 23 or later" #$))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\300\302!\210\303\304\305\306\307\310\311\312&\210\313\314\315\316\317DD\320\321\322%\210\313\323\315\316\324DD\325\326\327\321\322\330\331&	\210\313\332\315\316\333DD\334\321\335\326\336&\210\337\340\341\"\210\313\341\315\316\342DD\343\321\316\344\345\346\347&	\210\350\341\351\352#\210\313\353\315\316\354DD\355\321\356%\207" [require dom seq custom-declare-group sgml nil "SGML editing mode." :link (custom-group-link :tag "Font Lock Faces group" font-lock-faces) :group languages custom-declare-variable sgml-basic-offset funcall function #[0 "\300\207" [2] 1] "Specifies the basic indentation level for `sgml-indent-line'." :type integer sgml-attribute-offset #[0 "\300\207" [0] 1] "Specifies a delta for attribute indentation in `sgml-indent-line'.\n\nWhen 0, attribute indentation looks like this:\n\n  <element\n    attribute=\"value\">\n  </element>\n\nWhen 2, attribute indentation looks like this:\n\n  <element\n      attribute=\"value\">\n  </element>" :version "25.1" :safe integerp sgml-xml-mode #[0 "\300\207" [nil] 1] "When non-nil, tag insertion functions will be XML-compliant.\nIt is set to be buffer-local when the file has\na DOCTYPE or an XML declaration." boolean "22.1" defvaralias sgml-transformation sgml-transformation-function #[0 "\300\207" [identity] 1] "Default value for `skeleton-transformation-function' in SGML mode." :initialize custom-initialize-default :set #[514 "\300\"\210\301\302\303\304\305\306!\307\"\310\311%\312 \"\207" [set-default mapc make-byte-code 257 "r\211q\210\303\304!\205	?\205\300\211)\207" vconcat vector [sgml-xml-mode skeleton-transformation-function derived-mode-p sgml-mode] 3 "\n\n(fn BUFF)" buffer-list] 9 "\n\n(fn SYM VAL)"] put variable-interactive "aTransformation function: " sgml-mode-hook #[0 "\300\207" [nil] 1] "Hook run by command `sgml-mode'.\n`text-mode-hook' is run first." hook] 10)
#@339 List of characters that have a special meaning for SGML mode.
This list is used when first loading the `sgml-mode' library.
The supported characters are ?\", ?\=', and ?-.

Including ?- makes double dashes into comment delimiters, but
they are really only supposed to delimit comments within DTD
definitions.  So we normally turn it off.
(defvar sgml-specials '(34 39) (#$ . 2306))
#@137 Use <, >, &, /, SPC and `sgml-specials' keys "electrically" when non-nil.
This takes effect when first loading the `sgml-mode' library.
(defvar sgml-quick-keys nil (#$ . 2695))
#@50 Keymap for SGML mode.  See also `sgml-specials'.
(defvar sgml-mode-map (byte-code "\302 \303\304!\305\306\307#\210\305\310\311#\210\305\312\313#\210\305\314\315#\210\305\316\317#\210\305\320\321#\210\305\322\321#\210\305\323\324#\210\305\325\324#\210\305\326\327#\210\305\330\327#\210\305\331\332#\210\305\333\334#\210\305\335\334#\210\305\336\315#\210\305\337\334#\210\305\340\341#\210\305\342\343#\210\203\245\305\344\313#\210\305\345\315#\210\305\346\347#\210\305\350\351#\210\352	>\203\231\305\353\354#\210\355	>\203\245\305\356\354#\210\357A@T\211\262\360W\203\273\211\361I\210\202\251\266\305\362\304B#\210\305\363\364#\210\305\365\366#\210\305\367\370#\210\305\371\372#\210\305\373\374#\210\305\375\376#\210\305\377\201@#\210\305\201A\201B#\210\305\201C\201D#\210\207" [sgml-quick-keys sgml-specials make-keymap make-sparse-keymap "SGML" define-key "	" sgml-tags-invisible "/" sgml-slash "" sgml-name-char "" sgml-tag "" sgml-attributes "" sgml-skip-tag-backward [3 left] "" sgml-skip-tag-forward [3 right] "" sgml-delete-tag "" "?" sgml-tag-help "]" sgml-close-tag "/" "" "" "8" sgml-name-8bit-mode "" sgml-validate "&" "<" " " sgml-auto-attributes ">" sgml-maybe-end-tag 34 "\"" sgml-name-self 39 "'" 127 256 sgml-maybe-name-self [menu-bar sgml] [sgml-validate] ("Validate" . sgml-validate) [sgml-name-8bit-mode] ("Toggle 8 Bit Insertion" . sgml-name-8bit-mode) [sgml-tags-invisible] ("Toggle Tag Visibility" . sgml-tags-invisible) [sgml-tag-help] ("Describe Tag" . sgml-tag-help) [sgml-delete-tag] ("Delete Tag" . sgml-delete-tag) [sgml-skip-tag-forward] ("Forward Tag" . sgml-skip-tag-forward) [sgml-skip-tag-backward] ("Backward Tag" . sgml-skip-tag-backward) [sgml-attributes] ("Insert Attributes" . sgml-attributes) [sgml-tag] ("Insert Tag" . sgml-tag)] 7) (#$ . 2878))
#@17 

(fn SPECIALS)
(defalias 'sgml-make-syntax-table #[257 "\301!\302\303\304#\210\302\305\306#\210\302\307\310#\210\302\311\310#\210\302\312\310#\210\313>\203-\302\313\314#\210\315>\2039\302\315\316#\210\317>\203E\302\317\320#\210\211\207" [text-mode-syntax-table make-syntax-table modify-syntax-entry 60 "(>" 62 ")<" 58 "_" 95 46 45 "_ 1234" 34 "\"\"" 39 "\"'"] 6 (#$ . 4745)])
#@60 Syntax table used in SGML mode.  See also `sgml-specials'.
(defvar sgml-mode-syntax-table (sgml-make-syntax-table sgml-specials) (#$ . 5143))
#@39 Syntax table used to parse SGML tags.
(defconst sgml-tag-syntax-table (byte-code "\301!\302\211\203\211@\303\304#\210A\266\202\202\210\305>\204$\303\305\306#\210\211\207" [sgml-specials sgml-make-syntax-table (40 41 123 125 91 93 36 37 38 42 43 47) modify-syntax-entry "." 39 "w"] 7) (#$ . 5291))
(byte-code "\300\301\302\303\304DD\305\306\307%\207" [custom-declare-variable sgml-name-8bit-mode funcall function #[0 "\300\207" [nil] 1] "When non-nil, insert non-ASCII characters as named entities." :type boolean] 6)
#@57 Vector of symbolic character names without `&' and `;'.
(defvar sgml-char-names [nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil "nbsp" "excl" "quot" "num" "dollar" "percnt" "amp" "apos" "lpar" "rpar" "ast" "plus" "comma" "hyphen" "period" "sol" nil nil nil nil nil nil nil nil nil nil "colon" "semi" "lt" "eq" "gt" "quest" "commat" nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil "lsqb" nil "rsqb" "uarr" "lowbar" "lsquo" nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil "lcub" "verbar" "rcub" "tilde" nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil "nbsp" "iexcl" "cent" "pound" "curren" "yen" "brvbar" "sect" "uml" "copy" "ordf" "laquo" "not" "shy" "reg" "macr" "ring" "plusmn" "sup2" "sup3" "acute" "micro" "para" "middot" "cedil" "sup1" "ordm" "raquo" "frac14" "frac12" "frac34" "iquest" "Agrave" "Aacute" "Acirc" "Atilde" "Auml" "Aring" "AElig" "Ccedil" "Egrave" "Eacute" "Ecirc" "Euml" "Igrave" "Iacute" "Icirc" "Iuml" "ETH" "Ntilde" "Ograve" "Oacute" "Ocirc" "Otilde" "Ouml" nil "Oslash" "Ugrave" "Uacute" "Ucirc" "Uuml" "Yacute" "THORN" "szlig" "agrave" "aacute" "acirc" "atilde" "auml" "aring" "aelig" "ccedil" "egrave" "eacute" "ecirc" "euml" "igrave" "iacute" "icirc" "iuml" "eth" "ntilde" "ograve" "oacute" "ocirc" "otilde" "ouml" "divide" "oslash" "ugrave" "uacute" "ucirc" "uuml" "yacute" "thorn" "yuml"] (#$ . 5825))
(put 'sgml-table 'char-table-extra-slots 0)
#@116 A table for mapping non-ASCII characters into SGML entity names.
Currently, only Latin-1 characters are supported.
(defvar sgml-char-names-table (byte-code "\301\302!\303\304\305W\203#H\262\211\203\306\307\"I\210T\262\202\207" [sgml-char-names make-char-table sgml-table 32 nil 128 make-char latin-iso8859-1] 7) (#$ . 7484))
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable sgml-validate-command funcall function #[0 "\300\301!\203\302\207\300\303!\203\304\207\300\305!\203\306\207\307\207" [executable-find "tidy" "tidy --gnu-emacs yes -utf8 -e -q" "nsgmls" "nsgmls -s" "onsgmls" "onsgmls -s" "Install (o)nsgmls, tidy, or some other SGML validator, and set `sgml-validate-command'"] 2] "The command to validate an SGML document.\nThe file name of current buffer file name will be appended to this,\nseparated by a space." :type string :version "21.1"] 8)
#@51 The command last used to validate in this buffer.
(defvar sgml-saved-validate-command nil (#$ . 8405))
(byte-code "\300\301\302\303\304DD\305\306\307%\207" [custom-declare-variable sgml-slash-distance funcall function #[0 "\300\207" [1000] 1] "If non-nil, is the maximum distance to search for matching `/'." :type (choice (const nil) integer)] 6)
(defconst sgml-namespace-re "[_[:alpha:]][-_.[:alnum:]]*")
(defconst sgml-name-re "[_:[:alpha:]][-_.:[:alnum:]]*")
(defconst sgml-tag-name-re (concat "<\\([!/?]?" sgml-name-re "\\)"))
(defconst sgml-attrs-re "\\(?:[^\"'/><]\\|\"[^\"]*\"\\|'[^']*'\\)*")
#@99 Regular expression that matches a non-empty start tag.
Any terminating `>' or `/' is not matched.
(defconst sgml-start-tag-regex (concat "<" sgml-name-re sgml-attrs-re) (#$ . 9012))
(custom-declare-face 'sgml-namespace '((t (:inherit font-lock-builtin-face))) "`sgml-mode' face used to highlight the namespace part of identifiers.")
(defvar sgml-namespace-face 'sgml-namespace)
(defconst sgml-font-lock-keywords-1 (byte-code "\302\303Q\304B\305	\306\307\260\310B\311	\306\312\260\313B\314\315Q\316BF\207" [sgml-name-re sgml-namespace-re "<\\([!?]" "\\)" (1 font-lock-keyword-face) "</?\\(" "\\)\\(?::\\(" "\\)\\)?" ((1 (if (match-end 2) sgml-namespace-face font-lock-function-name-face)) (2 font-lock-function-name-face nil t)) "\\(?:^\\|[ 	]\\)\\(" "\\)\\)?=[\"']" ((1 (if (match-end 2) sgml-namespace-face font-lock-variable-name-face)) (2 font-lock-variable-name-face nil t)) "[&%]" ";?" font-lock-variable-name-face] 7))
(defconst sgml-font-lock-keywords-2 (append sgml-font-lock-keywords-1 '((eval cons (concat "<" (regexp-opt (mapcar 'car sgml-tag-face-alist) t) "\\([ 	][^>]*\\)?>\\([^<]+\\)</\\1>") '(3 (cdr (assoc-string (match-string 1) sgml-tag-face-alist t)) prepend)))))
#@68 Rules for highlighting SGML code.  See also `sgml-tag-face-alist'.
(defvar sgml-font-lock-keywords sgml-font-lock-keywords-1 (#$ . 10208))
#@66 `font-lock-syntactic-face-function' for `sgml-mode'.

(fn STATE)
(defalias 'sgml-font-lock-syntactic-face #[257 "\3028\203\3038\203\207\3048\205	\207" [font-lock-string-face font-lock-comment-face 9 3 4] 3 (#$ . 10353)])
(defvar sgml--syntax-propertize-ppss nil nil)
(make-variable-buffer-local 'sgml--syntax-propertize-ppss)
#@80 Return PPSS at POS, fixing the syntax of any lone `>' along the way.

(fn POS)
(defalias 'sgml--syntax-propertize-ppss #[257 "\211@Y\204\301\302!\210\303@\304\305A%\211@\304=\2033\306`S`\307\310$\210\211\311\240\210\303`\304\305%\262\202\241\210\240\210\211\207" [sgml--syntax-propertize-ppss cl--assertion-failed (>= pos (car sgml--syntax-propertize-ppss)) parse-partial-sexp -1 nil put-text-property syntax-table (1) 0] 8 (#$ . 10695)])
#@90 Syntax-propertize rules for sgml text.
These have to be run via `sgml-syntax-propertize'
(defconst sgml-syntax-propertize-rules '(("\\(<\\)!--" (1 "< b")) ("--[ 	\n]*\\(>\\)" (1 "> b")) ("\\(<\\)[?!]" (1 (prog1 "|>" (sgml-syntax-propertize-inside end)))) ("\\([\"']\\)[^\"'<>]*" (1 (if (eq (char-after) (char-after (match-beginning 0))) (forward-char 1) (when (eq (char-after) 62) (skip-chars-backward "-")) (if (zerop (save-excursion (car (sgml--syntax-propertize-ppss (match-beginning 0))))) (string-to-syntax ".")))))) (#$ . 11156))
(defconst sgml--syntax-propertize #[514 "b\210`W\205\245\300\301\302#\205\245\303\224\203\"\304\303\224\303\225\305\306$\210\202\307\224\2033\304\307\224\307\225\305\310$\210\202\311\224\203W\312\313!\211A\314\233\241\210\315!\266\304\303\224\303\225\305\316$\210\317!\210\202\320\224\203\312\313!\211A\321\233\241\210\315!\266\303\224\303\225\322f\323\224f=\203}\303u\202\225\322f\324=\203\210\325\322x\210\212\326\323\224!@)\323U\205\225\327\211\203\240\304\305$\210\266\202\207" [re-search-forward "\\(<\\)!--\\|--[ 	\n]*\\(>\\)\\|\\(<\\)[?!]\\|\\([\"']\\)[^\"'<>]*" t 1 put-text-property syntax-table (2097163) 2 (2097164) 3 match-data ints 6 set-match-data (15 . 62) sgml-syntax-propertize-inside 4 8 nil 0 62 "-" sgml--syntax-propertize-ppss (1)] 10 "\n\n(fn START END)"])
#@78 Syntactic keywords for `sgml-mode'.

(fn START END &optional RULES-FUNCTION)
(defalias 'sgml-syntax-propertize #[770 "\302!B\211A@\303Y\204\304\305!\210\306!\210\211\206	`\"\210\300!\207" [sgml--syntax-propertize-ppss sgml--syntax-propertize syntax-ppss 0 cl--assertion-failed (>= (cadr sgml--syntax-propertize-ppss) 0) sgml-syntax-propertize-inside] 7 (#$ . 12511)])
#@12 

(fn END)
(defalias 'sgml-syntax-propertize-inside #[257 "\302 \3038\304=\205K\212\3058b\210\306\304\307!)\262\203 \310\2029\311\304\307!)\262\2038	\2034\312\2029\313\2029\313)\314\315#\205I\316`S`\317\320$\262\207" [inhibit-changing-match-data sgml-xml-mode syntax-ppss 3 t 8 "<!\\[CDATA\\[" looking-at "]]>" "<\\?" "\\?>" ">" re-search-forward move put-text-property syntax-table (15 . 60)] 8 (#$ . 12895)])
#@42 Alist of face and tag name for facemenu.
(defvar sgml-face-tag-alist nil (#$ . 13331))
#@217 Tag names and face or list of faces to fontify with when invisible.
When `font-lock-maximum-decoration' is 1 this is always used for fontifying.
When more these are fontified together with `sgml-font-lock-keywords'.
(defvar sgml-tag-face-alist nil (#$ . 13425))
#@68 Tag names as lowercase symbols, and display string when invisible.
(defvar sgml-display-text nil (#$ . 13693))
(defvar sgml-tags-invisible nil)
(byte-code "\300\301\302\303\304DD\305\306\307%\210\310\301\311\312#\210\300\313\302\303\314DD\315\306\316%\207" [custom-declare-variable sgml-tag-alist funcall function #[0 "\300\207" [(("![" ("ignore" t) ("include" t)) ("!attlist") ("!doctype") ("!element") ("!entity"))] 1] "Alist of tag names for completing read and insertion rules.\nThis alist is made up as\n\n  ((\"tag\" . TAGRULE)\n   ...)\n\nTAGRULE is a list of optionally t (no endtag) or `\\n' (separate endtag by\nnewlines) or a skeleton with nil, t or `\\n' in place of the interactor\nfollowed by an ATTRIBUTERULE (for an always present attribute) or an\nattribute alist.\n\nThe attribute alist is made up as\n\n  ((\"attribute\" . ATTRIBUTERULE)\n   ...)\n\nATTRIBUTERULE is a list of optionally t (no value when no input) followed by\nan optional alist of possible values." :type (repeat (cons (string :tag "Tag Name") (repeat :tag "Tag Rule" sexp))) put risky-local-variable t sgml-tag-help #[0 "\300\207" [(("!" . "Empty declaration for comment") ("![" . "Embed declarations with parser directive") ("!attlist" . "Tag attributes declaration") ("!doctype" . "Document type (DTD) declaration") ("!element" . "Tag declaration") ("!entity" . "Entity (macro) declaration"))] 1] "Alist of tag name and short description." (repeat (cons (string :tag "Tag Name") (string :tag "Description")))] 6)
#@52 List of tags whose !ELEMENT definition says EMPTY.
(defvar sgml-empty-tags nil (#$ . 15202))
#@70 List of tags whose !ELEMENT definition says the end-tag is optional.
(defvar sgml-unclosed-tags nil (#$ . 15301))
#@65 Guess whether the current buffer is XML.  Return non-nil if so.
(defalias 'sgml-xml-guess #[0 "\212eb\210\301\206\n\302!\303\230\2067\304 \305U\203#\301\206\302!\306\230\2067\307\310!\2067\311\312\313\314#\2057\315\316\317\320!\")\207" [buffer-file-name file-name-extension "" "xml" buffer-size 0 "xhtml" looking-at "\\s-*<\\?xml" re-search-forward "<!DOCTYPE\\s-+\\(\\w+\\)\\s-+\\(\\w+\\)\\s-+\"\\([^\"]+\\)\"\\s-+\"\\([^\"]+\\)\"" nil t string-match "X\\(HT\\)?ML" match-string 3] 4 (#$ . 15421)])
#@23 

(fn &optional SOFT)
(defalias 'sgml-comment-indent-new-line #[256 "\304\305\306\307\310!,\207" [comment-style comment-end comment-start-skip comment-start "-- " "\\(<!\\)?--[ 	]*" " --" plain comment-indent-new-line] 5 (#$ . 15937)])
#@17 

(fn FACE END)
(defalias 'sgml-mode-facemenu-add-face-function #[514 "\236A\211\203	!\262\304\305Q\306\305Q\202P:\203J@:\203JA\204J@@\307>\203J\310\311\312@@\313=\203A\314\202B\315@A@#\202P\316\317\320!\"\207" [sgml-face-tag-alist skeleton-transformation-function facemenu-end-add-face mode-name "</" ">" "<" (:foreground :background) "</span>" format "<span style=\"%s:%s\">" :foreground "color" "background-color" error "Face not configured for %s mode" format-mode-line] 7 (#$ . 16184)])
#@245 Don't break between a tag name and its first argument.
This function is designed for use in `fill-nobreak-predicate'.

    <a href="some://where" type="text/plain">
      ^                   ^
      | no break here     | but still allowed here
(defalias 'sgml-fill-nobreak #[0 "\212\300\301x\210\302\303!\304U?\205\305\301x\205`Sf\306=)\207" [" 	" nil skip-syntax-backward "w_" 0 "/?!" 60] 2 (#$ . 16708)])
(defvar sgml-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [sgml-mode-hook variable-documentation put "Hook run after entering '(sgml-xml-mode XML SGML) mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp sgml-mode-map definition-name sgml-mode] 4)
(defvar sgml-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" [sgml-mode-abbrev-table sgml-mode-map variable-documentation put purecopy "Keymap for `sgml-mode'." boundp sgml-mode-syntax-table definition-name sgml-mode (lambda (#1=#:def-tmp-var) (defvar sgml-mode-syntax-table #1#)) make-syntax-table "Syntax table for `sgml-mode'." (lambda (#1#) (defvar sgml-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `sgml-mode'." derived-mode-parent text-mode] 5)
#@833 Major mode for editing SGML documents.
Makes > match <.
Keys <, &, SPC within <>, ", / and \=' can be electric depending on
`sgml-quick-keys'.

An argument of N to a tag-inserting command means to wrap it around
the next N words.  In Transient Mark mode, when the mark is active,
N defaults to -1, which means to wrap it around the current region.

If you like upcased tags, put (setq sgml-transformation-function \='upcase)
in your init file.

Use \[sgml-validate] to validate your document with an SGML parser.

Do \[describe-variable] sgml- SPC to see available variables.
Do \[describe-key] on the following bindings to discover what they do.
\{sgml-mode-map}

In addition to any hooks its parent mode `text-mode' might have run,
this mode runs the hook `sgml-mode-hook', as the final or penultimate step
during initialization.
(defalias 'sgml-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
@=\204R\326
\325@C#\210\327!\210\330\f!\210
@\306\331!\210\306\332!\210\306\333!\210\334\335\336A\"A\"\336\232\203{\336\202|\337\306\340!\210\341\342\343\344B\345B\" \306\346!\210\347BC\350R&\306\351!\210&\352P)\306\353!\210\354+\355\356\357\360\307$\210\306\361!\210\3621\306\363!\210\3643\306\365!\210\3665\306\367!\210\3707\306\371!\210\3729\306\373!\210\374;\306\375!\210\376=\377D\306\201E!\210\201OE\306\201G!\210FG\306\201H!\210\201PH\306\201I!\210\201Q \211I\204\306\201K!\210JK\306\201L!\210\201RL\306\201M!\210\201SM\360\201TB\201UQ\201VBB\201W\201XI\203U\201Y\202X\201Z\201[B\201\\\260\201]BB\201^\201_I\203x\201Y\202{\201Z\201[B\201\\\260\201`BBEN)\201a\201b!\207" [delay-mode-hooks major-mode mode-name sgml-mode-map sgml-mode-syntax-table sgml-mode-abbrev-table make-local-variable t text-mode sgml-mode (sgml-xml-mode "XML" "SGML") 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 sgml-saved-validate-command facemenu-end-add-face tildify-space-string decode-coding-string encode-coding-string " " "&#160;" tildify-foreach-region-function apply-partially tildify-foreach-ignore-environments "<\\(\\(?:CODE\\|DFN\\|KBD\\|PRE\\|SAMP\\|VAR\\|code\\|dfn\\|kbd\\|pre\\|samp\\|var\\)\\)\\>[^>]*>" ("</" 1 ">") (("<! *--" . "-- *>") ("<" . ">")) paragraph-start "[ 	]*$\\|[ 	]*</?\\(" "\\)?>" paragraph-separate "$" adaptive-fill-regexp "[ 	]*" add-hook fill-nobreak-predicate sgml-fill-nobreak nil indent-line-function sgml-indent-line comment-start "<!-- " comment-end " -->" comment-indent-function sgml-comment-indent comment-line-break-function sgml-comment-indent-new-line skeleton-further-elements ((completion-ignore-case t)) skeleton-end-hook #[0 "l\206\301=\206\242\301=?\206\302 \207" [v2 n newline-and-indent] 2] ((sgml-font-lock-keywords sgml-font-lock-keywords-1 sgml-font-lock-keywords-2) nil t nil (font-lock-syntactic-face-function . sgml-font-lock-syntactic-face)) local-abbrev-table buffer-file-coding-system sgml-name-re sgml-attrs-re font-lock-defaults syntax-propertize-function sgml-tag-syntax-table syntax-ppss-table facemenu-add-face-function sgml-xml-mode sgml-transformation-function skeleton-transformation-function comment-start-skip comment-end-skip imenu-generic-expression sgml-syntax-propertize sgml-mode-facemenu-add-face-function sgml-xml-guess "<!--[ 	]*" "[ 	]*--[ 	\n]*>" "<!\\(element\\|entity\\)[ 	\n]+%?[ 	\n]*\\(" "\\)" (2) "Id" "<[^>]+[ 	\n]+[Ii][Dd]=\\(['\"]" "" "?" "\\)\\(" "\\)\\1" (2) "Name" "<[^>]+[ 	\n]+[Nn][Aa][Mm][Ee]=\\(['\"]" (2) run-mode-hooks sgml-mode-hook] 9 (#$ . 18255) nil])
(defalias 'sgml-comment-indent #[0 "\301\302!\203\207\303\207" [comment-column looking-at "--" 0] 2])
#@94 Insert ARG slash characters.
Behaves electrically if `sgml-quick-keys' is non-nil.

(fn ARG)
(defalias 'sgml-slash #[257 "`Sf\301=\203\211\302U\204\303!\207\304\267\202'\305\306\302\"\210\307 \207\310\311!\210\312 \207\305\306\"\207" [sgml-quick-keys 60 1 sgml-slash-matching #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (indent 24 close 32)) insert-char 47 indent-according-to-mode delete-char -1 sgml-close-tag] 4 (#$ . 22201) "p"])
#@196 Insert `/' and display any previous matching `/'.
Two `/'s are treated as matching if the first `/' ends a net-enabling
start tag, and the second `/' is the corresponding null end tag.

(fn ARG)
(defalias 'sgml-slash-matching #[257 "\302\303\"\210\211\304V\205\207`\305\304\212\214\203e`Z]}\210\306	e\307#\203,\304\225S=\204iSb\210\204i\310\311e\307#\203i\212\306	e\307#\205G\304\225)\211`=\203a\304=\203Z`\262\202eS\262\202eT\262\210\2020)\205\204b\210\312 \203|\313\314!\202\204\315\316\317 T{\")\266\203\207" [sgml-slash-distance sgml-start-tag-regex insert-char 47 0 nil re-search-backward t search-backward "/" pos-visible-in-window-p sit-for 1 message "Matches %s" line-beginning-position] 8 (#$ . 22691) "p"])
#@256 Insert a symbolic character name according to `sgml-char-names'.
Non-ASCII chars may be inserted either with the meta key, as in M-SPC for
no-break space or M-- for a soft hyphen; or via an input method or
encoded keyboard operation.

(fn &optional CHAR)
(defalias 'sgml-name-char #[256 "\300c\210\211\204\f\301\302!\262\303\304!\210\211c\210\305 \210\306 \207" [38 read-quoted-char "Enter char or octal number" delete-char -1 undo-boundary sgml-namify-char] 3 (#$ . 23447) "*"])
#@84 Change the char before point into its `&name;' equivalent.
Uses `sgml-char-names'.
(defalias 'sgml-namify-char #[0 "`Sf\211\204
\302\303!\202'\211\304W\203H\206'\211\202'	H\206'\305\306\"\211\2042\302\307\"\202D\310\311!\210\312\247\203@\313\202A\314\"c\207" [sgml-char-names sgml-char-names-table error "No char before point" 256 encode-char ucs "Don't know the name of `%c'" delete-char -1 format "&#%d;" "&%s;"] 5 (#$ . 23935) nil])
#@66 Insert a symbolic character name according to `sgml-char-names'.
(defalias 'sgml-name-self #[0 "\301!\207" [last-command-event sgml-name-char] 2 (#$ . 24395) "*"])
#@66 Insert a symbolic character name according to `sgml-char-names'.
(defalias 'sgml-maybe-name-self #[0 "\203\302	!\207\303\304!\207" [sgml-name-8bit-mode last-command-event sgml-name-char self-insert-command 1] 2 (#$ . 24566) "*"])
#@109 Toggle whether to insert named entities instead of non-ASCII characters.
This only works for Latin-1 input.
(defalias 'sgml-name-8bit-mode #[0 "?\301\302\203
\303\202\304\"\207" [sgml-name-8bit-mode message "sgml name entity mode is now %s" "ON" "OFF"] 3 (#$ . 24806) nil])
(defvar sgml-tag-last nil)
(defvar sgml-tag-history nil)
(put 'sgml-tag 'no-self-insert t)
#@757 Prompt for a tag and insert it, optionally with attributes.
Completion and configuration are done according to `sgml-tag-alist'.
If you like tags and attributes in uppercase, customize
`sgml-transformation-function' to `upcase'.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'sgml-tag #[512 "\300\301#\207" [skeleton-proxy-new ((funcall (or skeleton-transformation-function 'identity) (setq sgml-tag-last (completing-read (if (> (length sgml-tag-last) 0) (format "Tag (default %s): " sgml-tag-last) "Tag: ") sgml-tag-alist nil nil nil 'sgml-tag-history sgml-tag-last))) 60 str | ((#1="") -1 '(undo-boundary) (identity "&lt;")) | `((#1#) '(setq v2 (sgml-attributes ,str t)) 62 (cond ((string= "![" ,str) (backward-char) '((#1#) " [ " _ " ]]")) ((and (eq v2 t) sgml-xml-mode (member ,str sgml-empty-tags)) '((#1#) -1 " />")) ((or (and (eq v2 t) (not sgml-xml-mode)) (string-match "^[/!?]" ,str)) nil) ((symbolp v2) (if (eq v2 t) (setq v2 nil)) '((#1#) v2 _ v2 "</" (identity ',str) 62 >)) ((eq (car v2) t) (cons '(#1#) (cdr v2))) (t (append '((#1#) (car v2)) (cdr v2) '(resume: (car v2) _ "</" (identity ',str) 62 >))))))] 6 (#$ . 25184) "*P\nP"])
(autoload 'skeleton-read "skeleton")
#@236 When at top level of a tag, interactively insert attributes.

Completion and configuration of TAG are done according to `sgml-tag-alist'.
If QUIET, do not print a message when there are no attributes for TAG.

(fn TAG &optional QUIET)
(defalias 'sgml-attributes #[513 ";\204	\303\304!\210\205\324\305\306\227\"AC\307\211\211\242@9\204)\242@@9\2034\242@\262\211\242A\240\210\242\204A\204A\310\311!\210\242\203d\312\313\242\"\204U\314\242B\240\210\312\315\242\"\204d\316\242B\240\210\242@;\203\206h\317=\203u\320\202v\317\n\242@!\261\210\321\242!\210\202\320\242G\262\211\322V\203\306\317c\210\n\323\324\322\325\326\327\n!\330\"\331$!\211\262!c\210\320\230\203\265\322\262\202\213\321\306\227\242\"!\210\211S\262\202\213h\317=\203\320\332\333!\210)\266\205\207" [sgml-tag-alist completion-ignore-case skeleton-transformation-function error "Wrong context for adding attribute" t assoc nil message "No attributes configured." assoc-string "class" ("class") "id" ("id") 32 "" sgml-value 0 skeleton-read make-byte-code "\301\302\300\242\"\207" vconcat vector [completing-read "Attribute: "] 3 delete-char -1] 15 (#$ . 26867) (byte-code "\212\300\301!)C\207" [sgml-beginning-of-tag t] 2)])
#@128 Self insert the character typed; at top level of tag, prompt for attributes.
With prefix argument, only self insert.

(fn ARG)
(defalias 'sgml-auto-attributes #[257 "`\302\204\203\212\303\304!)\211\2629\204\211\305H\306=\203&\307\310!!\2025\311!\210\312`V\2065\307\313!\207" [sgml-tag-alist last-command-event nil sgml-beginning-of-tag t 0 47 self-insert-command prefix-numeric-value sgml-attributes 32 1] 6 (#$ . 28111) "*P"])
#@95 Display description of tag TAG.  If TAG is omitted, use the tag at point.

(fn &optional TAG)
(defalias 'sgml-tag-help #[256 "\211\203\211G\301V\204\212g\302=\203\303u\210\304 \262)\211;\204#\305\306!\210\211\227\262\307\310\311\227\"A\206G\301H\312=\203F\311\313\314\"\227\"A\206G\315\"\207" [sgml-tag-help 0 60 nil sgml-beginning-of-tag error "No tag selected" message "%s" assoc 47 substring 1 "No description available"] 7 (#$ . 28561) (byte-code "\212g\301=\203\n\302u\210\303 )\304\203\305\306\"\202\307\302\211\211\310&\262C\207" [sgml-tag-alist 60 nil sgml-beginning-of-tag completing-read format "Tag (default %s): " "Tag: " sgml-tag-history] 9)])
#@89 Name self unless in position to end a tag or a prefix ARG is given.

(fn &optional ARG)
(defalias 'sgml-maybe-end-tag #[256 "\211\204\f\300 @\301=\203\302\303!!\207\304 \207" [sgml-lexical-context tag self-insert-command prefix-numeric-value sgml-name-self] 4 (#$ . 29253) "P"])
#@169 Skip to beginning of tag or matching opening tag if present.
With prefix argument ARG, repeat this ARG times.
Return non-nil if we skipped over matched tags.

(fn ARG)
(defalias 'sgml-skip-tag-backward #[257 "\301\302Y\203H\303\304\305\301#\210\306\307!\203>\301\310\311\312\302!!\313Q\314\305\301#\2038`Tf\315=\2038\302u\210\316\302!\210\202)\266\202A\305\262S\262\202\211\207" [case-fold-search t 1 search-backward "<" nil looking-at "</\\([^ \n	>]+\\)" "</?" regexp-quote match-string "\\([^>]*[^/>]\\)?>" re-search-backward 47 sgml-skip-tag-backward] 8 (#$ . 29543) "p"])
#@10 

(fn N)
(defalias 'sgml-forward-sexp #[257 "\301\302!)\207" [forward-sexp-function nil forward-sexp] 3 (#$ . 30142)])
(defvar sgml-electric-tag-pair-overlays nil)
(defvar sgml-electric-tag-pair-timer nil)
#@16 

(fn BEG END)
(defalias 'sgml-electric-tag-pair-before-change-function #[514 "\3031\322\3041\317\212\211b\210\305\306x\210`Sf\307=\204-`Sf\310=\205\313`S\206&`Sf\307=\205\313\311`\312\"?\205\313`Sf\310=`\305\306w\210`\203Q\313\314!\205~\314u\210\315\202~\316 p\317\320\321\322\323\"\324\"\325$\216\326!\210\306\327\330!\210\331\314!\205{\332\314!\210\325u\210\315*\266\202\311`\312\"\205\311U?\205\311{`\212\305\306w\210`){\232\205\311\203\250f\333=\205\311\211\203\265\334\335!\210\336\337\"\210\334\340!\210\341\342\343$\210\344\311`\312\"\n\"\211\266\205)00\2070\306\207\334\345\"\207" [sgml-tag-syntax-table forward-sexp-function sgml-electric-tag-pair-overlays (error) (scan-error) "-[:alnum:]_.:" nil 60 47 get-char-property text-clones sgml-skip-tag-backward 1 t syntax-table make-byte-code 0 "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table up-list -1 sgml-skip-tag-forward backward-sexp 62 message "sgml-electric-tag-pair-before-change-function: deleting old OLs" mapc delete-overlay "sgml-electric-tag-pair-before-change-function: new clone" text-clone-create spread "[[:alnum:]-_.:]+" append "Error in sgml-electric-pair-mode: %s"] 14 (#$ . 30356)])
(defalias 'sgml-electric-tag-pair-flush-overlays #[0 "\205\301\211A\242!\210\202\207" [sgml-electric-tag-pair-overlays delete-overlay] 3])
#@123 Non-nil if Sgml-Electric-Tag-Pair mode is enabled.
Use the command `sgml-electric-tag-pair-mode' to change this variable.
(defvar sgml-electric-tag-pair-mode nil (#$ . 31738))
(make-variable-buffer-local 'sgml-electric-tag-pair-mode)
#@504 Toggle SGML Electric Tag Pair mode.

If called interactively, enable Sgml-Electric-Tag-Pair mode if ARG is
positive, and disable it if ARG is zero or negative.  If called from
Lisp, also enable the mode if ARG is omitted or nil, and toggle it if
ARG is `toggle'; disable the mode otherwise.

SGML Electric Tag Pair mode is a buffer-local minor mode for use
with `sgml-mode' and related major modes.  When enabled, editing
an opening markup tag automatically updates the closing tag.

(fn &optional ARG)
(defalias 'sgml-electric-tag-pair-mode #[256 "\302 \303=\203
?\202\304!\305V\211\203+\306\307\310\311\312$\210	\2041\313\314\315\316#\2021\317\307\310\312#\210\320\321\203;\322\202<\323\"\210\324\325!\203`\302 \203P\211\302 \232\203`\326\327\330\203[\331\202\\\332#\266\210\333 \210\207" [sgml-electric-tag-pair-mode sgml-electric-tag-pair-timer current-message toggle prefix-numeric-value 0 add-hook before-change-functions sgml-electric-tag-pair-before-change-function nil t run-with-idle-timer 5 repeat sgml-electric-tag-pair-flush-overlays remove-hook run-hooks sgml-electric-tag-pair-mode-hook sgml-electric-tag-pair-mode-on-hook sgml-electric-tag-pair-mode-off-hook called-interactively-p any " in current buffer" message "Sgml-Electric-Tag-Pair mode %sabled%s" "en" "dis" force-mode-line-update] 8 (#$ . 31979) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
(defvar sgml-electric-tag-pair-mode-hook nil)
(byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\300!\205\311\211%\207" [sgml-electric-tag-pair-mode-map sgml-electric-tag-pair-mode-hook variable-documentation put "Hook run after entering or leaving `sgml-electric-tag-pair-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" add-minor-mode sgml-electric-tag-pair-mode "/e" boundp nil] 6)
#@148 Skip to end of tag or matching closing tag if present.
With prefix argument ARG, repeat this ARG times.
Return t if after a closing tag.

(fn ARG)
(defalias 'sgml-skip-tag-forward #[257 "\302\303 p\304\305\306\307\310\"\311\"\312$\216\313!\210\314Y\203\206\315\316w\210g\317=\203+\320\321!\210\322\323!\203{\302\324\325\326\314!!\327Q\316\211\330\314!\210`\262\331\316\302#\203k\305\224Tf\332=\211\262\204k\305\224b\203k\333\314!\203k\316\262\202E\211\204ub\210\316\262)\266\202\330\314!\210S\262\202)\266\202\207" [sgml-tag-syntax-table case-fold-search t syntax-table make-byte-code 0 "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table 1 "^<>" nil 62 up-list -1 looking-at "<\\([^/ \n	>]+\\)\\([^>]*[^/>]\\)?>" "</?" regexp-quote match-string "\\([^>]*[^/>]\\)?>" forward-list re-search-forward 47 sgml-skip-tag-forward] 12 (#$ . 33882) "p"])
#@58 Return t if the test before point matches STR.

(fn STR)
(defalias 'sgml-looking-back-at #[257 "`GZ\211eY\205\300`\"\232\207" [buffer-substring-no-properties] 6 (#$ . 34793)])
(put 'sgml-looking-back-at 'byte-optimizer 'byte-compile-inline-expand)
#@128 Delete tag on or after cursor, and matching closing or opening tag.
With prefix argument ARG, repeat this ARG times.

(fn ARG)
(defalias 'sgml-delete-tag #[257 "\211\300Y\205\276\212\301\211\302\303!\203!\304\225f\305=\203W`\262\304\225b\210\202W\212\306 \262;\2054\304H\305=\2054`\211\262)\204W`\307\300!\210g\310=\203R\212\311\300!\210`X)\203V\312\313!\210\210\203l\307\300!\210`\262b\210\314\300!\210\202\217`\262\315\300!\203\217\316`GZ\211eY\205\206\317`\"\232\266\202\204\217\314\320!\210\304y\210\302\321!\203\236\304\224\304\225|\210\211b\210\314\300!\210\304y\210\302\321!\203\264\304\224\304\225|\210\266)\211S\262\202\207" [1 nil looking-at "[ 	\n]*<" 0 47 sgml-beginning-of-tag sgml-skip-tag-backward 60 forward-list error "Not on or before tag" kill-sexp sgml-skip-tag-forward "/>" buffer-substring-no-properties -1 "\\(?:[ 	]*$\\)\n?"] 9 (#$ . 35053) "p"])
(byte-code "\300\301N\204\302\300\303\304\305\300!\"\"\210\300\207" [sgml-tag invisible setplist append (invisible t cursor-sensor-functions (sgml-cursor-sensor) rear-nonsticky t read-only t) symbol-plist] 6)
#@47 Toggle visibility of existing tags.

(fn ARG)
(defalias 'sgml-tags-invisible #[257 "\306\307\310 \306\211\306\311\312\313\314\315!\316\"\317$\216\212eb\210\320\303!\210\203,\321!\312Y\202.?\211\203t\322\f\307\306#\203\246\323\324\325!\227!
\236A\262\312\224b\210;\203g\326`!\204g\327`\325\224\"\330\331#\210\330\332\306#\266\333`\334 \210`\335\332$\210\2023e\336!\211\262dW\203\237\326!\211\203\233\211@\337\332\"\203\224\340!\210A\266\202\202\203\210\202u\210\341ed\342#\210-\210\343\203\261\325\202\262\344!\210\345\346!\210\347\350!)\207" [inhibit-read-only buffer-undo-list inhibit-modification-hooks sgml-tags-invisible sgml-tag-name-re sgml-display-text t nil buffer-modified-p make-byte-code 0 "\300?\205\301\302!\207" vconcat vector [restore-buffer-modified-p nil] 2 make-local-variable prefix-numeric-value re-search-forward intern-soft match-string 1 overlays-at make-overlay overlay-put before-string sgml-tag put-text-property forward-list category next-overlay-change overlay-get delete-overlay remove-text-properties (category nil) cursor-sensor-mode -1 run-hooks sgml-tags-invisible-hook message ""] 11 (#$ . 36174) "P"])
#@21 

(fn WINDOW X DIR)
(defalias 'sgml-cursor-sensor #[771 "\211\300=\205G\3011E\302!\212\211b\210`Sf\303=\203-\304f\305=\203&V\203-\306\307!\210\2028\211f\305=\2038\306\310!\210`)\311\312\313\"\"\266\2020\207\210\304\207" [entered (error) window-point 62 nil 60 sgml-forward-sexp -1 1 message "Invisible tag: %s" buffer-substring-no-properties] 10 (#$ . 37356)])
#@291 Validate an SGML document.
Runs COMMAND, a shell command, in a separate process asynchronously
with output going to the buffer `*compilation*'.
You can then use the command \[next-error] to find the next error message
and move to the line in the SGML document that caused it.

(fn COMMAND)
(defalias 'sgml-validate #[257 "\211\302	?\303\"\210\304!\207" [sgml-saved-validate-command compilation-ask-about-save save-some-buffers nil compilation-start] 4 (#$ . 37736) (byte-code "\302\303\206	\304\305\306 \211\205\307!\262!Q\"C\207" [sgml-saved-validate-command sgml-validate-command read-string "Validate command: " " " shell-quote-argument buffer-file-name file-name-nondirectory] 8)])
#@76 Return true if point is at the first non-whitespace character on the line.
(defalias 'sgml-at-indentation-p #[0 "\212\300\301x\210n)\207" [" 	" nil] 2 (#$ . 38437)])
(put 'sgml-at-indentation-p 'byte-optimizer 'byte-compile-inline-expand)
#@321 Return the lexical context at point as (TYPE . START).
START is the location of the start of the lexical element.
TYPE is one of `string', `comment', `tag', `cdata', `pi', or `text'.

Optional argument LIMIT is the position to start parsing from.
If nil, start from a preceding tag at indentation.

(fn &optional LIMIT)
(defalias 'sgml-lexical-context #[256 "\212`\304\211\203b\210\202)\3051\306 0\202\210\202)\203)\212\307\304x\210n)\203\310 p\311\312\313\314\315\"\316\"\317$\216\320!\210`W\203\313`\262\321w\210`U\203V\304\202\306\322\323!\203x`\324\325\326#?\205s\312\304\211\327\304\211\211\211\257	\262\202\306\322	!\203\232`\330\n\326#?\205\225\312\304\211\211\331\304\211\211\257	\262\202\306\203\300\322\332!\203\300`\324\333\326#?\205\273\312\304\211\334\304\211\211\211\257	\262\202\306\335`\312#\262\202?)\266\3368\337>\203\340\3368\3408B\202\3368\203\356\341\3408B\202\3428\203\374\343\3408B\202\211\203\211@\312V\203\344A@B\202\345B\266\203)\207" [sgml-tag-syntax-table comment-start-skip comment-end-skip sgml-xml-mode nil (error) sgml-parse-tag-backward " 	" syntax-table make-byte-code 0 "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table "^<" looking-at "<!\\[[A-Z]+\\[" search-forward "]]>" move cdata re-search-forward t "<\\?" "?>" pi parse-partial-sexp 3 (cdata pi) 8 string 4 comment tag text] 16 (#$ . 38683)])
#@113 Skip to beginning of tag and return its name.
If this can't be done, return nil.

(fn &optional ONLY-IMMEDIATE)
(defalias 'sgml-beginning-of-tag #[256 "\301 \211@\302=\203\211Ab\210\303!\205-\304\305!\202-?\205-\211@\306=?\205-\211Ab\210\307\310!\207" [sgml-tag-name-re sgml-lexical-context tag looking-at match-string-no-properties 1 text sgml-beginning-of-tag t] 4 (#$ . 40134)])
#@126 Interactively insert value taken from attribute-rule ALIST.
See `sgml-tag-alist' for info about attribute rules.

(fn ALIST)
(defalias 'sgml-value #[257 "\211C\211\242A\240\210\211\242@;\203\301\242@\302\261\202|\211\242@\303=\203T\204T\211\242A\205|\301c\210\211\304\305\306\307\310\311!\312\"\313$!\240\210\314\242\231\203N\211\242\302\261\202|\315\316!\202|\301c\210\211\242A\203p\304\305\306\317\310\311!\320\"\313$!c\210\202z\211\242\204z\304\321!c\210\302c\207" [sgml-xml-mode "=\"" 34 t skeleton-read make-byte-code 0 "\301\302\300\242A\"\207" vconcat vector [completing-read "Value: "] 3 "" delete-char -2 "\301\302\300\242\"\207" [completing-read "Value: "] (read-string "Value: ")] 10 (#$ . 40531)])
#@340 Quote SGML text in region START ... END.
Only &, <, >, ' and " characters are quoted, the rest is left
untouched.  This is sufficient to use quoted text as SGML argument.

With prefix argument UNQUOTEP, unquote the region.  All numeric entities,
"amp", "lt", "gt" and "quot" named entities are unquoted.

(fn START END &optional UNQUOTEP)
(defalias 'sgml-quote #[770 "\214}\210eb\210\211\203]\300\301\302\303#\205s\304\305\306\224f\307\236A\206B\310\311!\211\312H\313=\2042\211\312H\314=\203<\315\316\317\"\320\"\202@\315\321\"\262!\303\211\302\312\225\206L`Sf\322=\203W\312\202X\317%\210\202\f\300\323\302\303#\205s\304`Sf\324\236A\303\211#\210\202])\207" [re-search-forward "\\(&\\(amp\\|quot\\|lt\\|gt\\|#\\([0-9]+\\|[xX][[:xdigit:]]+\\)\\)\\)\\([][<>&;\n	 \"%!'(),/=?]\\|$\\)" nil t replace-match string 2 ((97 . 38) (113 . 34) (108 . 60) (103 . 62)) match-string 3 0 120 88 string-to-number substring 1 16 10 59 "[&<>\"']" ((38 . "&amp;") (60 . "&lt;") (62 . "&gt;") (34 . "&#34;") (39 . "&#39;"))] 10 (#$ . 41270) "r\nP"])
#@182 Simple-minded pretty printer for SGML.
Re-indents the code and inserts newlines between BEG and END.
You might want to turn on `auto-fill-mode' to get better results.

(fn BEG END)
(defalias 'sgml-pretty-print #[514 "\212W\203
b\210\202\211b\210\262`\262\301\302\"\262\303 p\304\305\306\307\310\"\311\"\312$\216\313!\210\314\315\302#\205P\305\224b\210\316\317x\210n\204I\320 \210\321\322!\210\2022)\266\202)\207" [sgml-tag-syntax-table copy-marker t syntax-table make-byte-code 0 "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table re-search-forward "<" " 	" nil reindent-then-newline-and-indent sgml-forward-sexp 1] 11 (#$ . 42323) "r"])
#@67 compiler-macro for inlining `sgml-tag-p'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'sgml-tag-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block sgml-tag-p (and (memq (type-of cl-x) cl-struct-sgml-tag-tags) t)) nil] 9 (#$ . 43016)])
(put 'sgml-tag-p 'compiler-macro 'sgml-tag-p--cmacro)
#@13 

(fn CL-X)
(defalias 'sgml-tag-p #[257 "\301!>\205	\302\207" [cl-struct-sgml-tag-tags type-of t] 3 (#$ . 43339)])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put sgml-tag-p side-effect-free error-free put sgml-tag cl-deftype-satisfies] 5)
#@70 compiler-macro for inlining `sgml-tag-type'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'sgml-tag-type--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block sgml-tag-type (progn (or (sgml-tag-p cl-x) (signal 'wrong-type-argument (list 'sgml-tag cl-x))) (aref cl-x 1))) nil] 9 (#$ . 43606)])
(put 'sgml-tag-type 'compiler-macro 'sgml-tag-type--cmacro)
#@58 Access slot "type" of `sgml-tag' struct CL-X.

(fn CL-X)
(defalias 'sgml-tag-type #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-sgml-tag-tags type-of signal wrong-type-argument sgml-tag 1] 5 (#$ . 43987)])
(byte-code "\300\301\302\303#\300\207" [function-put sgml-tag-type side-effect-free t] 4)
#@71 compiler-macro for inlining `sgml-tag-start'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'sgml-tag-start--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block sgml-tag-start (progn (or (sgml-tag-p cl-x) (signal 'wrong-type-argument (list 'sgml-tag cl-x))) (aref cl-x 2))) nil] 9 (#$ . 44310)])
(put 'sgml-tag-start 'compiler-macro 'sgml-tag-start--cmacro)
#@59 Access slot "start" of `sgml-tag' struct CL-X.

(fn CL-X)
(defalias 'sgml-tag-start #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-sgml-tag-tags type-of signal wrong-type-argument sgml-tag 2] 5 (#$ . 44696)])
(byte-code "\300\301\302\303#\300\207" [function-put sgml-tag-start side-effect-free t] 4)
#@69 compiler-macro for inlining `sgml-tag-end'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'sgml-tag-end--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block sgml-tag-end (progn (or (sgml-tag-p cl-x) (signal 'wrong-type-argument (list 'sgml-tag cl-x))) (aref cl-x 3))) nil] 9 (#$ . 45022)])
(put 'sgml-tag-end 'compiler-macro 'sgml-tag-end--cmacro)
#@57 Access slot "end" of `sgml-tag' struct CL-X.

(fn CL-X)
(defalias 'sgml-tag-end #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-sgml-tag-tags type-of signal wrong-type-argument sgml-tag 3] 5 (#$ . 45398)])
(byte-code "\300\301\302\303#\300\207" [function-put sgml-tag-end side-effect-free t] 4)
#@70 compiler-macro for inlining `sgml-tag-name'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'sgml-tag-name--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block sgml-tag-name (progn (or (sgml-tag-p cl-x) (signal 'wrong-type-argument (list 'sgml-tag cl-x))) (aref cl-x 4))) nil] 9 (#$ . 45718)])
(put 'sgml-tag-name 'compiler-macro 'sgml-tag-name--cmacro)
#@58 Access slot "name" of `sgml-tag' struct CL-X.

(fn CL-X)
(defalias 'sgml-tag-name #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-sgml-tag-tags type-of signal wrong-type-argument sgml-tag 4] 5 (#$ . 46099)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put sgml-tag-name side-effect-free t defalias copy-sgml-tag copy-sequence] 4)
#@96 compiler-macro for inlining `make-sgml-tag'.

(fn CL-WHOLE &cl-quote &key TYPE START END NAME)
(defalias 'make-sgml-tag--cmacro #[385 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\211\203D\211@\305>\203,\211AA\262\202\306>A@\203;\307\262\202\310\311@\"\210\202\210\312\313\314\307	\307				&	\207" [plist-member :type :start :end :name (:type :start :end :name :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:type :start :end :name)" cl--defsubst-expand (type start end name) (cl-block make-sgml-tag (record 'sgml-tag type start end name))] 16 (#$ . 46469)])
(put 'make-sgml-tag 'compiler-macro 'make-sgml-tag--cmacro)
#@76 Constructor for objects of type `sgml-tag'.

(fn &key TYPE START END NAME)
(defalias 'make-sgml-tag #[128 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\211\203D\211@\305>\203,\211AA\262\202\306>A@\203;\307\262\202\310\311@\"\210\202\210\312\313%\207" [plist-member :type :start :end :name (:type :start :end :name :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:type :start :end :name)" record sgml-tag] 11 (#$ . 47154)])
(byte-code "\300\301\302\303#\300\207" [function-put make-sgml-tag side-effect-free t] 4)
#@85 compiler-macro for inlining `sgml-make-tag'.

(fn CL-WHOLE-ARG TYPE START END NAME)
(defalias 'sgml-make-tag--cmacro #[1285 "\300\301\302\303\211\211				&	\207" [cl--defsubst-expand (type start end name) (cl-block sgml-make-tag (record 'sgml-tag type start end name)) nil] 15 (#$ . 47732)])
(put 'sgml-make-tag 'compiler-macro 'sgml-make-tag--cmacro)
#@71 Constructor for objects of type `sgml-tag'.

(fn TYPE START END NAME)
(defalias 'sgml-make-tag #[1028 "\300\301%\207" [record sgml-tag] 10 (#$ . 48093)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303&	\207" [function-put sgml-make-tag side-effect-free t cl-struct-define sgml-tag nil cl-structure-object record ((cl-tag-slot) (type) (start) (end) (name)) cl-struct-sgml-tag-tags] 11)
#@44 Skip past a tag-name, and return the name.
(defalias 'sgml-parse-tag-name #[0 "\300`\301\302!\210`\"\207" [buffer-substring-no-properties skip-syntax-forward "w_"] 4 (#$ . 48511)])
(put 'sgml-parse-tag-name 'byte-optimizer 'byte-compile-inline-expand)
#@226 Return non-nil if text between START and END is a tag.
Checks among other things that the tag does not contain spurious
unquoted < or > chars inside, which would indicate that it
really isn't a tag after all.

(fn START END)
(defalias 'sgml-tag-text-p #[514 "\212\301 p\302\303\304\305\306\"\307\"\310$\216\311!\210\312\310#\211@\303U\262)\266\202)\207" [sgml-tag-syntax-table syntax-table make-byte-code 0 "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table parse-partial-sexp] 11 (#$ . 48770)])
#@138 Search backward for a '<' or '>' character.
The character must have open or close syntax.
Returns t if found, nil otherwise.

(fn LIMIT)
(defalias 'sgml--find-<>-backward #[257 "\3002\301\302\303#\205\304\305`!!\306>\203\307\300\310\"\210\2020\207" [found re-search-backward "[<>]" move syntax-class syntax-after (4 5) throw t] 5 (#$ . 49310)])
#@188 Parse an SGML tag backward, and return information about the tag.
Assume that parsing starts from within a textual context.
Leave point at the beginning of the tag.

(fn &optional LIMIT)
(defalias 'sgml-parse-tag-backward #[256 "\3012y\302\211\211\211\303!\204\304\305!\210\302f\306=\203c`\262\307 p\310\311\312\313\314\"\315\"\316$\216\317!\210`\3201>\321\322!0\202I\210\211b\210\323\301\324\n!\"\210\325`\"\204\\\211b\210\323\301\324\n!\"\210\326u\266)\266`T\262\327`GZ\211eY\205x\330`\"\232\266\202\203\216\331\262\206\211\332\333\302\334#\262\202l\335`GZ\211eY\205\237\330`\"\232\266\202\203\265\336\262\206\260\337\340\302\334#\262\202l\341`GZ\211eY\205\306\330`\"\232\266\202\203\334\342\262\206\327\332\343\302\334#\262\202l\204\307 p\310\311\312\313\314\"\344\"\316$\216\317!\210b\210\3451\321\326!0\202\210Sb\210\323\301\324	!\"\210`)\266\202\262Tb\210\302f\211\346\267\202H\347\262\202k\342\262\202k\350\262\202k\322u\210\351\262\330`\352\353!\210`\"\262\202k\354\262\330`\352\353!\210`\"\262S\206[`Sf\355=\204h\356!\203k\357\262\210b\210\360\361%\266\2040\207" [sgml-tag-syntax-table found nil sgml--find-<>-backward error "No tag found" 60 syntax-table make-byte-code 0 "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table (scan-error) sgml-forward-sexp 1 throw sgml-parse-tag-backward sgml-tag-text-p -1 "--" buffer-substring-no-properties comment search-backward "<!--" t "]]" cdata re-search-backward "<!\\[[A-Z]+\\[" "?" pi "<?" [set-syntax-table] (scan-error) #s(hash-table size 4 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (33 291 63 297 37 303 47 309)) decl jsp close skip-syntax-forward "w_" open 47 sgml-empty-tag-p empty record sgml-tag] 14 (#$ . 49671)])
#@529 Determine the context of the current position.
By default, parse until we find a start-tag as the first thing on a line.
If UNTIL is `empty', return even if the context is empty (i.e.
we just skipped over some element and got to a beginning of line).

The context is a list of tag-info structures.  The last one is the tag
immediately enclosing the current position.

Point is assumed to be outside of any tag.  If we discover that it's
not the case, the first tag returned is the one inside which we are.

(fn &optional UNTIL)
(defalias 'sgml-get-context #[256 "`\302\211\211\211\303\302x\210\304=\204U\204c\203\305=\202\203c\212\306\302x\210n)\203c\203U`\307@!>\204A\310\311\312@D\"\210@\313HU\204U\314\307@!>\204[\310\311\312@D\"\210@\315H!\203U\3161m\317 0\202o\210\302\211\262\203U\203\253\307!>\204\210\310\311\312D\"\210\211\320H\307@!>\204\234\310\311\312@D\"\210@\320HV\203\253A\262\202u\307!>\204\272\310\311\312D\"\210\211\320HV\203\315\211B\262\304\262\202	\307!>\204\334\310\311\312D\"\210\211\321H\322=\203\365\204\f\323\307!>\204\370\310\311\312D\"\210\315H\324#\204\301\211B\262\302\262\202\301\325\307!>\204\310\311\312D\"\210\315H\302\211@\302\211\324&\324=\2035A\262\202\301	\204\244\314\307!>\204I\310\311\312D\"\210\315H!\204\301\326\327\307!>\204a\310\311\312D\"\210\315H\"\210\211A\203\225\325\307!>\204|\310\311\312D\"\210\315H\302\211A@\302\211\324&\324=\204\225\211A\262\202g\211A\203\240\211AA\241\210\210\202\301\326\330\307!>\204\265\310\311\312D\"\210\315H\211A\262\242#\210\204	\314\307!>\204\325\310\311\312D\"\210\315H!\203	\307!>\204\353\310\311\312D\"\210\211\315HB\262\202	\307!>\204\310\311\312D\"\210\211\321H\331=\203	\332\307!>\204\310\311\312D\"\210\315H!\203<\326\333\307!>\2044\310\311\312D\"\210\315H\"\210\202	\307!>\204K\310\311\312D\"\210\211\315HB\262\202	\207" [cl-struct-sgml-tag-tags sgml-xml-mode nil " 	\n" now empty " 	" type-of signal wrong-type-argument sgml-tag 2 sgml-unclosed-tag-p 4 (error) sgml-parse-tag-backward 3 1 open assoc-string t compare-strings message "Unclosed tag <%s>" "Unmatched tags <%s> and </%s>" close sgml-empty-tag-p "Spurious </%s>: empty tag"] 15 (#$ . 51495)])
#@114 Display the current context.
If FULL is non-nil, parse back to the beginning of the buffer.

(fn &optional FULL)
(defalias 'sgml-show-context #[256 "r\306\307!q\210p\310 \210\311\211\312\211\312\313 \210\314\315!\210+\211\212\316 \203;\311\316 \211\262\203:\211\244\262\202*\210\317!\262)\320!\210)\207" [default-directory buffer-read-only buffer-file-name buffer-undo-list inhibit-modification-hooks inhibit-read-only get-buffer-create "*XML Context*" kill-all-local-variables nil t erase-buffer run-hooks temp-buffer-setup-hook sgml-get-context pp internal-temp-output-buffer-show standard-output] 8 (#$ . 53811) "P"])
#@157 Close current element.
Depending on context, inserts a matching close-tag, or closes
the current start-tag or the current comment or the current cdata, ...
(defalias 'sgml-close-tag #[0 "\301 @\211\302\267\202Q\303c\202T\304c\202T\305c\202T\306c\202T\307c\202T\212\310 )\211\205L\311\312\313!@!>\204@\314\315\316\313!@D\"\210\313!@\317H\320\261\210\321 \262\202T\322\323!\207" [cl-struct-sgml-tag-tags sgml-lexical-context #s(hash-table size 6 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (comment 9 cdata 14 pi 19 jsp 24 tag 29 text 34)) " -->" "]]>" " ?>" " %>" " />" sgml-get-context "</" type-of last signal wrong-type-argument sgml-tag 4 ">" indent-according-to-mode error "Nothing to close"] 8 (#$ . 54459) nil])
#@71 Return non-nil if TAG-NAME is an implicitly empty tag.

(fn TAG-NAME)
(defalias 'sgml-empty-tag-p #[257 "?\205\n\302	\303#\207" [sgml-xml-mode sgml-empty-tags assoc-string ignore-case] 5 (#$ . 55218)])
#@86 Return non-nil if TAG-NAME is a tag for which an end-tag is optional.

(fn TAG-NAME)
(defalias 'sgml-unclosed-tag-p #[257 "?\205\n\302	\303#\207" [sgml-xml-mode sgml-unclosed-tags assoc-string ignore-case] 5 (#$ . 55429)])
#@119 Calculate the column to which this line should be indented.
LCON is the lexical context, if any.

(fn &optional LCON)
(defalias 'sgml-calculate-indent #[256 "\211\204\305 \262\211@\306=\203)\307\310!\203)\212\211Ab\210\307\311!)\203)\312A\313\\B\262\211@\211\314\267\202`AV\203E\315y\316U\203E\307\317!\2041`AV\203Q\320 \202Ab\210iT\202\307\310!`AV\203{\315y\316U\203{\307\317!\204]\211\203{\307\321!\203]`AV\203\211\322\323w\210\202\225Ab\210\324\310!\210\316\224b\210\211\204\246\307\310!\203\246\313u\210\322\323w\210i\262\202\323\202\323\202A\\b\210\325\323w\210\322\323w\210l\204\312i\202A\\b\210i	\\\202\307\326!\203\347\327\330!\210\322\323w\210\202\326`\307\n!\205\373\331\332\330!\333#\205\373\332\330!\211?\205\322\323x\205\334\323x\316W\205\335 \205`AV?\205'b\210\336?\205%\337!\237`\203[\203[\340\341@!\f>\204B\342\343\344@D\"\210@\345H\323\211\323\211\346&\346=\203[A\262\202(\203\313\341@!\f>\204p\342\343\344@D\"\210@\347HV\203\313b\210\350\341@!\f>\204\216\342\343\344@D\"\210@\330H\351>\203\257\341@!\f>\204\250\342\343\344@D\"\210@\330H\202\260\306\341@!\f>\204\302\342\343\344@D\"\210@\313HB!\202\203\341@!\f>\204\340\342\343\344@D\"\210@\347Hb\203\334\323w\203`W\203\212\322\323x\210n)\203i\202\211b\210i	G_\\\266\204\202\352\353@\"\207" [sgml-attribute-offset sgml-basic-offset sgml-tag-name-re sgml-unclosed-tags cl-struct-sgml-tag-tags sgml-lexical-context tag looking-at "--" "<!--" comment 2 #s(hash-table size 6 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (string 49 comment 90 cdata 172 pi 176 tag 180 text 214)) -1 0 "[ 	]*$" current-indentation "[ 	]*--" " 	" nil search-forward "^ 	\n" "</" sgml-forward-sexp 1 assoc-string match-string ignore-case " 	\n" back-to-indentation sgml-get-context empty compare-strings type-of signal wrong-type-argument sgml-tag 4 t 3 sgml-calculate-indent (comment cdata) error "Unrecognized context %s"] 14 (#$ . 55662)])
#@34 Indent the current line as SGML.
(defalias 'sgml-indent-line #[0 "`\212\300 \210`Y\203\301\262\302 )\211\204\303\202(\203%\212\304!)\202(\304!\207" [back-to-indentation nil sgml-calculate-indent noindent indent-line-to] 4 (#$ . 57702) nil])
#@175 Guess an appropriate value for `sgml-basic-offset'.
Base the guessed indentation level on the first indented tag in the buffer.
Add this to `sgml-mode-hook' for convenience.
(defalias 'sgml-guess-indent #[0 "\212eb\210\301\302\303\304#\205\305\300!\210iS\306\307\")\207" [sgml-basic-offset re-search-forward "^\\([ 	]+\\)<" 500 noerror make-local-variable message "Guessed sgml-basic-offset = %d"] 4 (#$ . 57962) nil])
#@101 Simplistic parse of the current buffer as a DTD.
Currently just returns (EMPTY-TAGS UNCLOSED-TAGS).
(defalias 'sgml-parse-dtd #[0 "eb\210\300\211\301\302\300\303#\2031\304\305!\306\230\203\307\310!B\262\202\304\311!\312\230\203\307\310!B\262\202\313\314\315\"\316\"\262\313\314\315\"\316\"\262D\207" [nil re-search-forward "<!ELEMENT[ 	\n]+\\([^ 	\n]+\\)[ 	\n]+[-O][ 	\n]+\\([-O]\\)[ 	\n]+\\([^ 	\n]+\\)" t match-string 3 "EMPTY" match-string-no-properties 1 2 "O" sort mapcar downcase string<] 6 (#$ . 58392)])
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable html-mode-hook funcall function #[0 "\300\207" [nil] 1] "Hook run by command `html-mode'.\n`text-mode-hook' and `sgml-mode-hook' are run first." :type hook :options (html-autoview-mode)] 8)
#@161 Use C-c X combinations for quick insertion of frequent tags when non-nil.
This defaults to `sgml-quick-keys'.
This takes effect when first loading the library.
(defvar html-quick-keys sgml-quick-keys (#$ . 59207))
#@43 Keymap for commands for use in HTML mode.
(defvar html-mode-map (byte-code "\302 \302\303!\304\"\210\305\306\307#\210\305\310\311#\210\305\312\313#\210\305\314\315#\210\305\316\317#\210\305\320\321#\210\305\322\323#\210\305\324\325#\210\305\326\327#\210\305\330\331#\210\305\332\333#\210\305\334\335#\210\305\336\337#\210\305\340\341#\210\305\342\343#\210\305\344\345#\210\305\346\347#\210\305\350\351#\210	\203\302\305\352\327#\210\305\353\354#\210\305\355\331#\210\305\356\333#\210\305\357\335#\210\305\360\337#\210\305\361\341#\210\305\362\343#\210\305\363\345#\210\305\364\347#\210\305\365\351#\210\305\366\367#\210\305\370\371#\210\305\372\373#\210\305\374\303B#\210\305\375\376#\210\305\377\201@#\210\305\201A\201B#\210\305\201C\201D#\210\305\201E\201F#\210\305\201G\201H#\210\305\201I\201J#\210\305\201K\201L#\210\305\201I\201M#\210\305\201N\201O#\210\305\201P\201Q#\210\305\201R\201S#\210\305\201T\201U#\210\305\201V\201W#\210\305\201X\201Y#\210\305\201Z\201[#\210\305\201\\\201]#\210\305\201^\201_#\210\207" [sgml-mode-map html-quick-keys make-sparse-keymap "HTML" set-keymap-parent define-key "6" html-headline-6 "5" html-headline-5 "4" html-headline-4 "3" html-headline-3 "2" html-headline-2 "1" html-headline-1 "
" html-paragraph "\n" html-line "-" html-horizontal-rule "o" html-ordered-list "u" html-unordered-list "r" html-radio-buttons "c" html-checkboxes "l" html-list-item "h" html-href-anchor "n" html-name-anchor "#" html-id-anchor "i" html-image "-" "d" html-div "o" "u" "r" "c" "l" "h" "n" "#" "i" "s" html-span "" html-autoview-mode "" browse-url-of-buffer [menu-bar html] [html-autoview-mode] ("Toggle Autoviewing" . html-autoview-mode) [browse-url-of-buffer] ("View Buffer Contents" . browse-url-of-buffer) [nil] ("--") "3" ("Heading 3" . html-headline-3) "2" ("Heading 2" . html-headline-2) "1" ("Heading 1" . html-headline-1) "l" ("Radio Buttons" . html-radio-buttons) "c" ("Checkboxes" . html-checkboxes) ("List Item" . html-list-item) "u" ("Unordered List" . html-unordered-list) "o" ("Ordered List" . html-ordered-list) "-" ("Horizontal Rule" . html-horizontal-rule) "\n" ("Line Break" . html-line) "
" ("Paragraph" . html-paragraph) "i" ("Image" . html-image) "h" ("Href Anchor" . html-href-anchor) "n" ("Name Anchor" . html-name-anchor) "#" ("ID Anchor" . html-id-anchor)] 7) (#$ . 59427))
#@47 Value of `sgml-face-tag-alist' for HTML mode.
(defvar html-face-tag-alist '((bold . "b") (italic . "i") (underline . "u") (mode-line . "rev")) (#$ . 61887))
#@47 Value of `sgml-tag-face-alist' for HTML mode.
(defvar html-tag-face-alist '(("b" . bold) ("big" . bold) ("blink" . highlight) ("cite" . italic) ("em" . italic) ("h1" bold underline) ("h2" bold-italic underline) ("h3" italic underline) ("h4" . underline) ("h5" . underline) ("h6" . underline) ("i" . italic) ("rev" . mode-line) ("s" . underline) ("small" . default) ("strong" . bold) ("title" bold underline) ("tt" . default) ("u" . underline) ("var" . italic)) (#$ . 62050))
#@45 Value of `sgml-display-text' for HTML mode.
(defvar html-display-text '((img . "[/]") (hr . "----------") (li . "o ")) (#$ . 62531))
#@42 Value of `sgml-tag-alist' for HTML mode.
(defvar html-tag-alist (byte-code "\302\303\304\"\305\306\307\310\311\312\313B\314B\315BBB\316\317\320\303\n\321\nB\322B\323B\324BBB\"B\325\326\327BB\330\320\303\331\"BB\332\320BB\333\320\303\334#BB\335\336\303\337#BB\340\nB\341\342\343\344\345\346\347\350\351BBBBBBB\352\353\354AB\355BBB\356B\357B\360B\361B\362B\363B\364\320\345B\365\366 BBBBB\367\336\303\370\"BB\371\320\372\303\373\"B\374BBB\375\320\376BBB\377\320BB\201@B\201A\303\201B\"B\201C\320$BB\201D\201E \345(B\201FBBBB\201G\201H\201I\320)BB\201JBBB\201K\336\303\"BB\201LB\201M#\201N+B\201O,BF\201P\336\303!!\"BB\201Q!B\201R\336\303##\"BB\201S\303&\201T\"B\303\201U\201V\201W\201X\201Y\201Z\201[\201\\\201]\201^\201_\201`\201a\201b\201c\201d\201e\201f\201g\201h\201i\201j\201k\201l\201m	?D\201n\201o\201p\201q\201r\201s\201t\201u\201v\201w\201x\201y\201z\201{\201|\201}\201~\201\201\200\201\201\201\202\201\203\201\204\201\205	?D\201\206BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB\"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB\207" [sgml-tag-alist sgml-xml-mode (("1") ("2") ("3") ("4") ("5") ("6") ("7")) append (("8") ("9")) (("align" ("left") ("center") ("right"))) (("align" ("top") ("middle") ("bottom") ("left") ("right"))) (("top") ("middle") ("bottom") ("baseline")) (("next") ("previous") ("parent") ("subdocument") ("made")) ("href" ("ftp:") ("file:") ("finger:") ("gopher:") ("http:") ("mailto:") ("news:") ("rlogin:") ("telnet:") ("tn3270:") ("wais:") ("/cgi-bin/")) ("name") "rel" "rev" (("title")) ((nil n ("List item: " "<li>" str (if sgml-xml-mode "</li>") n))) (("shape" ("rect") ("circle") ("poly") ("default"))) t "valign" "colspan" "rowspan" (("nowrap" t)) (("align" ("left") ("center") ("right") ("justify") ("char")) ("char") ("charoff")) (("valign" ("top") ("middle") ("bottom") ("baseline"))) "a" "area" (("coords") ("href") ("nohref" "nohref") ("alt") ("tabindex") ("accesskey") ("onfocus") ("onblur")) "base" "col" (("span") ("width")) "colgroup" n (("span") ("width")) "dir" ("figcaption") ("figure" n) "font" nil "size" ("-1") ("+1") ("-2") ("+2") "form" (n _ n "<input type=\"submit\" value=\"\"" (if sgml-xml-mode " />" ">")) "action" (("method" ("get") ("post"))) "h1" "h2" "h3" "h4" "h5" "h6" "hr" ("width") ("noshade" t) "iframe" (("longdesc") ("name") ("src") ("frameborder" ("1") ("0")) ("marginwidth") ("marginheight") ("scrolling" ("yes") ("no") ("auto")) ("height") ("width")) "img" "align" (("texttop") ("absmiddle") ("absbottom")) (("src") ("alt") ("width" "1") ("height" "1") ("border" "1") ("vspace" "1") ("hspace" "1") ("ismap" t)) "input" (("accept") ("alt") ("autocomplete" ("on") ("off")) ("autofocus" t) ("checked" t) ("dirname") ("disabled" t) ("form") ("formaction") ("formenctype" ("application/x-www-form-urlencoded") ("multipart/form-data") ("text/plain")) ("formmethod" ("get") ("post")) ("formnovalidate" t) ("formtarget" ("_blank") ("_self") ("_parent") ("_top")) ("height") ("inputmode") ("list") ("max") ("maxlength") ("min") ("minlength") ("multiple" t) ("pattern") ("placeholder") ("readonly" t) ("required" t) ("size") ("src") ("step") ("type" ("hidden") ("text") ("search") ("tel") ("url") ("email") ("password") ("date") ("time") ("number") ("range") ("color") ("checkbox") ("radio") ("file") ("submit") ("image") ("reset") ("button")) ("value") ("width")) "link" "menu" "ol" (("type" ("A") ("a") ("I") ("i") ("1"))) "p" "select" (nil n ("Text: " "<option>" str (if sgml-xml-mode "</option>") n)) (("multiple" t)) "table" (nil n ((completing-read "Cell kind: " '(("td") ("th")) nil t "t") "<tr><" str 62 _ (if sgml-xml-mode (concat "<" str "></tr>")) n)) "border" (("width" "10") ("cellpadding")) "tbody" "td" "textarea" "rows" "cols" "tfoot" "th" "thead" "ul" (("type" ("disc") ("circle") ("square"))) ("abbr") ("acronym") ("address") ("array" (nil n ("Item: " "<item>" str (if sgml-xml-mode "</item>") n)) "align") ("article" n) ("aside" n) ("au") ("audio" n ("src") ("crossorigin" ("anonymous") ("use-credentials")) ("preload" ("none") ("metadata") ("auto")) ("autoplay" "autoplay") ("mediagroup") ("loop" "loop") ("muted" "muted") ("controls" "controls")) ("b") ("bdi") ("bdo" nil ("lang") ("dir" ("ltr") ("rtl"))) ("big") ("blink") ("blockquote" n ("cite")) ("body" n ("background" ".gif") ("bgcolor" "#") ("text" "#") ("link" "#") ("alink" "#") ("vlink" "#")) ("box" (nil _ "<over>" _ (if sgml-xml-mode "</over>"))) ("br" t ("clear" ("left") ("right"))) ("button" nil ("name") ("value") ("type" ("submit") ("reset") ("button")) ("disabled" "disabled") ("tabindex") ("accesskey") ("onfocus") ("onblur")) ("canvas" n ("width") ("height")) ("caption" ("valign" ("top") ("bottom"))) ("center" n) ("cite") ("code" n) ("datalist" n) "dd" ("del" nil ("cite") ("datetime")) ("dfn") ("div" n ("id") ("class")) ("dl" (nil n ("Term: " "<dt>" str (if sgml-xml-mode "</dt>") "<dd>" _ (if sgml-xml-mode "</dd>") n))) ("dt" (t _ (if sgml-xml-mode "</dt>") "<dd>" (if sgml-xml-mode "</dd>") n)) ("em") ("embed" t ("src") ("type") ("width") ("height")) ("fieldset" n) ("fn" "id" "fn") ("footer" n) ("frame" t ("longdesc") ("name") ("src") ("frameborder" ("1") ("0")) ("marginwidth") ("marginheight") ("noresize" "noresize") ("scrolling" ("yes") ("no") ("auto"))) ("frameset" n ("rows") ("cols") ("onload") ("onunload")) ("head" n) ("header" n) ("hgroup" n) ("html" (n "<head>\n" "<title>" (setq str (read-string "Title: ")) "</title>\n" "</head>\n" "<body>\n<h1>" str "</h1>\n" _ "\n<address>\n<a href=\"mailto:" user-mail-address "\">" (user-full-name) "</a>\n</address>\n" "</body>")) ("i") ("ins" nil ("cite") ("datetime")) ("isindex" t ("action") ("prompt")) ("kbd") ("label" nil ("for") ("accesskey") ("onfocus") ("onblur")) ("lang") ("legend" nil ("accesskey")) "li" (("main" n) ("map" n ("name")) ("mark") ("math" n) ("meta" t ("http-equiv") ("name") ("content") ("scheme")) ("meter" nil ("value") ("min") ("max") ("low") ("high") ("optimum")) ("nav" n) ("nobr") ("noframes" n) ("noscript" n) ("object" n ("declare" "declare") ("classid") ("codebase") ("data") ("type") ("codetype") ("archive") ("standby") ("height") ("width") ("usemap") ("name") ("tabindex")) ("optgroup" n ("name") ("size") ("multiple" "multiple") ("disabled" "disabled") ("tabindex") ("onfocus") ("onblur") ("onchange")) ("option" t ("value") ("label") ("selected" t)) ("output" nil ("for") ("form") ("name")) ("over" t) ("param" t ("name") ("value") ("valuetype" ("data") ("ref") ("object")) ("type")) ("person") ("pre" n) ("progress" nil ("value") ("max")) ("q" nil ("cite")) ("rev") ("rp" t) ("rt" t) ("ruby") ("s") ("samp") ("script" nil ("charset") ("type") ("src") ("defer" "defer")) ("section" n) ("small") ("source" t ("src") ("type") ("media")) ("span" nil ("class" ("builtin") ("comment") ("constant") ("function-name") ("keyword") ("string") ("type") ("variable-name") ("warning"))) ("strong") ("style" n ("type") ("media") ("title")) ("sub") ("summary") ("sup") ("time" nil ("datetime")) ("title") ("tr" t) ("track" t ("kind" ("subtitles") ("captions") ("descriptions") ("chapters") ("metadata")) ("src") ("srclang") ("label") ("default")) ("tt") ("u") ("var") ("video" n ("src") ("crossorigin" ("anonymous") ("use-credentials")) ("poster") ("preload" ("none") ("metadata") ("auto")) ("autoplay" "autoplay") ("mediagroup") ("loop" "loop") ("muted" "muted") ("controls" "controls") ("width") ("height")) ("wbr" t))] 99) (#$ . 62670))
#@50 Value of variable `sgml-tag-help' for HTML mode.
(defvar html-tag-help (append sgml-tag-help '(("a" . "Anchor of point or link elsewhere") ("abbr" . "Abbreviation") ("acronym" . "Acronym") ("address" . "Formatted mail address") ("area" . "Region of an image map") ("array" . "Math array") ("article" . "An independent part of document or site") ("aside" . "Secondary content related to surrounding content (e.g. page or article)") ("au" . "Author") ("audio" . "Sound or audio stream") ("b" . "Bold face") ("base" . "Base address for URLs") ("bdi" . "Text isolated for bidirectional formatting") ("bdo" . "Override text directionality") ("big" . "Font size") ("blink" . "Blinking text") ("blockquote" . "Indented quotation") ("body" . "Document body") ("box" . "Math fraction") ("br" . "Line break") ("button" . "Clickable button") ("canvas" . "Script generated graphics canvas") ("caption" . "Table caption") ("center" . "Centered text") ("changed" . "Change bars") ("cite" . "Citation of a document") ("code" . "Formatted source code") ("col" . "Group of attribute specifications for table columns") ("colgroup" . "Group of columns") ("datalist" . "A set of predefined options") ("dd" . "Definition of term") ("del" . "Deleted text") ("dfn" . "Defining instance of a term") ("dir" . "Directory list (obsolete)") ("div" . "Generic block-level container") ("dl" . "Definition list") ("dt" . "Term to be defined") ("em" . "Emphasized") ("embed" . "Embedded data in foreign format") ("fieldset" . "Group of related controls and labels") ("fig" . "Figure") ("figa" . "Figure anchor") ("figcaption" . "Caption for a figure") ("figd" . "Figure description") ("figt" . "Figure text") ("figure" . "Self-contained content, often with a caption") ("fn" . "Footnote") ("font" . "Font size") ("footer" . "Footer of a section") ("form" . "Form with input fields") ("frame" . "Frame in which another HTML document can be displayed") ("frameset" . "Container for frames") ("group" . "Document grouping") ("h1" . "Most important section headline") ("h2" . "Important section headline") ("h3" . "Section headline") ("h4" . "Minor section headline") ("h5" . "Unimportant section headline") ("h6" . "Least important section headline") ("head" . "Document header") ("header" . "Header of a section") ("hgroup" . "Group of headings - h1-h6 elements") ("hr" . "Horizontal rule") ("html" . "HTML Document") ("i" . "Italic face") ("iframe" . "Inline frame with a nested browsing context") ("img" . "Graphic image") ("input" . "Form input field") ("ins" . "Inserted text") ("isindex" . "Input field for index search") ("kbd" . "Keyboard example face") ("label" . "Caption for a user interface item") ("lang" . "Natural language") ("legend" . "Caption for a fieldset") ("li" . "List item") ("link" . "Link relationship") ("main" . "Main content of the document body") ("map" . "Image map (a clickable link area") ("mark" . "Highlighted text") ("math" . "Math formula") ("menu" . "List of commands") ("meta" . "Document properties") ("meter" . "Scalar measurement within a known range") ("mh" . "Form mail header") ("nav" . "Group of navigational links") ("nextid" . "Allocate new id") ("nobr" . "Text without line break") ("noframes" . "Content for user agents that don't support frames") ("noscript" . "Alternate content for when a script isn't executed") ("object" . "External resource") ("ol" . "Ordered list") ("optgroup" . "Group of options") ("option" . "Selection list item") ("output" . "Result of a calculation or user action") ("over" . "Math fraction rule") ("p" . "Paragraph start") ("panel" . "Floating panel") ("param" . "Parameters for an object") ("person" . "Person's name") ("pre" . "Preformatted fixed width text") ("progress" . "Completion progress of a task") ("q" . "Quotation") ("rev" . "Reverse video") ("rp" . "Fallback text for when ruby annotations aren't supported") ("rt" . "Ruby text component of a ruby annotation") ("ruby" . "Ruby annotation") ("s" . "Strikeout") ("samp" . "Sample text") ("script" . "Executable script within a document") ("section" . "Section of a document") ("select" . "Selection list") ("small" . "Font size") ("source" . "Media resource for media elements") ("sp" . "Nobreak space") ("span" . "Generic inline container") ("strong" . "Standout text") ("style" . "Style information") ("sub" . "Subscript") ("summary" . "Summary, caption, or legend") ("sup" . "Superscript") ("table" . "Table with rows and columns") ("tb" . "Table vertical break") ("tbody" . "Table body") ("td" . "Table data cell") ("textarea" . "Form multiline edit area") ("tfoot" . "Table foot") ("th" . "Table header cell") ("thead" . "Table head") ("time" . "Content with optional machine-readable timestamp") ("title" . "Document title") ("tr" . "Table row separator") ("track" . "Timed text track for media elements") ("tt" . "Typewriter face") ("u" . "Underlined text") ("ul" . "Unordered list") ("var" . "Math variable face") ("video" . "Video or movie") ("wbr" . "Enable <br> within <nobr>"))) (#$ . 70198))
#@60 Return the name of the last HTML title or heading, or nil.
(defalias 'html-current-defun-name #[0 "\212\300\301\302\303#\205\f\304\305!)\207" [re-search-backward "<[ 	
\n]*\\(?:[hH][0-6]\\|title\\|TITLE\\|Title\\)[^>]*>[ 	
\n]*\\([^<
\n]*[^ <	
\n]+\\)" nil t match-string-no-properties 1] 4 (#$ . 75217)])
#@223 Cache for `html-current-buffer-classes'.
When set, this should be a cons cell where the CAR is the
buffer's tick counter (as produced by `buffer-modified-tick'),
and the CDR is the list of class names found in the buffer.
(defvar html--buffer-classes-cache nil (#$ . 75531))
(make-variable-buffer-local 'html--buffer-classes-cache)
#@219 Cache for `html-current-buffer-ids'.
When set, this should be a cons cell where the CAR is the
buffer's tick counter (as produced by `buffer-modified-tick'),
and the CDR is the list of class names found in the buffer.
(defvar html--buffer-ids-cache nil (#$ . 75870))
(make-variable-buffer-local 'html--buffer-ids-cache)
#@112 Return a list of class names used in the current buffer.
The result is cached in `html--buffer-classes-cache'.
(defalias 'html-current-buffer-classes #[0 "\301 @=\203A\202#\302ed\"\303\304\305\306\"\"\307\300!\210B\262\207" [html--buffer-classes-cache buffer-modified-tick libxml-parse-html-region seq-mapcat #[257 "\300\211@:\203\211@A@\262\202\211A@\262\236A\211\205\301!\207" [class split-string] 4 "\n\n(fn EL)"] dom-by-class "" make-local-variable] 7 (#$ . 76197)])
#@100 Return a list of IDs used in the current buffer.
The result is cached in `html--buffer-ids-cache'.
(defalias 'html-current-buffer-ids #[0 "\301 @=\203A\202#\302ed\"\303\304\305\306\"\"\307\300!\210B\262\207" [html--buffer-ids-cache buffer-modified-tick libxml-parse-html-region seq-mapcat #[257 "\300\211@:\203\211@A@\262\202\211A@\262\236A\211\205\301!\207" [id split-string] 4 "\n\n(fn EL)"] dom-by-id "" make-local-variable] 7 (#$ . 76696)])
(defvar html-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [html-mode-hook variable-documentation put "Hook run after entering '(sgml-xml-mode XHTML HTML) mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp html-mode-map definition-name html-mode] 4)
(defvar html-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" [html-mode-abbrev-table html-mode-map variable-documentation put purecopy "Keymap for `html-mode'." boundp html-mode-syntax-table definition-name html-mode (lambda (#1=#:def-tmp-var) (defvar html-mode-syntax-table #1#)) make-syntax-table "Syntax table for `html-mode'." (lambda (#1#) (defvar html-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `html-mode'." derived-mode-parent sgml-mode] 5)
#@1900 Major mode based on SGML mode for editing HTML documents.
This allows inserting skeleton constructs used in hypertext documents with
completion.  See below for an introduction to HTML.  Use
\[browse-url-of-buffer] to see how this comes out.  See also `sgml-mode' on
which this is based.

Do \[describe-variable] html- SPC and \[describe-variable] sgml- SPC to see available variables.

To write fairly well formatted pages you only need to know few things.  Most
browsers have a function to read the source code of the page being seen, so
you can imitate various tricks.  Here's a very short HTML primer which you
can also view with a browser to see what happens:

<title>A Title Describing Contents</title> should be on every page.  Pages can
have <h1>Very Major Headlines</h1> through <h6>Very Minor Headlines</h6>
<hr> Parts can be separated with horizontal rules.

<p>Paragraphs only need an opening tag.  Line breaks and multiple spaces are
ignored unless the text is <pre>preformatted.</pre>  Text can be marked as
<b>bold</b>, <i>italic</i> or <u>underlined</u> using the normal M-o or
Edit/Text Properties/Face commands.

Pages can have <a name="SOMENAME">named points</a> and can link other points
to them with <a href="#SOMENAME">see also somename</a>.  In the same way <a
href="URL">see also URL</a> where URL is a filename relative to current
directory, or absolute as in `http://www.cs.indiana.edu/elisp/w3/docs.html'.

Images in many formats can be inlined with <img src="URL">.

If you mainly create your own documents, `sgml-specials' might be
interesting.  But note that some HTML 2 browsers can't handle `&apos;'.
To work around that, do:
   (eval-after-load "sgml-mode" \='(aset sgml-char-names ?\=' nil))

\{html-mode-map}

In addition to any hooks its parent mode might have run,
this mode runs the hook `html-mode-hook', as the final or penultimate step
during initialization.
(defalias 'html-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\306\331!\2106\306\332!\2107\306\333!\2108\306\334!\2109\306\335!\210:\306\336!\210\337\306\340!\210\341 \306\342!\210\343\"\306\344!\210\345$\306\346!\210\347&\350\351!\203\274\306\352!\210\353*\306\354!\210\355,\356;\306\357!\210\360/\306\361!\210\3621)\363\364!\207" [delay-mode-hooks major-mode mode-name html-mode-map html-mode-syntax-table html-mode-abbrev-table make-local-variable t sgml-mode html-mode (sgml-xml-mode "XHTML" "HTML") 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 sgml-display-text sgml-tag-face-alist sgml-tag-alist sgml-face-tag-alist sgml-tag-help outline-regexp "^.*<[Hh][1-6]\\>" outline-heading-end-regexp "</[Hh][1-6]>" outline-level #[0 "\300\225\206`Sf\207" [0] 1] add-log-current-defun-function html-current-defun-name sentence-end-base "[.?!][]\"'”)}]*\\(<[^>]*>\\)*" fboundp libxml-parse-html-region css-class-list-function html-current-buffer-classes css-id-list-function html-current-buffer-ids html-imenu-index sgml-empty-tags ("area" "base" "basefont" "br" "col" "frame" "hr" "img" "input" "isindex" "link" "meta" "param" "wbr") sgml-unclosed-tags ("body" "colgroup" "dd" "dt" "head" "html" "li" "option" "p" "tbody" "td" "tfoot" "th" "thead" "tr") run-mode-hooks html-mode-hook local-abbrev-table html-display-text html-tag-face-alist html-tag-alist html-face-tag-alist html-tag-help imenu-create-index-function] 5 (#$ . 78301) nil])
#@238 A regular expression matching a head line to be added to the menu.
The first `match-string' should be a number from 1-9.
The second `match-string' matches extra tags and is ignored.
The third `match-string' will be the used in the menu.
(defvar html-imenu-regexp "\\s-*<h\\([1-9]\\)[^\n<>]*>\\(<[^\n<>]*>\\)*\\s-*\\([^\n<>]*\\)" (#$ . 82035))
#@67 Return a table of contents for an HTML buffer for use with Imenu.
(defalias 'html-imenu-index #[0 "\301\212eb\210\302\301\303#\203&\304\305\306\307\310!!S_\311\"\307\312!P\313 BB\262\202)\211\237\207" [html-imenu-regexp nil re-search-forward t make-string 2 string-to-number match-string 1 32 3 line-beginning-position] 6 (#$ . 82384)])
#@105 Non-nil if Html-Autoview mode is enabled.
Use the command `html-autoview-mode' to change this variable.
(defvar html-autoview-mode nil (#$ . 82734))
(make-variable-buffer-local 'html-autoview-mode)
#@484 Toggle viewing of HTML files on save (HTML Autoview mode).

If called interactively, enable Html-Autoview mode if ARG is positive,
and disable it if ARG is zero or negative.  If called from Lisp, also
enable the mode if ARG is omitted or nil, and toggle it if ARG is
`toggle'; disable the mode otherwise.

HTML Autoview mode is a buffer-local minor mode for use with
`html-mode'.  If enabled, saving the file automatically runs
`browse-url-of-buffer' to view it.

(fn &optional ARG)
(defalias 'html-autoview-mode #[256 "\301 \302=\203
?\202\303!\304V\211\203!\305\306\307\310\311$\210\202'\312\306\307\311#\210\313\314\2031\315\2022\316\"\210\317\320!\203V\301 \203F\211\301 \232\203V\321\322\323\203Q\324\202R\325#\266\210\326 \210\207" [html-autoview-mode current-message toggle prefix-numeric-value 0 add-hook after-save-hook browse-url-of-buffer nil t remove-hook run-hooks html-autoview-mode-hook html-autoview-mode-on-hook html-autoview-mode-off-hook called-interactively-p any " in current buffer" message "Html-Autoview mode %sabled%s" "en" "dis" force-mode-line-update] 8 (#$ . 82939) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
(defvar html-autoview-mode-hook nil)
(byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\300!\205\307\211%\210\303\311\312\313#\207" [html-autoview-mode-map html-autoview-mode-hook variable-documentation put "Hook run after entering or leaving `html-autoview-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" add-minor-mode html-autoview-mode nil boundp html-href-anchor no-self-insert t] 6)
#@565 HTML anchor tag with href attribute.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-href-anchor #[512 "\300\301#\207" [skeleton-proxy-new ("URL: " "<a href=\"" str "\">" _ "</a>")] 6 (#$ . 84618) "*P\nP"])
(put 'html-name-anchor 'no-self-insert t)
#@565 HTML anchor tag with name attribute.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-name-anchor #[512 "\300\301#\207" [skeleton-proxy-new ("Name: " "<a name=\"" str "\"" (if sgml-xml-mode (concat " id=\"" str "\"")) ">" _ "</a>")] 6 (#$ . 85371) "*P\nP"])
(put 'html-id-anchor 'no-self-insert t)
#@563 HTML anchor tag with id attribute.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-id-anchor #[512 "\300\301#\207" [skeleton-proxy-new ("ID: " "<a id=\"" str "\">" _ "</a>")] 6 (#$ . 86172) "*P\nP"])
(put 'html-headline-1 'no-self-insert t)
#@556 HTML level 1 headline tags.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-headline-1 #[512 "\300\301#\207" [skeleton-proxy-new (nil "<h1>" _ "</h1>")] 6 (#$ . 86917) "*P\nP"])
(put 'html-headline-2 'no-self-insert t)
#@556 HTML level 2 headline tags.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-headline-2 #[512 "\300\301#\207" [skeleton-proxy-new (nil "<h2>" _ "</h2>")] 6 (#$ . 87640) "*P\nP"])
(put 'html-headline-3 'no-self-insert t)
#@556 HTML level 3 headline tags.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-headline-3 #[512 "\300\301#\207" [skeleton-proxy-new (nil "<h3>" _ "</h3>")] 6 (#$ . 88363) "*P\nP"])
(put 'html-headline-4 'no-self-insert t)
#@556 HTML level 4 headline tags.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-headline-4 #[512 "\300\301#\207" [skeleton-proxy-new (nil "<h4>" _ "</h4>")] 6 (#$ . 89086) "*P\nP"])
(put 'html-headline-5 'no-self-insert t)
#@556 HTML level 5 headline tags.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-headline-5 #[512 "\300\301#\207" [skeleton-proxy-new (nil "<h5>" _ "</h5>")] 6 (#$ . 89809) "*P\nP"])
(put 'html-headline-6 'no-self-insert t)
#@556 HTML level 6 headline tags.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-headline-6 #[512 "\300\301#\207" [skeleton-proxy-new (nil "<h6>" _ "</h6>")] 6 (#$ . 90532) "*P\nP"])
(put 'html-horizontal-rule 'no-self-insert t)
#@554 HTML horizontal rule tag.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-horizontal-rule #[512 "\300\301#\207" [skeleton-proxy-new (nil (if sgml-xml-mode "<hr />" "<hr>") n)] 6 (#$ . 91260) "*P\nP"])
(put 'html-image 'no-self-insert t)
#@544 HTML image tag.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-image #[512 "\300\301#\207" [skeleton-proxy-new ("Image URL: " "<img src=\"" str "\" alt=\"" _ "\"" (if sgml-xml-mode " />" ">"))] 6 (#$ . 92001) "*P\nP"])
(put 'html-line 'no-self-insert t)
#@549 HTML line break tag.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-line #[512 "\300\301#\207" [skeleton-proxy-new (nil (if sgml-xml-mode "<br />" "<br>") n)] 6 (#$ . 92760) "*P\nP"])
(put 'html-ordered-list 'no-self-insert t)
#@552 HTML ordered list tags.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-ordered-list #[512 "\300\301#\207" [skeleton-proxy-new (nil n "<ol>" n "<li>" _ (if sgml-xml-mode "</li>") n "</ol>" > n)] 6 (#$ . 93492) "*P\nP"])
(put 'html-unordered-list 'no-self-insert t)
#@554 HTML unordered list tags.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-unordered-list #[512 "\300\301#\207" [skeleton-proxy-new (nil n "<ul>" n "<li>" _ (if sgml-xml-mode "</li>") n "</ul>" > n)] 6 (#$ . 94261) "*P\nP"])
(put 'html-list-item 'no-self-insert t)
#@548 HTML list item tag.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-list-item #[512 "\300\301#\207" [skeleton-proxy-new (nil (if (bolp) nil 'n) "<li>" _ (if sgml-xml-mode "</li>"))] 6 (#$ . 95029) "*P\nP"])
(put 'html-paragraph 'no-self-insert t)
#@548 HTML paragraph tag.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-paragraph #[512 "\300\301#\207" [skeleton-proxy-new (nil n "<p>" _ (if sgml-xml-mode "</p>"))] 6 (#$ . 95780) "*P\nP"])
(put 'html-div 'no-self-insert t)
#@542 HTML div tag.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-div #[512 "\300\301#\207" [skeleton-proxy-new (nil "<div>" > n _ n "</div>" >)] 6 (#$ . 96506) "*P\nP"])
(put 'html-span 'no-self-insert t)
#@543 HTML span tag.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-span #[512 "\300\301#\207" [skeleton-proxy-new (nil "<span>" > _ "</span>")] 6 (#$ . 97212) "*P\nP"])
(put 'html-checkboxes 'no-self-insert t)
#@564 Group of connected checkbox inputs.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-checkboxes #[512 "\300\301#\207" [skeleton-proxy-new (nil '(setq v1 nil v2 nil) ("Value: " "<input type=\"" (identity "checkbox") "\" name=\"" (or v1 (setq v1 (skeleton-read "Name: "))) "\" value=\"" str 34 (when (y-or-n-p "Set \"checked\" attribute? ") (funcall skeleton-transformation-function (if sgml-xml-mode " checked=\"checked\"" " checked"))) (if sgml-xml-mode " />" ">") (skeleton-read "Text: " (capitalize str)) (or v2 (setq v2 (if (y-or-n-p "Newline after text? ") (funcall skeleton-transformation-function (if sgml-xml-mode "<br />" "<br>")) ""))) n))] 6 (#$ . 97922) "*P\nP"])
(put 'html-radio-buttons 'no-self-insert t)
#@568 Group of connected radio button inputs.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-radio-buttons #[512 "\300\301#\207" [skeleton-proxy-new (nil '(setq v1 nil v2 (cons nil nil)) ("Value: " "<input type=\"" (identity "radio") "\" name=\"" (or (car v2) (setcar v2 (skeleton-read "Name: "))) "\" value=\"" str 34 (when (and (not v1) (setq v1 (y-or-n-p "Set \"checked\" attribute? "))) (funcall skeleton-transformation-function (if sgml-xml-mode " checked=\"checked\"" " checked"))) (if sgml-xml-mode " />" ">") (skeleton-read "Text: " (capitalize str)) (or (cdr v2) (setcdr v2 (if (y-or-n-p "Newline after text? ") (funcall skeleton-transformation-function (if sgml-xml-mode "<br />" "<br>")) ""))) n))] 6 (#$ . 99144) "*P\nP"])
(put 'html-navigational-links 'no-self-insert t)
#@557 Group of navigational links.

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-navigational-links #[512 "\300\301#\207" [skeleton-proxy-new (nil "<nav>" n "<ul>" n "<li><a href=\"" (skeleton-read "URL: " "#") "\">" (skeleton-read "Title: ") "</a>" (if sgml-xml-mode (if sgml-xml-mode "</li>")) n "</ul>" n "</nav>")] 6 (#$ . 100427) "*P\nP"])
(put 'html-html5-template 'no-self-insert t)
#@551 Initial HTML5 template

This is a skeleton command (see `skeleton-insert').
Normally the skeleton text is inserted at point, with nothing "inside".
If there is a highlighted region, the skeleton text is wrapped
around the region text.

A prefix argument ARG says to wrap the skeleton around the next ARG words.
A prefix argument of -1 says to wrap around region, even if not highlighted.
A prefix argument of zero says to wrap around zero words---that is, nothing.
This is a way of overriding the use of a highlighted region.

(fn &optional STR ARG)
(defalias 'html-html5-template #[512 "\300\301#\207" [skeleton-proxy-new (nil "<!DOCTYPE html>" n "<html lang=\"en\">" n "<head>" n "<meta charset=\"utf-8\">" n "<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">" n "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">" n "<title>" (skeleton-read "Page Title: ") "</title>" n "</head>" n "<body>" n "<div id=\"app\"></div>" n "</body>" n "</html>")] 6 (#$ . 101317) "*P\nP"])
(provide 'sgml-mode)

Zerion Mini Shell 1.0