diff options
| author | Michal Nazarewicz | 2016-09-19 00:23:40 +0200 |
|---|---|---|
| committer | Michal Nazarewicz | 2017-02-15 16:54:06 +0100 |
| commit | 5ec3a58462e99533ea5200de356302181d634d0b (patch) | |
| tree | e0149bb01ac5e087cfaf3429880deebadb703b56 /test | |
| parent | 0d4290650d9ec635a657ed8537cfc960b41381b9 (diff) | |
| download | emacs-5ec3a58462e99533ea5200de356302181d634d0b.tar.gz emacs-5ec3a58462e99533ea5200de356302181d634d0b.zip | |
Generate upcase and downcase tables from Unicode data (bug#24603)
Use Unicode data to generate case tables instead of mostly repeating
them in lisp code. Do that in a way which maps ‘Dz’ (and similar)
digraph to ‘dz’ when down- and ‘DZ’ when upcasing.
https://debbugs.gnu.org/cgi/bugreport.cgi?msg=89;bug=24603 lists all
changes to syntax table and case tables introduced by this commit.
* lisp/international/characters.el: Remove case-pairs defined with
explicit Lisp code and instead use Unicode character properties.
* test/src/casefiddle-tests.el (casefiddle-tests--characters,
casefiddle-tests-casing): Update test cases which are now working
as they should.
Diffstat (limited to 'test')
| -rw-r--r-- | test/src/casefiddle-tests.el | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/test/src/casefiddle-tests.el b/test/src/casefiddle-tests.el index 8d9cf34ee50..c752bb09172 100644 --- a/test/src/casefiddle-tests.el +++ b/test/src/casefiddle-tests.el | |||
| @@ -73,8 +73,7 @@ | |||
| 73 | 73 | ||
| 74 | (?Σ ?Σ ?σ ?Σ) | 74 | (?Σ ?Σ ?σ ?Σ) |
| 75 | (?σ ?Σ ?σ ?Σ) | 75 | (?σ ?Σ ?σ ?Σ) |
| 76 | ;; FIXME(bug#24603): Another broken one: | 76 | (?ς ?Σ ?ς ?Σ) |
| 77 | ;;(?ς ?Σ ?ς ?Σ) | ||
| 78 | 77 | ||
| 79 | (?Ⅷ ?Ⅷ ?ⅷ ?Ⅷ) | 78 | (?Ⅷ ?Ⅷ ?ⅷ ?Ⅷ) |
| 80 | (?ⅷ ?Ⅷ ?ⅷ ?Ⅷ))) | 79 | (?ⅷ ?Ⅷ ?ⅷ ?Ⅷ))) |
| @@ -196,7 +195,6 @@ | |||
| 196 | ;;("fish" "FIsh" "fish" "Fish" "Fish") | 195 | ;;("fish" "FIsh" "fish" "Fish" "Fish") |
| 197 | ;;("Straße" "STRASSE" "straße" "Straße" "Straße") | 196 | ;;("Straße" "STRASSE" "straße" "Straße" "Straße") |
| 198 | ;;("ΌΣΟΣ" "ΌΣΟΣ" "όσος" "Όσος" "Όσος") | 197 | ;;("ΌΣΟΣ" "ΌΣΟΣ" "όσος" "Όσος" "Όσος") |
| 199 | ;;("όσος" "ΌΣΟΣ" "όσος" "Όσος" "Όσος") | ||
| 200 | ;; And here’s what is actually happening: | 198 | ;; And here’s what is actually happening: |
| 201 | ("DŽUNGLA" "DŽUNGLA" "džungla" "DŽungla" "DŽUNGLA") | 199 | ("DŽUNGLA" "DŽUNGLA" "džungla" "DŽungla" "DŽUNGLA") |
| 202 | ("Džungla" "DžUNGLA" "džungla" "Džungla" "Džungla") | 200 | ("Džungla" "DžUNGLA" "džungla" "Džungla" "Džungla") |
| @@ -205,7 +203,8 @@ | |||
| 205 | ("fish" "fiSH" "fish" "fish" "fish") | 203 | ("fish" "fiSH" "fish" "fish" "fish") |
| 206 | ("Straße" "STRAßE" "straße" "Straße" "Straße") | 204 | ("Straße" "STRAßE" "straße" "Straße" "Straße") |
| 207 | ("ΌΣΟΣ" "ΌΣΟΣ" "όσοσ" "Όσοσ" "ΌΣΟΣ") | 205 | ("ΌΣΟΣ" "ΌΣΟΣ" "όσοσ" "Όσοσ" "ΌΣΟΣ") |
| 208 | ("όσος" "ΌΣΟς" "όσος" "Όσος" "Όσος")))))) | 206 | |
| 207 | ("όσος" "ΌΣΟΣ" "όσος" "Όσος" "Όσος")))))) | ||
| 209 | 208 | ||
| 210 | (ert-deftest casefiddle-tests-casing-byte8 () | 209 | (ert-deftest casefiddle-tests-casing-byte8 () |
| 211 | (should-not | 210 | (should-not |