aboutsummaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix mouse pointer on w32 when a menu is activeEli Zaretskii2015-07-041-1/+3
| | | | | | * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer shape while a menu is in use. This started happening since we now send WM_EMACS_SHOWCURSOR messages when the mouse moves.
* Fix processing of alpha parameter for Windows tip frames (Bug#17344)Martin Rudalics2015-07-041-2/+3
| | | | | * src/w32fns.c (x_create_tip_frame): Fix processing alpha parameter. (Bug#17344)
* ;* src/bidi.c (bpa_stack_entry): Update commentary for Unicode 8.0.Eli Zaretskii2015-07-021-1/+1
|
* Be more tolerant to fonts named "Foobar-12"Eli Zaretskii2015-07-011-4/+6
| | | | | | | | | | | * src/frame.c (x_set_font): If font_spec_from_name returns nil, don't barf; instead, request a new fontset to be generated. This avoids unnecessarily rejecting fonts named against XLFD rules. See http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html, for the description of the original problem. * lisp/faces.el (set-face-attribute): Don't be fooled too easily by a hyphen in a font's name.
* Fix value of posn-at-pont in R2L linesEli Zaretskii2015-07-011-3/+8
| | | | | | * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel coordinate of -1, for a newline in a right-to-left line that overflowed into the left fringe.
* Spelling fixesPaul Eggert2015-06-301-1/+1
|
* In strings, prefer plain ` and ' to \` and \'Paul Eggert2015-06-302-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | * lisp/allout.el (allout-insert-listified): * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode): * lisp/ls-lisp.el (ls-lisp-UCA-like-collation) (ls-lisp-string-lessp): * lisp/menu-bar.el (menu-bar-open): * lisp/obsolete/otodo-mode.el (todo-top-priorities): * lisp/progmodes/compile.el (compile): * lisp/progmodes/etags.el (tags-loop-scan): * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation): * lisp/subr.el (posn-actual-col-row): * lisp/term/pc-win.el (x-list-fonts): * lisp/textmodes/texinfmt.el (texinfmt-version): * lisp/textmodes/texnfo-upd.el (texinfo-master-menu): * lisp/time.el (display-time-world-list): * lisp/tmm.el (tmm-menubar): * src/buffer.c (syms_of_buffer): * src/fileio.c (syms_of_fileio): Omit unnecessary and confusing backslash before quote. * lisp/erc/erc.el (erc-cmd-LASTLOG): * lisp/progmodes/flymake.el (flymake-fix-file-name): * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p): Fix string that was intended to escape a backslash and not a quote.
* ; * src/doc.c: Add a 'coding' cookie.Eli Zaretskii2015-06-301-1/+1
|
* Make sure sleep-for always delays for as long as it's toldEli Zaretskii2015-06-301-2/+10
| | | | | | * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in a loop, to ensure we always wait exactly the required amount of time. (Bug#15990)
* Fix pointer signedness glitchPaul Eggert2015-06-301-1/+1
| | | | * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
* Don't block changes in mouse pointer inside 'track-mouse'Eli Zaretskii2015-06-301-1/+3
| | | | | | | | | | | | | | | | | * etc/NEWS: * doc/lispref/frames.texi (Mouse Tracking): Document the special effect of setting 'track-mouse' to 'dragging'. * lisp/textmodes/artist.el (artist-mouse-draw-continously): * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration): * lisp/mouse-drag.el (mouse-drag-throw): * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging' to avoid changes in the shape of the mouse pointer. * src/xdisp.c (define_frame_cursor1): Don't change the mouse pointer shape when do_mouse_tracking has the value of 'dragging', not just any non-nil value. (Bug#20934) (syms_of_xdisp): DEFSYM 'dragging'.
* Allow font names that end in "-NN", where NN is a numberEli Zaretskii2015-06-291-0/+32
| | | | | | | * src/font.c (font_load_for_lface): If the font-spec didn't match any available fonts, try again without interpreting trailing "-NN" as the font size. For the description of the original problem, see http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
* .gdbinit followup to changes in !USE_LSB_TAGEli Zaretskii2015-06-291-3/+0
| | | | | * src/.gdbinit (xgetsym): Don't left-shift $ptr even under !USE_LSB_TAG, as Emacs no longer does.
* ; * src/w32proc.c (w32_executable_type): Fix a typo in a comment.Eli Zaretskii2015-06-281-1/+1
|
* Add a new function w32-application-typeEli Zaretskii2015-06-271-15/+89
| | | | | * src/w32proc.c (Fw32_application_type): New function. ; * etc/NEWS: Mention w32-application-type.
* Avoid error in TLS connections due to incorrect formatEli Zaretskii2015-06-271-1/+1
| | | | | | * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in the call to 'error', instead of the unsupported %u. Reported by lo2net <fangtao0901@gmail.com>. (Bug#20908)
* Fix invisible mouse pointers on Windows.Eli Zaretskii2015-06-262-12/+27
| | | | | | | | | * src/w32fns.c: Include windowsx.h. (w32_wnd_proc): If the mouse moved and the mouse pointer is invisible, make it visible again even when the main (Lisp) thread is busy. * src/w32term.c (w32_toggle_invisible_pointer): Rather then garbaging the frame have the input thread call SetCursor.
* Provide invisible mouse pointers on Windows. (Bug#6105) (Bug#12922)Martin Rudalics2015-06-262-7/+41
| | | | | | | | | | * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible for WM_SETCURSOR and WM_EMACS_SETCURSOR cases. * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible. (w32_toggle_invisible_pointer): New function. (w32_create_terminal): Add w32_toggle_invisible_pointer as toggle_invisible_pointer_hook for this terminal.
* Fix submake dependency bug with .h filesPaul Eggert2015-06-251-1/+1
| | | | | | | * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)): Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h before the submake in $(libsrc) would spin off a subsubmake for $(lib) in parallel with our submake for $(lib) (Bug#20894).
* Translate undisplayable ‘ to `Paul Eggert2015-06-251-3/+3
| | | | | | | | | * doc/lispref/help.texi (Keys in Documentation): * lisp/international/mule-cmds.el (set-locale-environment): * lisp/term/w32console.el (terminal-init-w32console): * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation): If ‘ is not displayable, transliterate it to `, not to '. See: http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
* Fix C99 incompatibilities in Cairo codePaul Eggert2015-06-252-2/+2
| | | | | | * src/image.c (xpm_load) [USE_CAIRO]: * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]: Fix pointer signedness problem.
* Get ‘./configure; make -C src emacs’ to workPaul Eggert2015-06-241-1/+1
| | | | | | Without this fix, lib/fcntl.h isn't built in time (Bug#20894). * lib-src/Makefile.in (../lib/libgnu.a): * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
* Fix GC bugs --with-wide-int and Qnil == 0Paul Eggert2015-06-242-58/+12
| | | | | | | | | | | | | | | | | | | | | | | | Use the same alignment for the !USE_LSB_TAG case as for the more-typical USE_LSB_TAG case. The attempt to support arbitrary alignments with !USE_LSB_TAG had subtle bugs in garbage collection once we changed the representation of symbols so that Qnil == 0. Problem reported by Eli Zaretskii (Bug#20862). * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]: * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol) (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc): Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG. * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove. This optimization in the !USE_LSB_TAG case is no longer valid when symbols are represented via offsets. Change the only use to assume that pointers might hide in objects. * src/lisp.h (alignas) [!USE_LSB_TAG]: Require support in this case, too. (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset. This is OK, because the !USE_LSB_TAG case now applies only when Lisp_Object is wider than void *, so there's no longer any need to shift the offset. Not shifting the offset means that symbol representations have the same alignment as pointers, which the GC assumes.
* * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.Paul Eggert2015-06-231-1/+0
|
* Port selection info fix to clangPaul Eggert2015-06-231-1/+2
| | | | | * src/keyboard.h (kbd_buffer_store_event_hold): Don't assume C11 semantics for alignof (Bug#20756).
* Fix bug that munged selection infoPaul Eggert2015-06-236-122/+151
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some optimizing C compilers, copying a structure did not copy the padding bytes between elements, and the type punning between struct input_data and struct selection_input_data did not work. Change the C code to use a proper union type instead. Problem reported by YAMAMOTO Mitsuharu (Bug#20756). * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr) (readable_events, discard_mouse_events, kbd_buffer_events_waiting) (kbd_buffer_get_event, process_special_events, stuff_buffered_input) (mark_kboards): Use union buffered_input_event, not struct input_event. (clear_event, deliver_input_available_signal, process_special_events): Remove unnecessary forward decls. (kbd_buffer_store_buffered_event): New function, mostly just the old kbd_buffer_store_event_hold, except its argument is of type union buffered_input_event, not struct input_event. (kbd_buffer_unget_event): Define only if HAVE_X11, since it's not needed otherwise. Argument is now of type struct selection_input_event *, not struct input_event *. All callers changed. (clear_event): Arg is now of type union buffered_input_event *, not struct input_event *. All callers changed. * src/keyboard.h [HAVE_X11]: Include "xterm.h". (union buffered_input_event): New type. (kbd_buffer_store_event_hold): Now an inline function, defined here. * src/termhooks.h (EVENT_KIND_WIDTH): New constant. (struct input_event): Use it. * src/xselect.c (struct selection_event_queue): Make elements be of type struct selection_input_event, not struct input_event. (selection_input_event_equal): New static function. (x_queue_event): Use it. (x_queue_event, x_decline_selection_request) (x_selection_current_request, x_reply_selection_request) (x_handle_selection_request, x_handle_selection_clear) (x_handle_selection_event): Use struct selection_input_event, not struct input_event. All callers changed. (x_convert_selection): Omit unused first arg. All callers changed. (Fx_disown_selection_internal): Omit unnecessary union. * src/xterm.c (handle_one_xevent): Use new union buffered_input_event rather than rolling our own equivalent. Prefer sie.kind when setting up that kind of structure. Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold. * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH. (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO) (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION) (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY) (SELECTION_EVENT_TIME, x_handle_selection_event): Arg is now of type struct selection_input_event *) not struct input_event *. All callers changed.
* Check for an input event before showing a dialog box. (Bug#20813)Glenn Morris2015-06-231-1/+1
| | | | | | * lisp/subr.el (y-or-n-p): * src/fns.c (Fyes_or_no_p): Check last-input-event as well as last-nonmenu-event.
* * src/keyboard.c (last_timer_event): Remove unused var.Paul Eggert2015-06-231-3/+0
|
* Enable CPU profiling on CygwinKen Brown2015-06-222-3/+13
| | | | | | | | * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous change that undefined this. (SIGEV_SIGNAL): Ensure that this is defined as a macro. * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on Cygwin.
* Improve diagnostics of profiler-cpu-startKen Brown2015-06-221-5/+14
| | | | | | | * src/profiler.c (setup_cpu_timer): Change return type to 'int'; return -1 if the sampling interval is invalid. (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer' fails. (Bug#20843)
* Fix debug-timer-check on systems without HAVE_TIMERFDEli Zaretskii2015-06-221-2/+20
| | | | | | * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run the expired timers, since wait_reading_process_output doesn't. (debug_timer_callback): Enlarge the tolerance to 20 msec.
* Drop support for CPU profiling on CygwinKen Brown2015-06-211-1/+3
| | | | | * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin. (Bug#20843)
* Fix some “nested” quoting confusion in doc stringsPaul Eggert2015-06-211-4/+4
| | | | | | | | | * lisp/emacs-lisp/advice.el (ad-map-arglists): * lisp/kermit.el (kermit-clean-on): * lisp/mh-e/mh-comp.el (mh-repl-group-formfile): * src/keyboard.c (Frecursive_edit): Use curved quotes when quoting text containing apostrophe, so that the apostrophe isn't curved in the output.
* * src/doc.c (syms_of_doc): Remove unused symbols.Paul Eggert2015-06-201-2/+0
|
* Improve the optional translation of quotesPaul Eggert2015-06-191-30/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix several problems with the recently-added custom variable help-quote-translation where the code would quote inconsistently in help buffers. Add support for quoting 'like this', which is common in other GNU programs in ASCII environments. Change help-quote-translation to use more mnemonic values: values are now the initial quoting char, e.g., (setq help-quote-translation ?`) gets the traditional Emacs help-buffer quoting style `like this'. Change the default behavior of substitute-command-keys to match what's done in set-locale-environment, i.e., quote ‘like this’ if displayable, 'like this' otherwise. * doc/lispref/help.texi (Keys in Documentation): Document new behavior of substitute-command-keys, and document help-quote-translation. * doc/lispref/tips.texi (Documentation Tips): Mention the effect of help-quote-translation. * etc/NEWS: Mention new behavior of substitute-command-keys, and merge help-quote-translation news into it. When talking about doc strings, mention new ways to type quotes. * lisp/cedet/mode-local.el (overload-docstring-extension): Revert my recent change to this function, which shouldn't be needed as the result is a doc string. * lisp/cedet/mode-local.el (mode-local-print-binding) (mode-local-describe-bindings-2): * lisp/cedet/srecode/srt-mode.el (srecode-macro-help): * lisp/cus-theme.el (describe-theme-1): * lisp/descr-text.el (describe-text-properties-1, describe-char): * lisp/emacs-lisp/cl-generic.el (cl--generic-describe): * lisp/emacs-lisp/eieio-opt.el (eieio-help-class) (eieio-help-constructor): * lisp/emacs-lisp/package.el (describe-package-1): * lisp/faces.el (describe-face): * lisp/help-fns.el (help-fns--key-bindings) (help-fns--compiler-macro, help-fns--parent-mode) (help-fns--obsolete, help-fns--interactive-only) (describe-function-1, describe-variable): * lisp/help.el (describe-mode): Use substitute-command-keys to ensure a more-consistent quoting style in help buffers. * lisp/cus-start.el (standard): Document new help-quote-translation behavior. * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs): * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp) (help-xref-url-regexp): * lisp/international/mule-cmds.el (help-xref-mule-regexp-template): * lisp/wid-edit.el (widget-documentation-link-regexp): Also match 'foo', in case we're in a help buffer generated when help-quote-translation is ?'. * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR. (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0) (uRSQM1, uRSQM2, LSQM, RSQM): New constants. (Fsubstitute_command_keys): Document and implement new behavior. (Vhelp_quote_translation): Document new behavior.
* * src/doc.c (Fsubstitute_command_keys): Make previous change compile.Glenn Morris2015-06-181-3/+3
|
* Make translation of quotes to curly in doc strings optional.Alan Mackenzie2015-06-181-2/+32
| | | | | | | | | | | src/doc.c (traditional, prefer-unicode): new symbols. (help-quote-translation): new variable. (Fsubstitute_command_keys): make translation of quotes dependent on `help-quote-translation'; also translate curly quotes back to ASCII ones. lisp/cus-start.el (top-level): Add a customization entry for `help-quote-translation'.
* Fix last fix"Martin Rudalics2015-06-181-2/+2
|
* Set image_cache_refcount before x_default_parameter calls. (Bug#20802)Martin Rudalics2015-06-182-17/+17
| | | | | | * src/nsfns.m (Fx_create_frame): * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting image_cache_refcount before first x_default_parameter call.
* Avoid infloop in redisplay with tall imagesEli Zaretskii2015-06-171-2/+4
| | | | | | | * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling down near ZV. (Bug#20808) Call bidi_unshelve_cache to avoid memory leaks. Use IT_CHARPOS instead of CHARPOS.
* * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.Wolfgang Jenkner2015-06-171-2/+12
| | | | The behavior now matches the description in the manual. (Bug#20783)
* Generate char-script-table from Unicode source. (Bug#20789)Glenn Morris2015-06-161-1/+7
| | | | | | | | | | | | | | | | | | | | | | | * admin/unidata/Makefile.in (AWK): New, set by configure. (all): Add charscript.el. (blocks): New variable. (charscript.el, ${unidir}/charscript.el): New targets. (extraclean): Also remove generated charscript.el. * admin/unidata/blocks.awk: New script. * admin/unidata/Blocks.txt: New data file, from unicode.org. * lisp/international/characters.el: Load charscript. * src/Makefile.in (charscript): New variable. (${charscript}): New target. (${lispintdir}/characters.elc): Depend on charscript.elc. (temacs$(EXEEXT)): Depend on charscript. ; * admin/unidata/README: Mention Blocks.txt. ; * .gitignore: Add lisp/international/charscript.el.
* Better docstring for null. (Bug#20815)Nicolas Petton2015-06-161-1/+1
| | | | | * src/data.c (null): Improves the docstring, saying what null returns when OBJECT is non-nil.
* Fix handling of image cache refcounts. (Bug#20802)Martin Rudalics2015-06-163-8/+27
| | | | | | | | | | | | | | | | | This backports Eli Zaretskii's solution of this problem for W32 to X and NS. * src/nsfns.m (image_cache_refcount): Define unconditionally. (unwind_create_frame): If the image cache's reference count hasn't been updated yet, do that now. (Fx_create_frame): Set image_cache_refcount unconditionally. * src/xfns.c (image_cache_refcount): Define unconditionally. (unwind_create_frame): If the image cache's reference count hasn't been updated yet, do that now. (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount unconditionally. * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on X and NS.
* ;* src/fontset.c: Update obsolete commentary.Eli Zaretskii2015-06-151-12/+9
|
* Spelling fixesPaul Eggert2015-06-142-4/+4
|
* Another improvement of documentation of set-fontset-fontEli Zaretskii2015-06-141-3/+5
| | | | | | * doc/lispref/display.texi (Fontsets): Say explicitly that CHARACTER can be a single codepoint. * src/fontset.c (Fset_fontset_font): Doc fix.
* * src/xsmfns.c (x_session_initialize): Avoid libSM crashGlenn Morris2015-06-131-0/+9
| | | | | when starup directory is missing. (Bug#18851) (errno.h): Include it.
* Improve documentation of ':lang' in font specsEli Zaretskii2015-06-131-2/+4
| | | | | | | | | * src/font.c (Ffont_spec): Doc fix: elaborate on the values and use of the ':lang' property of the font spec. * doc/emacs/frames.texi (Fonts): Document the language names that can be in the STYLE part of XLFD. * doc/lispref/display.texi (Low-Level Font): Document the ':lang' property.
* * src/print.c (print_object): Minor simplification.Paul Eggert2015-06-121-9/+8
|