1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-24 13:32:41 -08:00
Commit graph

130436 commits

Author SHA1 Message Date
Tom Tromey
e52287ca3e Fix indentation error in js.el
* lisp/progmodes/js.el (js--indent-in-array-comp): Wrap forward-sexp
call in condition-case.
* test/lisp/progmodes/js-tests.el (js-mode-indentation-error): New
test.
2017-02-24 20:33:41 -07:00
Tom Tromey
7b49bd44b7 add "async" and "await" keywords
* lisp/progmodes/js.el (js--keyword-re): Add async, await.
2017-02-24 08:11:20 -07:00
Stefan Monnier
91932fff1d Use cl-print for Edebug and EIEIO
* lisp/emacs-lisp/edebug.el (edebug-prin1-to-string): Use cl-print.
(edebug-prin1, edebug-print): Remove.

* lisp/emacs-lisp/eieio.el (object-print): Declare obsolete.
(cl-print-object): Add a method for EIEIO objects.
(eieio-edebug-prin1-to-string): Delete.
(edebug-prin1-to-string): Don't advise any more.

* lisp/emacs-lisp/eieio-datadebug.el (data-debug-insert-object-button):
Replace `object-print' -> `cl-prin1-to-string'.
2017-02-23 22:39:53 -05:00
Stefan Monnier
f1f17265c9 Fix left over uses of `call-next-method'
* lisp/cedet/semantic/db-global.el (object-print):
* lisp/cedet/semantic/db.el (object-print): Use `cl-call-next-method'.
2017-02-23 21:19:20 -05:00
Stefan Monnier
dee8674414 Minor redisplay optimisations
* src/frame.c (Ficonify_frame): No need to redisplay everything.

