-
Notifications
You must be signed in to change notification settings - Fork 215
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
参考文献DBとの連携 #1590
Comments
MendeleyとReadCubeで共通で出力できるのは.bibと.ris (Research Information Systems) なので、bibtex が無難といえば無難ですけどねえ(茨がどんなものかわからない。。。) |
gemでよければ ref_parsers (Parser for various types of reference file formats. It currently supports RefMan (.ris) and EndNote (.enw))ってのはありました。 |
おぉ。 bibtexはTeXシステム前提で密接すぎるので、あれをHTML/plain/IDGXMLと混ぜるのかなりきつそうな感じがしています。中にTeXマクロ入れられちゃうとその解析どうするのとか。 ref_parser見てみます。あとは結局取り込んでどう表現するのかという問題もありますね…。ユーザが妥当な順序付きで書き出してるのでそれをそのまま出力すればいい、のかな? |
おそらく書き手側はbibtexでファイルを用意したいと思うんですよね。それで、Re:VIEWから使うときは、何かライブラリで読み書きして、そのままは使わないようにするとかですかね。 これは利用者数多そうでした。 |
実際どれだけ利用者がいるかわからないので、gemがあれば使える、的な利用で問題なさそうですね。 |
bibtexはツールから作れても、自分でTeXは触れない、というのは一定数いそうな気はします(私もそう)。論文だと規定のテンプレートを埋めればいいでしょうが、同人誌となると自分でいちから整備しないといけないので、Re:VIEWに頼ろうという人はいそうです。なので「参考文献が多い論文っぽい本を同人誌として出したい」という状況であれば、需要がありそうというのはなんとなくわかります。 |
どっちにしろ |
|
まだ雑ですけど、こういう感じでいけそうでした。 ## builder.rb
def citeproc
require 'bibtex'
require 'citeproc'
require 'csl/styles'
@bibtex ||= BibTeX.open("bib.bib") # TODO: set via config
style = 'apa' # TODO: set via config
@citeproc ||= CiteProc::Processor.new style: style, format: bibtex_format
@citeproc.import @bibtex.to_citeproc
rescue LoadError
error "not found bibtex library"
end
def bibtex_format
"text"
end
# @<ref>{key}
def inline_ref(key)
citeproc.render :citation, id: key
end
# //references
# print all bibs
def references
puts citeproc.bibliography
end
## htmlbuilder.rb
def bibtex_format
"html"
end
## compiler.rb
defsingle :references, 0
definline :ref |
事前にライブラリが必要です
|
実装がものすごく雑で申し訳ないですが…… #1595 で作ってみました。 |
https://twitter.com/windowmoon/status/1321853175494668288 からのスレッド
プラグインについては本筋から外れそうなので誰かに任せるとして、JSON・XMLの書き出しをインポートするのはできるかもしれない。
ただ、各ビルダにおいて実際どういう結果になればベストなのか、どのくらいカスタマイズは要求されるのかが私はアカデミックに疎めなのでよくわからないところあり。
なお、bibtexを読み込むのは茨すぎるので避けたい。
The text was updated successfully, but these errors were encountered: