1. 10 Oct, 2013 6 commits
  2. 09 Oct, 2013 13 commits
  3. 08 Oct, 2013 21 commits
    • Juri Linkov's avatar
      * lisp/isearch.el (isearch-help-map, isearch-mode-map): Don't bind [t] · b0949cc4
      Juri Linkov authored
      to isearch-other-control-char.
      (isearch-mode): Add isearch-pre-command-hook to pre-command-hook
      and isearch-post-command-hook to post-command-hook.
      (isearch-done): Remove isearch-pre-command-hook from pre-command-hook
      and isearch-post-command-hook from post-command-hook.
      (isearch-lookup-scroll-key, isearch-other-control-char)
      (isearch-other-meta-char): Remove functions.
      (isearch-pre-command-hook, isearch-post-command-hook):
      New functions based on isearch-other-meta-char rewritten
      relying on the new behavior of overriding-terminal-local-map
      that does not replace the local keymaps any more.
      Fixes: debbugs:15200
    • Paul Eggert's avatar
      Fix minor problems found by static checking. · 3b158d11
      Paul Eggert authored
      * dispnew.c (save_current_matrix): Omit unnecessary casts.
      * dispnew.c (update_frame_with_menu): Mark debug local as used.
      * keyboard.c, keyboard.h (Qmouse_movement): Now static.
      * keyboard.c (read_menu_command): Remove unused local.
      * lisp.h (read_menu_command): New decl.
      * menu.c, menu.h (menu_item_width): Arg is now unsigned char *, for
      benefit of STRING_CHAR_AND_LENGTH.  All uses changed.
      Return ptrdiff_t, not int.
      * term.c (tty_menu_struct): 'allocated' member is now ptrdiff_t,
      not int, for benefit of xpalloc.
      (tty_menu_create, tty_menu_make_room): Simplify by using xzalloc
      and xpalloc.
      (have_menus_p): Remove; unused.
      (tty_menu_add_pane, tty_menu_add_selection): Change signedness of
      local char * pointer to pacify STRING_CHAR_AND_LENGTH.
      (tty_menu_add_selection, tty_menu_locate, tty_meny_destroy):
      Now static.
      (save_and_enable_current_matrix): Omit unnecessary casts.
      (read_menu_input): Omit local extern decl (now in lisp.h).
      Don't access uninitialized storage if mouse_get_xy fails.
      (tty_menu_activate): Mark local as initialized, for lint.
      (tty_menu_activate, tty_meny_show): Remove unused locals.
    • Eli Zaretskii's avatar
      Attempt to fix broken compilation on several systems due to menu.h. · c7a7f318
      Eli Zaretskii authored
       src/term.c: Include "../lwlib/lwlib.h" before including menu.h.
    • Eli Zaretskii's avatar
      Fix bug #15557 with spelling in the manual. · b0904477
      Eli Zaretskii authored
       ack.texi (Acknowledgments): Fix spelling of Hrvoje Nikֵ¡iִ‡'s name.
    • Eli Zaretskii's avatar
      Support menus on text-mode terminals. · 4ed77415
      Eli Zaretskii authored
       src/xterm.h (xw_popup_dialog): Add prototype.
       src/xmenu.c (Fx_popup_dialog): Function moved to menu.c.
       (xmenu_show): Block input here, instead in Fx_popup_menu.
       (xw_popup_dialog): New function, with X-specific bits of popup
       src/xdisp.c (deep_copy_glyph_row, display_tty_menu_item): New
       src/window.c (Fset_window_configuration): Use run-time tests of the
       frame type instead of compile-time conditionals, when menu-bar
       lines are considered.
       src/w32term.h (w32con_hide_cursor, w32con_show_cursor)
       (w32_popup_dialog): New prototypes.
       src/w32menu.c (Fx_popup_dialog): Function deleted.
       (w32_popup_dialog): New function, with w32 specific bits of popup
       dialogs.  Block input here.
       src/w32inevt.c (w32_console_read_socket): Minor change to add
       debugging TTY events.
       src/w32fns.c (show_hourglass): If returning early because the frame
       is not a GUI frame, unblock input.
       src/w32console.c (w32con_hide_cursor, w32con_show_cursor, cursorX)
       (cursorY): New functions.
       src/termhooks.h (cursorX, cursorY): Prototypes of functions on
       WINDOWSNT, macros that call curX and curY elsewhere.
       src/termchar.h (struct tty_display_info) <showing_menu>: New flag.
       src/term.c (tty_hide_cursor, tty_show_cursor) [WINDOWSNT]: Call w32
       specific function to hide and show cursor on a text-mode terminal.
       (tty_menu_struct, struct tty_menu_state): New structures.
       (tty_menu_create, tty_menu_make_room, tty_menu_search_pane)
       (tty_menu_calc_size, mouse_get_xy, tty_menu_display)
       (have_menus_p, tty_menu_add_pane, tty_menu_add_selection)
       (tty_menu_locate, save_and_enable_current_matrix)
       (restore_desired_matrix, screen_update, read_menu_input)
       (tty_menu_activate, tty_menu_destroy, tty_menu_help_callback)
       (tty_pop_down_menu, tty_menu_last_menubar_item)
       (tty_menu_new_item_coords, tty_menu_show): New functions.
       (syms_of_term): New DEFSYMs for tty-menu-* symbols.
       src/nsterm.h (ns_popup_dialog): Adjust prototype.
       src/nsmenu.m (ns_menu_show): Block and unblock input here, instead
       of in x-popup-menu.
       (ns_popup_dialog): Adapt order of arguments to the other
       *_menu_show implementations.
       (Fx_popup_dialog): Function deleted.
       src/msdos.c (x_set_menu_bar_lines): Delete unused function.
       src/menu.h (tty_menu_show, menu_item_width): provide prototypes.
       src/menu.c (have_boxes): New function.
       (single_keymap_panes): Use it instead of a compile-time
       (single_menu_item): Use run-time tests of the frame type instead
       of compile-time conditionals.
       (encode_menu_string): New function.
       (list_of_items, list_of_panes): Use it instead of ENCODE_STRING
       the macro, since different types of frame need different encoding
       of menu items.
       (digest_single_submenu): Use run-time tests of frame type instead
       of, or in addition to, compile-time conditionals.
       (menu_item_width, Fmenu_bar_menu_at_x_y): New functions.
       (Fx_popup_menu): Detect when the function is called from keyboard
       on a TTY.  Don't barf when invoked on a text-mode frame.  Check
       frame type at run time, instead of compile-time conditionals for
       invoking terminal-specific menu-show functions.  Call
       tty_menu_show on text-mode frames.
       (Fx_popup_dialog): Moved here from xmenu.c.  Test frame types at
       run time to determine which alternative to invoke; support dialogs
       on TTYs.
       src/keyboard.h <Qmouse_movement>: Declare.
       src/keyboard.c <Qmouse_movement>: Now extern.
       <Qecho_keystrokes>: New static variable.
       (read_key_sequence): Accept an additional argument, a flag to
       prevent redisplay during reading of the key sequence.  All callers
       (read_menu_command): New function.
       (read_char): When COMMANDFLAG is -2, do not redisplay and do not
       (toolkit_menubar_in_use): New function.
       (make_lispy_event): Use it instead of a compile-time test.
       src/fns.c (Fyes_or_no_p) [HAVE_MENUS]: Don't condition on
       window-system being available.
       src/editfns.c (Fmessage_box) [HAVE_MENUS]: Don't condition the call
       to x-popup-dialog on the frame type, they all now support popup
       src/dispnew.c (save_current_matrix): Save the margin areas.
       (restore_current_matrix): Restore margin areas.
       (update_frame_with_menu): New function.
       src/dispextern.h (display_tty_menu_item, update_frame_with_menu):
       Add prototypes.
       src/alloc.c (make_save_ptr): Now compiled unconditionally.
       lisp/tmm.el (tmm-menubar): Adapt doc string to TTY menus
       lisp/tooltip.el (tooltip-mode): Don't error out on TTYs.
       lisp/menu-bar.el (popup-menu, popup-menu-normalize-position): Moved
       here from mouse.el.
       (popup-menu): Support menu-bar navigation on TTYs using C-f/C-b
       and arrow keys.
       (tty-menu-navigation-map): New map for TTY menu navigation.
       lisp/loadup.el ("tooltip"): Load even if x-show-tip is not available.
       lisp/frame.el (display-mouse-p): Report text-mode mouse as available
       on w32.
       (display-popup-menus-p): Report availability if mouse is
       available; don't condition on window-system.
       lisp/faces.el (tty-menu-enabled-face, tty-menu-disabled-face)
       (tty-menu-selected-face): New faces.
       configure.ac (HAVE_MENUS): Define unconditionally.
       doc/emacs/screen.texi (Menu Bar): Adapt to TTY menus.
       doc/emacs/frames.texi (Frames): Mention menu support on text terminals.
       doc/emacs/files.texi (Visiting): Mention the "File" menu-bar menu.
       doc/emacs/display.texi (Standard Faces): Mention TTY faces for menus.
       doc/lispref/keymaps.texi (Defining Menus, Mouse Menus, Menu Bar): Modify
       wording to the effect that menus are supported on TTYs.
       doc/lisprefframes.texi (Pop-Up Menus, Dialog Boxes)
       (Display Feature Testing): Update for menu support on TTYs.
        etc/NEWS: Mention the new features.
    • Eli Zaretskii's avatar
      Preload tooltip.el unconditionally. · f3370a94
      Eli Zaretskii authored
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/lisp-mode.el: Font-lock cl-lib constructs. · 06286513
      Stefan Monnier authored
      (lisp-el-font-lock-keywords, lisp-el-font-lock-keywords-1)
      (lisp-el-font-lock-keywords-2, lisp-cl-font-lock-keywords)
      (lisp-cl-font-lock-keywords-1, lisp-cl-font-lock-keywords-2): New constants.
      (lisp-mode-variables): New `elisp' argument.
      (emacs-lisp-mode): Use it.
      * lisp/font-lock.el (lisp-font-lock-keywords, lisp-font-lock-keywords-1)
      (lisp-font-lock-keywords-2): Move to lisp-mode.el.
    • Dmitry Antipov's avatar
      * dispnew.c (set_window_update_flags): Add buffer arg. Adjust comment. · ecab13d4
      Dmitry Antipov authored
      (redraw_frame, update_frame): Adjust users.
      * dispextern.h (set_window_update_flags): Adjust prototype.
      * xdisp.c (redisplay_internal): When updating all frames with zero
      windows_or_buffers_changed, assume that only the windows that shows
      current buffer should be really updated.
    • Eli Zaretskii's avatar
      Cleanups and commentary changes. · afd8eb2c
      Eli Zaretskii authored
    • Eli Zaretskii's avatar
      Horizontal keys in TTY menus work. · 4a48e94d
      Eli Zaretskii authored
    • Glenn Morris's avatar
      Auto-commit of generated files. · ec95982c
      Glenn Morris authored
    • Eli Zaretskii's avatar
    • Eli Zaretskii's avatar
    • Dmitry Antipov's avatar
      Do not allocate huge temporary memory areas and objects while encoding · f8498081
      Dmitry Antipov authored
      for file I/O, thus reducing an enormous memory usage for large buffers.
      See http://lists.gnu.org/archive/html/emacs-devel/2013-10/msg00180.html.
      * coding.h (struct coding_system): New member raw_destination.
      * coding.c (setup_coding_system): Initialize it to zero.
      (encode_coding_object): If raw_destination is set, do not create
      dst_object.  Add comment.
      * fileio.c (toplevel): New constant E_WRITE_MAX.
      (e_write): Do not encode more than E_WRITE_MAX characters per one loop
      iteration.  Use raw_destination if E_WRITE_MAX characters is encoded.
    • 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
    • Jan Djärv's avatar
      * nsterm.m (windowDidExitFullScreen:): · d180bde8
      Jan Djärv authored
      (toggleFullScreen:): Change NS_IMPL_COCOA to HAVE_NATIVE_FS.
    • Bastien Guerry's avatar
    • Paul Eggert's avatar
    • Paul Eggert's avatar
      Fix race where emacs aborts when sent SIGTERM. · 18978362
      Paul Eggert authored
      * keyboard.c (unblock_input_to): Don't process pending signals
      if a fatal error is in progress.
      Fixes: debbugs:15534
    • Paul Eggert's avatar
      ChangeLog consistency. · 3e45e702
      Paul Eggert authored
    • Stefan Monnier's avatar
      * lisp/progmodes/perl-mode.el: Use lexical-binding. · 8ffa1a0b
      Stefan Monnier authored
      Remove redundant :group args.
      (perl-nochange): Change default to be closer to other major modes's
      standard behavior.
      (perl-indent-line): Don't consider text on current line as a
      valid beginning of function from which to indent.