Bram,
take this file:
#v+
~$ cat /tmp/foobar.vim
set nocp
func! <sid>_dummy_function()
echo 1
endfunc
au VimEnter * call <sid>_dummy_function()
~$ LC_ALL=tr_TR.UTF-8 vim --noplugins -u /tmp/foobar.vim -N
Error detected while processing /tmp/foobar.vim:
line 2:
E129: Function name required
1
line 4:
E193: :endfunction not inside a function
Press ENTER or type command to continue
~$ LC_ALL=C vim --noplugins -u /tmp/foobar.vim -N -c ':q'
~$
#v-
I think from googling around, what is happening is, that in turkish
alphabet the lower case of I is 'ı' and not 'i' which is a totally
different letter. Therefore this check in eval.c eval_fname_script(p)
fails:
static int
eval_fname_script(p)
char_u *p;
{
if (p[0] == '<' && (STRNICMP(p + 1, "SID>", 4) == 0
|| STRNICMP(p + 1, "SNR>", 4) == 0))
return 5;
if (p[0] == 's' && p[1] == ':')
return 2;
return 0;
}
A dirty fix is this:
diff --git a/src/eval.c b/src/eval.c
index dd19492..349c137 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -23422,7 +23422,8 @@ eval_fname_script(p)
char_u *p;
{
if (p[0] == '<' && (STRNICMP(p + 1, "SID>", 4) == 0
- || STRNICMP(p + 1, "SNR>", 4) == 0))
+ || STRNICMP(p + 1, "SNR>", 4) == 0
+ || STRNICMP(p + 1, "sid>", 4) == 0))
return 5;
if (p[0] == 's' && p[1] == ':')
return 2;
Not sure, if this is the correct approach, however.
Best,
Christian
--
Fluchen ist die einzige Sprache, die alle Programmierer perfekt beherrschen.
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.