Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使vim/vi shift-8使用“搜索”搜索关键字&引用;_Vim_Vi - Fatal编程技术网

如何使vim/vi shift-8使用“搜索”搜索关键字&引用;

如何使vim/vi shift-8使用“搜索”搜索关键字&引用;,vim,vi,Vim,Vi,我一直使用vim shift-8在courser下搜索关键字。当关键字是简单的,即字母数字+下划线时,它可以正常工作。但是,如果关键字中有“.”。它只搜索由“.”分隔的关键字的一部分 例如:“a.b”,如果我的光标在a上,则shift-8将搜索“a” 是否有一条捷径可以搜索“a.b”作为一个整体 谢谢请参阅'iskeyword'的帮助: *'iskeyword'**'isk'* “iskeyword”“isk”字符串(Vim默认为MS-DOS和Win32: "@,48-57,_,128-167,

我一直使用vim shift-8在courser下搜索关键字。当关键字是简单的,即字母数字+下划线时,它可以正常工作。但是,如果关键字中有“.”。它只搜索由“.”分隔的关键字的一部分

例如:“a.b”,如果我的光标在a上,则shift-8将搜索“a”

是否有一条捷径可以搜索“a.b”作为一个整体


谢谢

请参阅
'iskeyword'
的帮助:

*'iskeyword'**'isk'*
“iskeyword”“isk”字符串(Vim默认为MS-DOS和Win32:
"@,48-57,_,128-167,224-235"
否则:“@,48-57,192-255”
Vi默认值:“@,48-57,u”)
本地到缓冲区
{不在Vi}
关键字用于通过许多命令进行搜索和识别:
“w”、“*”、“[i”等。它也用于a |模式中的“\k”。请参见
“isfname”用于描述此选项的格式。对于C
您可以使用“a-z,a-z,48-57,u,,-,>”的程序。
对于帮助文件,它被设置为除
“*”、“””和“|”(以便在命令上按CTRL-]可以找到该命令的帮助
命令)。
当“lisp”选项处于启用状态时,始终包括“-”字符。
注意:当选择“兼容”时,此选项设置为Vi默认值
重置“兼容”时,将和设置为Vim默认值。
因此,如示例中所示,您可以

set isk=a-z,A-Z,48-57,_,.,-,>

和*(以及其他命令)将在单词定义中包含

请参阅
'iskeyword'
的帮助:

*'iskeyword'**'isk'*
“iskeyword”“isk”字符串(Vim默认为MS-DOS和Win32:
"@,48-57,_,128-167,224-235"
否则:“@,48-57,192-255”
Vi默认值:“@,48-57,u”)
本地到缓冲区
{不在Vi}
关键字用于通过许多命令进行搜索和识别:
“w”、“*”、“[i”等。它也用于a |模式中的“\k”。请参见
“isfname”用于描述此选项的格式。对于C
您可以使用“a-z,a-z,48-57,u,,-,>”的程序。
对于帮助文件,它被设置为除
“*”、“””和“|”(以便在命令上按CTRL-]可以找到该命令的帮助
命令)。
当“lisp”选项处于启用状态时,始终包括“-”字符。
注意:当选择“兼容”时,此选项设置为Vi默认值
重置“兼容”时,将和设置为Vim默认值。
因此,如示例中所示,您可以

set isk=a-z,A-Z,48-57,_,.,-,>

和*(以及其他命令)将在单词定义中包含

这是可能的。根据手册,“
*
”/“
#
”使用整个单词进行搜索,有一种方法可以改变
vim
认为是单词的内容。包含该设置的变量为
iskeyword
,默认值为
@、48-57、192-255
!-~、^*、^ |^,192-255

您可以使用以下命令之一打印当前设置

:set isk
:set iskeyword
请尝试将其设置为类似于
@,46,48-57,\u192-255
的值。重要的是在设置中包含46,即“
”字符。以下命令可以完成此任务:

:set iskeyword=@,48-57,_,192-255
:set isk+=.

这是可能的。根据手册,“
*
”/“
#
”使用一个完整的单词进行搜索,有一种方法可以更改
vim
认为是单词的内容。包含该设置的变量是
iskeyword
,默认值为
@,48-57,192-255
!-~,^*,^ ^ ^ ^ ^ 124;,^”,192-255

您可以使用以下命令之一打印当前设置

:set isk
:set iskeyword
尝试将其设置为类似于
@,46,48-57,u192-255
。重要的是在设置中包含46个字符,即“
”字符。以下命令将执行此任务:

:set iskeyword=@,48-57,_,192-255
:set isk+=.

a.b
不是一个关键字,而是两个关键字,因为
通常不属于关键字字符集。您有两个选择:

  • 设为关键字字符。使用
    :set iskeyword+=。
    (或
    :setlocal
    仅用于单个缓冲区。还请注意,某些文件类型插件可能会更改该选项。)请注意,这也会影响像
    w
    这样的运动,并可能导致语法突出显示问题
  • 有了my这样的插件,
    *
    命令被扩展到可视模式。这样,您可以通过
    viW
    选择任何文本(如
    a.b
    ),然后通过
    *
    搜索出现的文本。(插件页面有指向其他插件的链接;其中有几个插件。)

  • a.b
    不是一个关键字,而是两个关键字,因为
    通常不属于关键字字符集。您有两个选择:

  • 设为关键字字符。使用
    :set iskeyword+=。
    (或
    :setlocal
    仅用于单个缓冲区。还请注意,某些文件类型插件可能会更改该选项。)请注意,这也会影响像
    w
    这样的运动,并可能导致语法突出显示问题
  • 有了my这样的插件,
    *
    命令被扩展到可视模式。这样,您可以通过
    viW
    选择任何文本(如
    a.b
    ),然后通过
    *
    搜索出现的文本。(插件页面有指向其他插件的链接;其中有几个插件。)

  • :设置isk+=。效果很好。有没有办法在不重新启动vim的情况下将其取消设置?是的,
    :设置isk-=。
    或恢复出厂设置