1. 21 Feb, 2015 2 commits
    • Michael Albinus's avatar
    • Reto Zimmermann's avatar
      Sync with upstream vhdl mode v3.37.1. Add VHDL'08 support. · 80e67e43
      Reto Zimmermann authored
      * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp)
      (vhdl-doc-release-notes): Update.
      (vhdl-standard): Add VHDL'08 option.
      (vhdl-sensitivity-list-all): New option.
      (vhdl-directive-keywords): Add psl.
      (vhdl-offsets-alist-default, vhdl-mode-abbrev-table-init)
      (vhdl-template-construct-alist-init, vhdl-create-mode-menu):
      (vhdl-imenu-generic-expression): Add context, directive.
      (vhdl-offsets-alist, vhdl-mode, vhdl-doc-keywords): Doc fixes.
      (vhdl-template-map-init): Add vhdl-template-context.
      (vhdl-mode-syntax-table): Support VHDL'08 block comments.
      (vhdl-create-mode-menu): Add some entries.
      (vhdl-08-keywords, vhdl-08-types, vhdl-08-attributes)
      (vhdl-08-functions, vhdl-08-packages, vhdl-08-directives): New constants.
      (vhdl-directives): New variable.
      (vhdl-words-init, vhdl-template-process)
      (vhdl-template-replace-header-keywords): Support VHDL'08.
      (vhdl-abbrev-list-init): Add vhdl-directives.
      (vhdl-in-comment-p, vhdl-in-literal, vhdl-win-il)
      (vhdl-forward-syntactic-ws, vhdl-get-syntactic-context)
      (vhdl-lineup-comment): Handle block comments and directives.
      (vhdl-beginning-of-directive, vhdl-template-context)
      (vhdl-template-context-hook): New functions.
      (vhdl-libunit-re, vhdl-defun-re, vhdl-begin-p)
      (vhdl-corresponding-begin, vhdl-get-library-unit, vhdl-regress-line)
      (vhdl-align-declarations, vhdl-beginning-of-block, vhdl-end-of-block)
      (vhdl-font-lock-keywords-2, vhdl-get-end-of-unit)
      (vhdl-scan-context-clause): Add context.
      * etc/NEWS: Mention this.
  2. 18 Feb, 2015 1 commit
  3. 10 Feb, 2015 1 commit
  4. 08 Feb, 2015 2 commits
  5. 05 Feb, 2015 1 commit
    • Stefan Monnier's avatar
      Add (:documentation <form>) for dynamically-generated docstrings · ad5a7c86
      Stefan Monnier authored
      * lisp/emacs-lisp/bytecomp.el:
      (byte-compile-initial-macro-environment): Use macroexp-progn.
      (byte-compile-cl-warn): Don't silence use of cl-macroexpand-all.
      (byte-compile-file-form-defvar-function): Rename from
      (defvaralias, byte-compile-file-form-custom-declare-variable): Use it.
      (byte-compile): Use byte-compile-top-level rather than
      byte-compile-lambda so we can compile non-values.
      (byte-compile-form): Add warnings for failed uses of lexical vars via
      quoted symbols.
      (byte-compile-unfold-bcf): Improve message for failed inlining.
      (byte-compile-make-closure): Handle new format of internal-make-closure
      for dynamically-generated docstrings.
      * lisp/emacs-lisp/cconv.el (cconv--convert-function):
      Add `docstring' argument.
      (cconv-convert): Use it to handle the new (:documentation ...) form.
      (cconv-analyze-form): Handle the new (:documentation ...) form.
      * src/eval.c (Ffunction): Handle the new (:documentation ...) form.
      (syms_of_eval): Declare `:documentation'.
  6. 03 Feb, 2015 1 commit
  7. 01 Feb, 2015 2 commits
  8. 27 Jan, 2015 2 commits
    • Ivan Shmakov's avatar
      Allow for adding new members to Tar archives. · a56eab82
      Ivan Shmakov authored
      * lisp/tar-mode.el: Allow for adding new archive members.
      (tar-new-regular-file-header, tar--pad-to, tar--put-at)
      (tar-header-serialize): New functions.
      (tar-current-position): Split from tar-current-descriptor.
      (tar-current-descriptor): Use it.
      (tar-new-entry): New command.
      (tar-mode-map): Bind it.
      * doc/emacs/files.texi (File Archives): Document "I" for tar-new-entry.
      * etc/NEWS: Mention the new tar-new-entry command.
      Fixes: debbugs:19274
    • Thomas Fitzsimmons's avatar
      etc/NEWS: Document EUDC improvements · c7effd7c
      Thomas Fitzsimmons authored
  9. 25 Jan, 2015 1 commit
    • Paul Eggert's avatar
      Use gnustep-config if available · f6ef8365
      Paul Eggert authored
      * configure.ac (--with-gnustep): Document this.
      (NS_GNUSTEP_CONFIG): New variable, set if gnustep-config works.
      If gnustep-config works, use 'gnustep-config --objc-flags' and
      'gnustep-config --gui-libs' to compute GNUstep configuration
      variables, instead of attempting to infer them individually.
      * etc/NEWS: Document this.
      * src/emacs.c [NS_IMPL_GNUSTEP]: Don't include <GNUstepBase/GSConfig.h>.
      It doesn't appear to be needed, and the inclusion breaks on
      Ubuntu 14.10 when 'configure' uses 'gnustep-config'.
      Fixes: bug#19507
  10. 22 Jan, 2015 1 commit
    • 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
  11. 21 Jan, 2015 1 commit
    • 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.
  12. 20 Jan, 2015 3 commits
    • 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
      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
      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.
  13. 18 Jan, 2015 1 commit
    • Stefan Monnier's avatar
      EIEIO&cl-generic: Add obsolescence warnings and fix corner case · 2a61bd00
      Stefan Monnier authored
      * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Correctly handle
      introduction of a new dispatch argument.
      (cl--generic-cache-miss): Handle dispatch on an argument which was not
      considered as dispatchable for this method.
      (cl-defmethod): Warn when adding a method to an obsolete generic function.
      (cl--generic-lambda): Make sure it works if cl-lib is not yet loaded.
      * lisp/emacs-lisp/eieio-generic.el (eieio--defgeneric-init-form):
      Use autoloadp.
      * lisp/emacs-lisp/eieio.el (defclass): Add obsolescence warning for the
      `newname' argument.
      * test/automated/cl-generic-tests.el (cl-generic-test-10-weird): New test.
      Rename other tests to preserve ordering.
  14. 17 Jan, 2015 2 commits
    • Stefan Monnier's avatar
      Don't enforce :protection in EIEIO objects any more · d48c98cd
      Stefan Monnier authored
      * doc/misc/eieio.texi (Slot Options): Document :protection as unsupported.
      * lisp/emacs-lisp/eieio-core.el (eieio--scoped-class-stack): Remove var.
      (eieio--scoped-class): Remove function.
      (eieio--with-scoped-class): Remove macro.  Replace uses with `progn'.
      (eieio--slot-name-index): Don't check the :protection anymore.
      (eieio-initializing-object): Remove var.
      (eieio-set-defaults): Don't let-bind eieio-initializing-object.
      * lisp/emacs-lisp/eieio-generic.el (call-next-method): Don't bother checking
      eieio--scoped-class any more.
      * test/automated/eieio-test-methodinvoke.el (eieio-test-method-store):
      Use an explicit arg instead of eieio--scoped-class.  Update all callers.
      * test/automated/eieio-tests.el (eieio-test-25-slot-tests)
      (eieio-test-26-default-inheritance, eieio-test-28-slot-protection)
      (eieio-test-31-slot-attribute-override-class-allocation): Don't check
      that we enforce :protection since we don't any more.
    • Artur Malabarba's avatar
  15. 15 Jan, 2015 1 commit
    • Eli Zaretskii's avatar
      Add set-binary-mode primitive to switch a standard stream to binary I/O. · 0f238ea4
      Eli Zaretskii authored
       src/fileio.c: Include binary-io.h.
       (Fset_binary_mode): New function.
       (syms_of_fileio): Defsubr it.
       (syms_of_fileio) <Qstdin, Qstdout, Qstderr>: DEFSYM them.
       admin/unidata/unidata/uvs.el (uvs-print-table-ivd): Call set-binary-mode on
       doc/lispref/streams.texi (Input Functions): Document 'set-binary-mode'.
       (Output Functions): Cross-reference to documentation of
       etc/NEWS: Mention 'set-binary-mode'.
  16. 14 Jan, 2015 1 commit
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/cl-generic.el: New file. · 9def17e9
      Stefan Monnier authored
      * lisp/emacs-lisp/cl-macs.el (cl-flet): Allow (FUN EXP) forms.
      (cl-load-time-value, cl-labels): Use closures rather than
      backquoted lambdas.
      (cl-macrolet): Use `eval' to create the function value, and support CL
      style arguments in for the defined macros.
      * test/automated/cl-generic-tests.el: New file.
  17. 11 Jan, 2015 1 commit
    • Paul Eggert's avatar
      Default to 'configure --enable-silent-rules' · b995b4ae
      Paul Eggert authored
      This greatly shortens the 'make' output, making it more readable
      and useful.  For example, on my platform it shortens a
      4125-character line "gcc -std=gnu99 -c -Demacs -I. -I. -I../lib
      ... emacs.c" -- a line so long that it's hard to see what's going
      on or where the diagnostics are -- to just "CC emacs.o".
      * INSTALL: Document this.
      * configure.ac: Add AM_SILENT_RULES([yes]).
      (AM_DEFAULT_VERBOSITY): Remove now-unnecessary initialization.
      * etc/NEWS: Document this.
      Fixes: bug#19501
  18. 10 Jan, 2015 1 commit
  19. 08 Jan, 2015 2 commits
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/eieio*.el: Move the function defs to defclass. · 6a67b20d
      Stefan Monnier authored
      * lisp/emacs-lisp/eieio.el (defclass): Move from eieio-defclass all the code
      that creates functions, and most of the sanity checks.
      Mark as obsolete the <class>-child-p function.
      * lisp/emacs-lisp/eieio-core.el (eieio--define-field-accessors): Remove.
      (eieio--class, eieio--object): Use cl-defstruct.
      (eieio--object-num-slots): Define manually.
      (eieio-defclass-autoload): Use eieio--class-make.
      (eieio-defclass-internal): Rename from eieio-defclass.  Move all the
      `(lambda...) definitions and most of the sanity checks to `defclass'.
      Mark as obsolete the <class>-list-p function, the <class> variable and
      the <initarg> variables.  Use pcase-dolist.
      (eieio-defclass): New compatibility function.
      * lisp/emacs-lisp/eieio-opt.el (eieio-build-class-alist)
      (eieio-class-speedbar): Don't use eieio-default-superclass var.
    • Glenn Morris's avatar
      * lisp/files.el (file-tree-walk): Remove; of unknown authorship. · ffa86039
      Glenn Morris authored
      * etc/NEWS: Remove entry.
      Fixes: debbugs:19325
  20. 06 Jan, 2015 1 commit
  21. 05 Jan, 2015 1 commit
  22. 04 Jan, 2015 1 commit
    • Paul Eggert's avatar
      batch write-region no longer says "Wrote FOO" · d20f82e6
      Paul Eggert authored
      This cuts down on 'make' chatter a bit.
      * doc/lispref/files.texi (Writing to Files):
      * etc/NEWS: Document this.
      * src/fileio.c (Fwrite_region):
      Don't output "Wrote /whatever/foo.elc" if noninteractive.
  23. 01 Jan, 2015 2 commits
  24. 31 Dec, 2014 1 commit
  25. 29 Dec, 2014 3 commits
    • Paul Eggert's avatar
    • Paul Eggert's avatar
      system-name's returned value can vary · f9acac75
      Paul Eggert authored
      Also, the system-name variable is now obsolete.
      Fixes Bug#19438.
      * doc/lispref/os.texi (System Environment):
      * etc/NEWS: Document this.
      * doc/misc/efaq.texi:
      (Displaying the current file name in the titlebar):
      * lisp/desktop.el (desktop-save-frameset):
      * lisp/dnd.el (dnd-get-local-file-uri):
      * lisp/gnus/message.el (message-make-fqdn):
      * lisp/gnus/nnvirtual.el (nnvirtual-retrieve-headers)
      * lisp/nxml/rng-uri.el (rng-uri-file-name-1):
      * lisp/org/org-clock.el (org-clock-save):
      * src/filelock.c (current_lock_owner):
      * src/xrdb.c (get_environ_db):
      * src/xterm.c (same_x_server):
      * src/xterm.c (x_term_init):
      Prefer (system-name) to system-name, and avoid naming
      locals 'system-name'.
      * doc/misc/smtpmail.texi (Server workarounds): Fix grammar.
      * lisp/startup.el (system-name): Now an obsolete variable.
      * src/editfns.c (cached_system_name): New static var.
      (init_and_cache_system_name): New function.
      (init_editfns, Fsystem_name): Use it.
      (syms_of_editfns): Initialize it and Vsystem_name to the same value.
      * src/sysdep.c [HAVE_SOCKETS]: Don't include <sys/socket.h>, <netdb.h>.
      (h_errno) [TRY_AGAIN && !HAVE_H_ERRNO]: Remove decl.
      (init_system_name) [HAVE_SOCKETS]: Don't canonicalize the name.
      Don't create a new string if the current value is already correct.
    • Dmitry Gutov's avatar
      Declare many etags command obsolete; update the goto menu · c1eec814
      Dmitry Gutov authored
      * lisp/menu-bar.el (menu-bar-goto-menu): Replace all but one etags item
      with xref ones.
      * lisp/progmodes/etags.el (find-tag-other-window)
      (find-tag-other-frame, find-tag-regexp, tags-loop-continue)
      (tags-apropos): Declare obsolete.
  26. 28 Dec, 2014 1 commit
    • Juri Linkov's avatar
      Use diff faces for compare-windows · d143df5a
      Juri Linkov authored
      * lisp/vc/compare-w.el: Require diff-mode for diff faces.
      (compare-windows-removed, compare-windows-added): New faces
      inheriting from diff faces.
      (compare-windows): Define obsolete face alias.
      (compare-windows-highlight): Replace face `compare-windows' with
      new faces `compare-windows-added' and `compare-windows-removed'.
      (compare-windows-get-recent-window): Signal an error when
      no other window is found.
      Fixes: debbugs:19451
  27. 26 Dec, 2014 1 commit
  28. 25 Dec, 2014 2 commits
    • Dmitry Gutov's avatar
      Consolidate cross-referencing commands · 394ce951
      Dmitry Gutov authored
      Move autoloaded bindings for `M-.', `M-,', `C-x 4 .' and
      `C-x 5 .' from etags.el to xref.el.
      * progmodes/xref.el: New file.
      * progmodes/elisp-mode.el (elisp--identifier-types): New variable.
      (elisp--identifier-location): New function, extracted from
      (elisp--company-location): Use it.
      (elisp--identifier-completion-table): New variable.
      (elisp-completion-at-point): Use it.
      (emacs-lisp-mode): Set the local values of `xref-find-function'
      and `xref-identifier-completion-table-function'.
      (elisp-xref-find, elisp--xref-find-definitions)
      (elisp--xref-identifier-completion-table): New functions.
      * progmodes/etags.el (find-tag-marker-ring): Mark obsolete in
      favor of `xref--marker-ring'.
      (tags-lazy-completion-table): Autoload.
      (tags-reset-tags-tables): Use `xref-clear-marker-stack'.
      (find-tag-noselect): Use `xref-push-marker-stack'.
      (pop-tag-mark): Make an alias for `xref-pop-marker-stack'.
      (etags--xref-limit): New constant.
      (etags-xref-find, etags--xref-find-definitions): New functions.
    • Karl Fogel's avatar
      * etc/NEWS: Mention new buffer display behavior for `shell'. · ac549019
      Karl Fogel authored
      This follows up to Sam Steingold's change of 2014-12-23
      in ../lisp/shell.el, in git commit e55a467e.