1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-26 07:00:35 -08:00
Commit graph

107567 commits

Author SHA1 Message Date
Paul Eggert
ff55dfe832 Parenthesize macro bodies.
* lisp.h (XSETINT, XSETCONS, XSETVECTOR, XSETSTRING, XSETSYMBOL)
(XSETFLOAT, XSETMISC): Parenthesize.
2012-09-09 18:17:23 -07:00
Stefan Monnier
9b851e2550 New emacs-lisp-byte-code-mode; misc minor changes.
* lisp/emacs-lisp/lisp-mode.el (emacs-list-byte-code-comment-re): New var.
(emacs-lisp-byte-code-comment)
(emacs-lisp-byte-code-syntax-propertize, emacs-lisp-byte-code-mode):
New functions.
(eval-sexp-add-defvars): Don't skip defvars in column >0.
(eval-defun-2): Remove bogus interactive spec.
(lisp-indent-line): Remove redundant whole-exp code, now done in
indent-according-to-mode.
(save-match-data): Remove redundant indent data.
* lisp/emacs-lisp/benchmark.el (benchmark-run, benchmark-run-compiled):
Use `declare'.
* lisp/gnus/qp.el (quoted-printable-decode-region):
Inline+CSE+strength-reduction.
2012-09-09 21:16:13 -04:00
Paul Eggert
b8b0239fd0 Improve robustness of 'make bootstrap'.
Run autogen.sh after bootstrap-clean, to avoid bzr pull issues.
* INSTALL, README: Document autogen.sh.
* Makefile.in (Makefile): Mark it as precious, since it's updated
atomically.
(MAKE_CONFIG_STATUS): New macro.
(config.status, bootstrap): Use it.  This causes 'make bootstrap'
to run config.status with the --recheck option, which is more
appropriate for a bootstrap.
(bootstrap): Run autogen.sh right after cleaning.  Don't worry
about failures due to missing tools.
* autogen.sh: Exit with status 101 when failing due to missing tools.
* make-dist: Distribute autogen.sh.

Fixes: debbugs:12376
2012-09-09 18:03:27 -07:00
Juri Linkov
3231d532c7 * lisp/replace.el (replace-regexp-lax-whitespace): New defcustom.
(replace-lax-whitespace, query-replace-regexp)
(query-replace-regexp-eval, replace-regexp): Doc fix.
(perform-replace, replace-highlight): Let-bind
isearch-lax-whitespace to replace-lax-whitespace and
isearch-regexp-lax-whitespace to replace-regexp-lax-whitespace.

* lisp/isearch.el (isearch-query-replace): Let-bind
replace-lax-whitespace to isearch-lax-whitespace and
replace-regexp-lax-whitespace to
isearch-regexp-lax-whitespace.

Fixes: debbugs:10885
2012-09-10 01:15:24 +03:00
Stefan Monnier
e7032e7c6c * src/lisp.h (make_lisp_ptr): New macro to replace XSET.
(XSETCONS, XSETVECTOR, XSETSTRING, XSETSYMBOL, XSETFLOAT, XSETMISC):
Use it.
2012-09-09 17:24:04 -04:00
Stefan Monnier
70fe823684 * lisp/eshell/em-unix.el (eshell/sudo): Explicitly drop return value. 2012-09-09 17:11:14 -04:00
Eli Zaretskii
aba05ce9b6 Avoid leaving traces of cursor when entering linum-mode.
src/fringe.c (draw_fringe_bitmap_1): Don't reduce the width of the
 left fringe if the window has a left margin.  This avoids leaving
 traces of the cursor because its leftmost pixel is not drawn over.
2012-09-09 23:10:36 +03:00
Eli Zaretskii
e99579563e Fix bug #12277 with incomplete redisplay of the vertical border between windows.
src/dispnew.c (update_window_line): When the left margin area of a
 screen line is updated, set the redraw_fringe_bitmaps_p flag of
 that screen line.
2012-09-09 20:59:50 +03:00
Paul Eggert
f6196b87e1 Assume C89 or later for math functions.
This simplifies the code, and makes it a bit smaller and faster,
and (most important) makes it easier to clean up signal handling
since we can stop worring about floating-point exceptions in
library code.  That was a problem before C89, but the problem
went away many years ago on all practical Emacs targets.
* configure.ac (frexp, fmod): Remove checks for these functions,
as we now assume them.
(FLOAT_CHECK_DOMAIN, HAVE_INVERSE_HYPERBOLIC, NO_MATHERR)
(HAVE_EXCEPTION):
Remove; no longer needed.
* admin/CPP-DEFINES (HAVE_FMOD, HAVE_FREXP, FLOAT_CHECK_DOMAIN)
(HAVE_INVERSE_HYPERBOLIC, NO_MATHERR): Remove.
* src/data.c, src/image.c, src/lread.c, src/print.c:
Don't include <math.h>; no longer needed.
* src/data.c, src/floatfns.c (IEEE_FLOATING_POINT): Don't worry that it
might be autoconfigured, as that never happens.
* src/data.c (fmod):
* src/doprnt.c (DBL_MAX_10_EXP):
* src/print.c (DBL_DIG):
Remove.  C89 or later always defines these.
* src/floatfns.c (HAVE_MATHERR, FLOAT_CHECK_ERRNO, FLOAT_CHECK_DOMAIN)
(in_float, float_error_arg, float_error_arg2, float_error_fn_name)
(arith_error, domain_error, domain_error2):
Remove all this pre-C89 cruft.  Do not include <errno.h> as that's
no longer needed -- we simply return what C returns.  All uses removed.
(IN_FLOAT, IN_FLOAT2): Remove.  All uses replaced with
the wrapped code.
(FLOAT_TO_INT, FLOAT_TO_INT2, range_error, range_error2):
Remove.  All uses expanded, as these macros are no longer used
more than once and are now more trouble than they're worth.
(Ftan): Use tan, not sin / cos.
(Flogb): Assume C89 frexp.
(fmod_float): Assume C89 fmod.
(matherr) [HAVE_MATHERR]: Remove; no longer needed.
(init_floatfns): Remove.  All uses removed.
2012-09-09 09:06:33 -07:00
Alan Mackenzie
8ed43f1548 Correct the handling of two c-state-cache state variables.
cc-engine.el (c-state-cache-init): Initialise
c-state-semi-nonlit-pos-cache\(-limit\)? properly.
(c-record-parse-state-state): record
c-state-semi-nonlit-pos-cache\(-limit\)?.
2012-09-09 11:03:37 +00:00
Jan Djärv
c2cbbdd165 Remove debug prints 2012-09-09 10:44:22 +02:00
Andreas Schwab
bfabf70a86 * lisp/register.el (register-separator): Rename from
separator-register.  All uses changed.  Doc fix.
(register): Fix version.
2012-09-09 10:10:56 +02:00
Chong Yidong
bb6b0efc34 Clarify descriptions of delq and delete in Lisp manual.
* doc/lispref/lists.texi (Sets And Lists): Explain that the return value for
delete should be used, like for delq.
2012-09-09 15:50:45 +08:00
Chong Yidong
e4e55af11e * minibuf.texi: Fix last change. 2012-09-09 15:09:03 +08:00
Chong Yidong
011474aa5a Allow scrolling in y-or-n-p.
* lisp/replace.el (query-replace-map): Bind four new symbols for
requesting window scrolling.

* lisp/subr.el (y-or-n-p): Handle the window-scrolling bindings in
query-replace-map.

* lisp/custom.el (custom-theme-load-confirm): Use y-or-n-p.

* lisp/window.el (scroll-other-window-down): Make the arg optional.

* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p): Don't bind scrolling keys
since they are now in query-replace-map.

* doc/lispref/minibuf.texi (Yes-or-No Queries): Document recentering and
scrolling in y-or-n-p.  Remove gratuitous example.

* doc/lispref/searching.texi (Search and Replace): Document window scrolling
entries in query-replace-map.

Fixes: debbugs:8948
2012-09-09 14:43:47 +08:00
Chong Yidong
a8b7cd8d8b Use quit-window for quitting the *Local Variables* buffer.
* lisp/files.el (hack-local-variables-confirm): Use quit-window to kill
the *Local Variables* buffer.
2012-09-09 13:50:43 +08:00
Dmitry Gutov
c326883141 * lisp/progmodes/ruby-mode.el (ruby-toggle-block): Guess the current block,
not just expect to be at its beginning.  Adjust callees.
Succeed when do-end block has no space before the pipe character.
(ruby-brace-to-do-end): When the original block is one-liner,
convert to multiline.  Reindent the result.

* test/automated/ruby-mode-tests.el:
(ruby-toggle-block-to-multiline): New test.
(ruby-should-indent-buffer, ruby-toggle-block-to-do-end)
(ruby-toggle-block-to-brace): Use buffer-string.
2012-09-09 03:32:25 +04:00
Jan Djärv
9d7f18633a * nsterm.m (ns_draw_fringe_bitmap, ns_dumpglyphs_image): Take back
compositeToPoint for OSX < 10.6.

Fixes: debbugs:12390
2012-09-08 22:16:39 +02:00
Jambunathan K
0979429b33 * lisp/register.el (increment-register): Route it to `append-to-register',
if register contains text so that `C-x r +' can now be
used for appending to a text register.
(register): New group.
(register-separator): New user option.
(append-to-register, prepend-to-register): Add separator based on
`register-separator.
* doc/emacs/regs.texi (Text Registers): `C-x r +' can now be used instead of
M-x append-to-register.  New option `register-separator'.
(Number Registers): Mention that `C-x r +' is polymorphic.

Fixes: debbugs:12217
2012-09-08 16:09:06 -04:00
Alan Mackenzie
ace2989a84 AWK Mode: make auto-newline work when there's "==" in the pattern.
cc-cmds.el (c-point-syntax): Handle virtual semicolons correctly.
cc-engine.el (c-guess-basic-syntax CASE 5A.3): Test more rigorously for
"=" token.
2012-09-08 20:00:13 +00:00
Paul Eggert
eabf040441 * floatfns.c (Ftan): Use tan (x), not (sin (x) / cos (x)).
This produces more-accurate results.
2012-09-08 12:57:32 -07:00
Jan Djärv
0b3b1d2322 * nsterm.m (updateFrameSize): Call setFrame: on the view when size
changes.

Fixes: debbugs:12088
2012-09-08 19:22:15 +02:00
Dmitry Gutov
e6aca21989 * progmodes/ruby-mode.el (ruby-match-expression-expansion): Shorten
previous change.
2012-09-08 19:34:41 +04:00
Dmitry Gutov
616c6c36aa * lisp/progmodes/ruby-mode.el (ruby-match-expression-expansion): Only
fail when reached LIMIT.
2012-09-08 19:13:14 +04:00
Chong Yidong
35d98877f0 Don't bind M-= in Dired.
* lisp/dired.el (dired-mode-map): Don't bind M-=.

* lisp/dired-aux.el (dired-diff): Use backup file as default.
2012-09-08 22:48:26 +08:00
Drew Adams
1715f2dbca * subr.el (add-to-history): Fix delete usage.
Fixes: debbugs:12314
2012-09-08 22:30:09 +08:00
Chong Yidong
6dcef6eca7 Introduce "raw syntax descriptor" terminology, and use it.
* syntax.texi (Syntax Table Internals): Define "raw syntax
descriptor" terminology.
(Syntax Descriptors): Mention raw syntax descriptors.

* lisp/subr.el (syntax-after, syntax-class): Doc fix.

* syntax.c (Fstring_to_syntax): Doc fix.

Fixes: debbugs:12383
2012-09-08 22:23:01 +08:00
Martin Rudalics
fa2bcf435d Fix handling of debugger window. (Bug#8789)
* window.el (display-buffer-in-previous-window): New buffer
display action function.

* emacs-lisp/debug.el (debugger-bury-or-kill): New option.
(debugger-previous-window): New variable.
(debug): Rewrite using display-buffer-in-previous-window,
quit-restore-window and debugger-bury-or-kill.  (Bug#8789)
2012-09-08 15:28:11 +02:00
Jan Djärv
aa7d57c507 * nsterm.h (EmacsView): Add updateFrameSize.
* nsterm.m (ns_clip_to_row): Remove code that deals with drawing fringe
in the internal border.
(x_set_window_size): Remove static variables and their usage.
(ns_redraw_scroll_bars): Fix NSTRACE arg.
(ns_after_update_window_line, ns_draw_fringe_bitmap): Remove
fringe/internal border adjustment.
(ns_draw_fringe_bitmap): Make code more like other terms (xterm.c).
(ns_draw_window_cursor): Remove fringe/internal border adjustment.
(ns_fix_rect_ibw): Remove.
(ns_get_glyph_string_clip_rect): Remove call to ns_fix_rect_ibw.
(ns_dumpglyphs_box_or_relief): Ditto.
(ns_maybe_dumpglyphs_background): Remove fringe/internal border
adjustment.
(ns_dumpglyphs_image): Ditto.
(ns_dumpglyphs_stretch): Fix coding style. Remove fringe/internal
border adjustment.
(ns_set_vertical_scroll_bar): Remove variables barOnVeryLeft/Right and
their usage.  Add fringe_extended_p and its use as in other terms.
(ns_judge_scroll_bars): Code style fix.  Call updateFrameSize if
scroll bar was removed.
(updateFrameSize): New function.
(windowDidResize): Move code to updateFrameSize and call it.

Fixes: debbugs:11052
2012-09-08 14:48:33 +02:00
Eli Zaretskii
a30cb5dd2c Fix setting of environment variables by nt/configure.bat.
nt/configure.bat <use_extensions>: Don't leave it set in the
 environment when the script exits.
2012-09-08 14:20:32 +03:00
Stefan Monnier
daac280ae0 * lisp/emacs-lisp/byte-run.el (defun): Tweak message. Simplify code. 2012-09-07 16:14:55 -04:00
Matt McClure
9dd40b0005 * progmodes/python.el (python-shell-send-string): When
default-directory is remote, create temp file on remote
filesystem.
(python-shell-send-file): When file is remote, pass local view of
file paths to remote Python interpreter.  (Bug#12340)
2012-09-07 16:53:15 +02:00
Chong Yidong
b4f5313e93 * src/textprop.c (Fget_text_property): Minor doc fix.
Fixes: debbugs:12323
2012-09-07 22:45:28 +08:00
Chong Yidong
1a5432bc04 Fix doc of local-variable-if-set-p.
* doc/lispref/variables.texi (Creating Buffer-Local): Fix description of
local-variable-if-set-p.

* src/data.c (Flocal_variable_if_set_p): Doc fix (Bug#10713).
2012-09-07 22:15:59 +08:00
Chong Yidong
cee2e90d47 Minor doc fix for switch-to-buffer.
* doc/lispref/windows.texi (Display Action Functions)
(Choosing Window Options): Remove obsolete variable
display-buffer-reuse-frames.
(Switching Buffers): Minor doc tweak for switch-to-buffer.

* lisp/window.el (switch-to-buffer): Doc fix.

Fixes: debbugs:12181
2012-09-07 21:53:21 +08:00
Juanma Barranquero
4d64875a83 nt/config.nt: Sync with autogen/config.in.
(NO_ABORT, SIGNAL_H_AHB): Remove.
2012-09-07 14:15:08 +02:00
Chong Yidong
0d7eb2ea07 Fix handling of require-final-newline in after-find-file.
* files.el (after-find-file): Don't fail on a read-only buffer if
require-final-newline is `visit' or `visit-save'.

