vim-goの GoAddTagsコマンドが欲しいということで Emacs版 go-add-tagsを書きました. JSONを与えて構造体を吐くようなコマンドはいくつかありますが, 既に書いてしまったものにタグを追加したいような場合だと, go-add-tagsが便利だと思います.
利用方法は M-x go-add-tags
とするだけです. デフォルトでは現在の行, リージョンを選択して実行した場合はその領域に存在するフィールドのタグを挿入します. タグに出力されるフィールド名はデフォルトでは snake_caseです(vim-goに合わせている). この挙動は go-add-tags-style
変数を設定するか(デフォルトの変更), C-u
プレフィックスでコマンドを実行することで変更できます(複数候補からの選択).
json,yaml
のようにカンマで区切って入力すれば複数のタグを同時に挿入することが可能です.
問題・要望等ありましたら github issuesまでお願いします.