summaryrefslogtreecommitdiffstats
path: root/utf8.c
AgeCommit message (Collapse)Author
2015-11-12Support UTF-8 key bindings by expanding the key type from int tonicm
uint64_t and converting UTF-8 to Unicode on input and the reverse on output. (This allows key bindings, there are still omissions - the largest being that the various prompts do not accept UTF-8.)
2015-11-05Update the internal wcwidth(3) table of tmux(1) to match the dataschwarze
in /usr/src/share/locale/ctype/en_US.UTF-8.src, with one single exception: Keep U+00AD SOFT HYPHEN at width 1 rather than moving it to width 0, a tradition already observed in the old https://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c . While here, manually rebalance the btree for optimal lookup speed. OK nicm@
2015-04-20Style nit - unnecessary brackets.nicm
2014-10-08Add xreallocarray and remove nmemb argument from xrealloc.nicm
2014-04-17Add some UTF-8 utility functions and use them to prevent the width limitnicm
on formats from splitting UTF-8 characters improperly.
2014-04-17Some more long lines.nicm
2014-04-02Support UTF-8 with choose-buffer, from Kosuke ASAMI. Also makenicm
buffer_sample bigger to let it trim at window right edge.
2014-03-31In four byte UTF-8 sequences, only three bits of the first byte shouldnicm
be used. Fix from Koga Osamu.
2013-04-12Remove some Korean characters from the zero-width list that apparentlyNicholas Marriott
shouldn't be there, from Jeong Mok Cho.
2011-01-03Support for UTF-8 mouse input (\033[1005h). This was added in xterm 262Nicholas Marriott
and supports larger terminals than the older way. If the new mouse-utf8 option is on, UTF-8 mouse input is enabled for all UTF-8 terminals. The option defaults to on if LANG etc are set in the same manner as the utf8 option. With help and based on code from hsim at gmx.li.
2009-10-20%zu not %u, doh.Nicholas Marriott
2009-10-20Try to reduce the UTF-8 mess.Nicholas Marriott
Get rid of passing around u_char[4]s and define a struct utf8_data which has character data, size (sequence length) and width. Move UTF-8 character collection into two functions utf8_open/utf8_append in utf8.c which fill in this struct and use these functions from input.c and the various functions in screen-write.c. Space for rather more data than is necessary for one UTF-8 sequence is in the utf8_data struct because screen_write_copy is still nasty and needs to reinject the character (after combining) into screen_write_cell.
2009-06-25Miscellaneous unused functions, including one which was basically aNicholas Marriott
duplicate. Found by lint.
2009-06-24Constify utf8_width() function argument.Nicholas Marriott
2009-06-01Import tmux, a terminal multiplexor allowing (among other things) a singleNicholas Marriott
terminal to be switched between several different windows and programs displayed on one terminal be detached from one terminal and moved to another. ok deraadt pirofti