Fixes: debbugs:11156
2012-09-07 18:53:29 +08:00
Chong Yidong
0a6bdaa157 * doc/lispref/eval.texi (Intro Eval): Add index entry for sexp.
Fixes: debbugs:12233
2012-09-07 18:36:39 +08:00
Chong Yidong
14ba4cf3b2 Remove obsolete display-buffer-reuse-frames from manuals.
* doc/emacs/windows.texi (Window Choice): Don't mention obsolete
display-buffer-reuse-frames.

* doc/lispref/windows.texi (Display Action Functions)
(Choosing Window Options): Remove obsolete variable
display-buffer-reuse-frames.
2012-09-07 18:27:11 +08:00
Chong Yidong
145823ecb2 Let ESC ESC quit in read-char-choice, and use it in userlock.el.
* lisp/subr.el (read-char-choice): Allow quitting via ESC ESC.

* lisp/userlock.el (ask-user-about-supersession-threat): Use
read-char-choice.

Fixes: debbugs:12093
2012-09-07 18:19:58 +08:00
Glenn Morris
843f263443 Auto-commit of generated files. 2012-09-07 06:17:37 -04:00
Chong Yidong
e5c2edf79b Add a utility function buffer-narrowed-p, and use it.
* lisp/subr.el (buffer-narrowed-p): New function.

