From 58011496071a49e8f5f916a0416c36806ee94614 Mon Sep 17 00:00:00 2001 From: Thibaut Horel Date: Tue, 15 Mar 2016 22:12:44 -0400 Subject: Add crossref resolution, minor api changes, first template inspired by plain.bst --- cmd/gobtex/test.tmpl | 175 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 175 insertions(+) create mode 100644 cmd/gobtex/test.tmpl (limited to 'cmd/gobtex/test.tmpl') diff --git a/cmd/gobtex/test.tmpl b/cmd/gobtex/test.tmpl new file mode 100644 index 0000000..5a5bc83 --- /dev/null +++ b/cmd/gobtex/test.tmpl @@ -0,0 +1,175 @@ + + + + + title + + + + + + + + +{{- define "article" -}} +In {{.journal}}{{template "vnp" .}}{{template "date" .}} +{{- end -}} + +{{- define "book" -}} +{{template "Volume" .}}{{template "nseries" .}}{{.publisher | ne ". %s"}}{{.address | ne ", %s" -}} +{{.edition | ne ", %s"}}{{template "date" .}} +{{- end -}} + +{{- define "incollection" -}} +{{template "edtitle" .}}{{template "volume" .}}{{template "nseries" .}}{{template "chapterpages" . -}} +{{.publisher | ne ". %s"}}{{.address | ne ", %s"}}{{template "date" .}} +{{- end -}} + +{{- define "inproceedings" -}} +{{template "edtitle" .}}{{template "volume" .}}{{ template "nseries" .}}{{template "page" .}} +{{- if not .address -}} + {{- if or .organization .publisher -}} + . {{.organization | ne "%s"}}{{.publisher | ne ", %s"}} + {{- end -}} + {{template "date" .}} +{{- else -}} +{{.address | ne ", %s"}}{{template "date" .}}{{.organization | ne ". %s"}}{{.publisher | ne ", %s"}} +{{- end -}} +{{- end -}} + +{{- define "mastersthesis" -}} +{{or .type "Master's thesis"}}{{.school | ne ", %s"}}{{.address | ne ", %s"}}{{template "date" .}} +{{- end -}} + +{{- define "misc" -}} +{{if .title}}{{.title}}{{.howpublished | ne ", %s"}}{{else}}{{.howpublished}}{{end}}{{template "date" .}} +{{- end -}} + +{{- define "phdthesis" -}} +{{or .type "PhD thesis"}}{{.school | ne ", %s"}}{{.address | ne ", %s"}}{{template "date" .}} +{{- end -}} + +{{- define "techreport" -}} +{{or .type "Technical Report"}}{{.institution | ne ", %s"}}{{template "date" .}} +{{- end -}} + +{{- define "edtitle" -}} +{{- if .booktitle -}} +{{- if .editor -}} +In {{template "authors" .editor}}, {{if gt (len .editor) 1}}editors{{else}}editor{{end}}, {{.booktitle}} +{{- else -}} +In {{.booktitle}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{- define "volume" -}} +{{- if .volume -}} +{{.volume | ne ", volume %s"}} +{{- if .series}} of {{.series}}{{- end -}} +{{- end -}} +{{- end -}} + +{{- define "Volume" -}} +{{- if .volume -}} +{{.volume | ne "Volume %s"}} +{{- if .series}} of {{.series}}{{- end -}} +{{- end -}} +{{- end -}} + +{{- define "chapterpages" -}} +{{- if .chapter -}} +{{or .type "chapter" | ne ", %s"}} {{.chapter}}{{template "page" .}} +{{- end -}} +{{- end -}} + +{{- define "nseries" -}} +{{- if not .volume -}} + {{- if not .number -}} + {{.series | ne ", %s"}} + {{- else -}} + , number {{.number}} in {{.series}} + {{- end -}} +{{- end -}} +{{- end -}} + +{{- define "vnp" -}} +{{- if .volume -}} + {{.volume | ne ", %s"}}{{.number | ne "(%s)"}} + {{- .pages.String | print | dashify | ne ":%s"}} +{{- else -}} + {{template "page" .}} +{{- end -}} +{{- end -}} + +{{- define "page" -}} +{{if .pages }}{{if contains .pages.String "-–,+"}}, pages {{else}}, page {{end}}{{.pages.String | dashify | printf "%s"}}{{end}} +{{- end -}} + +{{- define "date" -}} +{{if .year }}, {{.month | ne "%s "}}{{.year}}{{end}} +{{- end -}} + +{{- define "links" -}} +{{- if .www_pdf_url -}} + [pdf] +{{- end -}} +{{- if .www_ps_url -}} + [ps] +{{- end -}} +{{- if .www_html_url -}} + [html] +{{- end -}} +[bib] +{{- end -}} + +{{- define "authors" -}} +{{$len := len .}} +{{- if eq $len 1 -}} + {{template "author" index . 0}} +{{- else if eq $len 2 -}} + {{template "author" index . 0}}{{" and "}} {{template "author" index . 1}} +{{- else -}} + {{range $index, $name := . -}} + {{template "author" .}} + {{- if eq $index (add $len -2) -}} + {{", and "}} + {{- else if lt $index (add $len -2) -}} + {{", "}} + {{- end -}} + {{- end -}} +{{- end -}} +{{- end -}} + +{{- define "author" -}} +{{.Format "{f.~}{vv~}{ll}{, jj}" | untex}} +{{- end -}} -- cgit v1.2.3-70-g09d2