1. 05 Jun, 2013 11 commits
    • Ted Zlatanov's avatar
      Introduce and use prog-prettify-install. · 8fc57765
      Ted Zlatanov authored
      8fc57765
    • Paul Eggert's avatar
      Chain glib's SIGCHLD handler from Emacs's (Bug#14474). · f019a684
      Paul Eggert authored
      * process.c (dummy_handler): New function.
      (lib_child_handler): New static var.
      (handle_child_signal): Invoke it.
      (catch_child_signal): If a library has set up a signal handler,
      save it into lib_child_handler.
      (init_process_emacs): If using glib and not on Windows, tickle glib's
      child-handling code so that it initializes its private SIGCHLD handler.
      * syssignal.h (SA_SIGINFO): Default to 0.
      * xterm.c (x_term_init): Remove D-bus hack that I installed on May
      31; it should no longer be needed now.
      f019a684
    • Ted Zlatanov's avatar
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/edebug.el (edebug-result): Move before first use. · 781b4af6
      Stefan Monnier authored
      * lisp/subr.el (load-history-regexp, load-history-filename-element)
      (eval-after-load, after-load-functions, do-after-load-evaluation)
      (eval-next-after-load, display-delayed-warnings)
      (collapse-delayed-warnings, delayed-warnings-hook): Move after the
      definition of save-match-data.
      (overriding-local-map): Remove accidental obsolescence declaration.
      781b4af6
    • Ted Zlatanov's avatar
    • Alan Mackenzie's avatar
      Add ChangeLog entry for version #112847. · 3caa391f
      Alan Mackenzie authored
      3caa391f
    • Michael Albinus's avatar
      * emacs.c (main) [HAVE_GFILENOTIFY]: Call globals_of_gfilenotify. · 90db8702
      Michael Albinus authored
      * gfilenotify.c (globals_of_gfilenotify): New function.
      (syms_of_gfilenotify): Move global initialization there.
      
      * lisp.h (globals_of_gfilenotify) [HAVE_GFILENOTIFY]: Add prototype.
      90db8702
    • Leo Liu's avatar
      Re-implement smie matching block highlight using show-paren-data-function. · 976cb066
      Leo Liu authored
      * emacs-lisp/smie.el (smie-matching-block-highlight)
      (smie--highlight-matching-block-overlay)
      (smie--highlight-matching-block-lastpos)
      (smie-highlight-matching-block)
      (smie-highlight-matching-block-mode): Remove.
      (smie--matching-block-data-cache): New variable.
      (smie--matching-block-data): New function.
      (smie-setup): Use smie--matching-block-data for
      show-paren-data-function.
      
      * progmodes/octave.el (octave-mode-menu): Fix.
      (octave-find-definition): Skip garbage lines.
      
      Fixes: debbugs:14395
      976cb066
    • Stefan Monnier's avatar
      Fix compilation error with simultaneous dynamic+lexical scoping. · 208d0342
      Stefan Monnier authored
      Add warning when a defvar appears after the first let-binding.
      * lisp/emacs-lisp/bytecomp.el (byte-compile-lexical-variables): New var.
      (byte-compile-close-variables): Initialize it.
      (byte-compile--declare-var): New function.
      (byte-compile-file-form-defvar)
      (byte-compile-file-form-define-abbrev-table)
      (byte-compile-file-form-custom-declare-variable): Use it.
      (byte-compile-make-lambda-lexenv): Change the argument.  Simplify.
      (byte-compile-lambda): Share call to byte-compile-arglist-vars.
      (byte-compile-bind): Handle dynamic bindings that shadow
      lexical bindings.
      (byte-compile-unbind): Make arg non-optional.
      (byte-compile-let): Simplify.
      * lisp/emacs-lisp/cconv.el (byte-compile-lexical-variables): Declare var.
      (cconv--analyse-function, cconv-analyse-form): Populate it.
      Protect byte-compile-bound-variables to limit the scope of defvars.
      (cconv-analyse-form): Add missing rule for (defvar <foo>).
      Remove unneeded rule for `declare'.
      
      * lisp/emacs-lisp/cl-macs.el (cl--compiler-macro-adjoin): Use macroexp-let2
      so as to avoid depending on cl-adjoin at run-time.
      * lisp/emacs-lisp/cl-lib.el (cl-pushnew): Use backquotes.
      
      * lisp/emacs-lisp/macroexp.el (macroexp--compiling-p): New function.
      (macroexp--warn-and-return): Use it.
      208d0342
    • Stefan Monnier's avatar
      * src/keymap.c (Fcurrent_active_maps, Fdescribe_buffer_bindings): · bfa3acd6
      Stefan Monnier authored
      * src/keyboard.c (menu_bar_items, tool_bar_items):
      * src/doc.c (Fsubstitute_command_keys): Voverriding_terminal_local_map does
      not override local keymaps any more.
      bfa3acd6
    • Leo Liu's avatar
      2587b005
  2. 04 Jun, 2013 6 commits
  3. 03 Jun, 2013 18 commits
    • Xue Fuqiao's avatar
      Merge from mainline. · c362f195
      Xue Fuqiao authored
      c362f195
    • Michael Albinus's avatar
    • Eli Zaretskii's avatar
      Fix crashes in a text-mode session on Windows. · 9337e206
      Eli Zaretskii authored
       src/w32console.c (initialize_w32_display): Return the dimensions of
       the console window via 2 additional arguments, not via the current
       frame.  This avoids crashes due to overrunning the bounds of
       frame's decode_mode_spec_buffer, which is not resized following
       the change of the frame dimensions from the initial 10x10.
       src/w32term.h (w32_initialize_display_info): Adjust prototype.
       src/term.c (init_tty): Take dimensions of the frame from the values
       returned by initialize_w32_display.
      9337e206
    • Eli Zaretskii's avatar
      * configure.ac (HAVE_GFILENOTIFY): Do not change $LIBS. · 7f203aa1
      Eli Zaretskii authored
      (GFILENOTIFY_CFLAGS, GFILENOTIFY_LIBS): Substitute.
      
      * nt/config.nt: Add HAVE_GFILENOTIFY, HAVE_W32NOTIFY and USE_FILE_NOTIFY.
      
      * src/Makefile.in (GFILENOTIFY_CFLAGS, GFILENOTIFY_LIBS): New variables.
      (ALL_CFLAGS): Add $(GFILENOTIFY_CFLAGS).
      (LIBES): Add $(GFILENOTIFY_LIBS).
      
      * src/w32inevt.c (handle_file_notifications): Add dummy implementation
      for !HAVE_W32NOTIFY.
      
      * src/w32term.c: Wrap code with HAVE_W32NOTIFY.
      7f203aa1
    • Jan Djärv's avatar
      Add HAVE_GLIB check instead of checking individual libraries that use GLib. · 55a87246
      Jan Djärv authored
      * configure.ac (HAVE_GLIB): Add GLib check.  Set XGSELOBJ if GLib is
      used.  Remove xgselect.o from XOBJ.
      
      * src/Makefile.in (XGSELOBJ): New, xgselect.o if GLib is used, or empty.
      
      * src/process.c (wait_reading_process_output): Call xg_select if HAVE_GLIB.
      
      * src/xgselect.c: Replace #if defined ... with #ifdef HAVE_GLIB.
      55a87246
    • Paul Eggert's avatar
      Fix minor problems found by static checking. · 3d5ee10a
      Paul Eggert authored
      * data.c (pure_write_error):
      Use xsignal2, not Fsignal, as Fsignal might return.
      * eval.c (set_backtrace_debug_on_exit): Now static.
      (backtrace_p, backtrace_top, backtrace_next, record_in_backtrace):
      No longer inline.  EXTERN_INLINE is needed only for functions
      defined in .h files.  Reindent function header as per GNU style.
      (backtrace_p, backtrace_top, backtrace_next):
      Mark EXTERNALLY_VISIBLE so they don't get optimized away by the
      compiler or linker.  Add extern decls to pacify gcc -Wall.
      * frame.c, frame.h (Qgeometry, Qworkarea, Qmm_size, Qframes, Qsource):
      Now static.
      * frame.c (free_monitors): Define only on platforms that need it.
      * nsterm.m (ns_term_init):
      * process.c (catch_child_signal):
      Don't worry about whether SIGCHLD is defined, as SIGCHLD is
      defined on all porting targets these days.
      * process.c, process.h (catch_child_signal):
      Make it extern only if NS_IMPL_GNUSTEP is defined.
      3d5ee10a
    • Tassilo Horn's avatar
      068922a2
    • Eli Zaretskii's avatar
      Attempt to resolve gettimeofday compilation errors with MinGW64. · e2d8a6f0
      Eli Zaretskii authored
       src/w32.c (gettimeofday): Make the signature identical to prototype
       in nt/inc/sys/time.h.
      
       nt/inc/sys/time.h (struct timeval): Remove the _W64 guards.
      e2d8a6f0
    • Eli Zaretskii's avatar
      Update instructions in nt/INSTALL.MSYS. · 22bcd514
      Eli Zaretskii authored
      22bcd514
    • Stefan Monnier's avatar
      * lisp.el: Provide completion of locally bound variables in Elisp. · bbcc4d97
      Stefan Monnier authored
      * lisp/emacs-lisp/lisp.el: Use lexical-binding.
      (lisp--local-variables-1, lisp--local-variables): New functions.
      (lisp--local-variables-completion-table): New var.
      (lisp-completion-at-point): Use it to provide completion of let-bound vars.
      bbcc4d97
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/lisp-mode.el (eval-sexp-add-defvars): Expand macros · 1f8fdd53
      Stefan Monnier authored
      eagerly.
      
      Fixes: debbugs:14422
      1f8fdd53
    • Stefan Monnier's avatar
      * src/eval.c (backtrace_p, backtrace_top, backtrace_next): Export them to · a8a7c5f6
      Stefan Monnier authored
      .gdbinit.
      * src/data.c (pure_write_error): Add `object' argument.
      * src/puresize.h (CHECK_IMPURE): Use it.
      * src/keyboard.c (safe_run_hooks_error): Improve error message.
      a8a7c5f6
    • Michael Albinus's avatar
      * NEWS: Emacs can be compiled with file notification support via the · 2f23b3ab
      Michael Albinus authored
        configure option `--with-file-notification=LIB'.  `glib', `inotify'
        and `w32' are supported.
      2f23b3ab
    • Michael Albinus's avatar
      * configure.ac (file-notification): New option, replaces inotify option. · c9628c79
      Michael Albinus authored
      (HAVE_W32): Remove w32notify.o.
      (with_file_notification): Add checks for glib and w32. Adapt check
      for inotify.
      (Summary): Add entry for file notification.
      
      * autogen/config.in: Add entries for HAVE_GFILENOTIFY,
      HAVE_W32NOTIFY and USE_FILE_NOTIFY.
      
      * lisp/autorevert.el (auto-revert-notify-enabled)
      (auto-revert-notify-rm-watch, auto-revert-notify-add-watch)
      (auto-revert-notify-event-p, auto-revert-notify-event-file-name)
      (auto-revert-notify-handler): Handle also gfilenotify.
      
      * lisp/subr.el: (file-notify-handle-event): New defun. Replacing ...
      (inotify-event-p, inotify-handle-event, w32notify-handle-event):
      Removed.
      
      * src/Makefile.in (NOTIFY_OBJ): New variable.
      (base_obj): Replace inotify.o by $(NOTIFY_OBJ).
      
      * src/emacs.c (main): Use HAVE_W32NOTIFY to wrap respective code.
      Call syms_of_gfilenotify.
      
      * src/gfilenotify.c: New file.
      
      * src/keyboard.c (Qfile_notify): New variable.  Replaces Qfile_inotify
      and Qfile_w32notify.
      (top): Wrap respective code by HAVE_GFILENOTIFY, HAVE_INOTIFY,
      HAVE_W32NOTIFY and USE_FILE_NOTIFY.
      
      * src/lisp.h: Declare syms_of_gfilenotify.
      
      * src/termhooks.h (e): Wrap enum by USE_FILE_NOTIFY.
      c9628c79
    • Michael Albinus's avatar
      * cmdargs.texi (General Variables): Use "unix:path=/dev/null" as · 2041ae1f
      Michael Albinus authored
      dummy value for $DBUS_SESSION_BUS_ADDRESS.  It also suppresses
      autolaunching of the D-Bus session bus.
      2041ae1f
    • Stefan Monnier's avatar
      Merge the specpdl and backtrace stacks. Make the structure of the · 2f592f95
      Stefan Monnier authored
      specpdl entries more obvious via a tagged union of structs.
      * src/lisp.h (BITS_PER_PTRDIFF_T): New constant.
      (enum specbind_tag): New enum.
      (struct specbinding): Make it a tagged union of structs.
      Add a case for backtrace records.
      (specpdl_symbol, specpdl_old_value, specpdl_where, specpdl_arg)
      (specpdl_func, backtrace_function, backtrace_nargs, backtrace_args)
      (backtrace_debug_on_exit): New accessors.
      (struct backtrace): Remove.
      (struct catchtag): Remove backlist field.
      * src/data.c (let_shadows_buffer_binding_p, let_shadows_global_binding_p):
      Move to eval.c.
      (Flocal_variable_p): Speed up the common case where the binding is
      already loaded.
      * src/eval.c (backtrace_list): Remove.
      (set_specpdl_symbol, set_specpdl_old_value): Remove.
      (set_backtrace_args, set_backtrace_nargs)
      (set_backtrace_debug_on_exit, backtrace_p, backtrace_top)
      (backtrace_next): New functions.
      (Fdefvaralias, Fdefvar): Adjust to new specpdl format.
      (unwind_to_catch, internal_lisp_condition_case)
      (internal_condition_case, internal_condition_case_1)
      (internal_condition_case_2, internal_condition_case_n): Don't bother
      with backtrace_list any more.
      (Fsignal): Adjust to new backtrace format.
      (grow_specpdl): Move up.
      (record_in_backtrace): New function.
      (eval_sub, Ffuncall): Use it.
      (apply_lambda): Adjust to new backtrace format.
      (let_shadows_buffer_binding_p, let_shadows_global_binding_p): Move from
      data.c.
      (specbind): Adjust to new specpdl format.  Simplify.
      (record_unwind_protect, unbind_to): Adjust to new specpdl format.
      (Fbacktrace_debug, Fbacktrace, Fbacktrace_frame): Adjust to new
      backtrace format.
      (mark_backtrace): Remove.
      (mark_specpdl, get_backtrace, backtrace_top_function): New functions.
      * src/xdisp.c (redisplay_internal): Use record_in_backtrace.
      * src/alloc.c (Fgarbage_collect): Use record_in_backtrace.
      Use mark_specpdl.
      * src/profiler.c (record_backtrace): Use get_backtrace.
      (handle_profiler_signal): Use backtrace_top_function.
      * src/.gdbinit (xbacktrace, hookpost-backtrace): Use new backtrace
      accessor functions.
      2f592f95
    • Juri Linkov's avatar
      Search and highlight symbol at point. · e5e4a942
      Juri Linkov authored
      * doc/emacs/display.texi (Highlight Interactively): Add global keybindings
      with the key prefix `M-s h'.  Document old command `highlight-phrase'.
      Document new command `highlight-symbol-at-point'.
      
      * lisp/bindings.el (search-map): Bind `highlight-symbol-at-point' to
      `M-s h .'. 
      
      * lisp/hi-lock.el (highlight-symbol-at-point): New alias for the new
      command `hi-lock-face-symbol-at-point'.
      (hi-lock-face-symbol-at-point): New command.
      (hi-lock-map): Bind `highlight-symbol-at-point' to `C-x w .'.
      (hi-lock-menu): Add `highlight-symbol-at-point'.
      (hi-lock-mode): Doc fix.
      
      * lisp/isearch.el (isearch-forward-symbol-at-point): New command.
      (search-map): Bind `isearch-forward-symbol-at-point' to `M-s .'.
      (isearch-highlight-regexp): Add a regexp which matches
      words/symbols for word/symbol mode.
      
      * lisp/subr.el (find-tag-default-bounds): New function with the body
      mostly moved from `find-tag-default'.
      (find-tag-default): Move most code to `find-tag-default-bounds',
      call it and apply `buffer-substring-no-properties' afterwards.
      
      Fixes: debbugs:14427
      e5e4a942
    • Tassilo Horn's avatar
      * NEWS: Document eshell visual subcommands and options. · 26b3353a
      Tassilo Horn authored
      * eshell/em-term.el (eshell-term-initialize): Use
      `cl-intersection' rather than `intersection'.
      26b3353a
  4. 02 Jun, 2013 5 commits
    • Xue Fuqiao's avatar
      Modify `log-view-mode-map'. · d3ffe17c
      Xue Fuqiao authored
      * vc/log-view.el (log-view-mode-map): Copy keymap from
        `special-mode-map'.
      d3ffe17c
    • Jan Djärv's avatar
      Update the GNUStep port so it works OK. Redraw and sizing bugs remain. · c0342369
      Jan Djärv authored
      * nextstep/templates/Info-gnustep.plist.in: Add NSDocumentClass EmacsDocument.
      
      * src/nsfns.m (x_set_foreground_color, x_set_background_color): Use
      EmacsCGFloat.
      (ns_implicitly_set_icon_type, Fx_create_frame): Make static, remove
      unused variables.
      (Fns_read_file_name): Keep track if panel is for save.  Use
      ns_filename_from_panel/ns_directory_from_panel.
      (Fns_list_services): delegate only used for COCOA.
      (Fns_convert_utf8_nfd_to_nfc): Remove warning for GNUStep.  Just
      return the input if GNUStep.
      (x_screen_planes): Remove.
      (Fxw_color_values): Use EmacsCGFloat
      (Fns_display_monitor_attributes_list): Only get screen number for
      Cocoa.
      (getDirectory, getFilename): Removed from EmacsOpenPanel and
      EmacsSavePanel.
      (EmacsOpenPanel:ok:): Use ns_filename_from_panel and
      ns_directory_from_panel.
      
      * src/nsfont.m (ns_attribute_fvalue, ns_spec_to_descriptor)
      (ns_charset_covers, ns_get_covering_families, nsfont_open):
      Use F suffix on floats.
      (ns_char_w...
      c0342369
    • Glenn Morris's avatar
    • David Engster's avatar
      Merge with CEDET upstream (rev. 8564). · 6b7a9e0e
      David Engster authored
      6b7a9e0e
    • David Engster's avatar
      caaeb0e8