1. 14 Apr, 2019 1 commit
  2. 11 Apr, 2019 6 commits
    • Stephen Leake's avatar
      Merge commit 'de238b39' · 7ba7def5
      Stephen Leake authored
      7ba7def5
    • Stephen Leake's avatar
      Make `next-error' output fewer messages about locus · 77685811
      Stephen Leake authored
      * lisp/simple.el (next-error-verbosity): New user variable.
      (next-error, next-error-internal): Use it to control only outputting
      locus message if locus changed.
      77685811
    • Christopher Thorne's avatar
      Fix rgrep in dired using directory for search file pattern · de238b39
      Christopher Thorne authored
      * lisp/progmodes/grep.el (grep-read-files): Allow major modes to
      define file name to use for default search pattern.
      Add non-directory file at point as default search pattern candidate.
      
      * lisp/dired.el (dired-grep-read-files): Use non-directory file at
      point for grep file name pattern.  (Bug#34621)
      
      Copyright-paperwork-exempt: yes
      de238b39
    • Jackson Ray Hamilton's avatar
      Add extra text property to fix issue with js2-mode integration · 382a508e
      Jackson Ray Hamilton authored
      * lisp/progmodes/js.el (js-jsx--put-syntax-table): New function for
      consistently ensuring smooth js2-mode integration.  js2-mode sets
      syntax-table temporarily while parsing buffers—seemingly to recover
      from parsing interruptions—and then it later clears syntax-table
      blindly.  When integrating with js-mode, this means that unterminated
      string quotes are re-broken in JSX (i.e., they become strings again,
      often stringifying large regions of the buffer which should not be
      strings).  We try to treat quotes in JSXText as non-strings by setting
      syntax-table to a non-“string quote” syntax class, but that stops
      working if we lose the property.  On the js2-mode end, by scanning for
      this second js-jsx-syntax-table property, we can recover the
      syntax-table property there.
      (js-jsx--text-range, js-jsx--syntax-propertize-tag): Use
      js-jsx--put-syntax-table for above reason.
      (js-jsx--text-properties): Clear the js-jsx-syntax-table property too.
      382a508e
    • Paul Eggert's avatar
      Bring back dmpstruct.h · 9994bf17
      Paul Eggert authored
      Bring back the dmpstruct.h checking, and use it when
      --enable-checking=structs is specified.  The checking can be helpful
      to some developers, although it gets in the way of others and is
      not needed for ordinary tarball builds.
      * src/dmpstruct.awk: Restore this file, with mode 644 not 755.
      * configure.ac: New option-arg --enable-checking=structs,
      implied by --enable-checking.
      (CHECK_STRUCTS): New macro and var.
      * src/Makefile.in (CHECK_STRUCTS): New macro.
      (dmpstruct_headers, dmpstruct.h, dmpstruct.h):
      Restore these macros and rules.
      (pdumper.o): Restore this dependency if $(CHECK_STRUCTS) is true.
      (mostlyclean): Remove dmpstruct.h.
      * src/pdumper.c [CHECK_STRUCTS]: Include dmpstruct.h,
      and restore checks against hashes.
      9994bf17
    • Katsumi Yamaoka's avatar
      Enable message saving to work when first use of Gnus (bug#35208) · 0627a8d7
      Katsumi Yamaoka authored
      * lisp/gnus/gnus-group.el (gnus-group-goto-group);
      Use gnus-active-hashtb in addition to gnus-newsrc-hashtb to check if
      a group exists since some kinds of groups are registered in only one
      of them (bug#35208).
      0627a8d7
  3. 10 Apr, 2019 12 commits
  4. 09 Apr, 2019 21 commits
    • Gemini Lasswell's avatar
      Address name conflicts in EIEIO documentation (bug#31660) · 8d2f1df5
      Gemini Lasswell authored
      * doc/misc/eieio.texi (Quick Start): Rename the class used in the
      example from 'record' to 'person'.
      (Building Classes): Advise user to check for name conflicts before
      naming a class.  Add a missing apostrophe.
      (Making New Objects): Correct grammar.  Rename the class used in the
      example from 'record' to 'my-class'.
      8d2f1df5
    • Paul Eggert's avatar
      Remove the need for temacs.in · d8260374
      Paul Eggert authored
      Instead of building a file temacs.in used only to compute a
      fingerprint, compute the fingerprint directly from the .o and
      .a files that go into temacs.in.  This speeds up the build by
      avoiding the need to link temacs twice, once with a dummy
      fingerprint.
      * lib-src/make-fingerprint.c (main): No need to generate
      a fingerprint file that includes config.h, now that fingerprint.c
      depends on all the .o files.
      * src/Makefile.in ($(libsrc)/make-fingerprint$(EXEEXT)):
      Use the same rule as $(libsrc)/make-docfile$(EXEEXT).
      * src/fingerprint-dummy.c: Remove.
      * src/Makefile.in (${charsets}, $(libsrc)/make-docfile$(EXEEXT))
      ($(LIBEGNU_ARCHIVE), $(lwlibdir)/liblw.a, $(oldXMenudir)/libXMenu11.a)
      (../config.status, ${ETAGS}, ../lisp/TAGS, $(lwlibdir)/TAGS)
      ($(lispsource)/loaddefs.el):
      Prefer ‘$(MAKE) -C $(dir $@)’ to ‘${MAKE} -C SOMESTRING’ when
      either will do, as the former is more regular and lets us
      coalesce rules better.
      (EMACS_DEPS_PRE, EMACS_DEPS_POST, BUILD_EMACS_PRE)
      (BUILD_EMACS_POST, temacs.in$(EXEEXT)): Remove.
      (FINGERPRINTED): New macro.
      (fingerprint.c): Use it instead of temacs.in$(EXEEXT), to
      avoid the need to build temacs.in at all.
      (temacs$(EXEEXT)): No need to depend on other .o files now;
      fingerprint.o is enough, since it depends on the rest.
      Spell out what used to be in BUILD_EMACS_PRE and BUILD_EMACS_POST.
      (mostlyclean): No need to remove temacs.in.
      d8260374
    • Paul Eggert's avatar
      Remove assumption of uint64_t etc. in portable code · e44ff2de
      Paul Eggert authored
      C11 doesn’t guarantee the existence of types like uint64_t,
      so avoid these types in portable code, as it’s easy to do so.
      There’s no need to avoid the types in w32-specific code,
      since w32 is guaranteed to have them.
      * lib-src/make-fingerprint.c (main):
      * src/fingerprint-dummy.c:
      * src/fingerprint.h:
      * src/pdumper.c (dump_fingerprint, struct dump_header):
      Prefer unsigned char to uint8_t in portable code, as either will do.
      Put an "#include <config.h>" in fingerprint.c files, so
      that the corresponding .o file is rebuilt after ./configure is run.
      * lib-src/make-fingerprint.c (main):
      Simplify loop.
      * src/Makefile.in (fingerprint.c): Update atomically.
      * src/pdumper.c: Omit unnecessary check that off_t is the same
      size as int32_t or int64_t, as the code does not rely on this
      assumption.
      (dump_off): Use int_least32_t, not int32_t.
      (struct dump_reloc): Use unsigned int, not uint32_t.
      (dump_anonymous_allocate_w32, dump_anonymous_allocate_posix)
      (dump_anonymous_allocate, dump_map_file_w32, dump_map_file_posix)
      (dump_map_file:
      Do the sanity checks at compile time, not at run-time, to avoid
      usage of uint64_t etc. on non-w32 platforms.
      e44ff2de
    • Paul Eggert's avatar
      Remove dmpstruct.h · 44a39e3e
      Paul Eggert authored
      The hassles of updating the dmpstruct.h-using code bit me again.
      These updates are more trouble than they’re worth.  See:
      https://lists.gnu.org/r/emacs-devel/2019-03/msg00122.html
      As I’m the main person who’s made changes in this area since
      dmpstruct.h was introduced, I’m the most motivated to clean up
      the situation.
      * make-dist (possibly_non_vc_files): Remove src/dmpstruct.h.
      * src/Makefile.in (dmpstruct_headers, dmpstruct.h): Remove.
      (pdumper.o): Do not depend on dmpstruct.h.
      (mostlyclean): Do not remove dmpstruct.h.
      * src/dmpstruct.awk: Remove.
      * src/pdumper.c: Do not include dmpstruct.h.
      (CHECK_STRUCTS): Remove.  All uses removed.
      44a39e3e
    • Stefan Monnier's avatar
      diff-font-lock-syntax: clarify distinction between t and hunk-also · 85fbdf02
      Stefan Monnier authored
      * lisp/vc/diff-mode.el (diff-font-lock-syntax): Rework docstring.
      (diff-syntax-fontify-hunk): Never use the hunk method when
      diff-font-lock-syntax is just t.
      85fbdf02
    • Alex Branham's avatar
      Use lexical-binding in bug-reference.el · d96b672f
      Alex Branham authored
      * .dir-locals.el: Set bug-reference-url-format in all modes, not just
      changelog mode. Use (eval . (bug-reference-mode)) as described
      in (info "(emacs) Specifying File Variables")
      * lisp/progmodes/bug-reference.el: Use lexical binding.
      (bug-reference-unfontify):
      (bug-reference-fontify): Mention args in docstring.
      
      Bug#35123
      d96b672f
    • Basil L. Contovounesios's avatar
      Fix Gnus duplicate suppression guards (bug#34987) · 6cb49922
      Basil L. Contovounesios authored
      * lisp/gnus/gnus-dup.el (gnus-dup-enter-articles)
      (gnus-dup-suppress-articles): Use gnus-dup-hashtb as an indicator of
      initialization instead of gnus-dup-list, which may happen to be nil.
      (gnus-dup-unsuppress-article): Do nothing if gnus-dup-hashtb is
      uninitialized.
      6cb49922
    • Stefan Monnier's avatar
      * lisp/printing.el: Use lexical-binding · 4f19bbb1
      Stefan Monnier authored
      Require easy-menu instead of adding declarations.
      Remove backward compatiblity.  Remove redundant ':group' args.
      (pr-region-active-p): Use use-region-p.
      (pr-set-keymap-name): Delete function and callers.
      (pr-set-keymap-parents): Delete function; use set-keymap-parent instead.
      (pr-read-string): Delete function; use read-string instead.
      (pr-menu-char-height): Delete function; use frame-char-height instead.
      (pr-menu-char-width): Delete function; use frame-char-width instead.
      (pr-menu-position): Merge the two definitions.
      (pr-get-symbol): Delete function; use easy-menu-intern instead.
      (pr-update-mode-line): Delete function; use force-mode-line-update instead.
      (pr-do-update-menus): Turn local save-var into dynbound pr--save-var.
      (pr-menu-alist): Use setf.  Simplify since we don't keep key-bindings
      in the menus any more.
      (pr-dosify-file-name): Remove interactive spec.
      (pr-filename-style): Rename from pr-path-style.
      (pr-unixify-file-name): Delete function.
      (pr-standard-file-name): Don't turn \ into / under POSIX.
      (pr-temp-dir): Don't dosify.  Use temporary-file-directory unconditionally.
      (pr-save-file-modes): Delete macro.
      (pr-ps-directory-using-ghostscript, pr-ps-directory-print)
      (pr-ps-directory-ps-print, pr-ps-mode-using-ghostscript, pr-ps-print)
      (pr-ps-mode-preview, pr-ps-mode-print, pr-printify-directory)
      (pr-txt-directory, pr-ps-file-up-preview, pr-ps-directory-preview)
      (pr-ps-file-up-ps-print, pr-ps-preview, pr-ps-using-ghostscript):
      Use properly prefixed, declared, and
      explicitly let-bound dynamically bound variables around calls to
      pr-ps-utility-args and pr-set-dir-args.
      (pr-ps-file-using-ghostscript): Only dosify when passing to suprocess.
      (pr-expand-file-name): Delete function; use expand-file-name instead.
      (pr-ps-file-print): Properly dosify.
      (pr-menu-create): Use backquotes.
      (pr-eval-alist, pr-eval-local-alist): Use dolist.
      (pr-ps-utility-args): Don't dosify here.
      (pr-ps-utility-process): Dosify here instead.
      (pr-ps-file, pr-command): Don't dosify here either.
      (pr-interface-map): Move initialization into declaration.
      (pr-insert-section-1): Use 'push'.
      (pr-insert-toggle): Use closure instead of backquoted lambda.
      (pr-insert-menu): Use apply i.s.o eval.
      (pr-insert-radio-button): Avoid 'eval'.
      4f19bbb1
    • Stefan Monnier's avatar
      quail.el: Use delete-and-extract-region · 8a5ecdaa
      Stefan Monnier authored
      * lisp/international/quail.el (quail-overlay-region-events):
      Use delete-and-extract-region.
      (quail-activate): Use setq-local.
      8a5ecdaa
    • Stefan Monnier's avatar
      python.el: don't syntax-propertize single/double quoted strings · 4b39b741
      Stefan Monnier authored
      * lisp/progmodes/python.el (python-syntax-propertize-function):
      Only mark triple-quoted strings, let the normal syntax-table handle
      the rest.
      (python-syntax-stringify): Adjust accordingly.
      4b39b741
    • Stefan Monnier's avatar
    • Stefan Monnier's avatar
      Fix up Eshell 'require's after previous dependency reshuffle. · a017927c
      Stefan Monnier authored
      * lisp/eshell/em-unix.el:
      * lisp/eshell/em-script.el:
      * lisp/eshell/em-pred.el:
      * lisp/eshell/em-dirs.el:
      * lisp/eshell/em-alias.el:
      Fix up 'require's to silence byte-compiler.
      
      * lisp/eshell/esh-util.el (eshell-read-hosts-file): Don't limit number
      of entries per line.  Preserve the structure.
      (eshell-read-hosts): Adjust accordingly.
      a017927c
    • Mattias Engdegård's avatar
      Clarify the TESTFN argument to `alist-get' · 00a2d57a
      Mattias Engdegård authored
      * lisp/subr.el (alist-get):
      Rephrase the initial text to clarify the meaning of the TESTFN argument.
      It's an equality predicate, not a look-up function (Bug#35206).
      
      (cherry picked from commit c8146558)
      00a2d57a
    • Stefan Monnier's avatar
      * lisp/gnus/mm-view.el (mm-display-inline-fontify): Simplify. · 1055eee6
      Stefan Monnier authored
      Remove hacks that were needed before font-lock-ensure.
      Don't use switch-to-buffer.  Don't assume point-min == 1.
      1055eee6
    • Basil L. Contovounesios's avatar
      ; Warn of while/dolist pitfall in gnus-sum.el · e1a457e6
      Basil L. Contovounesios authored
      Suggested by Andy Moreton in the following thread:
      https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00294.html
      * lisp/gnus/gnus-sum.el (gnus-summary-move-article): Add comment
      warning of common while/dolist pitfall. (bug#33653#134)
      e1a457e6
    • Stefan Monnier's avatar
      * lisp/vc/diff-mode.el: Cosmetic changes in diff-syntax-fontify-hunk · 90c7e363
      Stefan Monnier authored
      (diff-default-directory): Use defvar-local.
      (diff-syntax-fontify-hunk): Use 'setq' less.  Fit within 80 columns.
      Simplify some looking-at tests.
      (diff-syntax-fontify-props): Don't check the buffer-local part of
      find-file-hook.
      90c7e363
    • Mattias Engdegård's avatar
      Clarify the TESTFN argument to `alist-get' · c8146558
      Mattias Engdegård authored
      * lisp/subr.el (alist-get):
      Rephrase the initial text to clarify the meaning of the TESTFN argument.
      It's an equality predicate, not a look-up function (Bug#35206).
      c8146558
    • Eli Zaretskii's avatar
      ; * etc/NEWS: Fix recently added entries. · 44b306d3
      Eli Zaretskii authored
      44b306d3
    • Eli Zaretskii's avatar
      Fix "M-x eshell" · 1e58dc9e
      Eli Zaretskii authored
      * lisp/eshell/em-dirs.el (eshell-variable-aliases-list)
      (eshell-directory-name, eshell-mode): Defvar them.
      (eshell-dirs-initialize): Require esh-var.  (Bug#35203)
      (eshell-apply-indices): Declare.
      1e58dc9e
    • Jackson Ray Hamilton's avatar
    • Jackson Ray Hamilton's avatar
      Explain reasonings for JSX syntax support design decisions · cf416d96
      Jackson Ray Hamilton authored
      * lisp/progmodes/js.el: Throughout the code, provide explanations for
      why JSX support was implemented in the way that it was; in particular,
      address the overlap between syntax-propertize-function, font-lock, and
      indentation (as requested by Stefan).
      cf416d96