怎样让 Vim 同样对待汉字跟英文字符?

161 views
Skip to first unread message

Jacky Liu

unread,
Nov 21, 2011, 6:15:46 AM11/21/11
to vim...@googlegroups.com
现在 Python 已经支持中文标识名了,但是 Vim 的处理似乎有点问题。以个人的经验来说, Vim 会把中文字符当 iskeyword 看待,英文字符也会,但是连起来却不会。我注意到的区别有两个,比如有一个变量名 "条件_001",那么:

1, 在中文部分上按 '*' 执行搜索时,“条件” 会被高亮,在后面按时,"_001" 会被高亮,但是合起来却不会。Vim 不会把 "条件_001" 看作是一个单词。

2, 一些与 motion 有关的命令,比如 e,w,yaw,这些也类似,都会把中文部分和英文部分当做两个单词来对待。

请问有什么办法改变这种行为没有?Vim 对中文字符是有认知的,比如中文的标点符号会跟汉字区别开来,不会当做 iskeyword,我想知道这种处理方式能不能自己定义,最好是汉字跟英文字母同等对待。

我曾经看过 vim_use 里的一个帖子,大致印象是,Vim 对汉字的处理方式是硬编码的,用户没法改。但帖子现在找不到了。

--
http://bluegene8210.is-programmer.com/

Jacky Liu

unread,
Nov 21, 2011, 7:23:37 AM11/21/11
to vim...@googlegroups.com


2011/11/21 Jacky Liu <bluege...@gmail.com>

找见那个帖子了,在这里:

http://vim.1045645.n5.nabble.com/possible-to-make-iskeyword-supports-multibyte-charactor-td1170147.html

讲的其实不是一回事,那个帖子讲的是除了标点之外,再把其它一些中文字符认作 punctuation,里头有讲到底层的一些实现细节,我看不懂。但看下来的印象是,这些东西用户没法改。

我奇怪的是,为什么汉字是 iskeyword,字母也是,但是连起来却不是。

--
http://bluegene8210.is-programmer.com/

qihang zhang

unread,
Nov 21, 2011, 7:26:58 AM11/21/11
to vim...@googlegroups.com
python支持中文标志名
python能用 汉语做变量名?





--
http://bluegene8210.is-programmer.com/

--
要退订此论坛,请发邮件至 vim-cn+un...@googlegroups.com
更多选项,请通过 http://groups.google.com/group/vim-cn 访问该论坛

依云

unread,
Nov 21, 2011, 7:38:46 AM11/21/11
to vim...@googlegroups.com
On Mon, Nov 21, 2011 at 08:26:58PM +0800, qihang zhang wrote:
> >
> > python支持中文标志名
>
> python能用 汉语做变量名?

Python 3、Java、VC 都支持。

--
Best regards,
lilydjwg

Linux Vim Python 我的博客
http://lilydjwg.is-programmer.com/

pen good

unread,
Feb 20, 2022, 6:52:48 AM2/20/22
to Vim.cn
大佬, 现在解决了吗? 

在中英文混合的变量间跳转, 现在难搞啊.

Reply all
Reply to author
Forward
Message has been deleted
0 new messages