patch 9.0.1810: camel-case spelling has issues with digits
Problem: camel-case spelling has issues with digits
Solution: Improve the camCase spell checking by taking digits
and caps into account
Rewrite the conditions to check for word boundaries by taking into
account the presence of digits and all-caps sequences such as acronyms.
closes: #12644
closes: #12933
Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: LemonBoy <thatlemon@gmail.com>
diff --git a/src/testdir/test_spell.vim b/src/testdir/test_spell.vim
index 9eecb1e..be0bc55 100644
--- a/src/testdir/test_spell.vim
+++ b/src/testdir/test_spell.vim
@@ -132,6 +132,26 @@
set spell&
endfunc
+func Test_spell_camelcase()
+ set spell spelloptions=camel
+ let words = [
+ \ 'UPPER',
+ \ 'lower',
+ \ 'mixedCase',
+ \ 'HTML',
+ \ 'XMLHttpRequest',
+ \ 'foo123bar',
+ \ '12345678',
+ \ 'HELLO123world',
+ \]
+
+ for word in words
+ call assert_equal(['', ''], spellbadword(word))
+ endfor
+
+ set spell& spelloptions&
+endfunc
+
func Test_spell_file_missing()
let s:spell_file_missing = 0
augroup TestSpellFileMissing