1. 21 Nov, 2013 1 commit
    • Glenn Morris's avatar
      Use path-separator with -L, rather than just : · 2df10228
      Glenn Morris authored
      * lisp/startup.el (command-line-1): Use path-separator with -L.
      * test/automated/Makefile.in (PATH_SEPARATOR): New, set by configure.
      * doc/emacs/cmdargs.texi (Action Arguments): Use path-separator with -L.
      * etc/NEWS: Related edit.
  2. 20 Nov, 2013 1 commit
  3. 19 Nov, 2013 1 commit
  4. 18 Nov, 2013 2 commits
    • Paul Eggert's avatar
      Improve API of recently-added bool vector functions. · ec2c4ee6
      Paul Eggert authored
      The old API had (bool-vector-count-matches A B)
      and (bool-vector-count-matches-at A B I), which gave the
      misleading impression that the two functions were variants, one
      with a location I.  The new API has (bool-vector-count-population A)
      and (bool-vector-count-consecutive A B I) to make the distinction
      clearer.  The first function no longer has a B argument, since the
      caller can easily determine the number of nils if the length and
      number of ts is known.
      * src/data.c (Fbool_vector_count_population): Rename from
      bool_vector_count_matches, and accept just 1 argument.
      (Fbool_vector_count_consecutive): Rename from
      * test/automated/data-tests.el: Adjust to API changes.
      Fixes: debbugs:15912
    • Leo Liu's avatar
      * NEWS: Mention new features for Octave mode. · f2cbfd44
      Leo Liu authored
  5. 11 Nov, 2013 2 commits
  6. 05 Nov, 2013 1 commit
  7. 04 Nov, 2013 3 commits
  8. 02 Nov, 2013 1 commit
  9. 01 Nov, 2013 1 commit
    • Jan Djärv's avatar
      Add :distant-foreground to faces. · 3c334c14
      Jan Djärv authored
      * doc/lispref/display.texi (Face Attributes): Document :distant-foreground.
      * etc/NEWS: Mention :distant-foreground.
      * lisp/faces.el (face-x-resources): Add :distant-foreground.
      (region): Use :distant-foreground for gtk and ns.
      * src/dispextern.h (lface_attribute_index): Add
      * src/xfaces.c: Declare color_distance.
      (QCdistant_foreground): New variable.
      (NEAR_SAME_COLOR_THRESHOLD): New define.
      (load_color2): New function.
      (load_color): Call load_color2.
      (load_face_colors): Call load_color2 and if distant-color is specified
      calculate distant and use distant-color if colors are near.
      (merge_face_ref, Finternal_set_lisp_face_attribute)
      (x_supports_face_attributes_p): Handle distant-foreground similar to
      (syms_of_xfaces): DEFSYM QCdistant_foreground.
  10. 29 Oct, 2013 1 commit
    • Stefan Monnier's avatar
      Add pre-redisplay-function and rectangular region · 3472b6c6
      Stefan Monnier authored
      * lisp/rect.el: Use lexical-binding.  Add new rectangular region support.
      (rectangle-mark): New command.
      (rectangle--region): New var.
      (deactivate-mark-hook): Reset rectangle--region.
      (rectangle--extract-region, rectangle--insert-for-yank)
      (rectangle--unhighlight-for-redisplay): New functions.
      (region-extract-function, redisplay-unhighlight-region-function)
      (redisplay-highlight-region-function): Use them to handle
      rectangular region.
      * lisp/simple.el (region-extract-function): New var.
      (delete-backward-char, delete-forward-char, deactivate-mark): Use it.
      (kill-new, kill-append): Remove obsolete `yank-handler' argument.
      (kill-region): Replace obsolete `yank-handler' arg with `region'.
      (copy-region-as-kill, kill-ring-save): Add `region' argument.
      (redisplay-highlight-region-function): New vars.
      (redisplay--update-region-highlight): New function.
      (pre-redisplay-function): Use it.
      (exchange-point-and-mark): Don't deactivate the mark before
      reactivate-it anyway.
      * lisp/comint.el (comint-kill-region): Remove yank-handler argument.
      * lisp/delsel.el (delete-backward-char, backward-delete-char-untabify)
      (delete-char): Remove property, since it's now part of their
      default behavior.
      (self-insert-iso): Remove property since this command doesn't exist.
      * src/xdisp.c (prepare_menu_bars): Call Vpre_redisplay_function.
      (syms_of_xdisp): Declare pre-redisplay-function.
      (markpos_of_region): Remove function.
      (init_iterator, compute_stop_pos, handle_face_prop)
      (face_before_or_after_it_pos, reseat_to_string)
      (get_next_display_element, window_buffer_changed)
      (redisplay_internal, try_cursor_movement, redisplay_window)
      (try_window_reusing_current_matrix, try_window_id, display_line)
      (note_mode_line_or_margin_highlight, note_mouse_highlight)
      (display_string, mouse_face_from_buffer_pos): Remove region handling.
      * src/window.h (struct window): Remove field `region_showing'.
      * src/dispextern.h (struct it): Remove region_beg/end_charpos.
      (face_at_buffer_position, face_for_overlay_string)
      (face_at_string_position): Update prototypes.
      * src/xfaces.c (face_at_buffer_position, face_for_overlay_string)
      (face_at_string_position): Remove `region_beg' and `region_end' args.
      * src/fontset.c (Finternal_char_font):
      * src/font.c (font_at, font_range): Adjust calls accordingly.
      * src/insdel.c (Qregion_extract_function): New var.
      (syms_of_insdel): Initialize it.
      (prepare_to_modify_buffer_1): Use it.
  11. 27 Oct, 2013 1 commit
  12. 25 Oct, 2013 1 commit
    • Stefan Monnier's avatar
      * lisp/progmodes/prolog.el: Remove old indent; use post-self-insert-hook. · eb89dc14
      Stefan Monnier authored
      (prolog-align-comments-flag, prolog-indent-mline-comments-flag)
      (prolog-object-end-to-0-flag, prolog-electric-newline-flag)
      (prolog-electric-tab-flag, prolog-use-prolog-tokenizer-flag):
      Remove vars, they do not apply any more.
      (prolog-mode-abbrev-table): Remove redundant declaration.
      (prolog-upper-case-string, prolog-lower-case-string): Remove.
      (prolog-use-smie): Remove.
      (prolog-smie-rules): Add indentation rule for the if-then-else layout
      supported by prolog-electric-if-then-else-flag.
      (prolog-mode-variables, prolog-menu): Use setq-local.
      (prolog-mode-keybindings-edit): Don't rebind M-C-p and M-C-n.
      Remove binding to `Backspace' since this key doesn't exist anyway.
      Remove bindings for electric self-inserting keys.
      (prog-mode): Assume it's defined.
      (prolog-post-self-insert): New function.
      (prolog-mode): Use it.
      (prolog-indent-line, prolog-indent-level)
      (prolog-indentation-level-of-line, prolog-goto-comment-column)
      (prolog-paren-is-the-first-on-line-p, prolog-region-paren-balance)
      (prolog-goto-next-paren, prolog-in-string-or-comment)
      (prolog-tokenize, prolog-inside-mline-comment)
      (prolog-find-start-of-mline-comment): Remove functions.
      (prolog-find-unmatched-paren, prolog-clause-end)
      (prolog-guess-fill-prefix, prolog-get-predspec): Use syntax-ppss.
      (prolog-electric--if-then-else): Rename from
      prolog-insert-spaces-after-paren; use prolog-electric-if-then-else-flag.
      (prolog-tokenize-searchkey): Remove const.
      (prolog-clause-info): Use forward-sexp.
      (prolog-forward-list, prolog-backward-list, prolog-electric-delete)
      (prolog-electric-if-then-else): Remove commands.
      (prolog-electric--colon): Rename from prolog-electric-colon; adapt it
      for use in post-self-insert-hook.
      (prolog-electric--dash): Rename from prolog-electric-dash; adapt it
      for use in post-self-insert-hook.
      (prolog-electric--dot): Rename from prolog-electric-dot; adapt it
      for use in post-self-insert-hook.
      (prolog-electric--underscore): Rename from prolog-electric--underscore;
      adapt it for use in post-self-insert-hook.
  13. 24 Oct, 2013 2 commits
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/smie.el: New smie-config system. · 71e3276b
      Stefan Monnier authored
      (smie-config): New defcustom.
      (smie-edebug, smie-config-show-indent, smie-config-set-indent)
      (smie-config-guess, smie-config-save): New commands.
      (smie-config--mode-local, smie-config--buffer-local)
      (smie-config--trace, smie-config--modefuns): New vars.
      (smie-config--advice, smie-config--mode-hook)
      (smie-config--setter, smie-config-local, smie-config--get-trace)
      (smie-config--guess-value, smie-config--guess): New functions.
      (smie-indent-forward-token, smie-indent-backward-token): Don't copy
      text properties.  Treat "string fence" syntax like string syntax.
      * lisp/progmodes/sh-script.el (sh-use-smie): Change default.
      (sh-smie-sh-rules, sh-smie-rc-rules): Obey legacy sh-indent-* vars.
      (sh-var-value): Simplify by CSE.
      (sh-show-indent, sh-set-indent, sh-learn-line-indent)
      (sh-learn-buffer-indent): Redirect to their SMIE equivalent when SMIE
      is used.
      (sh-guess-basic-offset): Use cl-incf.
      (sh-guess-basic-offset): Use push+nreverse to avoid O(n^2).
    • Michael Albinus's avatar
  14. 19 Oct, 2013 1 commit
  15. 18 Oct, 2013 1 commit
    • Barry O'Reilly's avatar
      Don't run timers in input-pending-p. Its new check-timers param · ef566920
      Barry O'Reilly authored
      provides the prior behavior..
      * src/keyboard.c (Finput_pending_p): Accept optional check-timers
      * lisp/subr.el (sit-for): Call (input-pending-p t) so as to behave
      as before.
      * test/automated/timer-tests.el: New file.  Tests that (sit-for 0)
      allows another timer to run.
      Fixes: debbugs:15045
  16. 16 Oct, 2013 2 commits
  17. 13 Oct, 2013 1 commit
  18. 08 Oct, 2013 1 commit
    • Teemu Likonen's avatar
      * indent.el: Provide interactive indent-rigidly mode. Use lexical-binding. · b7d5bd82
      Teemu Likonen authored
      (indent-rigidly--current-indentation): New function.
      (indent-rigidly-map): New var.
      (indent-rigidly): Use it to provide interactive mode.
      (indent-region): Add progress reporter.
      (tab-stop-list): Make it implicitly extend to infinity by repeating the
      last step.
      (indent--next-tab-stop): New function to implement this behavior.
      (tab-to-tab-stop, move-to-tab-stop): Use it.
      Fixes: debbugs:8196
  19. 07 Oct, 2013 1 commit
  20. 05 Oct, 2013 1 commit
  21. 03 Oct, 2013 1 commit
  22. 02 Oct, 2013 3 commits
  23. 28 Sep, 2013 1 commit
  24. 26 Sep, 2013 1 commit
  25. 22 Sep, 2013 1 commit
    • Daniel Colascione's avatar
      Add set operations for bool-vector. · 3e0b94e7
      Daniel Colascione authored
      * data.c (Qbool_vector_p): New symbol.
      (Fbool_vector_count_matches_at): New functions.
      (syms_of_data): Intern new symbol, functions.
      * alloc.c (bool_vector_payload_bytes): New function.
      (Fmake_bool_vector): Instead of calling Fmake_vector,
      which performs redundant initialization and argument checking,
      just call allocate_vector ourselves.  Make sure we clear any
      terminating padding to zero.
      (vector_nbytes,sweep_vectors): Use bool_vector_payload_bytes
      instead of open-coding the size calculation.
      (vroundup_ct): New macro.
      (vroundup): Assume argument >= 0; invoke vroundup_ct.
      * casetab.c (shuffle,set_identity): Change lint_assume to assume.
      * composite.c (composition_gstring_put_cache): Change
      lint_assume to assume.
      * conf_post.h (assume): New macro.
      (lint_assume): Remove.
      * dispnew.c (update_frame_1): Change lint_assume to assume.
      * ftfont.c (ftfont_shape_by_flt): Change lint_assume
      to assume.
      * image.c (gif_load): Change lint_assume to assume.
      * lisp.h (eassert_and_assume): New macro.
      (Qbool_vector_p): Declare.
      (swap16,swap32,swap64): New inline functions.
      * macfont.c (macfont_shape): Change lint_assume to assume.
      * ralloc.c: Rename ROUNDUP to PAGE_ROUNDUP throughout.
      * xsettings.c (parse_settings): Use new swap16 and
      swap32 from lisp.h instead of file-specific macros.
  26. 21 Sep, 2013 1 commit
    • Xue Fuqiao's avatar
      Add keybinding for vc-log-incoming in vc-dir. · d052d3bd
      Xue Fuqiao authored
      * doc/emacs/maintaining.texi (VC Directory Commands): Add keybinding for
      vc-log-incoming in vc-dir.
      * lisp/vc/vc-dir.el (vc-dir-mode-map): Add keybinding for vc-log-incoming.
  27. 20 Sep, 2013 1 commit
    • Xue Fuqiao's avatar
      Rename cvs-append-to-ignore to vc-cvs-append-to-ignore. · 98ccf24e
      Xue Fuqiao authored
      2013-09-20  Xue Fuqiao  <xfq.free@gmail.com>
      	* lisp/vc/pcvs.el (cvs-mode-ignore):
      	* lisp/vc/vc-cvs.el (vc-cvs-ignore, vc-cvs-append-to-ignore): Rename
      	cvs-append-to-ignore to vc-cvs-append-to-ignore.
      If/when someone complains about her package calling that function we
      can add an obsolete alias at that point.
  28. 17 Sep, 2013 1 commit
    • Glenn Morris's avatar
      Add a major-mode for the *Messages* buffer · 90582f05
      Glenn Morris authored
      Ref: http://lists.gnu.org/archive/html/emacs-devel/2010-02/msg00135.html
      * lisp/simple.el (messages-buffer-mode): New major mode.
      (messages-buffer): New function.
      * lisp/startup.el (normal-top-level): Switch mode of *Messages* buffer.
      * src/xdisp.c (message_dolog): If we create *Messages*,
      switch it to messages-buffer-mode.
      * lisp/emacs-lisp/ert.el (ert--force-message-log-buffer-truncation)
      (ert-run-test): Use `message-buffer' function.
      (ert--force-message-log-buffer-truncation): Ignore read-only.
      * lisp/help.el (view-echo-area-messages): Use `message-buffer' function.
      * lisp/mail/emacsbug.el (report-emacs-bug): Use `message-buffer' function.
      * lisp/gnus/gnus-util.el (gnus-message-with-timestamp-1):
      Use `message-buffer' function if available.  Ignore read-only.
      * etc/NEWS: Mention this.
  29. 15 Sep, 2013 1 commit
    • Jan Djärv's avatar
      Port the font backend from the Mac port. · 3fa2054e
      Jan Djärv authored
      * configure.ac: Add check for OSX 10.5, required for macfont.o.
      * etc/NEWS: Mention the macfont backend.
      * src/Makefile.in (NS_OBJ, SOME_MACHINE_OBJECTS): Add macfont.o.
      * src/font.c (syms_of_font): Call syms_of_macfont.
      * src/font.h: Declare syms_of_macfont.
      * src/nsfns.m: Include macfont.h.
      (Fx_create_frame): Register macfont driver, make a better default font.
      (Fns_popup_font_panel): Get font from macfont driver, if used.
      * src/nsfont.m (ns_tmp_flags, ns_tmp_font): Remove.
      (nsfont_open): Set font driver type.
      Set font->ascent and font->descent.  Figure out font instead of
      ns_tmp_font, and flags instead of ns_tmp_flags.
      Fix indentation. Remove call to ns_draw_text_decoration,
      moved to nsterm.
      * src/nsterm.m: Include macfont.h.
      (ns_tmp_flags, ns_tmp_font): Remove.
      (ns_compute_glyph_string_overhangs): Check for driver Qns.
      (ns_draw_glyph_string): Use local variables instead of ns_tmp_flags,
      ns_tmp_font.  Call ns_draw_text_decoration here instead of nsfont.m.
      (changeFont:): Fix code style.  Check for font driver type when
      getiing font.
      * src/nsterm.h (FONT_DESCENT, FONT_ASCENT): Define to (f)->ascent and
  30. 11 Sep, 2013 2 commits
    • Glenn Morris's avatar
      Improve previous interpreter-mode-alist change · 2a08047a
      Glenn Morris authored
      * lisp/files.el (interpreter-mode-alist): Remove \\` \\' parts.
      (set-auto-mode): Don't regexp-quote elements.
      * lisp/progmodes/python.el (interpreter-mode-alist): Remove \\` \\'.
      * lisp/progmodes/cc-mode.el (interpreter-mode-alist):
      * lisp/progmodes/ruby-mode.el (interpreter-mode-alist):
      Revert previous change.
      * etc/NEWS: Update.
    • Barry O'Reilly's avatar
      Change comparison functions =, <, >, <=, >= to take many arguments. · ebb99847
      Barry O'Reilly authored
      * src/data.c: Change comparison functions' interface and
      * src/lisp.h: Make arithcompare available for efficient two arg
      * src/bytecode.c: Use arithcompare
      * src/fileio.c: Use new interface
      * test/automated/data-tests.el: New tests for comparison functions
      * etc/NEWS
  31. 10 Sep, 2013 1 commit
    • Glenn Morris's avatar
      Treat interpreter-mode-alist as alist of regexps, not literals · 1af4c220
      Glenn Morris authored
      Cf http://lists.gnu.org/archive/html/emacs-devel/2005-08/msg00472.html
      * lisp/files.el (interpreter-mode-alist): Convert to regexps.
      (set-auto-mode): Adapt for this. 
      * lisp/progmodes/cperl-mode.el (cperl-clobber-mode-lists):
      Comment out unused variable.
      * lisp/progmodes/cc-mode.el (interpreter-mode-alist):
      * lisp/progmodes/python.el (interpreter-mode-alist):
      * lisp/progmodes/ruby-mode.el (interpreter-mode-alist): Convert to regexps.
      * lisp/progmodes/sh-script.el (sh-set-shell):
      No longer use interpreter-mode-alist to get list of shells.
      * etc/NEWS: Mention this.
      Fixes: debbugs:15306