1. 22 Jan, 2015 10 commits
    • Glenn Morris's avatar
      Auto-commit of loaddefs files. · d7995b18
      Glenn Morris authored
    • Paul Eggert's avatar
      Check exit statuses in lib-src/Makefile · 74ab488f
      Paul Eggert authored
      * Makefile.in ($(DESTDIR)${archlibdir}, install, uninstall)
      (mostlyclean, clean, distclean, extraclean):
      Check exit statuses more carefully.  Reindent to fit in 80 chars.
      (bootstrap-clean maintainer-clean): Remove unnecessary 'true'.
    • Paul Eggert's avatar
      Use bool for boolean in xfont.c, xftfont.c, xgselect.c · b631bb57
      Paul Eggert authored
      * xfont.c (xfont_driver, xfont_chars_supported)
      * xftfont.c (xftfont_get_colors, xftfont_open)
      (xftfont_prepare_face, xftfont_done_face)
      * xgselect.c (xg_select):
      Use bool for boolean.
    • Ulrich Müller's avatar
      Don't fail if chown or chgrp for 'update-game-score' is unsuccessful. · 7f4e7dd3
      Ulrich Müller authored
      * lib-src/Makefile.in ($(DESTDIR)${archlibdir}): Don't fail if the
      chown or chgrp command is unsuccessful; the 'update-game-score'
      program has a fallback for this at runtime.
    • Paul Eggert's avatar
      Spelling fix · 394b976f
      Paul Eggert authored
    • Paul Eggert's avatar
      Don't downcase system diagnostics' first letters · 8dd58a2d
      Paul Eggert authored
      * etc/NEWS: Document this.
      * lisp/emacs-lisp/bytecomp.el (byte-compile-file):
      * lisp/ffap.el (find-file-at-point):
      * lisp/files.el (insert-file-1):
      * lisp/net/ange-ftp.el (ange-ftp-barf-if-not-directory)
      * lisp/progmodes/etags.el (visit-tags-table):
      * lisp/url/url-dav.el (url-dav-delete-directory, url-dav-delete-file)
      Keep diagnostics consistent with system's.
      * lisp/erc/erc-dcc.el (erc-dcc-server):
      * lisp/ffap.el (ffap-machine-p):
      Ignore case while comparing diagnostics.
      * src/fileio.c (report_file_errno): Don't downcase, and simplify.
      Fixes: bug#19642
    • Stefan Monnier's avatar
      Avoid generating invalid usage info for pathological function · 938bca8e
      Stefan Monnier authored
      Fixes: debbugs:19645
      * lisp/help.el (help-make-usage): Don't turn a "_" arg into an empty-string.
      * lisp/emacs-lisp/cl-generic.el (cl--generic-lambda): Don't confuse a string
      body with a docstring.
    • Paul Eggert's avatar
      Better isolate code that assumes NIL_IS_ZERO · 74244d23
      Paul Eggert authored
      Suggested by Stefan Monnier in:
      * alloc.c (allocate_pseudovector):
      Use memclear, not memsetnil, to remove a 'verify'.
      * callint.c (Fcall_interactively):
      * dispnew.c (realloc_glyph_pool):
      * xdisp.c (init_iterator):
      Use memclear, not memset, to remove a 'verify'.
      * lisp.h (memclear): Rename from memsetnil, and take a byte
      count rather than a word count.  All callers changed.
    • Dmitry Gutov's avatar
      xref: Replace defgeneric and defmethod with cl- counterparts · 03346fb0
      Dmitry Gutov authored
      * lisp/progmodes/xref.el (xref-location-marker, xref-location-group):
      Use `cl-defgeneric' and `cl-defmethod' instead of the EIEIO
      * lisp/progmodes/etags.el (xref-location-marker): Same.
    • Dmitry Gutov's avatar
      xref: Input history and minor tweaks · a17a5dae
      Dmitry Gutov authored
      * lisp/progmodes/xref.el (xref--current): Rename from `xref--selected'.
      (xref--inhibit-mark-current): Rename from
      `xref--inhibit-mark-selected'.  Update the usages.
      (xref-quit): Reword the docstring.  Kill buffers after quitting
      windows instead of before.
      (xref--insert-xrefs): Tweak help-echo.
      (xref--read-identifier-history, xref--read-pattern-history):
      New variables.
      (xref--read-identifier, xref-find-apropos): Use them.
  2. 21 Jan, 2015 6 commits
    • Ulrich Müller's avatar
      Allow update-game-score to run sgid instead of suid. · 20f66485
      Ulrich Müller authored
      * configure.ac (gamegroup): New AC_SUBST.
      (--with-gameuser): Allow to specify a group instead of a user.
      In the default case, check at configure time if a 'games' user
      * lib-src/update-game-score.c: Allow the program to run sgid
      instead of suid, in order to match common practice for most games.
      (main): Check if we are running sgid.  Pass appropriate file
      permission bits to 'write_scores'.
      (write_scores): New 'mode' argument, instead of hardcoding 0644.
      (get_prefix): Update error message.
      * lib-src/Makefile.in (gamegroup): New variable, set by configure.
      ($(DESTDIR)${archlibdir}): Handle both suid or sgid when
      installing the 'update-game-score' program.
      * lisp/play/gamegrid.el (gamegrid-add-score-with-update-game-score):
      Allow the 'update-game-score' helper program to run suid or sgid.
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/eieio*.el: Fix up warnings and improve compatibility · 59e7fe6d
      Stefan Monnier authored
      Fixes: debbugs:19645
      * lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Add support for `declare'.
      (cl--generic-setf-rewrite): Setup the setf expander right away.
      (cl-defmethod): Make sure the setf expander is setup before we expand
      the body.
      (cl-defmethod): Silence byte-compiler warnings.
      (cl-generic-define-method): Shuffle code to change return value.
      (cl--generic-method-info): New function, extracted from
      (cl--generic-describe): Use it.
      * lisp/emacs-lisp/eieio-speedbar.el:
      * lisp/emacs-lisp/eieio-datadebug.el:
      * lisp/emacs-lisp/eieio-custom.el:
      * lisp/emacs-lisp/eieio-base.el: Use cl-defmethod.
      * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Avoid no-next-method
      errors when there's a `before' but no `primary'.
      (next-method-p): Return nil rather than signal an error.
      (eieio-defgeneric): Remove bogus (fboundp 'method).
      * lisp/emacs-lisp/eieio-opt.el: Adapt to cl-generic.
      (eieio--specializers-apply-to-class-p):	New function.
      (eieio-all-generic-functions): Use it.
      (eieio-method-documentation): Use it as well as cl--generic-method-info.
      Change format of return value.
      (eieio-help-class): Adapt accordingly.
      * lisp/emacs-lisp/eieio.el: Use cl-defmethod.
      (defclass): Generate cl-defmethod calls; use setf methods for :accessor.
      (eieio-object-name-string): Declare as obsolete.
      * test/automated/cl-generic-tests.el (setf cl--generic-2): Make sure
      the setf can be used already in the body of the method.
    • Glenn Morris's avatar
      Auto-commit of loaddefs files. · 41efcf4d
      Glenn Morris authored
    • Dmitry Gutov's avatar
      Remap quit-window to xref-quit in xref buffers · e7697d97
      Dmitry Gutov authored
      Fixes: debbugs:19466
      * lisp/progmodes/xref.el (xref--xref-buffer-mode-map): Define before
      the major mode.  Remap `quit-window' to `xref-quit'.
      (xref--xref-buffer-mode): Inherit from special-mode.
    • Dmitry Gutov's avatar
      xref: Keep track of temporary buffers · 956b13c5
      Dmitry Gutov authored
      Fixes: debbugs:19466
      xref: Keep track of temporary buffers.
      * lisp/progmodes/xref.el (xref--temporary-buffers, xref--selected)
      (xref--inhibit-mark-selected): New variables.
      (xref--mark-selected): New function.
      (xref--show-location): Maybe add the buffer to
      `xref--temporary-buffers', add `xref--mark-selected' to
      `buffer-list-update-hook' there.
      (xref--window): Add docstring.
      (xref-quit): Rename from `xref--quit'.  Update both references.
      Add KILL argument.  When it's non-nil, kill the temporary buffers
      that haven't been selected by the user.
      (xref--show-xref-buffer): Change the second argument to alist,
      extract the values for `xref--window' and
      `xref--temporary-buffers' from it.  Add `xref--mark-selected' to
      `buffer-list-update-hook' to each buffer in the list.
      (xref--show-xrefs): Move the logic of calling `xref-find-function'
      here.  Save the difference between buffer lists before and after
      it's called as "temporary buffers", and `pass it to
      (xref--find-definitions, xref-find-references)
      (xref-find-apropos): Update accordingly.
    • Artur Malabarba's avatar
  3. 20 Jan, 2015 19 commits
    • Paul Eggert's avatar
      Undo port to hypothetical nonzero Qnil case · 0dd19ac8
      Paul Eggert authored
      This mostly undoes the previous change in this area.  See:
      * alloc.c (allocate_pseudovector):
      * callint.c (Fcall_interactively):
      * dispnew.c (realloc_glyph_pool):
      * fringe.c (init_fringe):
      * lisp.h (memsetnil):
      * xdisp.c (init_iterator):
      Simplify by assuming that Qnil is zero, but verify the assumption.
      * lisp.h (NIL_IS_ZERO): Revert back to this symbol, removing
      NIL_IS_NONZERO.  All uses changed.
    • Stefan Monnier's avatar
      lisp/emacs-lisp/eieio*.el: Rewrite our generics on top of cl-generic · 3a8312d0
      Stefan Monnier authored
      * lisp/emacs-lisp/eieio-generic.el: Remove.
      (defgeneric, defmethod): Move to eieio-compat.el.  Mark obsolete.
      * lisp/emacs-lisp/eieio-compat.el: New file.
      * lisp/emacs-lisp/eieio.el: Don't require eieio-generic any more.
      * lisp/emacs-lisp/eieio-core.el (eieio--slot-originating-class-p):
      Remove unused function.
      (eieio-defclass): Move to eieio-compat.el.
      * lisp/emacs-lisp/macroexp.el (macroexp-macroexpand): New function.
      (macroexp--expand-all): Use it.
      * lisp/emacs-lisp/bytecomp.el (byte-compile-recurse-toplevel): Here too.
    • Michal Nazarewicz's avatar
      paragraphs: update sentence-end-base :version after changing the default · f948b5d9
      Michal Nazarewicz authored
      The default value of the `sentence-end-base' defcustom has been changed
      in ‘recognise more Unicode characters as end of sentence’ commit but
      :version has not been updated accordingly.  Fix that.
    • Jorgen Schaefer's avatar
      Removed test with spurious failures. · db5d4115
      Jorgen Schaefer authored
      * automated/package-test.el (package-test-install-prioritized):
      Removed test due to unreproducable failures.
    • Jan Djärv's avatar
      Fix double chars in NS port. · a53b9132
      Jan Djärv authored
      Fixes: debbugs:19531
      * nsterm.m (EV_TRAILER2): Set Vinhibit_quit to Qt.
    • Michal Nazarewicz's avatar
      eldoc: modify `eldoc-documentation-function' using `add-function' · fd020a29
      Michal Nazarewicz authored
      * lisp/emacs-lisp/eldoc.el (eldoc-documentation-function): Describe how
      major modes should use `add-function' to alter value of the variable.
      * lisp/hexl.el (hexl-mode): Set `eldoc-documentation-function' using
      `add-function' so the default value is always used.
      * lisp/ielm.el (inferior-emacs-lisp-mode): Set
      `eldoc-documentation-function' using `add-function' so the default
      value is always used.
      * lisp/progmodes/cfengine.el (cfengine3-mode): Set
      `eldoc-documentation-function' using `add-function' so the default
      value is always used.
      * lisp/progmodes/elisp-mode (emacs-lisp-mode): Set
      `eldoc-documentation-function' using `add-function' so the default
      value is always used.
      * lisp/progmodes/octave.el (octave-mode): Set
      `eldoc-documentation-function' using `add-function' so the default
      value is always used.
      * lisp/progmodes/python.el (python-mode): Set
      `eldoc-documentation-function' using `add-function' so the default
      value is always used.
      * lisp/simple.el (read--expression): Set `eldoc-documentation-function'
      using `add-function' so the default value is always used.
    • Michal Nazarewicz's avatar
      descr-text: add `describe-char-eldoc' describing character at point · 81681ed9
      Michal Nazarewicz authored
      * lisp/descr-text.el (describe-char-eldoc): New function returning
      basic Unicode codepoint information (e.g. name) about character
      at point.  It is meant to be used as a default value of the
      `eldoc-documentation-function' variable.
      (describe-char-eldoc--format, describe-char-eldoc--truncate):
      New helper functions for `describe-char-eldoc' function.
      * tests/automated/descr-text-test.el: New file with tests for
      `describe-char-eldoc--truncate', `describe-char-eldoc--format',
      and `describe-char-eldoc'.
    • Michal Nazarewicz's avatar
      paragraphs: recognise more Unicode characters as end of sentence · 11e161f5
      Michal Nazarewicz authored
      * lisp/textmodes/paragraphs.el (sentence-end-base): Include an
      ellipsis (…) and interrobang (‽) characters as end of a sentence,
      and a closing single quote (’) as an end of a quote.
    • Michal Nazarewicz's avatar
    • Michal Nazarewicz's avatar
      tildify: add `tildify-double-space-undos' · d9af6e01
      Michal Nazarewicz authored
      * lisp/textmodes/tildify.el (tildify-double-space-undos): A new
      variable specifying whether pressing space in `tildify-mode' after
      a space has been replaced with hard space undos the substitution.
      (tildify-space): Add code branch for handling `tildify-doule-space'.
      * tests/automated/tildify-tests.el (tildify-space-undo-test--test):
      A new helper function for testing `tildify-double-space-undos'
      behaviour in the `tildify-space' function.
      (tildify-space-undo-test-html, tildify-space-undo-test-html-nbsp)
      (tildify-space-undo-test-xml, tildify-space-undo-test-tex): New
      tests for `tildify-doule-space-undos' behaviour.
    • Michal Nazarewicz's avatar
      tildify: add `tildify-space' and `tildify-mode' · 571441fc
      Michal Nazarewicz authored
      * lisp/textmodes/tildify.el (tildify-space): A new function
      which can be used as a `post-self-insert-hook' to automatically
      convert spaces into hard spaces.
      (tildify-space-pattern): A new variable specifying pattern where
      `tildify-space' should take effect.
      (tildify-space-predicates): A new variable specifying list of
      predicate functions that all must return non-nil for
      `tildify-space' to take effect.
      (tildify-space-region-predicate): A new functions meant to be
      used as a predicate in `tildify-space-predicates' list.
      (tildify-mode): A new minor mode enabling `tildify-space' as a
      * tests/automated/tildify-tests.el (tildify-space-test--test):
      A new helper function for testing `tildify-space' function.
      (tildify-space-test-html, tildify-space-test-html-nbsp)
      (tildify-space-test-xml, tildify-space-test-tex): New tests for
      `tildify-space' function.
    • Dmitry Antipov's avatar
      Prefer xlispstrdup to avoid dumb calls to strlen · f9775f21
      Dmitry Antipov authored
      * nsfont.m (ns_get_family):
      * nsterm.m (ns_term_init):
      * w32fns.c (w32_window):
      * xfns.c (x_window, Fx_select_font): Use xlispstrdup.
    • Paul Eggert's avatar
      * dispnew.c: Remove no-longer-valid comment. · d13fc291
      Paul Eggert authored
    • Daniel Colascione's avatar
      Make vc-dir default to repository root · f3024754
      Daniel Colascione authored
      * lisp/vc/vc-dir.el (vc-dir): Default to repository root, not
    • Paul Eggert's avatar
      Correct an old fix for GTK font selection · ef5a526f
      Paul Eggert authored
      * gtkutil.c (xg_get_font): Fix off-by-2 typo.
      Fixes: bug#3228
    • Paul Eggert's avatar
      Fix minor bugs with printing null bytes · 97bf9238
      Paul Eggert authored
      * minibuf.c (read_minibuf_noninteractive):
      * xdisp.c (Ftrace_to_stderr) [GLYPH_DEBUG]:
      Work even if the Lisp string contains a null byte.
    • Dmitry Gutov's avatar
      Expand xref help-echo string · 3ca37be9
      Dmitry Gutov authored
      * lisp/progmodes/xref.el (xref--insert-xrefs): Expand help-echo string.
    • Dmitry Gutov's avatar
      Use etags-goto-tag-location in etags xref backend · 05fb53a1
      Dmitry Gutov authored
      * progmodes/etags.el (xref-etags-location): New class.
      (xref-make-etags-location): New function.
      (etags--xref-find-definitions): Use it.
      (xref-location-marker): New method implementation.
      * lisp/progmodes/xref.el: Mention that xref-location is an EIEIO class.
    • Paul Eggert's avatar
      Port to hypothetical case where Qnil is nonzero · 347e0144
      Paul Eggert authored
      * alloc.c (allocate_pseudovector):
      * callint.c (Fcall_interactively):
      * coding.c (syms_of_coding):
      * dispnew.c (realloc_glyph_pool):
      * fringe.c (init_fringe):
      * lisp.h (memsetnil):
      * xdisp.c (init_iterator):
      Port to the currently-hypothetical case where Qnil is nonzero.
      * dispnew.c (adjust_glyph_matrix): Remove unnecessary verification,
      as there are no Lisp_Object values in the data here.
      * lisp.h (NIL_IS_NONZERO): New symbol, replacing NIL_IS_ZERO.
      All uses changed.  Define only if not already defined, so that one
      can debug with -DNIL_IS_NONZERO.
      * xdisp.c (init_iterator): Remove unnecessary initializations to 0.
  4. 19 Jan, 2015 5 commits