Commit Graph
1670 Commits
Author SHA1 Message Date
Kovid Goyal d01e5f72fc Use a cache for dummy glyph lookups 2017-11-12 23:43:21 +05:30
Kovid Goyal 5c6be7f637 Insulate emoji test from system wcwidth 2017-11-12 23:43:21 +05:30
Kovid Goyal 088087df73 Use only cluster numbers and glyph sizes for grouping glyphs into cells
See https://github.com/behdad/harfbuzz/issues/615 for discussion
2017-11-12 23:43:21 +05:30
Kovid Goyal 0bd093ec2e Also fix mouse URXVT_PROTOCOL
Fixes #169
2017-11-12 22:11:20 +05:30
Kovid Goyal 4613e161ce Fix incorrect encoding for mouse events in the UTF8_PROTOCOL
Fixes #167
2017-11-12 22:05:01 +05:30
Kovid Goyal dad9444db0 Dont crash if harfbuzz return null info or positions pointers 2017-11-12 17:18:49 +05:30
Kovid Goyal dd0080d3ce Fix #168 2017-11-12 16:14:59 +05:30
Kovid Goyal 6b9303ba7d Dont store standard cursors on the window object 2017-11-12 12:42:09 +05:30
Kovid Goyal eb32423fb6 oops 2017-11-12 12:33:44 +05:30
Kovid Goyal 9bb2a05a9b Update list of major features 2017-11-12 11:49:42 +05:30
Kovid Goyal 653fc0dd7e Fix #50 2017-11-12 11:42:50 +05:30
Kovid Goyal cee6ef9941 Center multi-cell glyph runs 2017-11-12 11:04:52 +05:30
Kovid Goyal 67a37f1f41 Adjust the point size of fallback and symbol fonts so that their heights match the current cell height 2017-11-12 10:30:57 +05:30
Kovid Goyal 604e82fd65 oops 2017-11-11 21:15:19 +05:30
Kovid Goyal 5f4e003bed Add a ligature shaping test 2017-11-11 20:55:53 +05:30
Kovid Goyal 53e9f35c1f Add test for harfbuzz shaping 2017-11-11 18:47:34 +05:30
Kovid Goyal c56a2ed055 Ensure that harfbuzz always uses the OpenType shaper 2017-11-11 18:25:25 +05:30
Kovid Goyal e5d411b80d Refactor font code
DRYer with global state stored in fewer places. And only round-tripping
through python for font selection, not face creation.
2017-11-11 18:14:22 +05:30
Kovid Goyal 98e93cb4bd Workaround for broken CTFontCreateForString 2017-11-11 10:16:43 +05:30
Kovid Goyal f5040532c5 Ensure combining chars are zero-width regardless of wcwidth implementation 2017-11-11 09:29:28 +05:30
Kovid Goyal 447a2fe8cf ... 2017-11-11 09:20:34 +05:30
Kovid Goyal a14defbab7 Change the showcase fonts 2017-11-11 09:13:04 +05:30
Kovid Goyal 3592f82e4f Implement fallback fonts in CoreText 2017-11-11 08:08:03 +05:30
Kovid Goyal 4edfa9f4fd Implement loading of bitmap fonts via FreeType
Needed for some fallback fonts such as Apple Color Emoji
2017-11-11 08:07:18 +05:30
Kovid Goyal 51fe1e4dab ... 2017-11-11 07:12:50 +05:30
Kovid Goyal 2df9f3500c Build with --debug in update-on-ox 2017-11-11 07:12:21 +05:30
Kovid Goyal 289cfe7584 Fix bold-italic variant not being auto-selected on macOS 2017-11-10 22:06:11 +05:30
Kovid Goyal b603d7abb7 Ensure underline_thickness is not zero 2017-11-10 21:46:50 +05:30
Kovid Goyal 3437433ed4 ... 2017-11-10 17:43:47 +05:30
Kovid Goyal cccacfdf7c Restore Apple's line height fudge factor on macOS 2017-11-10 17:38:36 +05:30
Kovid Goyal c6fa0503af Simplify font_units_to_pixels
Make use of the precalculated scaling value in the FT Face metrics
object
2017-11-10 17:23:28 +05:30
Kovid Goyal 579933ac27 ... 2017-11-10 15:55:59 +05:30
Kovid Goyal 541f389a06 Work on using FreeType to render on macOS as well 2017-11-10 15:39:53 +05:30
Kovid Goyal d2654db6f0 oops 2017-11-10 14:57:44 +05:30
Kovid Goyal c2b2833a37 API to load FreeType font from path and psname 2017-11-10 14:50:15 +05:30
Kovid Goyal b0fffad0c2 API to create FreeType face from in memory data 2017-11-10 14:30:54 +05:30
Kovid Goyal 774956053a Allow storing arbitrary data on FreeType Face objects 2017-11-10 14:20:20 +05:30
Kovid Goyal 5c582f7639 Start work on harfbuzz rendering on macs 2017-11-10 12:52:54 +05:30
Kovid Goyal ccc0433fa1 ... 2017-11-10 11:26:58 +05:30
Kovid Goyal 43bf056f09 Add a command to list fonts 2017-11-10 11:02:32 +05:30
Kovid Goyal 1d7b650fd0 ... 2017-11-10 10:30:34 +05:30
Kovid Goyal fefe6c9024 Use fc-list instead of fc-match to select fonts
This is because there is no way to force fc-match to return a monospace
font. So if the user specifies a non-existent font we end up with some
non-monospaced font, which looks terrible.

Also, this makes the font selection logic or macOS and Linux similar.
2017-11-10 10:15:37 +05:30
Kovid Goyal b58e900806 Call prerender() in rendering tests setup 2017-11-10 08:30:35 +05:30
Kovid Goyal ec58777d01 Fix compilation against old versions of fontconfig 2017-11-10 08:28:44 +05:30
Kovid Goyal 7a0b649cbd Fix resizing of fonts 2017-11-10 07:34:52 +05:30
Kovid Goyal e15bc71930 Code to list fontconfig fonts 2017-11-09 20:53:10 +05:30
Kovid Goyal 6d02e884d8 oops 2017-11-09 17:30:30 +05:30
Kovid Goyal 6d7546aa8c pre-rendering must happen after layout 2017-11-09 17:11:37 +05:30
Kovid Goyal ace91f04af More appropriate location for function definition 2017-11-09 17:04:31 +05:30
Kovid Goyal 934d21ac30 Wire up a few remaining pieces 2017-11-09 16:55:46 +05:30