1. 07 Dec, 2012 1 commit
  2. 26 Nov, 2012 1 commit
  3. 20 Nov, 2012 1 commit
    • Stefan Monnier's avatar
      Make called-interactively-p work for edebug or advised code. · 23ba2705
      Stefan Monnier authored
      * lisp/subr.el (called-interactively-p-functions): New var.
      (internal--called-interactively-p--get-frame): New macro.
      (called-interactively-p, interactive-p): Rewrite in Lisp.
      * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip): New fun.
      (called-interactively-p-functions): Use it.
      * lisp/emacs-lisp/edebug.el (edebug--called-interactively-skip): New fun.
      (called-interactively-p-functions): Use it.
      * lisp/allout.el (allout-called-interactively-p): Don't assume
      called-interactively-p is a subr.
      * src/eval.c (Finteractive_p, Fcalled_interactively_p, interactive_p): Remove.
      (syms_of_eval): Remove corresponding defsubr.
      * src/bytecode.c (exec_byte_code): `interactive-p' is now a Lisp function.
      * test/automated/advice-tests.el (advice-tests--data): Remove.
      (advice-tests): Move the tests directly here instead.
      Add called-interactively-p tests.
      23ba2705
  4. 17 Nov, 2012 1 commit
  5. 15 Nov, 2012 1 commit
  6. 14 Nov, 2012 1 commit
  7. 13 Nov, 2012 1 commit
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/cl.el (dolist, dotimes, declare): Use advice-add to · 413d4689
      Stefan Monnier authored
      override the default.
      * lisp/emacs-lisp/cl-macs.el (cl-dolist, cl-dotimes): Rewrite without using
      cl--dotimes/dolist.
      * lisp/subr.el (dolist, dotimes, declare): Redefine them normally, even when
      `cl' is loaded.
      
      * lisp/emacs-lisp/nadvice.el (advice--normalize): New function, extracted
      from add-advice.
      (advice--strip-macro): New function.
      (advice--defalias-fset): Use them to handle macros.
      (advice-add): Use them.
      (advice-member-p): Correctly handle macros.
      413d4689
  8. 12 Nov, 2012 1 commit
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/nadvice.el: New package. · 231d8498
      Stefan Monnier authored
      * lisp/subr.el (special-form-p): New function.
      * lisp/emacs-lisp/elp.el: Use lexical-binding and advice-add.
      (elp-all-instrumented-list): Remove var.
      (elp-not-profilable): Remove elp-wrapper.
      (elp-profilable-p): Use autoloadp and special-form-p.
      (elp--advice-name): New const.
      (elp-instrument-function): Use advice-add.
      (elp--instrumented-p): New predicate.
      (elp-restore-function): Use advice-remove.
      (elp-restore-all, elp-reset-all): Use mapatoms.
      (elp-set-master): Use elp--instrumented-p.
      (elp--make-wrapper): Rename from elp-wrapper, return a function
      suitable for advice-add.  Use cl-inf.
      (elp-results): Use mapatoms+elp--instrumented-p.
      * lisp/emacs-lisp/debug.el: Use lexical-binding and advice-add.
      (debug-function-list): Remove var.
      (debug): Rename arg, and then let-bind it explicitly inside.
      (debugger-setup-buffer): Rename arg.
      (debugger-setup-buffer): Adjust counts to new debug-on-entry setup.
      (debugger-frame-number): Adjust to new debug-on-entry setup.
      (debug--implement-debug-on-entry): Rename from
      implement-debug-on-entry, add argument.
      (debugger-special-form-p): Remove, use special-form-p instead.
      (debug-on-entry): Use advice-add.
      (debug--function-list): New function.
      (cancel-debug-on-entry): Use it, along with advice-remove.
      (debug-arglist, debug-convert-byte-code, debug-on-entry-1): Remove.
      (debugger-list-functions): Use debug--function-list instead of
      debug-function-list.
      * lisp/emacs-lisp/advice.el (ad-save-real-definition): Remove, unused.
      (ad-special-form-p): Remove, use special-form-p instead.
      (ad-set-advice-info): Use add-function and remove-function.
      (ad--defalias-fset): Adjust accordingly.
      * test/automated/advice-tests.el: New tests.
      231d8498
  9. 09 Nov, 2012 1 commit
  10. 08 Nov, 2012 1 commit
  11. 27 Oct, 2012 1 commit
    • Chong Yidong's avatar
      More Emacs 24.3 documentation updates. · 05b621a6
      Chong Yidong authored
      * doc/emacs/building.texi (Compilation): Document compilation-always-kill.
      
      * doc/emacs/files.texi (Misc File Ops): Symbolic links on Windows only work
      on Vista and later.
      
      * doc/emacs/frames.texi (Mouse Avoidance): Mention new variable
      mouse-avoidance-banish-position.
      
      * doc/emacs/mule.texi (Recognize Coding): Remove an unreferenced vindex.
      
      * doc/emacs/package.texi (Package Menu): Document the "new" status.
      
      * doc/emacs/programs.texi (Which Function): Which Function mode now works in
      all major modes by default.
      
      * doc/emacs/search.texi (Symbol Search): New node.
      
      * doc/emacs/windows.texi (Window Choice): Don't refer to the obsolete
      special-display feature.
      
      * commands.texi (Event Input Misc): Remove last-input-char.
      (Command Loop Info): Remove last-command-char.
      
      * display.texi (Fringe Bitmaps): Add exclamation-mark bitmap.
      
      * frames.texi (Initial Parameters): Don't mention the obsolete
      special-display feature.
      
      * hooks.texi (Standard Hooks): Remove obsolete hooks.
      
      * markers.texi (Information from Markers): Remove obsolete
      function buffer-has-markers-at.
      
      * minibuf.texi (High-Level Completion): Don't mention removed
      function iswitchb-read-buffer.
      
      * text.texi (Yanking): Document yank-handled-properties.
      
      * windows.texi (Choosing Window): Don't mention the obsolete
      special display feature.
      (Choosing Window Options): Remove obsolete special-display
      variables, and the functions special-display-p and
      special-display-popup-frame.
      
      * subr.el (insert-buffer-substring-as-yank): Doc fix.
      05b621a6
  12. 23 Oct, 2012 2 commits
    • Stefan Monnier's avatar
      Cleanup uses of "-hooks". · d1069532
      Stefan Monnier authored
      * doc/emacs/custom.texi (Hooks):
      * doc/lispref/hooks.texi (Standard Hooks): Clarify that -hooks is deprecated.
      
      * lisp/gnus/nndiary.el (nndiary-request-create-group-functions)
      (nndiary-request-update-info-functions)
      (nndiary-request-accept-article-functions):
      * lisp/gnus/gnus-start.el (gnus-subscribe-newsgroup-functions):
      * lisp/cedet/semantic/db-file.el (semanticdb-save-database-functions):
      * lisp/cedet/semantic/lex.el (semantic-lex-reset-functions):
      * lisp/cedet/semantic/edit.el (semantic-change-functions)
      (semantic-edits-new-change-functions)
      (semantic-edits-delete-change-functions)
      (semantic-edits-reparse-change-functions):
      * lisp/htmlfontify.el (hfy-post-html-hook):
      * lisp/filesets.el (filesets-cache-fill-content-hook):
      * lisp/arc-mode.el (archive-extract-hook):
      * lisp/progmodes/cc-mode.el (c-prepare-bug-report-hook):
      * lisp/net/rcirc.el (rcirc-sentinel-functions)
      (rcirc-receive-message-functions, rcirc-activity-functions)
      (rcirc-print-functions):
      * lisp/net/dbus.el (dbus-event-error-functions):
      * lisp/emacs-lisp/eieio.el (eieio-pre-method-execution-functions):
      * lisp/emacs-lisp/checkdoc.el (checkdoc-style-functions)
      (checkdoc-comment-style-functions): Don't use "-hooks" suffix.
      
      * lisp/term/sun.el (sun-raw-prefix-hooks):
      * lisp/mail/sendmail.el (mail-yank-hooks):
      * lisp/mh-e/mh-letter.el (mh-yank-hooks): Use make-obsolete-variable.
      d1069532
    • Stefan Monnier's avatar
      * lisp/subr.el (internal-temp-output-buffer-show): Rename from · 4ff5b1b2
      Stefan Monnier authored
      temp-output-buffer-show, since previously compiled files expect this name.
      4ff5b1b2
  13. 07 Oct, 2012 1 commit
  14. 06 Oct, 2012 3 commits
  15. 05 Oct, 2012 1 commit
  16. 25 Sep, 2012 2 commits
    • Chong Yidong's avatar
      Minor fixes for the function obsolescence feature. · 863666eb
      Chong Yidong authored
      * lisp/help-fns.el (help-fns--obsolete): Handle macros properly.
      
      * lisp/subr.el (declare): Doc fix.
      863666eb
    • Chong Yidong's avatar
      Use declare forms, where possible, to mark obsolete functions. · 59f7af81
      Chong Yidong authored
      * lisp/allout.el (allout-passphrase-hint-string): Likewise.
      (allout-init): Use a declare form to mark obsolete.
      
      * lisp/calendar/calendar.el (calendar-version):
      * lisp/calendar/icalendar.el (icalendar-extract-ical-from-buffer)
      (icalendar-convert-diary-to-ical):
      * lisp/cus-edit.el (custom-mode):
      * lisp/ansi-color.el (ansi-color-unfontify-region):
      * lisp/international/latin1-disp.el (latin1-char-displayable-p):
      * lisp/progmodes/cwarn.el (turn-on-cwarn-mode):
      * lisp/progmodes/which-func.el (which-func-update-1): Use
      define-obsolete-function-alias.
      
      * lisp/bookmark.el (bookmark-jump-noselect): Use a declare form to mark
      this function obsolete.
      
      * lisp/calendar/cal-x.el (calendar-two-frame-setup)
      (calendar-only-one-frame-setup, calendar-one-frame-setup):
      * lisp/calendar/calendar.el (american-calendar, european-calendar)
      (calendar-for-loop):
      * lisp/comint.el (comint-dynamic-simple-complete)
      (comint-dynamic-complete-as-filename, comint-unquote-filename):
      * lisp/desktop.el (desktop-load-default):
      * lisp/dired-x.el (dired-omit-here-always)
      (dired-hack-local-variables, dired-default-directory):
      * lisp/emacs-lisp/derived.el (derived-mode-class):
      * lisp/emacs-lisp/timer.el (timer-set-time-with-usecs):
      * lisp/emacs-lock.el (toggle-emacs-lock):
      * lisp/epa.el (epa-display-verify-result):
      * lisp/epg.el (epg-sign-keys, epg-start-sign-keys)
      (epg-passphrase-callback-function):
      * lisp/eshell/esh-util.el (eshell-for):
      * lisp/eshell/eshell.el (eshell-remove-from-window-buffer-names)
      (eshell-add-to-window-buffer-names):
      * lisp/files.el (locate-file-completion):
      * lisp/imenu.el (imenu-example--create-c-index)
      (imenu-example--create-lisp-index)
      (imenu-example--lisp-extract-index-name)
      (imenu-example--name-and-position):
      * lisp/international/mule-cmds.el (princ-list):
      * lisp/international/mule-diag.el (decode-codepage-char):
      * lisp/international/mule-util.el (detect-coding-with-priority):
      * lisp/iswitchb.el (iswitchb-read-buffer):
      * lisp/mail/mailalias.el (mail-complete):
      * lisp/mail/sendmail.el (mail-sent-via):
      * lisp/mouse.el (mouse-popup-menubar-stuff, mouse-popup-menubar)
      (mouse-major-mode-menu):
      * lisp/password-cache.el (password-read-and-add):
      * lisp/pcomplete.el (pcomplete-parse-comint-arguments):
      * lisp/progmodes/sh-script.el (sh-maybe-here-document):
      * lisp/replace.el (query-replace-regexp-eval):
      * lisp/savehist.el (savehist-load):
      * lisp/simple.el (choose-completion-delete-max-match):
      * lisp/term.el (term-dynamic-simple-complete):
      * lisp/vc/ediff-init.el (ediff-check-version):
      * lisp/vc/ediff-wind.el (ediff-choose-window-setup-function-automatically):
      * lisp/vc/vc.el (vc-diff-switches-list):
      * lisp/view.el (view-return-to-alist-update): Likewise.
      
      * lisp/iswitchb.el (iswitchb-read-buffer): Move code of
      iswitchb-define-mode-map here, and delete that obsolete function.
      
      * lisp/subr.el (eval-next-after-load, makehash, insert-string)
      (assoc-ignore-representation, assoc-ignore-case): Use declare to
      mark obsolete.
      (mode-line-inverse-video): Variable deleted.
      
      * lisp/emacs-lisp/byte-run.el (make-obsolete): Doc fix; emphasize that
      this applies to functions.
      
      * lisp/erc/erc.el (erc-send-command): Use define-obsolete-function-alias.
      
      * lisp/international/mule-util.el (string-to-sequence): Remove.
      
      * lisp/net/newst-backend.el (newsticker-cache-filename):
      * lisp/net/newst-treeview.el (newsticker-groups-filename): Fix
      incorrect obsolescence declaration.
      
      * lisp/net/snmp-mode.el (snmp-font-lock-keywords-3): Don't use obsolete
      font-lock-reference-face.
      
      * lisp/url/url-parse.el (url-recreate-url-attributes):
      * lisp/url/url-util.el (url-generate-unique-filename): Use declare to mark
      obsolete.
      
      * src/xdisp.c (mode_line_inverse_video): Delete obsolete variable.
      59f7af81
  17. 22 Sep, 2012 1 commit
  18. 14 Sep, 2012 1 commit
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/edebug.el: Miscellaneous cleanup. · 2de39f08
      Stefan Monnier authored
      Remove obsolete byte-compiler hack that tried to silence some warnings.
      (edebug-submit-bug-report): Remove.
      (edebug-get-buffer-window, edebug-sit-for, edebug-input-pending-p):
      Remove aliases, use the un-prefixed name instead.
      (edebug-pop-to-buffer): Consider other frames.
      (edebug-original-read):: Make it more obvious that it's always defined.
      (edebug--make-form-data-entry, edebug--form-data-name)
      (edebug--form-data-begin, edebug--form-data-end): Rename from the
      single-dashed name, and implement with cl-defstruct.
      (edebug-set-form-data-entry): Use the standard accessors.
      (edebug-make-top-form-data-entry): Use push.
      (edebug-no-match): Drop useless `funcall'.
      (mapcar, mapconcat, mapatoms, apply, funcall): Don't add debug specs
      to functions.
      (defsubst, dont-compile, eval-when-compile, eval-and-compile)
      (delay-mode-hooks, with-temp-file, with-temp-message, ad-dolist)
      (with-syntax-table, push, pop, 1value, noreturn, defadvice)
      (easy-menu-define, with-custom-print): Remove redundant specs.
      (edebug-outside-overriding-local-map)
      (edebug-outside-overriding-terminal-local-map): Remove, unused.
      (edebug--display): Bind unread-command-events directly to nil rather
      than binding it to unread-command-events and later setting it to nil.
      (edebug--display): Kill edebug-eval-buffer here...
      (edebug--recursive-edit): ...rather than here.
      Bind standard-output and standard-input.
      (edebug-eval): Check cl-macroexpand-all is fboundp.
      (edebug-temp-display-freq-count): Fix last change.
      
      * lisp/emacs-lisp/easymenu.el (easy-menu-define): Add `debug' spec.
      * lisp/subr.el (noreturn, 1value): Add `debug' spec.
      * lisp/emacs-lisp/advice.el: Require cl-lib.
      (ad-copy-tree): Remove, use copy-tree instead.
      (ad-dolist): Remove use dolist or cl-dolist instead.
      (ad-do-return): Remove, use cl-return instead.
      (defadvice): Add `debug' spec.
      2de39f08
  19. 12 Sep, 2012 1 commit
    • Stefan Monnier's avatar
      Remove unread-command-char. · bfeae2cf
      Stefan Monnier authored
      * src/keyboard.c (read_char, requeued_events_pending_p, Finput_pending_p)
      (Fdiscard_input, quit_throw_to_read_char, init_keyboard)
      (syms_of_keyboard): Remove support for unread-command-char.
      * lisp/emacs-lisp/debug.el (debugger-outer-unread-command-char, debug)
      (debugger-env-macro): Remove support for unread-command-char.
      
      * lisp/ehelp.el (with-electric-help): Accept functions in
      electric-help-form-to-execute.
      (electric-help-execute-extended, electric-help-ctrl-x-prefix): Use it.
      And replace unread-command-char -> unread-command-events.
      
      * lisp/subr.el (set-temporary-overlay-map): Minimize slightly the impact of
      the temporary map re-appearing on emulation-mode-map-alists.
      
      * lisp/emacs-lisp/edebug.el (def-edebug-form-spec): Remove, it's been broken
      since 22.1.
      bfeae2cf
  20. 11 Sep, 2012 2 commits
  21. 09 Sep, 2012 1 commit
    • Chong Yidong's avatar
      Allow scrolling in y-or-n-p. · 011474aa
      Chong Yidong authored
      * lisp/replace.el (query-replace-map): Bind four new symbols for
      requesting window scrolling.
      
      * lisp/subr.el (y-or-n-p): Handle the window-scrolling bindings in
      query-replace-map.
      
      * lisp/custom.el (custom-theme-load-confirm): Use y-or-n-p.
      
      * lisp/window.el (scroll-other-window-down): Make the arg optional.
      
      * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p): Don't bind scrolling keys
      since they are now in query-replace-map.
      
      * doc/lispref/minibuf.texi (Yes-or-No Queries): Document recentering and
      scrolling in y-or-n-p.  Remove gratuitous example.
      
      * doc/lispref/searching.texi (Search and Replace): Document window scrolling
      entries in query-replace-map.
      
      Fixes: debbugs:8948
      011474aa
  22. 08 Sep, 2012 2 commits
  23. 07 Sep, 2012 2 commits
    • Chong Yidong's avatar
      Let ESC ESC quit in read-char-choice, and use it in userlock.el. · 145823ec
      Chong Yidong authored
      * lisp/subr.el (read-char-choice): Allow quitting via ESC ESC.
      
      * lisp/userlock.el (ask-user-about-supersession-threat): Use
      read-char-choice.
      
      Fixes: debbugs:12093
      145823ec
    • Chong Yidong's avatar
      Add a utility function buffer-narrowed-p, and use it. · e5c2edf7
      Chong Yidong authored
      * lisp/subr.el (buffer-narrowed-p): New function.
      
      * lisp/ses.el (ses-widen):
      * lisp/simple.el (count-words--buffer-message):
      * lisp/net/browse-url.el (browse-url-of-buffer): Use it
      
      * lisp/simple.el (count-words-region): Don't signal an error if there
      is a non-nil prefix arg and the mark is not set.
      
      * doc/lispref/positions.texi (Narrowing): Document buffer-narrowed-p.
      e5c2edf7
  24. 18 Aug, 2012 1 commit
    • Chong Yidong's avatar
      Add yank-handled-properties; use it for `font-lock-face' and `category' · 2170b1bd
      Chong Yidong authored
      properties, instead of hard-coding these properties' special handling.
      
      * lisp/simple.el (yank-handled-properties): New defcustom.
      (yank-excluded-properties): Add font-lock-face and category.
      (yank): Doc fix.
      
      * lisp/subr.el (remove-yank-excluded-properties): Obey
      yank-handled-properties.  The special handling of font-lock-face
      and category is now done this way, instead of being hard-coded.
      (insert-for-yank-1): Remove font-lock-face handling.
      (yank-handle-font-lock-face-property)
      (yank-handle-category-property): New function.
      2170b1bd
  25. 15 Aug, 2012 1 commit
  26. 14 Aug, 2012 2 commits
  27. 13 Aug, 2012 3 commits
  28. 12 Aug, 2012 1 commit
  29. 10 Aug, 2012 1 commit
  30. 29 Jul, 2012 1 commit
    • Juri Linkov's avatar
      * lisp/simple.el (goto-line): Don't display default line number in the · a5dcc929
      Juri Linkov authored
      prompt because it should be displayed by `read-number' (bug#9952).
      Add the current line number to the defaults of `goto-line' to
      allow its easier modification by users with `M-n' (bug#9201).
      
      * lisp/subr.el (read-number): Support multiple default values like in
      other minibuffer reading functions.  Replace `read' with
      `string-to-number' for consistency with `number-to-string'.
      a5dcc929