sh-electric-rparen, sh-electric-less and sh-electric-hash.
(sh-st-punc, sh-here-doc-syntax): Use string-to-syntax.
(sh-font-lock-heredoc, sh-font-lock-paren): New funs.
(sh-font-lock-syntactic-keywords): Use them.
(sh-heredoc-face, sh-st-face, sh-special-syntax): Remove.
(sh-mkword-regexp, sh-electric-rparen-needed-here): Remove.
(sh-mode): Don't override font-lock-unfontify-region-function.
Use a copy of sh-font-lock-syntactic-keywords.
(sh-set-shell): Don't set sh-electric-rparen-needed-here.
Don't call sh-scan-buffer since font-lock does it on the fly.
(sh-get-indent-info): Use `face' rather than `syntax-table'
text-property to detect here-documents.
Replace sh-special-syntax with sh-st-punc.
(sh-prev-line): Use `face' rather than `syntax-table'
text-property to skip over here-documents.
(sh-font-lock-unfontify-region-function, sh-check-paren-in-case)
(sh-set-char-syntax, sh-electric-rparen, sh-electric-hash)
(sh-electric-less, sh-set-here-doc-region)
(sh-remove-our-text-properties, sh-search-word, sh-scan-case)
(sh-scan-buffer, sh-rescan-buffer): Remove.
(sh-mode-syntax-table): Add punctuation syntax for < and >.
(sh-mode): Don't make all vars local here.
(sh-kw): Reformat.
(sh-set-shell): Use dolist. Don't set indent-region-function.
(sh-mode-syntax-table): Use pop.
(sh-remember-variable): Use push.
(sh-help-string-for-variable): Use memq.
(sh-safe-backward-sexp): Remove.
(sh-safe-forward-sexp): Add ARG.
(sh-get-indent-info, sh-prev-stmt): Use it.
(sh-prev-line): Simplify by using forward-comment.
(sh-this-is-a-continuation): Simplify.
(sh-learn-buffer-indent): Use dolist.
(sh-do-nothing): Remove.
(sh-set-char-syntax, sh-set-here-doc-region):
Use inhibit-modification-hooks.
(sh-name-style): Use mapcar and push.
(sh-load-style): Use dolist.
(sh-save-styles-to-buffer): Use with-current-buffer and pp.
(sh-case, sh-while-getopts): Use propertize directly rather
than sh-electric-rparen.
Generally, sync w/ maintainer version 5.22.
(hs-hide-all-non-comment-function): New var.
(hs-hide-hook, hs-show-hook, hs-minor-mode): Update docstrings.
(hs-hide-all): Use `hs-hide-all-non-comment-function'.
(hs-show-region): Delete this command.
(hs-minor-mode-map): Change bindings to leave "C-c LETTER" alone.
(sql-postgres-options): New variable.
(sql-mode-menu): Work around missing variable mark-active
in XEmacs.
(sql-mode): Added call to easy-menu-add for XEmacs compatibility.
(sql-interactive-mode): Added call to easy-menu-add for XEmacs
compatibility.
(ebnf-version): New version (3.3).
(ebnf-user-arrow): Change variable customization to sexp.
(ebnf-user-arrow): Function eliminated.
(ebnf-eps-finish-and-write, ebnf-insert-ebnf-prologue): Code fix.
(sql-copy-column): Use comint-line-beginning-position.
(comint-line-beginning-position): Define a replacement for
comint-line-beginning-position if it is not fboundp.
(sql-mode-map): TAB is no longer defined in sql-mode-map;
it didn't have any effect anyway.
(sql-postgres): Jason Beegan's patch uses the parameters
--pset and pager=off instead of sending \\o|cat at the beginning
of the session.
(global-cwarn-mode): Don't make it a user option. Unquote lambda.
(cwarn-font-lock-feature-keywords-alist): Don't make it a user
option. Provide :type.
(cwarn-configuration): Provide :type.
(cwarn-mode): Doc fix.