Vim で ctags を使用して、特定の列挙型のすべての列挙値を抽出することは可能ですか?
たとえば、次の列挙型があるとします。
typedef enum fruit {
APPLE,
ORANGE,
PEAR,
} fruit_t;
私のタグファイルに次の行を生成します( default を使用--c-kinds
):
APPLE minex.c /^ APPLE,$/;" e enum:fruit file:
ORANGE minex.c /^ ORANGE,$/;" e enum:fruit file:
PEAR minex.c /^ PEAR,$/;" e enum:fruit file:
fruit minex.c /^typedef enum fruit$/;" g file:
fruit_t minex.c /^ } fruit_t;$/;" t typeref:enum:fruit file:
値を指定fruit
またはfruit_t
取得する方法はあります[ 'APPLE', 'ORANGE', 'PEAR' ]
か?
Vim:tselect fruit
では、これでうまくいくと思っていましたが、そうではありません。
もちろん、タグ ファイルを grep して結果を自分で処理することもできますが、非常に大きなファイルの場合はコストがかかるため、そのような基本情報を取得する組み込みの方法があることを願っています。