* lisp/ses.el (ses-widen):
* lisp/simple.el (count-words--buffer-message):
* lisp/net/browse-url.el (browse-url-of-buffer): Use it

* lisp/simple.el (count-words-region): Don't signal an error if there
is a non-nil prefix arg and the mark is not set.

* doc/lispref/positions.texi (Narrowing): Document buffer-narrowed-p.
2012-09-07 16:58:31 +08:00
Paul Eggert
eddb36a7d5 * emacs.c (main): Convert three 'signal' calls to 'sigaction' calls.
Problem introduced when merging patches.  Noted by Eli Zaretskii in
<http://bugs.gnu.org/12327#67>.
2012-09-07 01:55:03 -07:00
Paul Eggert
1a4f1e9b48 More signal-handler cleanup.
* configure.ac (FLOAT_CHECK_DOMAIN): Comment fix (Bug#12327).
* src/floatfns.c: Comment fix.
* src/lisp.h (force_auto_save_soon): Declare regardless of SIGDANGER.
SIGDANGER might not be in scope so "#ifdef SIGDANGER" is not right,
and anyway the declaration is harmless even if SIGDANGER is not defined.
* src/syssignal.h (SIGIO): Also #undef if (! defined FIONREAD ||
defined BROKEN_FIONREAD).  systty.h formerly did this, but other
source files not surprisingly expected syssignal.h to define, or
not define, SIGIO, and it's cleaner to do it that way, for consistency.
Include <sys/ioctl.h>, for FIONREAD.
* src/systty.h (SIGIO): Do not #undef here; it's now syssignal.h's job.
This eliminates a problem whereby other files mysteriously had
to include "syssignal.h" before including "systty.h" if they
wanted to use "#ifdef SIGIO".
2012-09-07 01:46:44 -07:00
Chong Yidong
c640e87d07 * lisp/simple.el (count-words--buffer-message): Fix narrowing check. 2012-09-07 16:36:25 +08:00
Eli Zaretskii
3e6d6928bd MS-Windows followup for 2012-09-07T01:27:44Z!eggert@cs.ucla.edu, signal-handler cleanup.
src/w32proc.c (sigaction): New function, emulates Posix 'sigaction'.
 src/w32.c (sigemptyset): Empty the set.
 (sigsetmask, sigmask, sigblock, sigunblock): Remove unused functions.

 nt/inc/ms-w32.h (struct sigaction): Declare sa_handler __cdecl.

Fixes: debbugs:12327
2012-09-07 11:20:07 +03:00
Eli Zaretskii
bc8000ff70 Fix compilation failure under ENABLE_CHECKING.
src/alloc.c [ENABLE_CHECKING]: Include signal.h, since we need SIGABRT.

Fixes: debbugs:12327
2012-09-07 10:24:08 +03:00
Dmitry Antipov
b4fa72f279 * alloc.c (mark_buffer): Revert unsafe marking optimization.
(mark_object): Likewise for frame objects.
2012-09-07 11:05:56 +04:00
Paul Eggert
30730c93a0 * syssignal.h (handle_on_main_thread): Always declare,
even if FORWARD_SIGNAL_TO_MAIN_THREAD is not defined.
This ports to platforms without HAVE_PTHREAD.
2012-09-06 23:47:30 -07:00
Dmitry Gutov
8f06accefa * lisp/progmodes/ruby-mode.el
(ruby-beginning-of-defun): Only consider 3 keywords defun beginners.
(ruby-end-of-defun): Expect that the point is at the beginning of
the defun.
2012-09-07 09:06:05 +04:00