aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Dewar <seandewar@users.noreply.github.com>2021-04-20 01:39:19 +0100
committerSean Dewar <seandewar@users.noreply.github.com>2021-04-20 10:12:10 +0100
commiteef5a627bfc4341fdd6f12ea5932d11b12fbf2c0 (patch)
tree1c7acf50056b84c83a1553894857c00427023cf5
parentb530221126bd61edd081eded7afea6141cdef0dd (diff)
downloadrneovim-eef5a627bfc4341fdd6f12ea5932d11b12fbf2c0.tar.gz
rneovim-eef5a627bfc4341fdd6f12ea5932d11b12fbf2c0.tar.bz2
rneovim-eef5a627bfc4341fdd6f12ea5932d11b12fbf2c0.zip
doc: port changes for locale-based :sort
Cherry-picked from https://github.com/vim/vim/commit/3132cddd209ee510bde48b6520290cb26c8f604a.
-rw-r--r--runtime/doc/change.txt16
-rw-r--r--runtime/doc/eval.txt24
2 files changed, 26 insertions, 14 deletions
diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt
index bdef544b2a..e353f3d209 100644
--- a/runtime/doc/change.txt
+++ b/runtime/doc/change.txt
@@ -1750,13 +1750,15 @@ found here: |sort()|, |uniq()|.
With [i] case is ignored.
- With [l] sort uses the current locale. See
- `language collate` to check or set the locale used
- for ordering. For example, with "en_US.UTF8",
- Ö will be ordered after O and before P,
- whereas with the Swedish locale "sv_SE.UTF8",
- it will be after Z.
- Case is typically ignored by the locale.
+ With [l] sort uses the current collation locale.
+ Implementation details: strcoll() is used to compare
+ strings. See |:language| to check or set the collation
+ locale. Example: >
+ :language collate en_US.UTF-8
+ :%sort l
+< |v:collate| can also used to check the current locale.
+ Sorting using the locale typically ignores case.
+ This does not work properly on Mac.
Options [n][f][x][o][b] are mutually exclusive.
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 2aff9fc127..98f702af4c 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -8359,15 +8359,25 @@ sort({list} [, {func} [, {dict}]]) *sort()* *E702*
When {func} is given and it is '1' or 'i' then case is
ignored.
- When {func} is given and it is 'l' then the current locale
- is used for ordering. See `language collate` to check or set
- the locale used for ordering. For example, with "en_US.UTF8",
- Ö will be ordered after O and before P, whereas with the
- Swedish locale "sv_SE.UTF8", it will be after Z.
- Case is typically ignored by the locale.
+ When {func} is given and it is 'l' then the current collation
+ locale is used for ordering. Implementation details: strcoll()
+ is used to compare strings. See |:language| check or set the
+ collation locale. |v:collate| can also be used to check the
+ current locale. Sorting using the locale typically ignores
+ case. Example: >
+ " ö is sorted similarly to o with English locale.
+ :language collate en_US.UTF8
+ :echo sort(['n', 'o', 'O', 'ö', 'p', 'z'], 'l')
+< ['n', 'o', 'O', 'ö', 'p', 'z'] ~
+>
+ " ö is sorted after z with Swedish locale.
+ :language collate sv_SE.UTF8
+ :echo sort(['n', 'o', 'O', 'ö', 'p', 'z'], 'l')
+< ['n', 'o', 'O', 'p', 'z', 'ö'] ~
+ This does not work properly on Mac.
When {func} is given and it is 'n' then all items will be
- sorted numerical (Implementation detail: This uses the
+ sorted numerical (Implementation detail: this uses the
strtod() function to parse numbers, Strings, Lists, Dicts and
Funcrefs will be considered as being 0).