1802 Commits

Author SHA1 Message Date
Kovid Goyal
4b0ff03868
Increase max ligature length to 9 chars
Fixes #182
2017-11-26 10:33:57 +05:30
Kovid Goyal
8961eaaa9d
Fix compilation error on 32bot systems
Fixes #185
2017-11-26 08:22:14 +05:30
Kovid Goyal
356722b9a6
Fix build failure on systems with __OPTIMZE__ defined
Fixes #181
2017-11-24 22:42:56 +05:30
Kovid Goyal
89e5ae28bb
Dont fail to start if the user's /etc/passwd is missing an entry for the current uid
Appears to happen on some nix systems. Fixes #178
2017-11-23 00:40:21 +05:30
Kovid Goyal
b40e1e6492
Decrease minimum fonts size to 4pt 2017-11-21 07:13:17 +05:30
Kovid Goyal
4dc6918b13
Get rid of the send_text_map code
Just transform send_text directives in the config file to map
directives.
2017-11-19 08:56:34 +05:30
Kovid Goyal
1d45a831ef
version 0.5.0 v0.5.0 2017-11-19 07:59:01 +05:30
Kovid Goyal
32920fee5b
Fix super imposing of glyphs generating fringes 2017-11-19 07:56:35 +05:30
Kovid Goyal
121de41930
Make send_text a normal keybaord shortcut action
Uses the new support for arguments to shortcut actions. Fixes #173
2017-11-17 01:27:26 +05:30
Kovid Goyal
a553107da8
Update README 2017-11-16 10:46:42 +05:30
Kovid Goyal
8cad6ae9d6
Fix leak-on-exit from libstartup-notification 2017-11-16 10:29:21 +05:30
Kovid Goyal
ed60e7cf19
Fix #172 2017-11-16 07:47:08 +05:30
Kovid Goyal
a9db9f8874
... 2017-11-14 12:41:09 +05:30
Kovid Goyal
b9b2570369
Reduce brew install harfbuzz time on travis 2017-11-14 12:01:06 +05:30
Kovid Goyal
c4f61de3fe
Add a couple more targets to the makefile 2017-11-14 09:48:59 +05:30
Kovid Goyal
523c9ff0d1
Make incremental building the default 2017-11-14 09:47:08 +05:30
Kovid Goyal
a02fd8411a
Generate a compilation database, useful for llvm tooling 2017-11-14 09:31:23 +05:30
Kovid Goyal
98d8d6b915
Update CHANGELOG 2017-11-13 19:48:06 +05:30
Kovid Goyal
2b87e1f601
Fix #170 2017-11-13 19:47:54 +05:30
Kovid Goyal
084fb23930
Forgot to clear hash table roots after deleting
Doesn't matter in normal usage, but causes tests to fail.
2017-11-13 16:12:28 +05:30
Kovid Goyal
244840255b
Remove unused function 2017-11-13 16:03:44 +05:30
Kovid Goyal
94c11af7c8
Refactor the font management code
Use a hash table for special glyph status caching
Manage (almost) all global state with a single object
Allocate all fonts on the heap
Fix the use-after-free for fallback fonts
2017-11-13 15:53:34 +05:30
Kovid Goyal
26e6716f67
A test that reliably triggers the current failure 2017-11-13 15:30:30 +05:30
Kovid Goyal
aef8b4ae67
Allow re-use of ensure_space_for macro 2017-11-13 15:29:52 +05:30
Kovid Goyal
a97ba08cbb
Fix asan test failure 2017-11-13 09:31:48 +05:30
Kovid Goyal
ddc327b772
Prevent DoS attacks via requesting too many fallback fonts 2017-11-13 08:40:47 +05:30
Kovid Goyal
a70f6405ac
Allocate fallback fonts on the heap
The size of a font is quite large ~ 100KB so it does not make sense to
store their data statically.
2017-11-13 08:39:30 +05:30
Kovid Goyal
bf0ad30d17
DRYer 2017-11-13 07:30:35 +05:30
Kovid Goyal
6fbe52acf4
... 2017-11-13 07:13:42 +05:30
Kovid Goyal
9fccc38382
Better fix for not using the unsafe to break flag
Recognize special glyphs by comparing the index to the glyph for the
codepoint in the font. Cannot rely on glyph width as many glyphs have
zero width. For example the glyph for space characters.
2017-11-13 07:03:58 +05:30
Kovid Goyal
339c0d2980
Put back consumed API 2017-11-12 23:43:22 +05:30
Kovid Goyal
336857a106
A more general cp->gid API 2017-11-12 23:43:21 +05:30
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