何やってんですかね・・・
Wordの引用文献の管理をもうちょっと理解したいので、寄り道でZoteroを調べています。WordのZoteroアドインは実体としてはZotero.dotmというファイルで、C:\Users\ユーザ名\AppData\Roaming\Microsoft\Word\STARTUP\Zotero.dotm
にあるみたい。Wordのオプションからアドインに行って、アクティブなアプリケーションアドインのところにZotero.dotmがあるはず。そしてその場所がそこにあるはずです。
で、このファイルはロックされているぽいので、unzipして見ましたが関数名しかわからず。で、検索したらZoteroのGitHubリポジトリにそのままあったのでそちらを見れば良いのでした(PandocのWordテンプレートと同じく、プロジェクト内で作成しているんですかね)
具体的にはこのZotero.basというファイル中に書かれているんですが、VBAとしてはZoteroEditCitationという関数名で定義されているんですけども内部ではZoteroCommandを呼んで、引数にeditCitationを与えているだけ。
で、この行にあるとおり、実際にはfirefox.exeに対してコマンドを送っているだけっぽいです。https://www.diva-portal.org/smash/get/diva2:857055/FULLTEXT01.pdfの2.3 The Zotero extensionでも同じようなことを書いているし多分そう。
や、
も書いてるし多分そう。
なので、このプラグイン部分でフィールドコードを生成しているわけではなく、Zotero本体がやってるということになりますね。
そして、実際に処理をみていくと、おそらくこのファイルでやってます。
読み解いて互換のある物を作るといのはちょっと厳しいので、必要であれば処理中に外部のコマンドで上記のZoteroの処理をした方がよいだろうと思われます。実際にやってみて上手くいったらまた別の記事に。ひとまず作業メモ。