関数定義がなぜかK&Rスタイルの括弧になってないわけです。こんな感じで:
static isc_boolean_t is_glue(rdatalist_head_t *head, dns_name_t *owner) { dns_rdatalist_t *this; ....
[[で関数の先頭にジャンプできないのはとっても苦痛なので、簡単なvimマクロを~/.vimrcnに定義:
"-------------------- BIND9 source noremap [[ ?^\({[ \t]*\\|[a-zA-Z_][a-zA-Z_0-9]*[ \t]*(.*)[ \t]*{[ \t]*\)$^M noremap ]] /^\({[ \t]*\\|[a-zA-Z_][a-zA-Z_0-9]*[ \t]*(.*)[ \t]*{[ \t]*\)$^M
ちなみにvimの[[,]],[].][のとび先はこんな感じで頭で覚えるよりも体で覚えるしかない:
func0() { } ← [] カーソルより上の関数の最後 func1() { ← [[ カーソルより上の関数の先頭 ■ } ← ][ カーソルより下の関数の最後 func2() { ← ]] カーソルより下の関数の先頭 }
ちなみに本家viは[[と]]しかないはず。