case and remove the executable extension, if any.
(sh-other-keywords): Define an entry for `sh' and make `bourne'
inherit from that.
(sh-mode): Always pass nil as 3rd arg to sh-set-shell.
and insert-flag to executable-set-magic.
Don't call executable-set-magic if insert-flag is nil.
(sh-mode): Always call sh-set-shell, but use insert-flag arg
to control whether to call executable-set-magic.
No need to set comment-start-skip directly here.
(sh-mode): Parse the interpreter from the file text.
comment-end for newline, string for `, and excape for $.
rc can use the same as sh. Move csh after sh.
(sh-comment-prefix, sh-font-lock-keyw-rds-only): Variables deleted.
(sh-mode): Adjust setting of font-lock-defaults.
(sh-font-lock-keywords): No need for anything special for comments.
(sh-set-shell, sh-mode): Set comment-start-skip to a simple constant.
(sh-mode): Make sh-shell-variables and
sh-shell-variables-initialized local.
(sh-set-shell): Don't scan the buffer for variable assignments.
Set sh-shell-variables-initialized to nil.
(sh-shell-initialize-variables): New function.
(sh-add-completer): New function. Initialize sh-shell-variables
here if not yet done.
(sh-add): Use sh-add-completer for completion.
(sh-set-shell, sh-remember-variable):
Set sh-shell-variable, not process-environment.
(sh-mode): Don't make process-environment local.
Add a mode-class property.
(sh-add): Use sh-shell-variable in completion.
Compute alist properly from process-environment.
(sh-canonicalize-shell): New function.
(sh-shell-file): Renamed from sh-shell-path.
(sh-set-shell): Don't set local-abbrev-table.
(sh-abbrevs): Variable and function definition commented out.
(sh-font-lock-keywords-1): Allow keyword `in' at eol too.
(sh-font-lock-keywords-only): New variable to prevent an apostrophe
in comment from misfontifying buffer, but to allow users who don't
have such to get strings fontified.
(sh-mode): Use it.
`interpreter-mode-alist'.
(sh-beginning-of-command): Take into account \quoted newline.
(sh-builtins, sh-leading-keywords, sh-other-keywords): Now three
distinct sets for font-locking.
(sh-font-lock-keywords-1, sh-font-lock-keywords-2): New variables
and functions to give the user finer control over how much to fontify,
including new distinction between keywords and builtins.
(sh-mode): Use new features of `font-lock-defaults' and adaptation
to skeleton changes.
(sh-while): Fix csh, es & rc skeletons.
since `newline-and-indent' doesn't either. Don't turn a trailing
quoted tab into a space.
(sh-mode): Use new `skeleton-newline-indent-rigidly'.
(sh-set-shell): Make maximum font-locking also hightlight keywords
after ``' and `!'. (The latter is for ksh '93 but should't hurt other
shells.)