Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Fix the character width tables for the CLI such that all unicode code-points less than 0x300 have a width of 1. This is in fact the case for Mac, Ubuntu, and Windows. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
f0c5a86fefecded07e098e1326dd54c7 |
User & Date: | drh 2024-09-30 18:19:38 |
Context
2024-10-01
| ||
10:49 | Add an #if'd-out block to sqlite3-wasm.c mentioning the LONGDOUBLE_TYPE, as brought up in forum post cbfb0d0ac. No functional changes. (check-in: 0b83e8f1 user: stephan tags: trunk) | |
2024-09-30
| ||
18:19 | Fix the character width tables for the CLI such that all unicode code-points less than 0x300 have a width of 1. This is in fact the case for Mac, Ubuntu, and Windows. (check-in: f0c5a86f user: drh tags: trunk) | |
17:28 | In fts5, avoid starting a new merge of level L if there exists already an ongoing merge of a level less than L. (check-in: 350c6e75 user: dan tags: trunk) | |
Changes
Changes to src/shell.c.in.
︙ | ︙ | |||
627 628 629 630 631 632 633 | /* Lookup table to estimate the number of columns consumed by a Unicode ** character. */ static const struct { unsigned char w; /* Width of the character in columns */ int iFirst; /* First character in a span having this width */ } aUWidth[] = { | | | 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 | /* Lookup table to estimate the number of columns consumed by a Unicode ** character. */ static const struct { unsigned char w; /* Width of the character in columns */ int iFirst; /* First character in a span having this width */ } aUWidth[] = { /* {1, 0x00000}, */ {0, 0x00300}, {1, 0x00370}, {0, 0x00483}, {1, 0x00487}, {0, 0x00488}, {1, 0x0048a}, {0, 0x00591}, {1, 0x005be}, {0, 0x005bf}, {1, 0x005c0}, {0, 0x005c1}, {1, 0x005c3}, {0, 0x005c4}, {1, 0x005c6}, {0, 0x005c7}, {1, 0x005c8}, {0, 0x00600}, {1, 0x00604}, {0, 0x00610}, {1, 0x00616}, {0, 0x0064b}, {1, 0x0065f}, {0, 0x00670}, {1, 0x00671}, {0, 0x006d6}, {1, 0x006e5}, {0, 0x006e7}, {1, 0x006e9}, {0, 0x006ea}, {1, 0x006ee}, {0, 0x0070f}, {1, 0x00710}, {0, 0x00711}, {1, 0x00712}, {0, 0x00730}, |
︙ | ︙ | |||
705 706 707 708 709 710 711 | ** Inaccuracies in the width estimates might cause columns to be misaligned. ** Unfortunately, there is nothing we can do about that. */ int cli_wcwidth(int c){ int iFirst, iLast; /* Fast path for common characters */ | < < < | 705 706 707 708 709 710 711 712 713 714 715 716 717 718 | ** Inaccuracies in the width estimates might cause columns to be misaligned. ** Unfortunately, there is nothing we can do about that. */ int cli_wcwidth(int c){ int iFirst, iLast; /* Fast path for common characters */ if( c<=0x300 ) return 1; /* The general case */ iFirst = 0; iLast = sizeof(aUWidth)/sizeof(aUWidth[0]) - 1; while( iFirst<iLast-1 ){ int iMid = (iFirst+iLast)/2; |
︙ | ︙ |