(mouse-save-then-kill): If follows a multi-click selection,
extend the selection.
(mouse-save-then-kill-delete-region): New subroutine.
(mouse-selection-click-count): New variable.
(mouse-drag-region): Set it.
Mon Sep 20 18:06:12 1993 Francesco Potorti` (pot at fly)
* etags.c (C_entries): is_func is initialised here instead of in
consider_token for the sake of the yacc rules section.
(C_entries): Now class, struct, enum, union and typedef produce
named tags.
- (hilit-rehighlight-region): added (save-restriction (widen))
to avoid hangups in dired.
- Also slight improvements to fortran patterns and
hilit-default-face-table doc string
- added optional case-fold argument to hilit-set-mode-patterns
- added hilit-rehighlight-buffer-quietly to dired-after-readin-hook
- fixed bug in hilit-string-find that mishandled some strings: "\\"
- work-around for bug in next-overlay-change
- the pattern matcher now starts it's searches from the end of the
most recently highlighted region (which is not necessarily the end
of the most recently matched regex).
- code moved from hilit-highlight-region to hilit-set-mode-patterns.
This will affect you if you pass your patterns directly to
hilit-highlight-region....use a pseudo-mode instead.
- twiddled C/C++, latex, texinfo, fortran, nroff patterns.
- added calendar-mode, icon-mode and pascal-mode patterns
- diverged lisp-mode and emacs-lisp-mode...also added lisp keywords.
(mouse-set-region): Put region in kill ring.
(mouse-drag-region): Handle double and triple clicks
when displaying region and when setting it.
(mouse-skip-word, mouse-start-end): New functions.
(font-lock-fontify-region): Don't add `font-lock' props.
(font-lock-unfontify-region): Don't remove `font-lock' props.
(font-lock-hack-keywords): Don't add `font-lock' props.
Handle values other than t and nil for allow-overlap-p specially.
(c-font-lock-keywords-1): Don't override how comments in #if... appear.
Highlight text after #else or #endif.
Change typos in comments.
(forms-delete-record, forms--update): Use `delete-region' instead of
`kill-line' to avoid messing around with the kill ring.
Release 2.1 for Emacs 19.19.
(forms--process-format-list): No need to prepend a text item anymore.
(forms--ro-modification-start): Renamed to `forms--iif-start.
(forms--ro-properties): Renamed to `forms--iif-properties'.
(forms--romh): Renamed to `forms--iif-hook'. Rewritten to use
`insert-in-front-hooks' instead of `modification-hooks'.
(forms--romh-post-command-hook): Renamed to
`forms--iif-post-command-hook'. Rewritten to use
`insert-in-front-hooks' instead of `modification-hooks'.
(forms--make-format, forms--make-format-elt-using-text-properties):
Use `insert-in-front-hooks' instead of `modification-hooks'.
Remove `forms--electric' code. Use `front-sticky' and
`rear-nonsticky' text properties to control the insertion of text
between read-only fields.
(forms--show-record): Remove `forms--electric' code.
(Finsert_and_inherit): New function.
(Finsert_and_inherit_before_markers): New function.
(Finsert, Finsert_before_markers): Pass new arg to insert_from_string*.
Roland McGrath [Sun, 12 Sep 1993 10:47:34 +0000 (10:47 +0000)]
Substitute variable `vpath_sed'.
If not in $srcdir and $srcdir is configured,
issue warning that GNU make is required,
and set vpath_sed to use vpath.sed script.
(hack-local-variables-prop-line): Ignore any specification
for `mode:', since set-auto-mode has already handled it.
(set-auto-mode): Clean up. Handle more than one `mode:' spec in -*-.
Roland McGrath [Fri, 10 Sep 1993 06:08:27 +0000 (06:08 +0000)]
Remove check for $srcdir being configured. This pretty much works now.
Grok {m68*-hp,i[34]86-*}-netbsd* and set opsys=netbsd.
Check for XFree86 (/usr/X386/include) independent of whether -lXbsd exists.
(x_term_init): Call change_keyboard_wait_descriptor,
instead of dup2. Use the existing X desc number in fcntl calls.
(XTread_socket): Don't forget to clear out `mask'.
(keyboard_descriptor): New variable.
(wait_reading_process_input, init_keyboard): Use it.
Also call change_input_fd.
(change_keyboard_wait_descriptor): New function.
Roland McGrath [Wed, 8 Sep 1993 07:09:00 +0000 (07:09 +0000)]
(rlogin): After rlogin-mode, set comint-filename-prefix locally to indicate
the host, and cd to /HOST:~/.
(rlogin-mode-map): Start with (cons 'keymap shell-mode-map), rather than
with a full copy of comint-mode-map.
Roland McGrath [Wed, 8 Sep 1993 07:06:46 +0000 (07:06 +0000)]
(shell-cd): New function, like `cd' but prepend comint-filename-prefix.
(shell-resync-dirs, shell-process-cd, shell-process-pushd,
shell-process-popd): Use shell-cd in place of cd.
Roland McGrath [Wed, 8 Sep 1993 06:59:23 +0000 (06:59 +0000)]
(comint-filename-prefix): New variable.
(comint-replace-by-expanded-filename, comint-dynamic-complete,
comint-dynamic-list-completions): Prepend it to absolute file names before
completing.
Paul Eggert [Mon, 6 Sep 1993 22:37:51 +0000 (22:37 +0000)]
(calendar-time-zone-daylight-rules): Remove special case for Israel.
Israel has changed its daylight savings time rules, and we don't know
what the current rules are.
* etags.c (L_isdef, L_isquote, L_getit): small optimisations.
(L_funcs): the (foo::defmumble stuff now should work.
(consider_token): function returned random value--corrected.
(C_entries): corrected == versus = typo.
* etags.c (FINCST): added the fignore status. Means we are
after the parameter list and before the open curly brace.
Allows correct parsing of C++ constructors.
(C_entries, consider_token): make use of fignore.
(consider_token): reset funcdef when next_token_is_func: when in
ctags mode makes DEFVAR and others work better.
(L_isquote): function that recognises the "(quote" string.
(L_getit): ignore quoting via "'" or "(quote". Useful for defalias.
Roland McGrath [Mon, 30 Aug 1993 16:17:35 +0000 (16:17 +0000)]
(next-file): If arg is neither t nor nil, then eval it to return initial
list of files.
(tags-loop-continue): Doc fix.
(tags-search, tags-query-replace): Take optional final arg and pass to
tags-loop-continue (through to next-file) instead of t if non-nil.
Paul Eggert [Sun, 29 Aug 1993 17:28:19 +0000 (17:28 +0000)]
Use integers instead of floating point where they will do.
(solar-equinoxes-solstices): Invert seasons in southern hemisphere.
(solar-degrees-to-quadrant): Use `floor' instead of `truncate'.
Paul Eggert [Sat, 28 Aug 1993 04:14:25 +0000 (04:14 +0000)]
(calendar-time-zone-daylight-rules): Scan through the
next few years until at most one rule remains; if none remain, then
just use the first candidate rule; it's wrong in general, but it's
right for at least one year. This is a better heuristic in case the
underlying time zone implementation has bugs (which is all too
common). If possible, don't convert back and forth between gregorian
and absolute; this speeds things up noticeably. This uses the new
calendar-nth-named-absday function.
(calendar-current-time-zone): Some locales start DST at a different
time of day than they end; allow for this by yielding both times. The
performance speedups in calendar.el are great enough that we now no
longer need the "Checking time zone data..." message. If
current-time-zone yields nil, don't bother with
calendar-next-time-zone-transition. Use clearer names for local vars.
(calendar-time-zone, calendar-daylight-time-offset,
calendar-{standard,daylight}-time-zone-name,
calendar-daylight-savings-{starts,ends}): Default to US Eastern rules
for information that is not available.
(calendar-daylight-savings-{starts,ends}-time): New vars, replacing
calendar-daylight-savings-switchover-time, to support locales that
start DST at a different time of day than they end.
(calendar-absolute-from-time):
Fix typo by interchanging floor and mod.