2

Vimはexpand("<cword>")カーソルの下に「単語」を取得する必要があります。カーソルが引用符で囲まれた文字列リテラル上にある場合、引用符の間のすべてを取得する関数をどのように定義しますか?

このシナリオを考えると:

foo="この文字列にはスペースがあります"
          ^カーソルはここにあります

私はやってみたいです

:echo GetStringUnderCursor()

と参照してください

この文字列にはスペースがあります


編集:この呪文でカーソルが文字列領域にあるかどうかを確認できるようです

synIDattr(synIDtrans(synID(line("."), col("."), 1)), "name") == "String"

特定の構文領域の開始位置と終了位置(行と列)を検索する方法が見つかりませんでした。

4

1 に答える 1

2

例えば ​​:

vi"    ->    visual select all inside the quotes
ci"    ->    change all inside the quotes
yi"    ->    yank all inside the quotes

ヤンクすると、次のことができます。

echo @"    ->     prints register " (default)
于 2012-10-19T10:37:34.640 に答える