1. 02 Jun, 2019 2 commits
    • YAMAMOTO Mitsuharu's avatar
      Make fthbfont and derivatives use common HarfBuzz code in hbfont.c · 1ab69630
      YAMAMOTO Mitsuharu authored
      * src/font.h (fthbfont_shape, fthbfont_combining_capability)
      [HAVE_HARFBUZZ]: Remove prototypes.
      * src/ftfont.c: Don't include math.h.
      (uni_combining, uni_general, uni_mirroring, get_hb_unicode_funcs)
      (fthbfont_shape_by_hb, fthbfont_combining_capability, fthbfont_shape)
      [HAVE_HARFBUZZ]: Remove functions.
      * src/ftfont.c (syms_of_ftfont_for_pdumper) [HAVE_HARFBUZZ]:
      * src/xftfont.c (syms_of_xftfont_for_pdumper) [HAVE_HARFBUZZ]:
      * src/ftcrfont.c (syms_of_ftcrfont_for_pdumper) [HAVE_HARFBUZZ]: Use
      hbfont_shape and hbfont_combining_capability for fthbfont_shape and
      fthbfont_combining_capability, respectively.
    • YAMAMOTO Mitsuharu's avatar
      Make fthbfont and derivatives use common HarfBuzz code in hbfont.c · ab1d5d40
      YAMAMOTO Mitsuharu authored
      * src/font.h (fthbfont_shape, fthbfont_combining_capability)
      [HAVE_HARFBUZZ]: Remove prototypes.
      * src/ftfont.c: Don't include math.h.
      (uni_combining, uni_general, uni_mirroring, get_hb_unicode_funcs)
      (fthbfont_shape_by_hb, fthbfont_combining_capability, fthbfont_shape)
      [HAVE_HARFBUZZ]: Remove functions.
      * src/ftfont.c (syms_of_ftfont_for_pdumper) [HAVE_HARFBUZZ]:
      * src/xftfont.c (syms_of_xftfont_for_pdumper) [HAVE_HARFBUZZ]:
      * src/ftcrfont.c (syms_of_ftcrfont_for_pdumper) [HAVE_HARFBUZZ]: Use
      hbfont_shape and hbfont_combining_capability instead of fthbfont_shape
      and fthbfont_combining_capability, respectively.
  2. 01 Jun, 2019 9 commits
  3. 31 May, 2019 5 commits
    • Eli Zaretskii's avatar
    • Eli Zaretskii's avatar
      Enhance Hebrew display in HELLO · b55cc097
      Eli Zaretskii authored
      * etc/HELLO: Show off display of Hebrew with diacriticals
      (a.k.a. "nikkud").
    • Eli Zaretskii's avatar
      Fix handling of -xrm on MS-Windows broken by recent commits · ec8e914c
      Eli Zaretskii authored
      * src/w32reg.c (w32_get_string_resource): The argument V_RDB
      is a 'char **', not a 'char *'.  This fixes -xrm handling on
      MS-Windows, broken by conversion of x_get_string_resource to
      terminal-specific hook.
      (cherry picked from commit 833097cb)
    • Eli Zaretskii's avatar
      Unbreak display of characters on MS-Windows · 2ffec6b4
      Eli Zaretskii authored
      * src/w32font.c (w32font_draw): Convert the glyph_string's
      char2b array to 16-bit WCHAR data that ExtTextOutW needs.
      (cherry picked from commit 38564f8a)
    • Eli Zaretskii's avatar
      Add HarfBuzz font backend for MS-Windows · fba3687d
      Eli Zaretskii authored
      * src/w32uniscribe.c [HAVE_HARFBUZZ]: Include math.h and
      (bswap_32): Define for GCC 4.3.0 and later; else include
      <byteswap.h> from Gnulib.
      (struct uniscribe_font_info): Extend for HarfBuzz; 'cache' is
      now a 'void *' (all users changed).
      [HAVE_HARFBUZZ]: Define typedefs for HarfBuzz functions to be
      loaded dynamically from the HarfBuzz DLL.  Define macros to
      call those functions via function pointers.
      (uniscribe_open) [HAVE_HARFBUZZ]: Use the HarfBuzz font driver
      if the type of the font entity is 'harfbuzz'.
      (uniscribe_close) [HAVE_HARFBUZZ]: For fonts using the
      HarfBuzz backend, call hb_font_destroy to free memory used for
      the cached hb_font data.
      (uniscribe_shape): Fix assignment of character codepoints to
      glyphs from a single cluster.
      (w32hb_list, w32hb_match, free_cb, w32hb_get_font_table)
      (w32hb_get_font, w32hb_encode_char, w32hb_begin_font)
      (w32uni_combining, w32uni_general, w32uni_mirroring)
      (get_hb_unicode_funcs, w32hb_shape)
      (w32hb_combining_capability, load_harfbuzz_funcs)
      [HAVE_HARFBUZZ]: New functions.
      (syms_of_w32uniscribe_for_pdumper) [HAVE_HARFBUZZ]: Load the
      HarfBuzz DLL and register the HarfBuzz backend with its
      * src/w32font.c (syms_of_w32font) <Qharfbuzz>: New DEFSYM.
      * src/w32fns.c (Fx_create_frame, w32_create_tip_frame)
      [HAVE_HARFBUZZ]: Register the harfbuzz font backend.
      * src/lisp.h (get_unicode_property): Declare prototype.
      * src/font.h (harfbuzz_font_driver) [HAVE_NTGUI]: Declare.
      * src/chartab.c (get_unicode_property): New function, body
      taken from get-unicode-property-internal.
      (Fget_unicode_property_internal): Call get_unicode_property
      after validating input.
      * doc/lispref/frames.texi (Font and Color Parameters):
      * doc/emacs/msdos.texi (Windows Fonts): Document support for
      HarfBuzz text shaping on MS-Windows.
      * configure.ac (HAVE_HARFBUZZ): Move out of the X-specific
      part, and consider HarfBuzz also for HAVE_W32 systems.
      Require HarfBuzz v1.2.3 for w32.
  4. 23 May, 2019 3 commits
    • YAMAMOTO Mitsuharu's avatar
      Merge branch 'master' into harfbuzz · b40dde70
      YAMAMOTO Mitsuharu authored
    • YAMAMOTO Mitsuharu's avatar
      Make Cairo build obey hint-style font setting (Bug#35781) · 03feb937
      YAMAMOTO Mitsuharu authored
      * src/ftfont.h (ftfont_open2): Remove extern.
      (ftfont_fix_match, ftfont_add_rendering_parameters)
      (ftfont_entity_pattern): Add externs.
      (struct font_info): Remove member bitmap_strike_index.
      (struct font_info) [USE_CAIRO]: Remove member ft_size_draw.  All uses removed.
      Add member bitmap_position_unit.
      * src/xftfont.c (xftfont_fix_match, xftfont_add_rendering_parameters): Move
      functions from here ...
      * src/ftfont.c (ftfont_fix_match, ftfont_add_rendering_parameters): ... to
      here.  All uses changed.
      * src/xftfont.c (xftfont_open): Extract FcPattern creation from font entity
      from here ...
      * src/ftfont.c (ftfont_entity_pattern):	... to here.
      * src/xftfont.c (syms_of_xftfont): Move DEFSYMs for Fontconfig's rendering
      parameters from here ...
      * src/ftfont.c (syms_of_ftfont): ... to here.
      * src/ftfont.c (ftfont_open, ftfont_open2): Undo introduction of
      bitmap_strike_index.  Merge functions into ftfont_open.
      * src/ftcrfont.c (ftcrfont_open): Align code with xftfont_open rather than
      (ftcrfont_close): Likewise.
      (ftcrfont_has_char, ftcrfont_encode_char):
      (ftcrfont_otf_capability) [HAVE_LIBOTF]:
      (ftcrfont_variation_glyphs) [HAVE_OTF_GET_VARIATION_GLYPHS]: New functions.
      (ftcrfont_driver): Register them.
      (ftcrfont_get_bitmap, ftcrfont_anchor_point):
      (ftcrfont_shape) [HAVE_M17N_FLT && HAVE_LIBOTF]: Use bitmap_position_unit
      instead of bitmap_strike_index to screen bitmap fonts.
      (ftcrfont_get_bitmap, ftcrfont_anchor_point):
      (ftcrfont_otf_capability) [HAVE_LIBOTF]:
      (ftcrfont_shape) [HAVE_M17N_FLT && HAVE_LIBOTF]:
      (ftcrfont_variation_glyphs) [HAVE_OTF_GET_VARIATION_GLYPHS]: Temporarily
      assign ftcrfont_info->ft_size and call corresponding ftfont functions.
      (ftcrfont_draw): Don't flush cairo surface when exporting.
    • Basil L. Contovounesios's avatar
      Fix url-copy-file argument handling · 72047556
      Basil L. Contovounesios authored
      For discussion, see the following thread:
      * lisp/url/url-handlers.el: Update autoloaded docstrings.
      Quote function symbols as such.
      (url-handler-regexp): Make grouping construct shy.
      (url-file-handler, url-insert-buffer-contents)
      (url-handlers-create-wrapper, url-handlers-set-buffer-mode):
      (url-file-handler-identity): Clarify calling convention.
      (file-name-absolute-p, url-file-local-copy): Mark ignored arguments
      as such.
      (url-handler-directory-file-name): Prefer string comparison over
      regexp match where either will do.
      (url-copy-file): Handle integer as third argument as per copy-file.
  5. 22 May, 2019 6 commits
    • Stefan Monnier's avatar
      * lisp/textmodes/sgml-mode.el: Fix lone `>` in sgml text · 70839740
      Stefan Monnier authored
      (sgml--syntax-propertize-ppss):New variable and function.
      (sgml-syntax-propertize-rules): Use it.
      Don't ignore quotes not followed by a matching quote or a '>' or '<'.
      (sgml-syntax-propertize): Set up sgml--syntax-propertize-ppss.
      * test/lisp/textmodes/sgml-mode-tests.el (sgml-tests--quotes-syntax):
      Add test for lone '>'.
    • Paul Eggert's avatar
      Remove fixnum restriction on some display vars · dfed333b
      Paul Eggert authored
      This is a minor patch to remove some fixnum restrictions.
      Many more such patches are needed, but one thing at a time.
      * doc/emacs/custom.texi (Examining): Update fill-column example.
      * src/buffer.c (fill-column, left-margin, tab-width)
      (buffer-saved-size, left-margin-width, right-margin-width)
      (left-fringe-width, right-fringe-width, scroll-bar-width)
      (scroll-bar-height, buffer-display-count):
      Allow any integer; do not restrict to fixnums.
      * src/character.h (SANE_TAB_WIDTH): Do not assume tab_width
      is a nonnegative fixnum.
      (sanitize_tab_width): Take a Lisp_Object integer, not an
      EMACS_INT.  Only use changed.
      * src/data.c (store_symval_forwarding): Remove unnecessary
      SYMBOLP since the predicate (e.g., Qintegerp) is always a
      symbol (leave the test in as an eassert).  Avoid assignments
      inside if-conditions.
      * src/fileio.c (Fdo_auto_save): Do not assume
      buffer-saved-size is a fixnum.  Avoid undefined behavior
      on EMACS_INT overflow by multiplying a fixnum by at most 4,
      not by at most 13.
      * src/window.c (set_window_buffer): When buffer-display-count
      is too large for a fixnum, make it a bignum.
      * src/xdisp.c (FILL_COLUMN_INDICATOR_NEEDED): Remove macro, ...
      (fill_column_indicator_column): ... replacing with this new function.
      All uses changed.  The function is a bit pickier, to prevent
      problems with non-character fixnums and columns out of range
      for int, and to remove the assumption that integers are in
      fixnum range.
      (append_space_for_newline, extend_face_to_end_of_line):
      Avoid undefined behavior with signed integer overflow.
    • Glenn Morris's avatar
      Merge from origin/emacs-26 · 5c21832a
      Glenn Morris authored
      b0da9151 (origin/emacs-26, emacs-26) Fix a typo in ELisp manual
      400907b3 Add option to disable help completion autoloading (Bug#28607)
      122ba168 Don't segfault on force-window-update of deleted window
      015b12eb Fix typo in ELisp manual
      eadf044e Remove repeated function call in picture.el
      1228a90c ; Fix mm-destroy-parts docstring typo
      6cfd68d4 Fix Hideshow key binding typo in Emacs manual
    • Glenn Morris's avatar
      ; Merge from origin/emacs-26 · d99f0c6f
      Glenn Morris authored
      The following commit was skipped:
      7ce4b35a Backport: Fix name of gnus-summary-sort-by-mark(s)
    • Glenn Morris's avatar
      Merge from origin/emacs-26 · 0d1ff4cb
      Glenn Morris authored
      5d24af87 Remove from docs references to obsolete MULE variables
      2bdc419f Do potentially destructive operations in prepare-commit-msg
      # Conflicts:
      #	src/search.c
    • Tom Levy's avatar
      Fix a typo in ELisp manual · b0da9151
      Tom Levy authored
      * doc/lispref/sequences.texi (Sequence Functions): Fix a typo.
      Copyright-paperwork-exempt: yes
  6. 21 May, 2019 7 commits
    • Alexander Gramiak's avatar
    • Alan Third's avatar
      Fix some deprecation notices on macOS 10.14 · 9624f609
      Alan Third authored
      * src/nsimage.m ([EmacsImage setXBMColor:]): Replace colorSpaceName
      * src/nsmenu.m ([EmacsDialogPanel initWithContentRect:styleMask:]):
      Remove reference to oneShot.
      * src/nsterm.h (ns_enable_screen_updates): Remove function prototype.
      (NSPasteboardTypeURL): Define new names and replace all callers.
      * src/nsterm.m ([EmacsColor colorUsingDefaultColorSpace]): Replace
      calls to colorUsingColorSpaceName on macOS > 10.7.
      ([EmacsView performDragOperation:]): Add FIXME about deprecation.
      (ns_enable_screen_updates): Remove functions and all callers.
      (disable_screen_updates_count): Remove variable.
      * src/macfont.m (macfont_draw): Use CGContext instead of graphicsPort
      on macOS >= 10.10
    • Paul Eggert's avatar
      Pacify libpng on interlaced images (Bug#35843) · cb367c8e
      Paul Eggert authored
      * src/image.c (png_set_interlace_handling) [WINDOWSNT]:
      New function to link.
      (init_png_functions): Link it.
      (png_load_body): Call it before calling png_read_update_info.
    • Paul Eggert's avatar
      Remove time-date debugging scaffolding · 8ff7807a
      Paul Eggert authored
      Problem reported by Lars Ingebrigtsen in:
      * lisp/calendar/time-date.el (date-to-time):
      Use plain condition-case, not condition-case-unless-debug.
    • Federico Tedin's avatar
      Use lexical-binding in tempo.el and add tests · eb2e9a2c
      Federico Tedin authored
      For discussion, see the following thread:
      * lisp/tempo.el: Use lexical-binding.
      (tempo-define-template): Expand documentation to mention
      (tempo-local-tags, tempo-collection, tempo-dirty-collection)
      (tempo-marks, tempo-match-finder): Define with defvar-local.
      (tempo-named-insertions, tempo-region-start, tempo-region-stop): Make
      them automatically buffer-local.
      * test/lisp/tempo-tests.el: Add tests for tempo.el.
    • Alan Mackenzie's avatar
      C Mode: Fix indentation of DEFUN's function's argument list. · 58565129
      Alan Mackenzie authored
      Formally, when DEFUNs still used knr argument lists, these were indented by
      the syntactic context knr-argdecl-intro (5 columns).  Since this is no longer
      the case, we now just use c-basic-offset (2 columns in "gnu" style).
      * lisp/progmodes/cc-align.el (c-indent-gnu-DEFUN-intro-cont): Modernize the
      indentation.  Amend the doc string accordingly.
    • Noam Postavsky's avatar
      Add option to disable help completion autoloading (Bug#28607) · 400907b3
      Noam Postavsky authored
      * lisp/help-fns.el (help-enable-completion-auto-load): New option.
      (help--symbol-completion-table): Consult it.
      * doc/emacs/building.texi (Lisp Libraries): Document it.
      * etc/NEWS: Announce it.
      * doc/lispref/loading.texi (Autoload by Prefix): New section.
      (Autoload): Reference it.
  7. 20 May, 2019 8 commits