Karl Heuer [Thu, 21 Dec 1995 17:38:40 +0000 (17:38 +0000)]
(symbol-under-point, symbol-before-point)
(symbol-under-or-before-point, symbol-before-point-for-complete):
Use unwind-protect to restore syntax table.
(symbol-before-point, symbol-before-point-for-complete):
Start the backward scan-sexps from point, not (1+ (point)).
Karl Heuer [Thu, 21 Dec 1995 16:58:55 +0000 (16:58 +0000)]
(Fset_time_zone_rule): Move static var environbuf
to top level.
(syms_of_editfns): Initialize environbuf explicitly.
(Vbuffer_access_fontified_property): New variable.
(syms_of_editfns): Set up Lisp var.
(make_buffer_string): Don't call the Vbuffer_access_fontify_functions
if the text is already fontified.
(Fbuffer_string): Pas 1 for PROPS arg.
(update_buffer_properties): New subroutine.
(Finsert_buffer_substring): Use update_buffer_properties.
(make_buffer_string): New arg PROPS.
(Fbuffer_string, Fbuffer_substring): Pass new arg.
(Fbuffer_substring_no_properties): New function.
(syms_of_editfns): defsubr it.
(Vbuffer_access_fontify_functions): New variable.
(Qbuffer_access_fontify_functions): New variable.
(syms_of_editfns): Set up Lisp variable, initialize them.
(make_buffer_string): Run this new hook.
Karl Heuer [Thu, 21 Dec 1995 16:55:39 +0000 (16:55 +0000)]
(Fkill_buffer): Rename arg bufname to buffer.
Don't gcpro it after the last use.
(Fswitch_to_buffer, Fpop_to_buffer): Rename arg bufname to buffer.
(Fset_buffer): Likewise, and rename local buffer to buf.
(reset_buffer, init_buffer_once): Delete code that touches
redisplay_end_trigger field in buffer.
Karl Heuer [Tue, 19 Dec 1995 22:01:53 +0000 (22:01 +0000)]
(apropos-match-face): Use `secondary-selection' rather
than `highlight' to distinguish it from mouse-face highlighting of
hyperlinks.
(apropos-mode-map): Rename from `apropos-local-map'.
(apropos-mode): Set it rather than have a local-map that made RET
locally unusable when copied to other buffer.
(apropos-print): Use it. When there is only one property, show
what it is. Remove superfluous `save-excursion', thus making help
commands' return-message be correct.
(apropos-print, apropos-describe-plist): `print-help-return-message'
like help commands.
Karl Heuer [Tue, 19 Dec 1995 21:02:04 +0000 (21:02 +0000)]
(display-time): make it work under ms-dos by setting the
`dos-display-time' variable instead of invoking `wakeup' as
asynchronous process (which doesn't work under ms-dos).
Karl Heuer [Tue, 19 Dec 1995 20:59:46 +0000 (20:59 +0000)]
(syms_of_dosfns): delete the `dos-menubar-clock' and
`dos-timer-hooks' variables (the usual modeline time display now
works and `display-time-hook' can be used under DOS).
Karl Heuer [Tue, 19 Dec 1995 20:57:15 +0000 (20:57 +0000)]
(check_timer): get rid of the DOS-specific menubar clock
feature; call `display-time-filter' from time.el to display time
on the modeline instead. This makes `display-time' work under DOS.
(abort): use our own function instead of the one from the library
which reverts the console device to cooked mode.
(syms_of_msdos): `dos-display-time'--a new variable for
communicating with `display-time'.
* gnus.el (gnus-summary-mode-line-format,
gnus-article-mode-line-format, gnus-group-mode-line-format):
Include the buffer name in the default mode strings.
(gnus-mode-non-string-length): Changed the default to not
limit/pad mode line lengths.
(gnus-set-mode-line): Supply new values for the mode string
variables.
(gnus-summary-remove-lines-marked-with): Put point on the current
article after expunging lines.
Roland McGrath [Thu, 14 Dec 1995 06:34:54 +0000 (06:34 +0000)]
Fix completely broken changes of 4 Feb 95 by brat@htilbom.ernet.in,
which were obviously never tested or even examined closely before
being installed.
(find-tag-file-order): Variable removed.
(find-tag-noselect): Remove gratuitously added variable SEARCH-TAG and
bogus clobbering of find-tag-order for patterns ending in dot (serious
braindamage here).
(find-tag-in-order): Remove gratuitously added variable TAGS-TABLE-FILE.
Remove variable MATCH-TYPE and code testing it for stupid special case.
(etags-recognize-tags-table): Put tag-exact-file-name-match-p first in
find-tag-tag-order list. Don't set bogus find-tag-file-order variable.
(etags-snarf-tag): Notice file name match and return tag info with t
in place of tag text.
(etags-goto-tag-location): If (car TAG-INFO) is t, go directly to
the specified location.
(tag-exact-file-name-match-p): Renamed from tag-filename-match-p, and fixed.
(tags-table-files): Doc fix: names are returned unexpanded.
(etags-tags-table-files): Don't expand file names.
(tags-table-including, next-file): Expand result of (tags-table-files).
(tags-complete-tags-table-file): New function, helper for interactive
spec of list-tags.
(list-tags): Revert to original code, but use that function to lazify
the completion table.
(tags-list-functions-in-file, tags-locate-file-in-tags-table):
Functions removed.
Karl Heuer [Wed, 13 Dec 1995 20:26:13 +0000 (20:26 +0000)]
(bibtex-auto-fill-function): Adapted for use with
changed autofill policy of emacs-19.30 (uses now fill-prefix
instead of indent-line-function).
(bibtex-indent-line-function): Removed (not used any more).
(bibtex-make-field): Was broken when called
non-interactively.
(bibtex-make-field): Point is now placed on closing
brace or quote (suggested by Karl Eichwalder <ke@ke.Central.DE>).
(bibtex-clean-entry): Comma after last field isn't
deleted anymore (new standard in BibTeX 0.99 and 1.xx).
(bibtex-enclosing-reference-maybe-empty-head): Works with entries
with comma after last field.
(bibtex-reference): Permits entries with comma after last field.
(bibtex-font-lock-keywords): Enhanced to support new field-name
characters (suggested by Martin Maechler
<maechler@stat.math.ethz.ch>).
(bibtex-field-name): Now numbers (not as the first sign), dashes,
and underscores are allowed (suggested by Martin Maechler
<maechler@stat.math.ethz.ch> and Oren Patashnik
<opbibtex@labrea.Stanford.EDU>).
(bibtex-make-field): Was broken on lines containing
non-parenthesized entries (reported by Karl Eichwalder
<ke@ke.Central.DE>).
(bibtex-validate-buffer): Changed so that preamble
references are ignored (same as string entries) (reported by
Martin Maechler <maechler@stat.math.ethz.ch>).
(bibtex-enclosing-reference-maybe-empty-head):
New function to be used in case reference head may be empty.
(bibtex-clean-entry, bibtex-pop-previous, bibtex-pop-next): Uses
now bibtex-enclosing-reference-maybe-empty-head.
(bibtex-mode): Added support for font-lock mode.
(bibtex-font-lock-keywords): New variable with font-lock keywords
for BibTeX mode.
(bibtex-make-optional-field): Not longer interactive
(suggested by Karl Eichwalder <karl@pertron.central.de>).
(bibtex-maintain-sorted-entries): Set to nil, since it
requires more user attention and more restricted files to have
this set to t.
(bibtex-maintain-sorted-entries,
bibtex-sort-ignore-string-entries): Made buffer local, since it
may depend on the buffer which preferences to use.
(bibtex-validate-buffer): Looking for correct sort order only when
bibtex-maintain-sorted-entries is non-nil.
Put a comment in the `KNOWN BUGS' section about the
quote-inside-quotes problem.
(whole file): Changed string `true' in some documentation strings
to `non-nil' (e.g. `if variable has a true/non-nil value').
(bibtex-mode-map): Changed `move/edit' to `bibtex-edit'.
(bibtex-sort-entries): Now works correctly with
`@String' entries inside BibTeX files (i.e. after the occurence of
other references).
(bibtex-validate-buffer): Inserted code which looks if entries are
balanced (a single non-escaped quote inside braces was not
detected till now, but bibtex-sort-entries stumbles about it).
(bibtex-entry): bibtex-move-outside-of-entry is only
called when bibtex-maintain-sorted-entries is nil (otherwise
bibtex-find-entry-location determines the correct location).
(bibtex-find-entry-location): Now uses binary search. As before,
it assumes that the buffer is sorted without duplicates (but as
before it is only called when bibtex-maintain-sorted-entries is
t). Ignores `@String' entries if told so via variable
bibtex-sort-ignore-string-entries.
(bibtex-clean-entry): Respect
bibtex-maintain-sorted-entries when inserting autokey.
(bibtex-validate-buffer): Searching whole buffer for duplicates
and correct order is now done directly instead of calling
bibtex-find-entry-location (since this is to be reprogrammed to
use a binary search instead a sequential one).
(bibtex-parse-keys): May now be called with an
optional parameter which (if t) tells bibtex-parse-keys that it
should abort if input is pending.
(bibtex-mode): The instance of bibtex-parse-keys called in
auto-save-mode-hook is now called with this new parameter set to
t, so an auto-save caused by exceeding auto-save-interval is now
aborted immediately if user is still typing.
(bibtex-print-help-message, bibtex-clean-entry): Use
now constant strings instead of custom ones.
(bibtex-clean-entry): Changed the call of
bibtex-enclosing-reference to a more specific call so entries
without a key (here allowed) can be handled.
(bibtex-reference-key): Cleared off parentheses (caused string
entries enclosed by parentheses instead of braces to be not added
to bibtex-completion-candidates).
(bibtex-complete-string): Made it use bibtex-string.
(bibtex-keys,
bibtex-buffer-last-parsed-for-keys-tick): New buffer-local
variables to make parsing of BibTeX buffer for reference keys
(needed by TAB completion in minibuffer when entering key) more
occasional.
(bibtex-parse-keys): New function to parse for keys (functionality
was partially included in bibtex-entry).
(bibtex-entry): Changed to use bibtex-parse-keys.
(bibtex-mode): Installs bibtex-parse-keys as an
auto-save-mode-hook, so whole buffer is parsed at most when it is
autosaved.
(bibtex-clean-entry): Calls bibtex-parse-keys on the new entry, so
bibtex-keys remains consistent for new entries that are finished
by calling this function (most should).
(bibtex-inside-field): Be independent on current
setting of bibtex-field-right-delimiter (allows more intermixing
between quotes and braces).
(bibtex-make-field): Last change didn't make it work correctly
when called non-interactively by bibtex-entry (fixed).
Karl Heuer [Wed, 13 Dec 1995 19:42:33 +0000 (19:42 +0000)]
(dired-flag-backup-files): Under MS-DOS, search for
possible backup files by checking for filenames which end with a
`k' (the backup extension is `.bak').
Karl Heuer [Wed, 13 Dec 1995 02:26:40 +0000 (02:26 +0000)]
(Fcall_process) [MSDOS]: Support redirection of
stderr. Assign process exit code to `synch_process_retcode' and
error description to `synch_process_death'. Reset
`synch_process_alive' to zero when the sub-process exits.
Karl Heuer [Wed, 13 Dec 1995 02:22:47 +0000 (02:22 +0000)]
(IT_set_terminal_modes): Save screen color attribute
byte at startup, write saved screen dimensions to termscript
file.
(IT_reset_terminal_modes): When restoring startup screen contents,
only restore as much as was saved, and only as much as the screen
dimensions on exit can hold. Blank the rest with the background
color saved at startup. Write restored screen dimensions to
termscript file.
Karl Heuer [Wed, 13 Dec 1995 02:17:09 +0000 (02:17 +0000)]
(Ftype_of): Return `char-table' and `bool-vector' for
char tables and bool vectors, resp.
(Qchar_table, Qbool_vector): New variables.
(syms_of_data): Initialize and staticpro them.
Karl Heuer [Wed, 13 Dec 1995 01:52:07 +0000 (01:52 +0000)]
(create_process): Use Posix signal handling to
block signals, if available. If HAVE_VFORK, save and restore
signal handlers that the child might change, since in many
systems (e.g. Solaris 2.4) if the child changes the signal
handlers this munges the parent's handler.
Karl Heuer [Wed, 13 Dec 1995 01:22:05 +0000 (01:22 +0000)]
(sh-mode-map): Make the code more legible.
(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.
Simon Marshall [Sat, 9 Dec 1995 16:35:57 +0000 (16:35 +0000)]
Don't turn on in any buffer with a leading space in its name.
When (un)fontifying, make sure we're doing it in the whole buffer.
Make a command to refontify the window.
(gnus-simplify-mode-line): New function to simplify the
mode line in a safer manner.
(gnus-group-mode, gnus-browse-mode, gnus-summary-mode,
gnus-article-mode, gnus-server-mode): Use the function.
* etags.c (Cplusplus_suffixes): Add .M suffix for Objective C++.
(gperf): Added keywords for Objective C and GNU macros.
(sym_type): Added values to account for Objective C and GNU macros.
(begtk): The '@' character can start a token.
(objdef, methodlen, objtag): New variables for Objective C.
(consider_token, C_entries): Added code for Objective C.
(plain_C_suffixes): Add .m and .lm for Objective C.
(Yacc_suffixes): Add .ym for Objective yacc.
(GROW_LINEBUFFER): New macro.
(consider_token, C_entries, Pascal_functions): Use the new macro.
(consider_token): Take one more argument. Caller changed.
(consider_token): Use the hashing function to spot GNU macros.
(C_entries): Consider // as a comment start even in plain C for
the sake of Objective C parsing.
(pfnote): Don't make a tag for ctags if there is no name.
(getit, Asm_labels, Perl_functions, Pascal_functions, L_getit,
get_scheme, prolog_getit): Name the tag in ctags mode.
(pfnote): Truncate ctags lines to 50 chars, like it worked once.
(Perl_interpreters): Accept "@PERL@" as an interpreter.
(suggest_asking_for_help): New function.
(main, get_language_from_name): Use suggest_asking_for_help.
(main): Let get_language_from_name make language existence check.
(streq, strneq): Check the arguments #if DEBUG.
* gnus.el (gnus-parse-headers-hook): New hook.
(gnus-get-newsgroup-headers): Call it.
(gnus-get-newsgroup-headers-xover): Call it.
(gnus-group-mode-map): Moved `gnus-group-fetch-faq' from `M-f' to
`H f'.
(gnus-summary-copy-article): Allow respooling to any backend.
(gnus-summary-set-process-mark): Make sure each article can only
be process marked once.
(gnus-summary-remove-lines-marked-with): Put point on a valid
article after removing lines.
(gnus-summary-sort-by-author): Didn't allow sorting when
pseudo-articles were present.
(gnus-summary-sort-by-subject): Ditto.