aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | Fix inverted NOCOPY encode/decode parameter (bug#40407)Mattias Engdegård2020-04-052-1/+9
| | | | | | | | | | | | | | | | | | | | In {encode,decode}-coding-string, the NOCOPY parameter had the opposite effect to what was intended and documented. This 18 year old bug (introduced in 4031e2bf0a) only affected calls with CODING-SYSTEM being nil. * src/coding.c (code_convert_string): Correct use of NOCOPY. * test/src/coding-tests.el (coding-nocopy-trivial): New test.
* | Improve integer range checkingPaul Eggert2020-04-0516-205/+158
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/bignum.c (check_integer_range, check_uinteger_max) (check_int_nonnegative): New functions. * src/frame.c (check_frame_pixels): New function. (Fset_frame_height, Fset_frame_width, Fset_frame_size): Use it. * src/lisp.h (CHECK_RANGED_INTEGER, CHECK_TYPE_RANGED_INTEGER): Remove these macros. Unless otherwise specified, all callers replaced by calls to check_integer_range, check_uinteger_range, check_int_nonnegative. * src/frame.c (gui_set_right_divider_width) (gui_set_bottom_divider_width): * src/nsfns.m (ns_set_internal_border_width): * src/xfns.c (x_set_internal_border_width): Using check_int_nonnegative means these functions no longer incorrectly reject negative bignums; they treat them as 0, just like negative fixnums.
* | * src/lisp.h: Update overly-optimistic comment.Paul Eggert2020-04-051-2/+2
| |
* | * lisp/arc-mode.el: Rewrite displaying the summariesStefan Monnier2020-04-042-271/+212
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Completely rewrite the code that displayes the summaries, so all backends share the same code. (archive--summarize-descs): New function. (archive-arc-summarize, archive-lzh-summarize, archive-zip-summarize) (archive-zoo-summarize, archive-rar-summarize, archive-7z-summarize) (archive-ar-summarize): Use it. (archive-hidden-columns): New custom. (archive-alternate-hidden-columns): New const. (archive-mode-map): Always enable `archive-alternate-display`. (archive-alternate-display): Set `archive-hidden-columns`. (archive-hideshow-column): New command. (archive--fit, archive--fit2, archive--enabled-p): New aux functions.
* | * lisp/arc-mode.el: Remove make-(local-variable|variable-buffer-local)Stefan Monnier2020-04-041-21/+12
| | | | | | | | | | | | | | | | | | (archive-file-list-start, archive-file-list-end) (archive-proper-file-start, archive-file-name-indent, archive-remote) (archive-member-coding-system, archive-alternate-display) (archive-file-name-coding-system, archive-files): Use `defvar-local`. (archive-extract): Use `setq-local`. (archive-get-descr): Use `user-error` when clicking on a directory.
* | Avoid SAFE_ALLOCA in Fstring, Funibyte_stringPaul Eggert2020-04-041-24/+15
| | | | | | | | | | | | * src/character.c (Fstring, Funibyte_string): Redo to avoid the need for a temporary array allocation and then a copying from that array to the destination.
* | * lisp/arc-mode.el (archive--file-desc): Add fields from other structsStefan Monnier2020-04-041-107/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add fields `size`, `time` (used by all backends) as well as `pos`, `ratio`, `uid`, and `gid` (used only be some backends). (archive-arc--file-desc, archive-rar--file-desc, archive-ar--file-desc) (archive-lzh--file-desc, archive-zip--file-desc, archive-7z--file-desc): Remove defstructs. (archive-arc-summarize): Record size and time in the descrs. (archive-lzh-summarize): Record size, time, uid, and gid in the descrs. (archive-zip-summarize): Record size and time in the descrs. (archive-zoo-summarize): Record size and time in the descrs. (archive-rar-summarize): Adjust to use of `archive--file-desc`. (archive-7z-summarize): Adjust to new constructor. (archive-ar-summarize): Adjust to use of `archive--file-desc`. (archive-ar-write-file-member): Remove mode-to-int hack. (archive-get-descr): Directory entries aren't regular members.
* | Revert unneeded part of gcc -Og changePaul Eggert2020-04-041-7/+0
| | | | | | | | | | * configure.ac (DEFINE_KEY_OPS_AS_MACROS): Undo this recent change to configure.ac; it’s not needed.
* | * lib-src/Makefile.in (LINK_CFLAGS): Remove; unused.Paul Eggert2020-04-041-2/+0
| |
* | Default gcc -Og to inlining key opsPaul Eggert2020-04-043-11/+25
| | | | | | | | | | | | | | | | | | | | Problem reported by Martin Rudalics in: https://lists.gnu.org/r/emacs-devel/2020-04/msg00195.html * configure.ac (DEFINE_KEY_OPS_AS_MACROS): Define if -Og. * src/Makefile.in (KEY_OPS_CFLAGS): New macro. (EMACS_CFLAGS): Use it. * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): Let the gcc command line specify it. Remove use of undocumented INLINING macro.
* | Support the "explore" command in gdb-mi.elEli Zaretskii2020-04-041-2/+9
| | | | | | | | | | | | | | | | * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add support for "explore", "explore value", and "explore type". Allow more than one word after control commands. (gdb-gdb): Decrease gdb-control-level when we get the "(gdb)" prompt, which signals that "explore" exited. (Bug#40250)
* | Fix face spec handling for 'default' "terminal class"Eli Zaretskii2020-04-041-1/+1
| | | | | | | | | | | | | | * lisp/faces.el (face-spec-choose): Reverse order of 'defaults' and 'result' when generating attribute list, so that the spec for 'default' "terminal class" is indeed overridden by the actual class's spec, per the documentation. (Bug#40336)
* | * lisp/arc-mode.el: Remove unused struct fieldsStefan Monnier2020-04-031-59/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (archive--file-desc): Remove `case-fiddled`. Change all subtypes's constructors as their callers accordingly. (archive--file-desc-case-fiddled): New function. (archive-int-to-mode): Accept a nil input. Make all callers take advantage of it. (archive-arc-rename-entry): Use `make-string`. (archive-zip--file-desc): Change `pos+len` field into `pos` field. (archive-zip-chmod-entry): Simplify accordingly. (archive-zip-summarize): Don't bother with `lheader` which was not used. (archive-zoo--file-desc): Delete struct; use archive--file-desc instead. (archive-7z--file-desc): Remove `user` and `group` fields. Adjust constructor and its caller. (archive-ar-summarize): Use `archive-int-to-mode`.
* | * lisp/arc-mode.el: Use cl-structs rather than vectorsStefan Monnier2020-04-031-147/+196
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (archive--file-desc, archive--file-summary, archive-arc--file-desc) (archive-lzh--file-desc, archive-zip--file-desc) (archive-zoo--file-desc, archive-rar--file-desc) (archive-7z--file-desc, archive-ar--file-desc): New structs. (archive-get-descr, archive-mode, archive-summarize-files) (archive-maybe-copy, archive-extract, archive-*-write-file-member) (archive-expunge, archive-arc-summarize, archive-arc-rename-entry) (archive-lzh-summarize, archive-lzh-rename-entry, archive-lzh-ogm) (archive-zip-summarize, archive-zip-write-file-member) (archive-zip-chmod-entry, archive-zoo-summarize) (archive-rar-summarize, archive-7z-summarize, archive-ar-summarize) (archive-ar-write-file-member): Use struct constructors and accessors instead of `vector` and `aref`. (archive-calc-mode): Remove `error` arg which was always non-nil; adjust all callers. Rewrite using `string-to-number` and `file-modes-symbolic-to-number`.
* | C++ Mode: recognize brace blocks without the hitherto required = signAlan Mackenzie2020-04-031-2/+11
| | | | | | | | | | | | | | | | * lisp/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): Add code to recognize a literal brace expression following an array declaration for C++. (c-looking-at-inexpr-block): Replace c-symbol-chars with c-symbol-char-key, fixing a coding error.
* | * lisp/arc-mode.el (archive-ar-write-file-member): New functionStefan Monnier2020-04-031-10/+27
| | | | | | | | | | | | | | (archive-ar--name): New funtion, extracted from `archive-ar-summarize`. (archive-ar-extract): Use it. (archive-ar-summarize): Use it. Put the extname in the slot 0 of the desc vectors.
* | * lisp/arc-mode.el: Remove redundant `:group`sStefan Monnier2020-04-031-58/+41
| | | | | | | | | | | | (archive-arc, archive-lzh, archive-zip, archive-zoo): Move them to their corresponding defcustom. (archive-7z): New group, that used to be missing.
* | * lisp/arc-mode.el: Use lexical-bindingStefan Monnier2020-04-031-42/+37
| | | | | | | | | | | | | | | | | | (arc-insert-unibyte): Simplify. (archive--mode-revert): Rename from `archive-mode-revert` and adjust for use as an :around advice. (archive-mode): Use setq-local. Use `add-function` to hook into `revert-buffer-function`. (archive-summarize): Don't use `set` on a hook.
* | Check for IPv6 servers in dns.elRobert Pluim2020-04-031-9/+13
| | | | | | | | | | | | | | | | | | * lisp/net/dns.el (dns-set-servers): Set dns-servers to nil when we don't find any DNS servers with nslookup. Add support for IPv6 servers. (Bug#40248). (dns-make-network-process): Check for datagram process support before creating a datagram process. (dns-query): Return nil if dns-servers is nil.
* | Make make-{network,serial}-process handle :coding nil consistentlyRobert Pluim2020-04-033-10/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The handling of :coding nil was different between make-{network,serial}-process and make-{pipe}process. Now they all handle :coding nil as if :coding had not been specified. * process.c (Fmake_serial_process) (set_network_socket_coding_system): Use plist-get to check if :coding has been specified instead of plist-member, to ensure that ":coding nil" does not override coding-system-for-{read,write}. * network-stream-tests.el (check-network-process-coding-system-bind) (check-network-process-coding-system-no-override) (check-network-process-coding-system-override): New tests. * etc/NEWS: Describe change in make-network-process and make-serial-process :coding behavior.
* | Update texinfo.el following changes in 'tex-start-options-string'Ernest N. Mamikonyan2020-04-032-3/+16
| | | | | | | | | | | | | | | | | | | | | | * lisp/textmodes/texinfo.el (texinfo-texi2dvi-options): New defcustom. (texinfo-tex-buffer): Take 'tex-start-options' from 'texinfo-texi2dvi-options'. (Bug#40001) * etc/NEWS: Mention the new option. Copyright-paperwork-exempt: yes
* | load-library, locate-library: Use read-library-nameŠtěpán Němec2020-04-033-12/+3
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/find-func.el (read-library-name): Add autoload cookie. * lisp/files.el (load-library) * lisp/subr.el (locate-library): Use 'read-library-name' when called interactively. (bug#6652 bug#6679)
* | Fix movement commands in gomokuAsher Gordon2020-04-032-10/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/play/gomoku.el (gomoku-mode-map): Bind cursor motion keys to gomoku-specific commands. (gomoku-point-x, gomoku-move-right, gomoku-move-left): New commands. (gomoku--intangible, gomoku-move-ne, gomoku-move-se) (gomoku-move-nw, gomoku-move-sw): Call gomoku-move-left and gomoku-move-right instead of forward-char and backward-char. (Bug#40169) * etc/NEWS: Call out the changes.
* | Improve last changeEli Zaretskii2020-04-032-3/+4
| | | | | | | | | | * lisp/calendar/time-date.el (date-days-in-month): Improve the error message text and make sure MONTH is a number. (Bug#40217)
* | Error out if 'date-days-in-month' is given an invalid monthAlex Branham2020-04-032-1/+4
| | | | | | | | | | | | | | * lisp/calendar/time-date.el (date-days-in-month): Add test for month validity; signal an error if it isn't. (Bug#40217) * test/lisp/calendar/time-date-tests.el (test-days-in-month): Add a test for the new error.
* | Copy INSIDE_EMACS env variable to subprocesses in Eshell (Bug#25496)Federico Tedin2020-04-024-5/+36
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/eshell/em-dirs.el (eshell-dirs-initialize): Add INSIDE_EMACS variable to buffer-local value of eshell-variable-aliases-alist. (eshell-inside-emacs): Add new constant used for INSIDE_EMACS. * lisp/eshell/esh-var.el (eshell-variable-aliases-list): Update doc string; remove mention of eshell-user-aliases-list and explain that variables can optionally be copied to subprocesses' environments. * test/lisp/eshell/eshell-tests.el (eshell-test/inside-emacs-var): Add test for the INSIDE_EMACS variable. * etc/NEWS: Announce changes.
* | * lisp/vc/vc-dir.el: Commands to mark un/registered files (bug#34949)Juri Linkov2020-04-032-0/+34
| | | | | | | | | | | | | | | | | | * lisp/vc/vc-dir.el (vc-dir-mark-state-files): New function. (vc-dir-mark-registered-files) (vc-dir-mark-unregistered-files): New commands. (vc-dir-mode-map): Bind vc-dir-mark-registered-files to '* r'. (vc-dir-menu-map): Add menu entries for vc-dir-mark-registered-files and vc-dir-mark-unregistered-files.
* | * lisp/window.el (display-buffer): Extend doc with body-function (bug#39822)Juri Linkov2020-04-032-4/+11
| |
* | ; * test/lisp/net/tramp-tests.el (tramp-test30-make-process): Instrument.Michael Albinus2020-04-021-1/+2
| |
* | Allow negative line width for :box face attributeAlexandre Adolphe2020-04-019-213/+227
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Separate values for box line width and height and allow both to be negative which makes the visual width and height of the boxed string unchanged (Bug#13011). * doc/lispref/display.texi (Face Attributes): Modify :box attribute description to reflect the new possibilities. * lisp/cus-face.el (custom-face-attributes): Set box attribute to get two integer to set vertical and horizontal width and modify pre-filter to accept dotted list of two int as valid box attribute. * src/dispextern.h (face): Use two int for box horizontal and vertical line width. * src/nsfont.m (nsfont_draw): Use new face attributes. * src/nsterm.m (ns_draw_box, ns_draw_relief): Support separated horizontal and vertical box line width. (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background) (ns_dumpglyphs_image, ns_draw_glyph_string_foreground) (ns_draw_composite_glyph_string_foreground): Use new face attributes. * src/w32term.c (w32_draw_box_rect, w32_draw_relief_rect): Support separated horizontal and vertical box line width. (x_draw_glyph_string_background, x_draw_glyph_string_foreground) (x_draw_composite_glyph_string_foreground) (x_draw_glyphless_glyph_string_foreground, x_draw_glyph_string_box) (x_draw_image_foreground, x_draw_image_relief) (w32_draw_image_foreground_1, x_draw_image_glyph_string): Use new face attributes. * src/xfaces.c (Sinternal_set_lisp_face_attribute, realize_x_face): Accept box attribute as a list of two ints. * src/xdisp.c (estimate_mode_line_height, produce_image_glyph) (produce_xwidget_glyph, x_produce_glyphs): Use new face attributes. * src/xterm.c (x_draw_box_rect, x_draw_relief_rect): Support separated horizontal and vertical box line width. (x_draw_glyph_string_background, x_draw_glyph_string_foreground) (x_draw_composite_glyph_string_foreground) (x_draw_glyphless_glyph_string_foreground, x_draw_glyph_string_box) (x_draw_image_foreground, x_draw_image_relief, x_draw_image_foreground_1) (x_draw_image_glyph_string): Use new face attributes.
* | Fix compilation with CHECK_STRUCTSAndreas Schwab2020-04-011-1/+1
| | | | | | | | * src/pdumper.c (dump_buffer): Update hash of struct buffer.
* | ; Auto-commit of loaddefs files.Glenn Morris2020-04-011-32/+60
| |
* | Avoid error messages loading trampver.elMichael Albinus2020-04-011-0/+2
| | | | | | | | | | * lisp/net/trampver.el (tramp-repository-branch) (tramp-repository-version): Bind `debug-on-error' to nil.
* | javac support in compilation-parse-errors rulesFilipp Gunbin2020-04-013-5/+42
| | | | | | | | | | | | | | | | | | | | | | * etc/compilation.txt: Add doc and example. * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist): Add javac rule. (compilation-parse-errors): Fix file/line/col test, so that lambda/closure (which are valid values) don't match. * test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data, compile-test-error-regexps): Add test.
* | Remove `all_buffers` and the associated `next` field of buffersStefan Monnier2020-03-314-126/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/alloc.c (enum mem_type): Remove MEM_TYPE_BUFFER. (allocate_buffer): Allocate like any other pseudovector. Don't register on `all_buffers` any more. (live_buffer_holding, live_buffer_p): Delete functions. (mark_maybe_object, valid_lisp_object_p): Don't pay attention to MEM_TYPE_BUFFER any more. (garbage_collect): Only compact the live buffers. (mark_buffer): Mark the undo_list of dead buffers here. (mark_object): Buffers are normal pseudovectors now. (sweep_buffers): Don't do the actual sweep here, just cleanup the markers and only for live buffers. * src/buffer.c (all_buffers): Remove variable. (Fkill_buffer): Don't check indirect dead buffers. Set the undo_list before we remove ourselves from the list of live buffers. (Fbuffer_swap_text, Fset_buffer_multibyte): Don't check indirect dead buffers. (init_buffer_once): Don't set `all_buffers`. (init_buffer): Don't map new memory for dead buffers. * src/buffer.h (struct buffer): Remove `next` field. (FOR_EACH_BUFFER): Remove macro. * src/pdumper.c (dump_buffer): Don't dump the `next` field.
* | Don't lose point during fileloop replace (Bug#38867)Noam Postavsky2020-03-311-12/+16
| | | | | | | | | | | | | | | | Suggested by Eric Michael Timmons <etimmons@mit.edu>. * lisp/fileloop.el (fileloop-initialize-replace): Save the match-beginning position in a variable instead of the buffer's point. The point may be changed by the time perform-replace is called, e.g., due to switch-to-buffer-preserve-window-point.
* | * lisp/dired.el (dired-readin): Improve commentStefan Monnier2020-03-311-4/+4
| |
* | Mark recently failing Tramp tests on hydraGlenn Morris2020-03-301-0/+3
| | | | | | | | | | | | * test/lisp/net/tramp-tests.el (tramp-test29-start-file-process) (tramp-test30-make-process, tramp-test33-environment-variables): Expect failure on hydra.nixos.org, since March 29 Tramp cache changes.
* | * lisp/minibuffer.el (minibuffer-completion-help): Use mainbuf (bug#39822)Juri Linkov2020-03-311-58/+60
| | | | | | | | | | | | * lisp/minibuffer.el (minibuffer-completion-help): Run display-completion-list in the original buffer mainbuf to allow completion-setup-function set completion-reference-buffer to it.
* | * lisp/dired.el (dired-readin): Don't bind inhibit-modification-hooksStefan Monnier2020-03-301-20/+24
| | | | | | | | Fixes bug#40332
* | Merge from origin/emacs-27Glenn Morris2020-03-308-15/+44
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | c6e0981b96 (origin/emacs-27) * lisp/image/image-converter.el: Fix cus... 461bd9cc20 Fix url-cookie.el for lexical binding f3ccfb1926 ; * src/decompress.c: Fix comment style. 1af03e7e92 ; * src/xfaces.c (syms_of_xfaces): Fix wording and typo. 93945fcd19 ; * test/lisp/calc/calc-tests.el: Fix mistake in last commit ee47e00f4e Don't suggest setting face-remapping-alist to a literal (B... c2b8ce4439 Calc: don't treat nil as an integer (bug#40155) e1f0e08922 * lisp/files.el (directory-files-recursively): Doc fix. (... 02b3820315 Document how to disable Tramp file archives
| * * lisp/image/image-converter.el: Fix customization of image-converter.Juri Linkov2020-03-301-0/+4
| | | | | | | | | | * lisp/image/image-converter.el (image-convert-p): Update image-converter-regexp when image-converter was customized (bug#39994).
| * Fix url-cookie.el for lexical bindingAndreas Schwab2020-03-291-1/+1
| | | | | | | | | | * lisp/url/url-cookie.el (url-cookie-handle-set-cookie): Use setq instead of set to modify lexical binding.
| * ; * src/decompress.c: Fix comment style.Eli Zaretskii2020-03-291-3/+3
| |
| * ; * src/xfaces.c (syms_of_xfaces): Fix wording and typo.Eli Zaretskii2020-03-291-3/+3
| |
| * ; * test/lisp/calc/calc-tests.el: Fix mistake in last commitMattias Engdegård2020-03-291-1/+1
| |
| * Don't suggest setting face-remapping-alist to a literal (Bug#39812)Noam Postavsky2020-03-281-2/+5
| | | | | | | | | | * src/xfaces.c (syms_of_xfaces) <face-remapping-alist>: Use copy-tree in the costring example code, and note why.
| * Calc: don't treat nil as an integer (bug#40155)Mattias Engdegård2020-03-272-2/+14
| | | | | | | | | | | | | | | | | | | | | | Make Math-num-integerp return false for nil, following Math-integerp which was changed in the bignum reform. This fixes a crash in calc-graph-fast. Reported by Narendra Joshi. * lisp/calc/calc-macs.el (Math-num-integerp): Not true for nil. * test/lisp/calc/calc-tests.el (calc-Math-integerp): New tests.
| * * lisp/files.el (directory-files-recursively): Doc fix. (Bug#40202)Eli Zaretskii2020-03-251-7/+9
| |
| * Document how to disable Tramp file archivesMichael Albinus2020-03-251-0/+8
| | | | | | | | | | * doc/misc/tramp.texi (Archive file names): Explain how to disable file archives.