summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add semicolon to prop-line with lisp-data mode (bug#40573).scratch/add-lisp-data-modeJuri Linkov2020-04-202-2/+2
| | | | | | * lisp/bookmark.el (bookmark-insert-file-format-version-stamp): * lisp/saveplace.el (save-place-alist-to-file): Add semicolon to separate 'coding:' and 'mode:'.
* Don't mess with lisp-mode-variablesJoão Távora2020-04-197-32/+31
| | | | | | | | | | | | | | | | | | | | | * doc/lispref/modes.texi (Example Major Modes): Update example to match reality. * lisp/chistory.el (command-history-mode): Revert previous change. * lisp/help-fns.el (describe-variable): Revert previous change. * lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): Rvert previous change. (lisp-data-mode): Use full form of lisp-mode-variables for clarity. (lisp-mode): Simplify. * lisp/emacs-lisp/pp.el (pp-to-string): Revert previous change. * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Case sensitive font-lock keywords. * lisp/progmodes/inf-lisp.el (inferior-lisp-mode): Revert previous change.
* * lisp/files.el (auto-mode-alist): Add more reasonably lisp-data filesJoão Távora2020-04-181-3/+7
|
* lisp-mode-variables uses lisp-mode-syntax-tableJoão Távora2020-04-182-2/+1
| | | | | | | | | All core modes that weren't interested overwrite it anyway for emacs-lisp. And third party usage of this functions (in SLIME/SLY) wants the lisp-mode-syntax-table anyway. * lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): Use lisp-mode-syntax-table by default.
* * lisp/files.el (auto-mode-alist): Handle .dir-locals-2.el.João Távora2020-04-181-1/+1
|
* Make lisp-mode-variables function less backward-incompatibleJoão Távora2020-04-182-7/+8
| | | | | | | | | | | A small number of third-party packages rely on its arguments. They shouldn't be seriously affected. * doc/lispref/modes.texi (Example Major Modes): Make example closer to reality. * lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): Ignore any number of arguments.
* Use lisp-data-mode in 5 more placesJoão Távora2020-04-185-5/+8
| | | | | | | | | | | | | | | | | | Thanks to Juri Linkov and Basil L. Contovounesios for the list and the indication of the function that needed to be changed. * lisp/bookmark.el (bookmark-insert-file-format-version-stamp): Use lisp-data-mode. * lisp/saveplace.el (save-place-alist-to-file): Use lisp-data-mode. * lisp/net/eww.el (eww-write-bookmarks): Use lisp-data-mode. * lisp/net/nsm.el (nsm-write-settings): Use lisp-data-mode. * lisp/net/tramp-cache.el (tramp-dump-connection-properties): Use lisp-data-mode.
* Add a lisp-data-mode for editing non-code lisp dataJoão Távora2020-04-187-44/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To provide a cleaner implementation remove arguments from the auxiliary routine lisp-mode-variables. The modes/functions that need to do some something special adjustment do them in their own bodies. * lisp/chistory.el (command-history-mode): Don't pass nil to lisp-mode-variables. * lisp/files.el (auto-mode-alist): Add entry for ".dir-locals". * lisp/help-fns.el (describe-variable): Don't pass useless args to lisp-mode-variables. * lisp/emacs-lisp/pp.el (pp-to-string): Don't pass useless args to lisp-mode-variables. * lisp/emacs-lisp/lisp-mode.el (lisp-mode-variables): Simplify. Always set same variables. (lisp-data-mode): New major mode. (lisp-mode): Inherit from lisp-data-mode. Set special lisp-mode stuff here. * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Inherit from lisp-data-mode. (emacs-lisp-mode): Simplify. * lisp/progmodes/inf-lisp.el (inferior-lisp-mode): Set the needed syntax table here, not through other function.
* Port recent character.h changes to --with-wide-intPaul Eggert2020-04-173-99/+82
| | | | | | | | | | | | | | * src/fns.c (mapcar1): * src/keymap.c (Fkey_description): * src/syntax.c (scan_lists): Prefer ptrdiff_t to EMACS_INT where either will do; this fixes newly-introduced type errors on --with-wide-int platforms where ptrdiff_t is narrower than EMACS_INT. * src/keymap.c (Fkey_description): Rework for clarity; remove goto. * src/syntax.c (scan_words, Fforward_comment, scan_lists)): Fix unlikely integer overflow problems that can occur on --with-wide-int platforms, and that were caught by the recent character.h changes.
* Pacify gcc -Og x86-64Paul Eggert2020-04-171-1/+1
| | | | | * src/editfns.c (Ftranslate_region_internal): Add UNINIT to pacify gcc -Og x86-64 (GCC 9.3.1 20200317 (Red Hat 9.3.1-1)).
* Prefer more inline functions in character.hPaul Eggert2020-04-1735-722/+579
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/buffer.h (fetch_char_advance, fetch_char_advance_no_check) (buf_next_char_len, next_char_len, buf_prev_char_len) (prev_char_len, inc_both, dec_both): New inline functions, replacing the old character.h macros FETCH_CHAR_ADVANCE, FETCH_CHAR_ADVANCE_NO_CHECK, BUF_INC_POS, INC_POS, BUF_DEC_POS, DEC_POS, INC_BOTH, DEC_BOTH respectively. All callers changed. These new functions all assume buffer primitives and so need to be here rather than in character.h. * src/casefiddle.c (make_char_unibyte): New static function, replacing the old MAKE_CHAR_UNIBYTE macro. All callers changed. (do_casify_unibyte_string): Use SINGLE_BYTE_CHAR_P instead of open-coding it. * src/ccl.c (GET_TRANSLATION_TABLE): New static function, replacing the old macro of the same name. * src/character.c (string_char): Omit 2nd arg. 3rd arg can no longer be NULL. All callers changed. * src/character.h (SINGLE_BYTE_CHAR_P): Move up. (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE, PREV_CHAR_BOUNDARY) (STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE) (FETCH_STRING_CHAR_ADVANCE) (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE) (FETCH_STRING_CHAR_ADVANCE_NO_CHECK, FETCH_CHAR_ADVANCE) (FETCH_CHAR_ADVANCE_NO_CHECK, INC_POS, DEC_POS, INC_BOTH) (DEC_BOTH, BUF_INC_POS, BUF_DEC_POS): Remove. (make_char_multibyte): New static function, replacing the old macro MAKE_CHAR_MULTIBYTE. All callers changed. (CHAR_STRING_ADVANCE): Remove; all callers changed to use CHAR_STRING. (NEXT_CHAR_BOUNDARY): Remove; it was unused. (raw_prev_char_len): New inline function, replacing the old PREV_CHAR_BOUNDARY macro. All callers changed. (string_char_and_length): New inline function, replacing the old STRING_CHAR_AND_LENGTH macro. All callers changed. (STRING_CHAR): Rewrite in terms of string_char_and_length. (string_char_advance): New inline function, replacing the old STRING_CHAR_ADVANCE macro. All callers changed. (fetch_string_char_advance): New inline function, replacing the old FETCH_STRING_CHAR_ADVANCE macro. All callers changed. (fetch_string_char_as_multibyte_advance): New inline function, replacing the old FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE macro. All callers changed. (fetch_string_char_advance_no_check): New inline function, replacing the old FETCH_STRING_CHAR_ADVANCE_NO_CHECK macro. All callers changed. * src/regex-emacs.c (HEAD_ADDR_VSTRING): Remove; no longer used. * src/syntax.c (scan_lists): Use dec_bytepos instead of open-coding it. * src/xdisp.c (string_char_and_length): Rename from string_char_and_length to avoid name conflict with new function in character.h. All callers changed.
* Prefer inline functions in character.hPaul Eggert2020-04-175-161/+224
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | In character.h, replace macros with inline functions or enums when this is easy. This improves maintainability and on my platform (Fedora 31 x86-64, gcc -O2) improved CPU performance very slightly (0.3%) on ‘make compile-always’. * src/buffer.h (SANE_TAB_WIDTH, CHARACTER_WIDTH): Move here from character.h, and make them inline functions. Tune CHARACTER_WIDTH so that ASCII_CHAR_WIDTH is no longer needed. (sanitize_tab_width, sanitize_char_width): Move here from character.h. * src/character.h (MAX_CHAR, MAX_UNICODE_CHAR, MAX_1_BYTE_CHAR) (MAX_2_BYTE_CHAR, MAX_3_BYTE_CHAR, MAX_4_BYTE_CHAR) (MAX_5_BYTE_CHAR, MIN_MULTIBYTE_LEADING_CODE) (MAX_MULTIBYTE_LEADING_CODE, MAX_MULTIBYTE_LENGTH): Now enum constants instead of macros. * src/character.h (CHAR_BYTES): Redo to avoid conditional branches. (CHAR_BYTE8_P, BYTE8_TO_CHAR, UNIBYTE_TO_CHAR, CHAR_TO_BYTE8) (CHAR_TO_BYTE_SAFE, CHAR_BYTE8_HEAD_P, CHARACTERP) (CHECK_CHARACTER, CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR) (CHAR_PRINTABLE_P, CHAR_BYTES, CHAR_LEADING_CODE, BYTE8_STRING) (LEADING_CODE_P, TRAILING_CODE_P, CHAR_HEAD_P) (BYTES_BY_CHAR_HEAD): Now inline functions instead of macros. (ASCII_CHAR_WIDTH): Remove; no longer used. * src/conf_post.h (ATTRIBUTE_PURE): New macro. * src/lisp.h (char_table_ref): Use it, for better inlining. * src/fns.c (base64_decode_1): Add now-necessary casts.
* Fix effect-free warning in ob-screen.el while loopBasil L. Contovounesios2020-04-171-1/+1
| | | | | | | | | | | The warning was introduced and detected by an optimizer addition proposed in the following thread: https://lists.gnu.org/archive/html/emacs-devel/2019-12/msg00711.html * lisp/org/ob-screen.el (org-babel-screen-test): Avoid 'value returned from (format "...") is unused' warning by doing something more useful than busy string manipulation while waiting for an asynchronous subprocess to make the temporary file readable.
* Bind 'n' and 'p' to move between symbols in aproposJustin Timmons2020-04-172-0/+25
| | | | | | | * lisp/apropos.el (apropos-next-symbol) (apropos-previous-symbol): New commands. (apropos-mode-map): Bind above commands to 'n' and 'p'. (Bug#20694) * etc/NEWS: Announce the new commands.
* Fix comparing command names in strokes.el (bug#40600)Masahiro Nakamura2020-04-161-3/+1
| | | | | * lisp/strokes.el (strokes-alphabetic-lessp): Simply call string-lessp because the cdr of the argument may be a string.
* Use native image API for NSAlan Third2020-04-164-73/+91
| | | | | | | | | | | | | | | | | * configure.ac (NATIVE_IMAGE_API): Move above NS definitions. (HAVE_NATIVE_IMAGE_API): Set for NS. (HAVE_PNG, HAVE_JPEG, HAVE_GIF, HAVE_TIFF): Enable on NS builds. * src/image.c (HAVE_NS): Fix a number of #if's so they no longer rely on HAVE_NS. (PIX_MASK_DRAW): Add for HAVE_NS so libpng support will compile. (image_can_use_native_api): (native_image_load): Add NS support. (png_load): (jpeg_load): (tiff_load): (gif_load): Remove NS specific definitions. * src/nsimage.m (ns_can_use_native_image_api): New function. * src/nsterm.h: (ns_can_use_native_image_api): New function.
* Allow dynamic choice of drawing path on NS (bug#39883)Alan Third2020-04-162-72/+167
| | | | | | | | | | | | | | | | | | * src/nsterm.h (NS_DRAW_TO_BUFFER): Let this be enabled on versions older than 10.14. * src/nsterm.m (ns_update_begin): (ns_update_end): (ns_focus): (ns_unfocus): ([EmacsView viewDidResize:]): ([EmacsView createDrawingBuffer]): ([EmacsView windowDidChangeBackingProperties:]): ([EmacsView copyRect:to:]): ([EmacsView wantsUpdateLayer]): Dynamically switch between drawing to a buffer and drawing to the screen, depending on the version of AppKit in use. ([EmacsView dealloc]): We can't release the context unless NS_DRAW_TO_BUFFER is defined.
* Fix NS frame resizing issues (bug#40200, bug#28872)Alan Third2020-04-163-185/+150
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/nsmenu.m (update_frame_tool_bar): Remove reference to updateFrameSize. * src/nsterm.h: ([EmacsView updateFrameSize]): ([EmacsView setRows:andColumns:]): Remove unused method definitions. (NS_PARENT_WINDOW_LEFT_POS): (NS_PARENT_WINDOW_TOP_POS): Move to nsterm.m. * src/nsterm.m (ns_parent_window_rect): New function. (NS_PARENT_WINDOW_LEFT_POS): (NS_PARENT_WINDOW_TOP_POS): Move to nsterm.m and simplify. (ns_set_offset): Fix strange behaviours when using negative values. (ns_set_window_size): (ns_set_undecorated): ([EmacsView windowDidResize:]): ([EmacsView windowDidExitFullScreen]): (ns_judge_scroll_bars): Remove references to updateFrameSize. ([EmacsView dealloc]): Unset resize notification and release buffer. ([EmacsView updateFrameSize:]): Remove function. ([EmacsView windowWillResize:toSize:]): Move some code to viewDidResize. ([EmacsView viewDidResize]): New function. ([EmacsView initFrameFromEmacs:]): Set up resize notification and move buffer creation until after the prerequisite objects are created. ([EmacsView toggleFullScreen:]): Set frame to the size of the contentview, not the whole window, and remove reference to updateFrameSize. ([EmacsView setRows:andColumns:]): Remove unused method. ([EmacsView windowDidMove:]): Tidy up.
* Improve regexp in org-table-finish-edit-fieldMattias Engdegård2020-04-161-1/+1
| | | | | * lisp/org/org-table.el (org-table-finish-edit-field): Further improvement of regexp, as suggested by Paul Eggert.
* Ignore D-Bus errors in tramp-gvfs.el (Bug#40655)Michael Albinus2020-04-161-1/+3
| | | | | * lisp/net/tramp-gvfs.el (with-tramp-dbus-call-method): Ignore D-Bus errors. (Bug#40655)
* (forward-comment -n): escaped newline is sometimes NOT end of commentAlan Mackenzie2020-04-161-2/+3
| | | | | * src/syntax.c (Fforward_comment) When comment-end-can-be-escaped is non-nil, don't attempt back_comment when point is just after an escaped newline, etc.
* Fix type-checking bug in vertical-motionPaul Eggert2020-04-161-8/+6
| | | | | * src/indent.c (Fvertical_motion): Fix bug where the type of lcols was checked too late.
* * src/indent.c (Fvertical_motion): Fix int/Lisp_Object mix up.Glenn Morris2020-04-161-1/+1
|
* ; * lisp/files.el (directory-files-no-dot-files-regexp): Arg name.Mattias Engdegård2020-04-161-1/+1
|
* Use directory-files-no-dot-files-regexp wherever possibleMattias Engdegård2020-04-168-16/+20
| | | | | | | | | | | | | | | | Suggested by Paul Eggert. * lisp/files.el (directory-files-no-dot-files-regexp): Clarify semantics and purpose. * lisp/dired.el (dired-re-no-dot): Define as obsolete alias of directory-files-no-dot-files-regexp. (dired-delete-file): * lisp/gnus/gnus-util.el (gnus-delete-directory): * lisp/net/ange-ftp.el (ange-ftp-delete-directory): * lisp/obsolete/vc-arch.el (vc-arch-trim-revlib): * lisp/org/ob-core.el (org-babel-remove-temporary-directory): * lisp/vc/vc-rcs.el (vc-rcs-unregister): Use directory-files-no-dot-files-regexp.
* Quote semanticdb-ebrowse-default-file-name in regexpMattias Engdegård2020-04-161-1/+2
| | | | | | | Noticed by Andreas Schwab. * lisp/cedet/semantic/db-ebrowse.el (semanticdb-load-ebrowse-caches): Quote file name in regexp.
* Fix bugs, inefficiencies and bad style in regexpsMattias Engdegård2020-04-168-14/+17
| | | | | | | | | | | | | | | | | | | | | | | | Found by relint. See discussion at https://lists.gnu.org/archive/html/emacs-devel/2020-04/msg00265.html * lisp/org/org-table.el (org-table-finish-edit-field): * lisp/arc-mode.el (archive-rar-summarize): Avoid wrapped subsumption in repeated sequences. * lisp/erc/erc-dcc.el (erc-dcc-ctcp-query-send-regexp): Replace inefficient repeated empty-matching expression with a plain greedy form. (erc-dcc-handle-ctcp-send): Adjust group numbers. * lisp/net/puny.el (puny-encode-domain): Fix fast-path shortcut pattern so that it actually works as intended. * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): * lisp/vc/diff-mode.el (diff-imenu-generic-expression): Remove superfluous backslashes. * lisp/progmodes/scheme.el (scheme-imenu-generic-expression): Correct confused definition-matching pattern which would match more than intended. * lisp/textmodes/sgml-mode.el (sgml-tag-name-re): Avoid inefficient matching by using the fact that the first character cannot match the last char of sgml-name-re.
* Regularise some file-matching regexpsMattias Engdegård2020-04-161-10/+10
| | | | | * admin/authors.el (authors-obsolete-files-regexps) (authors-renamed-files-regexps): Replace ^ and $ with \` and \'.
* Avoid compiler warning in indent.cEli Zaretskii2020-04-161-0/+2
| | | | | * src/indent.c (Fvertical_motion): Avoid compilation warning. Reported by Juanma Barranquero <lekktu@gmail.com>.
* ; * src/w32image.c (w32_select_active_frame): Comment about GUID values.Eli Zaretskii2020-04-161-0/+5
|
* File-handling cleanup in w32image.cEli Zaretskii2020-04-164-14/+9
| | | | | | | | | * src/w32image.c (w32_load_image): Encode the image file name and convert it via 'map_w32_filename'. No need to do anything special when 'w32_unicode_filenames' is zero, since file names are in UTF-8 internally, and this code will never run on Windows 9X. * src/w32.h (map_w32_filename): Add prototype; removed prototypes from all *.c files.
* Fix retrieval of frame delay when using GDI+Eli Zaretskii2020-04-151-3/+41
| | | | | | | * src/w32image.c (enum PropertyItem_type): New enumeration. (decode_delay): New function. (w32_frame_delay): Call 'decode_delay' to retrieve the frame delay from image data.
* Merge from origin/emacs-27Glenn Morris2020-04-1548-173/+1327
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a5f7c26907 (origin/emacs-27) * admin/authors.el: Add an author alias. d87a4d1f4e Limit RLIMIT_NOFILE to FD_SETSIZE on macOS e5ca8e5e73 Fix Elisp manual entry on 'set-window-configuration' 485f24223f ; Update ChangeLog.3 8f200254fb ; Update etc/AUTHORS c7adc851ad * admin/authors.el: Add missing author aliases. 4acdd7fe58 Fix edge case errors in filename-matching regexps 5f36e21fe5 Clarify the doc string of 'yank' 13301d4266 New function erc-track-switch-buffer-other-window 38f7538d8f New function erc-switch-to-buffer-other-window # Conflicts: # etc/NEWS
| * * admin/authors.el: Add an author alias.Nicolas Petton2020-04-151-0/+1
| |
| * Limit RLIMIT_NOFILE to FD_SETSIZE on macOSYAMAMOTO Mitsuharu2020-04-151-0/+15
| | | | | | | | | | | | | | * src/nsterm.m ([EmacsApp applicationDidFinishLaunching:]): Call CoreFoundation functions that increase RLIMIT_NOFILE behind our back during startup, and then set RLIMIT_NOFILE back to FD_SETSIZE to avoid crashes in setup_process_coding_system (Bug#39164).
| * Fix Elisp manual entry on 'set-window-configuration'Martin Rudalics2020-04-151-19/+20
| | | | | | | | | | * doc/lispref/windows.texi (Window Configurations): Fix description of 'set-window-configuration'.
| * ; Update ChangeLog.3Nicolas Petton2020-04-141-1/+1089
| |
| * ; Update etc/AUTHORSNicolas Petton2020-04-141-51/+57
| |
| * * admin/authors.el: Add missing author aliases.Nicolas Petton2020-04-141-0/+4
| |
| * Fix edge case errors in filename-matching regexpsMattias Engdegård2020-04-1440-70/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These changes fix actual or latent bugs in regexps that match file names, such as PATTERN arguments to 'directory-files'. See https://lists.gnu.org/archive/html/emacs-devel/2020-04/msg00265.html * admin/authors.el (authors-obsolete-files-regexps) (authors-renamed-files-regexps): * lisp/auth-source-pass.el (auth-source-pass-entries): * lisp/calendar/todo-mode.el (todo-show, todo-find-filtered-items-file) (todo-filter-items, todo-reset-nondiary-marker, todo-reset-done-string) (todo-reset-comment-string, todo-reset-highlight-item): * lisp/cedet/semantic/db-ebrowse.el (semanticdb-load-ebrowse-caches): * lisp/cedet/semantic/texi.el (semantic-texi-associated-files): * lisp/cedet/srecode/map.el (srecode-map-update-map): * lisp/dired.el (dired-re-no-dot): * lisp/emacs-lisp/autoload.el (update-directory-autoloads): * lisp/emacs-lisp/shadow.el (load-path-shadows-find): * lisp/files.el (auto-mode-alist, directory-files-no-dot-files-regexp): * lisp/finder.el (finder-compile-keywords): * lisp/generic-x.el (inetd-conf-generic-mode, named-boot-generic-mode) (resolve-conf-generic-mode, etc-modules-conf-generic-mode): * lisp/gnus/gnus-agent.el (gnus-agent-read-agentview) (gnus-agent-regenerate-group, gnus-agent-update-files-total-fetched-for): * lisp/gnus/gnus-cache.el (gnus-cache-articles-in-group): * lisp/gnus/gnus-score.el (gnus-score-search-global-directories): * lisp/gnus/gnus-util.el (gnus-delete-directory): * lisp/gnus/gnus-uu.el (gnus-uu-dir-files): * lisp/gnus/nndraft.el (nndraft-request-group): * lisp/gnus/nnmh.el (nnmh-request-group, nnmh-request-create-group): (nnmh-request-delete-group, nnmh-active-number, nnmh-update-gnus-unreads): * lisp/gnus/nnspool.el (nnspool-request-group): * lisp/gnus/spam-stat.el (spam-stat-process-directory) (spam-stat-test-directory): * lisp/help-fns.el (help-fns--first-release): * lisp/help.el (view-emacs-news): * lisp/international/quail.el (quail-update-leim-list-file): * lisp/international/titdic-cnv.el (batch-titdic-convert): * lisp/mail/mspools.el (mspools-set-vm-spool-files) (mspools-get-spool-files): * lisp/mail/rmail.el (rmail-secondary-file-regexp) (rmail-speedbar-match-folder-regexp): * lisp/net/ange-ftp.el (ange-ftp-delete-directory): * lisp/net/tramp.el (tramp-use-absolute-autoload-file-names): * lisp/obsolete/gulp.el (gulp-send-requests): * lisp/obsolete/vc-arch.el (vc-arch-trim-revlib): * lisp/org/ob-core.el (org-babel-remove-temporary-directory): * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp, ebnf-style-database): * lisp/progmodes/executable.el (executable-command-find-posix-p): * lisp/startup.el (command-line): * lisp/textmodes/refer.el (refer-get-bib-files): * lisp/url/url-about.el (url-probe-protocols): * lisp/vc/vc-rcs.el (vc-rcs-register, vc-rcs-unregister): * test/lisp/net/tramp-archive-tests.el (tramp-archive-test19-directory-files-and-attributes): * test/lisp/net/tramp-tests.el (tramp-test19-directory-files-and-attributes): Replace ^ and $ with \` and \', respectively. Use (rx (or (not ".") "...")), translated into "[^.]\\|\\.\\.\\.", to match anything but "." and "..", instead of several incorrect regexps.
| * Clarify the doc string of 'yank'Eli Zaretskii2020-04-141-4/+5
| | | | | | | | | | | | * lisp/simple.el (yank): Mention 'current-kill' in the doc string, so that people could find all the gory details of what is "the most recent kill" for this purpose. (Bug#40375)
| * New function erc-track-switch-buffer-other-windowAmin Bandali2020-04-142-9/+28
| | | | | | | | | | | | | | | | | | * lisp/erc/erc-track.el (erc-track-switch-buffer): Factor out the implementation from here ... (erc-track--switch-buffer): ... to here. (erc-track-switch-buffer-other-window): New function, like `erc-track-switch-buffer', but uses `switch-to-buffer-other-window' instead, to open the buffer in another window.
| * New function erc-switch-to-buffer-other-windowAmin Bandali2020-04-132-19/+33
| | | | | | | | | | | | | | | | | | * lisp/erc/erc.el (erc-switch-to-buffer): Factor out the buffer choice implementation from here ... (erc--switch-to-buffer): ... to here. (erc-switch-to-buffer-other-window): New function, like `erc-switch-to-buffer', but uses `switch-to-buffer-other-window' instead, to open the buffer in another window.
* | Fix small glitches in documenting the native image API featureEli Zaretskii2020-04-152-3/+2
| | | | | | | | | | | | | | * etc/NEWS: Fix wording of the entry for native image API support. Reported by Juanma Barranquero <lekktu@gmail.com>. * configure.ac (native-image-api): Fix the "--help" description.
* | Avoid infloop in redisplay when wrap-prefix is too wideEli Zaretskii2020-04-151-1/+15
| | | | | | | | | | | | * src/xdisp.c (move_it_to): Avoid infloop due to wrap-prefix that is wide enough to leave no space to display even the first character of the continuation line. (Bug#40632)
* | * lisp/htmlfontify.el: Use `font-lock-ensure` unconditionallyStefan Monnier2020-04-151-84/+25
| | | | | | | | | | | | | | | | | | Remove redundant `:group`s. (hfy-force-fontification): Make it an obsolete alias for `font-lock-ensure`. Update all callers. (hfy-init-kludge-hooks, hfy-init-kludge-hook): Remove vars, not used any more. (hfy-kludge-cperl-mode): Declare it obsolete.
* | Avoid compiler warning in image.cEli Zaretskii2020-04-141-6/+3
| | | | | | | | | | | | | | | | * src/image.c (image_can_use_native_api): Avoid compiler warnings by making this function conditioned on HAVE_NATIVE_IMAGE_API. (initialize_image_type): Call image_can_use_native_api only if HAVE_NATIVE_IMAGE_API is non-zero. Reported by Basil L. Contovounesios <contovob@tcd.ie>.
* | ; * src/image.c: Cleanup of #ifdef's related to HAVE_NATIVE_IMAGE_API.Eli Zaretskii2020-04-141-4/+2
| |
* | Make use of MS-Windows native image API be selectable at run timeEli Zaretskii2020-04-148-152/+258
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.ac: Minor cleanup in how w32image.o is added to the build when native image APIs are requested. * src/w32gui.h (w32_load_image, w32_can_use_native_image_api) (w32_gdiplus_shutdown): Move prototypes from w32term.h here, since w32.c doesn't include w32term.h. * src/image.c (struct image_type): No need to pass TYPE to the 'valid_p' method. All callers changed. (initialize_image_type) [HAVE_NATIVE_IMAGE_API]: Call 'image_can_use_native_api' before trying image-specific methods. (image_can_use_native_api): New function. (image_types): Remove the native_image_type parts. (syms_of_image): New symbol 'native-image'. (parse_image_spec): Accept native-image "type" for any image type. * src/w32term.c (syms_of_w32term): New variable 'w32-use-native-image-API'. * src/w32image.c: (w32_can_use_native_image_api): New function. (gdiplus_init): Rename from w32_gdiplus_startup. Simplify code. Move the call to GdiplusStartup to a separate function. Use ordinal number for SHCreateMemStream if cannot load it by name. (w32_load_image): Ignore Win32Error status from w32_select_active_frame. Move DEFSYMs from here... * src/image.c (syms_of_image) [HAVE_NATIVE_IMAGE_API]: ...to here. * etc/NEWS: Update the entry about native image API use.
* | Initial version of native image API support for MS-WindowsJuan José García-Ripoll2020-04-148-35/+466
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/w32image.c: New file. * src/w32term.h: Add prototypes of 'w32_load_image', 'w32_gdiplus_startup', 'w32_gdiplus_shutdown', and 'w32_query_frame_background_color'. * src/w32term.c (w32_query_frame_background_color): No longer static. * src/w32.c (term_ntproc) [HAVE_GDIPLUS]: Call 'w32_gdiplus_shutdown'. * src/image.c (struct image_type) <valid_p>: Accept an additional argument, the image type. All implementations changed. (init_native_image_functions, native_image_p, native_image_load) [HAVE_NATIVE_IMAGE_API]: New methods for "native image type". (initialize_image_type) [HAVE_NATIVE_IMAGE_API]: Call 'init_native_image_functions'. (image_types) [HAVE_NATIVE_IMAGE_API]: Add settings for native image API. (lookup_image_type) [HAVE_NATIVE_IMAGE_API]: Initialize native functions if needed. * lisp/term/w32-win.el (dynamic-library-alist): Add gdiplus and shlwapi. * etc/NEWS: Announce the new feature. * configure.ac (native-image-api): New option, OFF by default. (HAVE_NATIVE_IMAGE_API): If native-image-api is selected, add w32image.o to W32_OBJ.