diff --git a/src/testdir/test_sort.vim b/src/testdir/test_sort.vim
index 3900562..42a4452 100644
--- a/src/testdir/test_sort.vim
+++ b/src/testdir/test_sort.vim
@@ -24,14 +24,18 @@
 
   " This does not appear to work correctly on Mac.
   if !has('mac')
-    " With the following locales, the accentuated letters are ordered
-    " similarly to the non-accentuated letters...
-    if v:collate =~? '^\(en\|es\|de\|fr\|it\|nl\).*\.utf-\?8$'
+    if v:collate =~? '^en_ca.*\.utf-\?8$' && !has('mac')
+      " with Canadian English capitals come before lower case.
+      call assert_equal(['A', 'a', 'Ä', 'ä', 'O', 'o', 'Ô', 'ô', 'œ', 'œ', 'P', 'p'],
+      \            sort(['A', 'a', 'o', 'O', 'œ', 'œ', 'p', 'P', 'Ä', 'ä', 'ô', 'Ô'], 'l'))
+    elseif v:collate =~? '^\(en\|es\|de\|fr\|it\|nl\).*\.utf-\?8$'
+      " With the following locales, the accentuated letters are ordered
+      " similarly to the non-accentuated letters...
       call assert_equal(['a', 'A', 'ä', 'Ä', 'o', 'O', 'ô', 'Ô', 'œ', 'œ', 'p', 'P'],
       \            sort(['A', 'a', 'o', 'O', 'œ', 'œ', 'p', 'P', 'Ä', 'ä', 'ô', 'Ô'], 'l'))
-    " ... whereas with a Swedish locale, the accentuated letters are ordered
-    " after Z.
     elseif v:collate =~? '^sv.*utf-\?8$'
+      " ... whereas with a Swedish locale, the accentuated letters are ordered
+      " after Z.
       call assert_equal(['a', 'A', 'o', 'O', 'p', 'P', 'ä', 'Ä', 'œ', 'œ', 'ô', 'Ô'],
       \            sort(['A', 'a', 'o', 'O', 'œ', 'œ', 'p', 'P', 'Ä', 'ä', 'ô', 'Ô'], 'l'))
     endif
@@ -1230,56 +1234,106 @@
 	\ },
 	\ ]
 
-    " With the following locales, the accentuated letters are ordered
-    " similarly to the non-accentuated letters.
-    " This does not appear to work on Mac
-    if v:collate =~? '^\(en\|es\|de\|fr\|it\|nl\).*\.utf-\?8$' && !has('mac')
-      let tests += [
-	\ {
-	\    'name' : 'sort with locale',
-	\    'cmd' : '%sort l',
-	\    'input' : [
-	\	'A',
-	\	'E',
-	\	'O',
-	\	'À',
-	\	'È',
-	\	'É',
-	\	'Ô',
-	\	'Œ',
-	\	'Z',
-	\	'a',
-	\	'e',
-	\	'o',
-	\	'à',
-	\	'è',
-	\	'é',
-	\	'ô',
-	\	'œ',
-	\	'z'
-	\    ],
-	\    'expected' : [
-	\	'a',
-	\	'A',
-	\	'à',
-	\	'À',
-	\	'e',
-	\	'E',
-	\	'é',
-	\	'É',
-	\	'è',
-	\	'È',
-	\	'o',
-	\	'O',
-	\	'ô',
-	\	'Ô',
-	\	'œ',
-	\	'Œ',
-	\	'z',
-	\	'Z'
-	\    ]
-	\ },
-	\ ]
+    " This does not appear to work correctly on Mac.
+    if !has('mac')
+      if v:collate =~? '^en_ca.*\.utf-\?8$'
+        " en_CA.utf-8 sorts capitals before lower case
+        let tests += [
+          \ {
+          \    'name' : 'sort with locale ' .. v:collate,
+          \    'cmd' : '%sort l',
+          \    'input' : [
+          \	'A',
+          \	'E',
+          \	'O',
+          \	'À',
+          \	'È',
+          \	'É',
+          \	'Ô',
+          \	'Œ',
+          \	'Z',
+          \	'a',
+          \	'e',
+          \	'o',
+          \	'à',
+          \	'è',
+          \	'é',
+          \	'ô',
+          \	'œ',
+          \	'z'
+          \    ],
+          \    'expected' : [
+          \	'A',
+          \	'a',
+          \	'À',
+          \	'à',
+          \	'E',
+          \	'e',
+          \	'É',
+          \	'é',
+          \	'È',
+          \	'è',
+          \	'O',
+          \	'o',
+          \	'Ô',
+          \	'ô',
+          \	'œ',
+          \	'Œ',
+          \	'Z',
+          \	'z'
+          \    ]
+          \ },
+          \ ]
+      elseif v:collate =~? '^\(en\|es\|de\|fr\|it\|nl\).*\.utf-\?8$'
+      " With these locales, the accentuated letters are ordered
+      " similarly to the non-accentuated letters.
+        let tests += [
+          \ {
+          \    'name' : 'sort with locale ' .. v:collate,
+          \    'cmd' : '%sort l',
+          \    'input' : [
+          \	'A',
+          \	'E',
+          \	'O',
+          \	'À',
+          \	'È',
+          \	'É',
+          \	'Ô',
+          \	'Œ',
+          \	'Z',
+          \	'a',
+          \	'e',
+          \	'o',
+          \	'à',
+          \	'è',
+          \	'é',
+          \	'ô',
+          \	'œ',
+          \	'z'
+          \    ],
+          \    'expected' : [
+          \	'a',
+          \	'A',
+          \	'à',
+          \	'À',
+          \	'e',
+          \	'E',
+          \	'é',
+          \	'É',
+          \	'è',
+          \	'È',
+          \	'o',
+          \	'O',
+          \	'ô',
+          \	'Ô',
+          \	'œ',
+          \	'Œ',
+          \	'z',
+          \	'Z'
+          \    ]
+          \ },
+          \ ]
+    endif
   endif
   if has('float')
     let tests += [
diff --git a/src/version.c b/src/version.c
index ea53d3a..aa01a39 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2286,
+/**/
     2285,
 /**/
     2284,