* src/xdisp.c (overlay_arrows_changed_p): Add `set_redisplay' argument.
(redisplay_internal): Use it to avoid redisplaying everything.
(try_window_id): Use it keep the same behavior as before.
2017-02-23 21:17:04 -05:00
Stefan Monnier
407e650413 * lisp/emacs-lisp/cl-print.el: New file
* lisp/emacs-lisp/nadvice.el (advice--where): New function.
(advice--make-docstring): Use it.

* src/print.c (print_number_index): Don't declare here any more.
(Fprint_preprocess): New function.

* test/lisp/emacs-lisp/cl-print-tests.el: New file.
2017-02-23 21:06:54 -05:00
Peder O. Klingenberg
f6d2ba74f8 Make calc's least common multiple positive (bug#25255)
* lisp/calc/calc-comb.el (calcFunc-lcm): Return absolute value.
* doc/misc/calc.texi (Combinatorial Functions): Update for the above.
2017-02-23 20:28:40 -05:00
Tino Calancha
0d5957ec6f Documentation fix in elisp reference manual
* doc/lispref/macros.texi (Defining Macros): Drop redundant mention
on 'declare' forms (Bug#25846).
2017-02-24 10:21:31 +09:00
Gemini Lasswell
8b912ab47b Support read syntax for circular objects in Edebug (Bug#23660)
* lisp/emacs-lisp/edebug.el (edebug-read-special): New name
for edebug-read-function. Handle the read syntax for circular
objects.
(edebug-read-objects): New variable.
(edebug-read-and-maybe-wrap-form1): Reset edebug-read-objects.

* src/lread.c (Fsubstitute_object_in_subtree): Make
substitute_object_in_subtree into a Lisp primitive.
2017-02-23 20:21:11 -05:00
Lixin Chin
ba6c382404 Add Conference to the list of valid bibtex entry types
* lisp/textmodes/bibtex.el (bibtex-BibTeX-entry-alist):
Add Conference as a duplicate of InProceedings.  (Bug#25143)

Copyright-paperwork-exempt: yes
2017-02-23 19:04:27 -05:00
Glenn Morris
581c4d1f1c * lisp/comint.el (comint-password-prompt-regexp): Add SUDO. (Bug#24817) 2017-02-23 17:12:49 -05:00
Glenn Morris
16efea3a88 Small dunnet score file improvements
* lisp/play/dunnet.el (dun-log-file): Switch to per-user default.
(dun-do-logfile): Handle non-existing score file.
2017-02-23 13:22:31 -05:00
Glenn Morris
e50317fb72 * lisp/play/dunnet.el (dun-help): Doc fix. 2017-02-23 13:20:48 -05:00
Mark Oteiza
6f225b7fdf Declare dun-line and dun-line-list
Previously, there were free variables 'line' and 'line-list'.
* lisp/play/dunnet.el (dun-line, dun-line-list): New variables.
(dun-press, dun-vparse, dun-parse2, dun-unix-parse, dun-batch-parse):
(dun-batch-parse2, dun-batch-loop, dun-batch-dos-interface):
(dun-batch-unix-interface): Use them.
2017-02-23 13:14:44 -05:00
Paul Eggert
7204577bf9 Merge from gnulib
This incorporates:
2017-02-16 xbinary-io: rename from xsetmode
2017-02-15 xsetmode: new module
* lib-src/etags.c (main):
* lib-src/hexl.c (main):
* src/emacs.c (main) [MSDOS]:
Prefer set_binary_mode to the obsolescent SET_BINARY.
* lib/binary-io.c, lib/binary-io.h: Copy from gnulib.
2017-02-23 09:15:06 -08:00
Paul Eggert
23e64facf9 hexl: handle large files and I/O errors
* lib-src/hexl.c: Include inttypes.h, for PRIxMAX etc.
Do not include ctype.h, as the code no longer uses isdigit.
(DEFAULT_GROUPING, un_flag, iso_flag, group_by): Now local to ‘main’.
(DEFAULT_BASE, endian): Remove; was not really used.
(usage): Remove; now done by ‘main’, as that’s simpler.
(progname): Now static.
(output_error, hexchar): New functions.
(main): Use them.  Simplify.  Remove "-oct", "-big-endian", and
"-little-endian" options, as they did not work and were not used.
Use SET_BINARY only on stdin, and fopen with "rb" otherwise.
Use SET_BINARY only once on stdout.
Do not assume file offsets fit in ‘long’.
If an I/O error occurs, report it and exit with nonzero status.
2017-02-23 09:15:06 -08:00
Eli Zaretskii
5114b3a204 Avoid quitting inside a critical section on MS-Windows
* src/w32uniscribe.c (uniscribe_list_family):
* src/w32font.c (w32font_list_family, w32font_text_extents)
(w32font_list_internal, w32font_match_internal)
(list_all_matching_fonts): Prevent quitting while these functions
cons lists of fonts, to avoid leaving the critical section taken
by the main thread, which will then cause any other thread
attempting to enter the critical section to hang.  (Bug#25279)
2017-02-23 18:15:05 +02:00
Tassilo Horn
4381015bd1 ; Less error-like font-lock-variable-name-face
; * etc/themes/tsdh-light-theme.el (tsdh-light):
2017-02-22 18:31:02 +01:00
Dmitry Gutov
f5ee042771 Use revision-completion-table in vc-retrieve-tag
* lisp/vc/vc.el (vc-retrieve-tag): Use the
revision-completion-table command for completion (bug#25710).
2017-02-22 05:09:21 +02:00
Stefan Monnier
fb997d30af * lisp/emacs-lisp/cl-generic.el (cl--generic-typeof-types): Add `atom'
remove entries whose car can't be returned by type-of.
(cl--generic-all-builtin-types): New var.
(cl-generic-generalizers): Use it to avoid requiring
extra entries in cl--generic-typeof-types.
2017-02-21 21:47:10 -05:00
Noam Postavsky
907bad07f2 Find macro binding for symbol-bound macros too (Bug#6848)
There are 2 ways to bind a macro: with global-set-key or
kmacro-bind-to-key.  The former binds a key to a symbol, while the
latter binds to a lambda.  In 2010-03-03 "Fix keyboard macro key
lookup (Bug#5481)", `insert-kbd-macro' was fixed to detect the lambda
case, but broke the symbol case.

* lisp/macros.el (insert-kbd-macro): Also check for bindings of
MACRONAME.
2017-02-21 21:44:54 -05:00
Stefan Monnier
3f1cd957ff * lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Fix last change 2017-02-21 21:32:27 -05:00
Juri Linkov
cd191c8034 * lisp/isearch.el (lazy-highlight-max-at-a-time): Doc fix (bug#21092). 2017-02-22 02:16:06 +02:00
Juri Linkov
c5e66afa88 * lisp/isearch.el (isearch-lazy-highlight): New choice ‘all-windows’.
(isearch-lazy-highlight-update): Check it to decide whether to apply
overlays only on the selected window.

* lisp/follow.el (follow-mode): Set isearch-lazy-highlight to ‘all-windows’.
(Bug#17453, bug#21092)
2017-02-22 02:10:36 +02:00
Paul Eggert
17af43ca76 Minor weak hash table performance tweaks
* src/fns.c (make_hash_table): Omit unnecessary assignment to
h->next_weak when the hash table is not weak.
(copy_hash_table): Put the copy next to the original in the
weak_hash_tables list, as this should have better locality
when scanning the weak hash tables.
2017-02-21 15:39:17 -08:00
Paul Eggert
83c9c6fc1c Use float instead of Lisp_Object for rehash_size
* src/alloc.c (purecopy_hash_table):
* src/fns.c (maybe_resize_hash_table, Fmake_hash_table):
(Fhash_table_rehash_size):
* src/lisp.h (struct Lisp_Hash_Table.rehash_size):
The rehash_size member of struct Lisp_Hash_Table is now a
float, not a Lisp_Object.
* src/alloc.c (purecopy_hash_table): Assign members in order.
* src/fns.c (make_hash_table): Use EMACS_INT for size and
float for rehash_size, instead of Lisp_Object for both.
All callers changed.
* src/lisp.h (DEFAULT_REHASH_SIZE): Now float, not double,
and 1 smaller.
* src/print.c (print_object): Simplify by calling
Fhash_table_rehash_size and Fhash_table_rehash_threshold.
Avoid unnecessary NILP.
2017-02-21 15:39:17 -08:00
Paul Eggert
5cbdaa98f9 Use ptrdiff_t instead of Lisp_Object for collision
* src/alloc.c (purecopy_hash_table): Assign, don’t purecopy.
* src/fns.c (set_hash_next_slot, set_hash_index_slot): Hash index
arg is now ptrdiff_t index (or -1 if empty), not Lisp_Object
integer (or Qnil if empty).  All callers changed.
(larger_vecalloc): New static function.
(larger_vector): Use it.
(HASH_NEXT, HASH_INDEX): Move here from lisp.h.  Return ptrdiff_t
index (or -1) not Lisp_Object integer (or Qnil).  All callers changed.
* src/fns.c (make_hash_table, maybe_resize_hash_table, hash_lookup)
(hash_put, hash_remove_from_table, hash_clear, sweep_weak_table):
* src/profiler.c (evict_lower_half, record_backtrace):
-1, not nil, is now the convention for end of collision list.
* src/fns.c (maybe_resize_hash_table): Avoid double-initialization
of the free list.  Reallocate H->next last, in case other
reallocations exhaust memory.
* src/lisp.h (struct Lisp_Hash_Table): ‘next_free’ is now
ptrdiff_t, not Lisp_Object.  Adjust commentary for ‘next’ and
‘index’, which no longer contain nil.
(HASH_NEXT, HASH_INDEX): Move to src/fns.c.
2017-02-21 15:39:17 -08:00
Paul Eggert
7207b63c8e Hash table threshold is now float, not double
Change default from 0.8 to 0.8125 so it fits in float without
rounding glitches.
* doc/lispref/hash.texi (Creating Hash):
* doc/lispref/objects.texi (Hash Table Type):
* etc/NEWS:
Document change.
* src/fns.c (make_hash_table, maybe_resize_hash_table)
(Fmake_hash_table): Threshold is now float, not double.
Be consistent about how this is rounded.
* src/lisp.h (struct Lisp_Hash_Table.rehash_threshold):
Change back to float, now that the other code rounds consistently.
(DEFAULT_REHASH_THRESHOLD): Now float 0.8125 instead of double 0.8.
2017-02-21 15:39:17 -08:00
Juri Linkov
f2191691d4 Avoid flicker in lazy-highlight by doing all updates without redisplay.
* lisp/isearch.el (lazy-highlight-max-at-a-time):
Change default value from 20 to nil to not trigger redisplay
between updating iterations.
(lazy-highlight-cleanup): New arg ‘procrastinate’ to not remove
overlays when non-nil.
(isearch-lazy-highlight-new-loop): Call lazy-highlight-cleanup
with non-nil second arg when the search string is not empty.
Run timer with isearch-lazy-highlight-start instead of
isearch-lazy-highlight-update.
(isearch-lazy-highlight-start): New function. (Bug#25751)
2017-02-22 01:22:18 +02:00
Glenn Morris
217eaf6932 ; * lisp/custom.el: Comments. 2017-02-21 15:11:56 -05:00
Stefan Monnier
bac7de05e2 * lisp/emacs-lisp/autoload.el (make-autoload): Support cl-defgeneric
* lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Tweak for autoloading.
2017-02-21 13:51:12 -05:00
Stefan Monnier
e785c74d3a * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Fix duplication
which resulted in incomplete list of parents in one copy of the
cl-structure-class class.
2017-02-21 13:48:30 -05:00
Glenn Morris
20dda6be76 Tweak recent custom-reevaluate-setting change
* lisp/custom.el (custom-reevaluate-setting):
Tweak previous change to avoid font-lock init issues.
2017-02-21 12:59:56 -05:00
Nicolas Petton
fe91ff27c5
; Update ldef-boot.el for Emacs 25.1 release 2017-02-21 17:58:46 +01:00
Nicolas Petton
4210210993
; Update ChangeLog.2 and AUTHORS files 2017-02-21 17:37:43 +01:00
Glenn Morris
96cea19842 Ensure delayed-init custom variables get marked special
* lisp/custom.el (custom-reevaluate-setting):
If the variable has never been set, defvar it.  (Bug#25770)
2017-02-20 18:30:40 -08:00
Glenn Morris
08c73cdc6e ; Add a new TODO item
* etc/TODO: Add a new entry for :set-after.
* lisp/startup.el: Related comment.
2017-02-20 18:08:48 -08:00
Mark Oteiza
bfd1afb3da Turn on lexical-binding in dunnet.el
* lisp/play/dunnet.el: Turn on lexical-binding.  Re-instate lexical
byte compile warnings.
2017-02-20 21:04:52 -05:00
Mark Oteiza
e91cc4e1e0 Make dunnet insertion functions n-ary
* lisp/play/dunnet.el (dun-mprinc, dun-mprincl, dun-minsert):
(dun-minsertl, dun-batch-mprinc, dun-batch-mprincl): Change to accept
any number of arguments.
(dun-parse, dun-describe-room, dun-quit, dun-inven, dun-shake):
(dun-take, dun-go, dun-move, dun-press, dun-score):
(dun-compile-save-out, dun-do-logfile): Collect arguments from
multiple insertion calls into less calls with more args.
2017-02-20 21:00:32 -05:00
Katsumi Yamaoka
18c476956d message-goto-body-1: Fix regexp so as not to match multi-line
* lisp/gnus/message.el (message-goto-body-1):
Fix regexp so as not to match multi-line.
2017-02-21 00:24:05 +00:00
Noam Postavsky
2f53c0c468 Simplify cl-get using `plist-member'
* lisp/emacs-lisp/cl-extra.el (cl-get, cl-getf, cl--set-getf): Use
`plist-member' instead of explicit loop.
* test/lisp/emacs-lisp/cl-extra-tests.el: New tests.
2017-02-20 16:53:14 -05:00
Paul Eggert
57a8346edf Verify xwidget USE_LSB_TAG assumption
* src/xwidget.c (Fxwidget_webkit_execute_script):
Add verification.  Problem reported by Andreas Schwab (Bug#25816#8).
2017-02-20 13:04:09 -08:00
Stefan Monnier
160bcfeed6 * src/insdel.c (make_gap): Improve comment. 2017-02-20 14:05:41 -05:00
Mark Oteiza
27a76829fe Do not use switch-to-buffer for working in a temp buffer
* lisp/play/dunnet.el (dunnet): Use pop-to-buffer-same-window instead,
cf. Bug#22244.
(dun-load-d, dun-eval, dun-save-game, dun-do-logfile): Use
with-temp-buffer instead.
2017-02-20 13:53:41 -05:00
Mark Oteiza
e546d3d967 Make dun-room-shorts a defconst
* lisp/play/dunnet.el (dun-room-shorts): Make defconst and collect
initial value into the declaration.
(dun-space-to-hyphen): Remove.
2017-02-20 13:33:48 -05:00
Paul Eggert
a6e76fc725 Port xwidget to -DCHECK_LISP_OBJECT_TYPE
* src/xwidget.c (webkit_javascript_finished_cb)
(Fxwidget_webkit_execute_script): Don't assume Lisp_Object is an
integer.  This fix is just a hack; I’ll file a bug report about
the underlying problem.
2017-02-20 08:58:50 -08:00
Eli Zaretskii
589bd0c22b ; * src/insdel.c: State file encoding explicitly. 2017-02-20 17:41:46 +02:00
Katsumi Yamaoka
b2b31596f8 mm-decode.el: Simplify regexp used to search html meta tag
* lisp/gnus/mm-decode.el (mm-add-meta-html-tag, mm-shr):
Simplify regexp used to search html meta tag.
2017-02-20 06:40:03 +00:00
Katsumi Yamaoka
851b38bcdf mm-shr: Ignore coding-system `ascii'
* lisp/gnus/mm-decode.el (mm-shr): Ignore coding-system `ascii'.
2017-02-20 06:17:20 +00:00
Tom Tromey
0a670690f1 vc-log-outgoing fixes for git; add binding to vc-dir
* lisp/vc/vc-dir.el (vc-dir-mode-map): Bind "O" to vc-log-outgoing.
* lisp/vc/vc-git.el (vc-git-log-outgoing, vc-git-log-incoming): Use
async execution.
(vc-git-log-view-mode): Also truncate lines for log-outgoing and
log-incoming.
* lisp/vc/vc.el (vc-log-incoming, vc-log-outgoing): Don't pass nil
as remote-location argument.
2017-02-19 21:01:28 -07:00