おっしゃる通り「文献リストの形式が論文の規定と違っていて、エディタ側で再生成したいのに .bib ファイルが見つからない」ということだと思います。
実は投稿先の推奨する template があるのですが、これに従って作った .tex ファイルではPDF がうまく作れないので、美文書作成入門第8版付録のTEXで .tex ファイルを作り、thebibliography で作った文献リストを付けて送りました。しかし投稿先で生成された PDF では本文中の文献参照番号が [?] となって差し戻されたので、本文中の文献参照番号と文献リストの文献参照番号をすべて手で入力して送りました。これを投稿先で生成した PDF では文献参照番号も正常に表示されたのですが、投稿先からは
"Please re-upload your LaTeX source file as it did not generate properly".というが通知がありました。
私が "Please let me know where and why my .tex file is improper". と聞き返したところ
"Please upload all the source file of your LaTeX submission including the .bib file".と言って来たのです。
それで thebibliography の代わりに .bib ファイルで作った文献リストを付けて送ろうと思っています。
美文書作成入門第8版の183ページの .bib ファイルの作り方によると、文献1件ごとに
@book{, author=, title=, publisher=, year= 等を付けるようですが、文献は70件あるので、いちいち手で入力するのは大変です。
そこでお尋ねですが、 thebibliography で作った文献リストを機械的に、できれば一度に .bib ファイルに変換する方法はないでしょうか。
植木
おそらく、以前質問されていた「sn-jnl.cls」に関連されてのものだと思います、
植木 さんは カレントディレクトリの「sn-jnl.cls」を修正されものをお使いなのではないでしょうか?
そうだとすると、その修正した sn-jnl.cls も送らなければならないと思います。
が、本来の sn-jnl.cls でコンパイルできるようにする方が良いと思います。
さて、70 近い thebibliography で作成した参考文献情報を .bib ファイルに一括変換する方法ですが、
私でしたら、perl ruby python などで正規表現を利用して行うか、vscode などで同様に正規表現置換を行うのですが ... 地道に変換が一番なのでは?
ちなみに
\bibitem {Lakatos} Lakatos, Imre. (1970).
''History of science and its rational reconstructions,"
Proceedings of the Biennial Meeting of Philosophy of Science Association,
Volume \textbf{1970},
pages 91-136,
Springer.
は以下のような形になるかと思います。
@article{Lakatos,
author = {Lakatos, Imre},
title = {History of Science and Its Rational Reconstructions},
year = {1970},
journal = {Proceedings of the Biennial Meeting of the Philosophy of Science Association}, %% 修正
volume = {1970},
pages = {91--136},
publisher = {Springer},
}
老婆心ながら、引用は「`」と「'」で二重引用は「``」と「''」で囲った方が良いです。
多分指摘されると思います。
ご教示ありがとうございます。先に頂いた「sn-jnl.cls」関連のご指示についてはその後ご連絡もせず申し訳ありません。実は「sn-jnl.cls」の使用は諦めて、奥村先生に申し上げたように美文書作成入門第8版付録のTEXで .tex ファイルを作って送りました。しかし投稿先は文献リストを .bib ファイルで作れということで、 thebibliography の文献リストを .bib ファイルに変換しています。ご教示の .bib ファイルの作成例は手本として利用させていただいております。変換の際にはなるべく正規表現を使いたいのですが、うまく使えません。たとえば
@{author = "Lakatos, Imre." ... Springer.
\@book{author = "Wigner, Eugene P." ... Indiana Univ. Press.
というリストの部分の上の行の末尾に } を入れて、下の行の先頭の \ を消したいのですが、正規表現で \R \\ を検索して \}\R で置換すると
\@{author = "Lakatos, Imre." ... Springer.\}\R@book{author = "Wigner, Eugene P." ... Indiana Univ. Press.
のように改行コードが無くなって2行が1行に連結し、置換文字の \}\R が連結部にそのまま表示されます。正規表現で行頭、行末を表すはずの ^ , $ で検索すると、文頭、文末に行ってしまいます。特に正規表現の置換で改行コードを入れる方法を知りたいのですが、ご教示いただければ幸いです。
植木
sn-jnl.cls ってSpringer NatureのJournalクラスですね。
https://www.springernature.com/gp/authors/campaigns/latex-author-support
サンプルの sn-article.tex をpdflatexで処理してみたら、特にエラーなくできました。エラーが出たのでsn-jnl.clsを書き直したとのことですが、もしかしてpdflatexではなくplatexで処理されたとかでしょうか。
素直にpdflatexを使ってジャーナルのテンプレートをそのまま使われたらエディタとのトラブルもなく進められるような気もします。
それが一番だと思うのですが、一応、thebibliography スタイルを .bib 形式に変換を頑張ってる方がいらっしゃるので紹介しておきます。
thebibliography スタイルを .bib 形式に変換について
変換してくれるサイトはありますが。。。
- makebib.perl Gateway
- 一定の文章から内容を類推して変換はしてくれますが、残念ながら植木さんの記述されている方法では、うまく抽出できないようです。
- 参照ID(?)も内容から自動で生成しているようなので、その調整が必要になります。
変換がうまくいかない例
Lakatos, Imre. (1970). ''History of science and its rational reconstructions," Proceedings of the Biennial Meeting of Philosophy of Science Association, Volume \textbf{1970}, pages 91-136, Springer.
→
@article{lakatos1970, author = "Lakatos, Imre", title = "(1970)", ← 引用記号の影響?で以下誤検出 journal = "''History of science and its rational reconstructions, " {Proceedings} of the {Biennial} {Meeting} of {Philosophy} of {Science} {Association}", volume = "\textbf{1970}", pages = "91--136", year = }
- 上記を少し修正(引用記号と文字強調を削除)(ジャーナル名は誤記されたまま)
Lakatos, Imre, (1970). History of science and its rational reconstructions, Proceedings of the Biennial Meeting of Philosophy of Science Association, Volume 1970, pages 91-136, Springer.
→
@article{lakatos1970history, ← ここは変わらず author = "Lakatos, Imre", ↓ 以下はいい感じで抽出できている title = "History of science and its rational reconstructions", journal = "Proceedings of the Biennial Meeting of Philosophy of Science Association", volume = "1970", pages = "91--136", year = 1970 }
正規表現について
「\R」とは「改行」なのかしら?
正規表現の記述は、ご使用のエディタによって微妙に違うので簡単には答えられないのですが、今までの話からですと TeXworks ですか?
下の行の先頭の \ を消したい
とのことですが、「改行」と「\@book」と考えるのではなく、 「行頭」と「\@book」の組み合わせ
^\@book
で考えたほうが良いのでは? こうすれば改行コードはそのままですから。でもよくよく考えれば
\
の次に@
が続くケースは行頭に限らなくてもっ良いので\@book
で検索すれば良いでしょう。以上を踏まえn perl だったら
s/\\(@book|@article)/$1/g;
のようにします。お使いのでエディタで上記のような操作ができると良いのですが ...ちなみに改行を挿入したい時は
\n
を私は使っていますが お使いのエディタで試してみてください。
TEXだけでなく正規表現まで詳しく教えていただきありがとうございます。実は「sn-jnl」を(タイプセットでエラーメッセージが出るたびに)修正して下のような組み立てで .tex ファイルを作りました。それでも下の \begin{abstract} では 、Abstract という見出しや独立の段落は作られず、見出しを手で入れて投稿しました。
\documentclass[referee,pdflatex]{sn-jnl}
\setlength{\textwidth}{14cm}
\setlength{\oddsidemargin}{0cm}
\setlength{\evensidemargin}{0cm}
\setlength{\topmargin}{-3cm}
\setlength{\textheight}{23cm}
\usepackage{amsmath}
\usepackage{graphicx}
\begin{document}
...
\begin{abstract}
...
\end{abstract}
しかし投稿先で生成された PDF は本文中の文献参照番号が [?] で表示され、つぎの通知を受けました。
”your manuscript was returned to you because you have not taken all the necessary steps to comply with the requisites of the submission process of the journal. Reasons for this could be missing submission items, the manuscript did not comply with the journals 'Instructions for Authors' or a missing completed authorship change form*. ”
このため「sn-jnl」を諦め、美文書作成入門第8版付録の TEX と thebibliography で作った .tex ファイルを投稿しました。しかしまた
"Please upload all the source file of your LaTeX submission including the .bib file".
と言って来たので、たとえ「sn-jnl」を使っても .bib file が必要になると思い、 thebibliography で作った文献リストを .bib file に変換しています。
なお texworks では、正規表現で ^, $ で検索すると行頭、行末ではなく、文頭、文末に行ってしまいます。また \R, \n では改行コード検索はできますが、置換文字にすると改行しないで \R, \n がそのまま文字で出て来ます。また各行が \@book{author = または \@article{author = で始まる文献リストの行頭の \ を消去するために、ネットで見たように、正規表現で検索文字を \\(.*author =)\b 、置換文字を $1 とすると全く作用しません。
正規表現での改行コードへの置換の方法、部分的な置換の方法を見つけたいのですが、 texworks では無理なのでしょうか。解決法がありましたら教えていただければ幸いです。
植木
文献参照番号が?
になる原因
原因はおそらく bibtex で sn-mathphys.bst が見つからないと言われて bibtex が正しく処理できていないからだと思います。
これは sn-jnl.cls に同ファイル他を利用するよう書かれているためです。 同ファイルは bst ディレクトリに格納されていますので、これを参照できるところに置く必要があります。今回は、この対処について主に回答します。
Springer に論文を投稿したことのある同僚や先輩に相談することについて
Springer に論文を投稿するには、 Springer の定める規約を守らないといけないので sn-jnl.cls を用いた方が良いです。とはいえ、調べると、sn-jnl.cls を利用するとそれなりに苦労されているようですね。ちょっと調べると ...
SpringerのTexテンプレートがややこしすぎる【BiBTeX】
pdflatex ; bibtex; pdflatex; (pdflatex) のような操作を行わないと \cite の参照番号が表示できない
が、bibtex した時 sn-mathphys.bst が見つからないと言っていますね。 この解消方法は、後段で述べます。
論文投稿用環境の整備
Springer 投稿用テンプレート一式をダウンロードし展開
- Springer 投稿用テンプレート一式をDownload the journal article template packageよりダウンロード
ダウンロードしたものを展開すると
sn-article-template/
というディレクトリができるsn-article-template/bst/sn-apacite.bst sn-article-template/bst/sn-aps.bst sn-article-template/bst/sn-basic.bst sn-article-template/bst/sn-chicago.bst sn-article-template/bst/sn-mathphys.bst sn-article-template/bst/sn-nature.bst sn-article-template/bst/sn-vancouver.bst sn-article-template/empty.eps sn-article-template/fig.eps sn-article-template/sn-arti bstcle.pdf sn-article-template/sn-article.tex sn-article-template/sn-bibliography.bib sn-article-template/sn-jnl.cls sn-article-template/user-manual.pdf
このままでは bibtex 実行時にファイル sn-mathphys.bst が見つからないと言われるので、bst ディレクトリ以下にある7つの .bst を sn-article-template にコピー
- sn-article-template/sn-article.tex を sn-article-template/ueki-sn-article.tex にコピー
- sn-article-template/ueki-sn-article.tex 内の sn-bibliography を探し ueki-sn-bibliography に変更しておく
sn-article-template/ueki-sn-bibliography.bib を作成
- とりあえずは、 sn-article-template/sn-bibliography.bib からコピーし、History of Science and its Rational Reconstructions の .bib で表示されたものを追記
sn-article-template/ueki-sn-article.tex 内にテスト用の\cite を書き込んでおく。を書き込んでおく。
参考 (テスト用 のsn-article-template/ueki-sn-article.tex )
--- sn-article.tex 2023-04-24 19:15:06.000000000 +0900 +++ ueki-sn-article.tex 2023-08-16 03:17:00.480571828 +0900 @@ -149,6 +149,8 @@ \section{Introduction}\label{sec1} +TEST \cite{Lakatos1971} TEST \cite{Lakatos1971} TEST \cite{Lakatos1971} TEST \cite{Lakatos1971} TEST + The Introduction section, of referenced text \cite{bib1} expands on the background of the work (some overlap with the Abstract is acceptable). The introduction should not include subheadings. Springer Nature does not impose a strict layout as standard however authors are advised to check the individual requirements for the journal they are planning to submit to as there may be journal-level preferences. When preparing your text please also be aware that some stylistic choices are not supported in full text XML (publication version), including coloured font. These will not be replicated in the typeset article if it is accepted. @@ -624,7 +626,7 @@ %% file, and delete the associated \verb+\bibliography+ commands. %% %%===========================================================================================%% -\bibliography{sn-bibliography}% common bib file +\bibliography{ueki-sn-bibliography}% common bib file %% if required, the content of .bbl file can be included here once bbl is generated %%\input sn-article.bbl
以上で準備ができたのでタイプセットします
私はコマンドラインで検証していますが、TeXwork で sn-article-template/ueki-sn-article.tex を開いて、以下のような操作をしてください。
pdflatex bibtex pdflatex pdflatex
- 今回検証に使用書いたものや生成されたものを zip ファイルでアップロードしまうので同梱の ueki-sn-article.tex や ueki-sn-bibliography.bib を適宜改修してご利用していただけると幸いです。
正規表現 &。。。
以前にも書きましたが私は通常 TeXworks を使いませんので、 英文ですが A short manual for TEXworks を参考にしてください。
perl などで s/\(@book|@article)/$1/g; やそれ以上の複雑な正規表現での置換を行いたい時は、vscode や emacs 、perl、 ruby、sed などなどをその時々で使い分けます。
とはいえ、今回の参考文献に関しては、奥村さんが提案されているように、参照している論文が提供してる .bib ファイルを改めて集めた方が良いと思います。
当初叩き台に出されていた History... の情報も一部 the
が欠落しているので、そのようなダブルチェックを行うためにも論文に提供されている .bib を集めた方が良いと思います。
ご教示ありがとうございます。教えて頂いた texworks のマニュアルから、 \n が改行コードであることが分かり、 .bib ファイルへの変換が容易になりました。私が挙げた文献は大部分古いものなので、原文献から .bib ファイルのデータを得ることは困難です。たとえば下に挙げたLakatosの文献を google scholar で検索すると、引用マークが下に付きません。また私は退職して久しい在野の研究者なので身近に Springer 出版誌への投稿経験者はいません。
完成した .bib ファイルは以下のようなもので、 infinit.bib として保存しました。
@book{Lakatos,
author = "Lakatos, Imre",
year = "1970",
title = "History of science and its rational reconstructions",
booktitle = "Proceedings of the Biennial Meeting of Philosophy of
Science Association",
volume = "\textbf{1970}",
pages = "91-136",
publisher = "Springer ",}
...
そして本文末尾を
\bibliography{infinit}
\end{document}
として pLaTeX でタイプセットしたところ美文書作成入門第8版184ページのような警告も無く、PDF を生成できました。ただし文献参照番号は美文書作成入門にある通り [?] となりました。 次に英文用の文献スタイルファイルを、 .tex ファイルを入れたフォルダーの中を *.bst で探しましたが見つかりません。
Springer のマニュアルに従って、先頭に \documentclass[sn-mathphys]{sn-jnl}、末尾に \bibliographystyle{sn-mathphys} を入れて pbibtex を実行すると、本文中の分数式を生成する行でエラーが出ます。
これらの行を%を付けて無効にしてから pbibtex をかけると、 .bib ファイルに対するエラーメッセージがたくさん出ます。エラーメッセージの意味を忖度しながら、区切り文字の " を { } に変えるなどの修正をしましたが、エラーメッセージは変わりません。
それで documentclass を元に戻し \bibliographystyle{sn-mathphys} を消して、始めのように pLaTeX でタイプセットしたところ今度はエラーが出るので、 \bibliography{infinit} も消すと文献リストの無い PDF は生成できます。
修正ファイルの提出期限も近づき、エラー訂正も際限が無いので、残念ですがこの雑誌への投稿は中止して、別の雑誌に投稿したいと思います。
いろいろ教えて頂き、大変勉強になりましたが、教えて頂いたことはこれからも役立つことと思います。PDF の投稿だけで済む雑誌でも、査読をパスしたときに .tex ソースファイルの提出を要求され、同じ問題が起こるかも知れません。今後ともよろしくお願いいたします。
植木
! LaTeX Error: Lonely \item--perhaps a missing list environment.
See the LaTeX manual or LaTeX Companion for explanation.
Type H for immediate help.
...
l.528 \bibitem {Lakatos}
Lakatos, Imre. (1970). ''History of
science and its...
?
\cite{kunen2014set}
%\cite{Lakatos}
@book{kunen2014set,
title={Set theory an introduction to independence proofs},
author={Kunen, Kenneth},
year={2014},
publisher={Elsevier}
}
@book{Lakatos,
author =
{Lakatos, Imre},
year =
{1970},
title =
{History of science and its rational reconstructions},
booktitle
= {Proceedings of the Biennial Meeting of Philosophy of Science
Association},
volume =
{\textbf{1970}},
pages =
{91-136},
publisher
= {Springer }
}
和田様
ご教示ありがとうございます。教えて頂いた texworks のマニュアルから、 \n が改行コードであることが分かり、 .bib ファイルへの変換が容易になりました。私が挙げた文献は大部分古いものなので、原文献から .bib ファイルのデータを得ることは困難です。たとえば下に挙げたLakatosの文献を google scholar で検索すると、引用マークが下に付きません。また私は退職して久しい在野の研究者なので身近に Springer 出版誌への投稿経験者はいません。
完成した .bib ファイルは以下のようなもので、 infinit.bib として保存しました。
@book{Lakatos,
author = "Lakatos, Imre",
year = "1970",
title = "History of science and its rational reconstructions",
booktitle = "Proceedings of the Biennial Meeting of Philosophy of
Science Association",
volume = "\textbf{1970}",
pages = "91-136",
publisher = "Springer ",}
...
そして本文末尾を
\bibliography{infinit}
\end{document}
として pLaTeX でタイプセットしたところ美文書作成入門第8版184ページのような警告も無く、PDF を生成できました。ただし文献参照番号は美文書作成入門にある通り [?] となりました。 次に英文用の文献スタイルファイルを、 .tex ファイルを入れたフォルダーの中を *.bst で探しましたが見つかりません。
Springer のマニュアルに従って、先頭に \documentclass[sn-mathphys]{sn-jnl}、末尾に \bibliographystyle{sn-mathphys} を入れて pbibtex を実行すると、本文中の分数式を生成する行でエラーが出ます。
これらの行を%を付けて無効にしてから pbibtex をかけると、 .bib ファイルに対するエラーメッセージがたくさん出ます。エラーメッセージの意味を忖度しながら、区切り文字の " を { } に変えるなどの修正をしましたが、エラーメッセージは変わりません。
それで documentclass を元に戻し \bibliographystyle{sn-mathphys} を消して、始めのように pLaTeX でタイプセットしたところ今度はエラーが出るので、 \bibliography{infinit} も消すと文献リストの無い PDF は生成できます。
修正ファイルの提出期限も近づき、エラー訂正も際限が無いので、残念ですがこの雑誌への投稿は中止して、別の雑誌に投稿したいと思います。
いろいろ教えて頂き、大変勉強になりましたが、教えて頂いたことはこれからも役立つことと思います。PDF の投稿だけで済む雑誌でも、査読をパスしたときに .tex ソースファイルの提出を要求され、同じ問題が起こるかも知れません。今後ともよろしくお願いいたします。
植木
! LaTeX Error: Lonely \item--perhaps a missing list environment.
See the LaTeX manual or LaTeX Companion for explanation.
Type H for immediate help.
...
l.528 \bibitem {Lakatos}
Lakatos, Imre. (1970). ''History of
science and its...
?
\cite{kunen2014set}
%\cite{Lakatos}
@book{kunen2014set,
title={Set theory an introduction to independence proofs},
author={Kunen, Kenneth},
year={2014},
publisher={Elsevier}
}
@book{Lakatos,
author =
{Lakatos, Imre},
year =
{1970},
title =
{History of science and its rational reconstructions},
booktitle
= {Proceedings of the Biennial Meeting of Philosophy of Science
Association},
volume =
{\textbf{1970}},
pages =
{91-136},
publisher
= {Springer }
}
和田様
ご教示ありがとうございます。教えて頂いた texworks のマニュアルから、 \n が改行コードであることが分かり、 .bib ファイルへの変換が容易になりました。私が挙げた文献は大部分古いものなので、原文献から .bib ファイルのデータを得ることは困難です。たとえば下に挙げたLakatosの文献を google scholar で検索すると、引用マークが下に付きません。また私は退職して久しい在野の研究者なので身近に Springer 出版誌への投稿経験者はいません。
完成した .bib ファイルは以下のようなもので、 infinit.bib として保存しました。
@book{Lakatos,
author = "Lakatos, Imre",
year = "1970",
title = "History of science and its rational reconstructions",
booktitle = "Proceedings of the Biennial Meeting of Philosophy of
Science Association",
volume = "\textbf{1970}",
pages = "91-136",
publisher = "Springer ",}
...
そして本文末尾を
\bibliography{infinit}
\end{document}
として pLaTeX でタイプセットしたところ美文書作成入門第8版184ページのような警告も無く、PDF を生成できました。ただし文献参照番号は美文書作成入門にある通り [?] となりました。 次に英文用の文献スタイルファイルを、 .tex ファイルを入れたフォルダーの中を *.bst で探しましたが見つかりません。
Springer のマニュアルに従って、先頭に \documentclass[sn-mathphys]{sn-jnl}、末尾に \bibliographystyle{sn-mathphys} を入れて pbibtex を実行すると、本文中の分数式を生成する行でエラーが出ます。
これらの行を%を付けて無効にしてから pbibtex をかけると、 .bib ファイルに対するエラーメッセージがたくさん出ます。エラーメッセージの意味を忖度しながら、区切り文字の " を { } に変えるなどの修正をしましたが、エラーメッセージは変わりません。
それで documentclass を元に戻し \bibliographystyle{sn-mathphys} を消して、始めのように pLaTeX でタイプセットしたところ今度はエラーが出るので、 \bibliography{infinit} も消すと文献リストの無い PDF は生成できます。
修正ファイルの提出期限も近づき、エラー訂正も際限が無いので、残念ですがこの雑誌への投稿は中止して、別の雑誌に投稿したいと思います。
いろいろ教えて頂き、大変勉強になりましたが、教えて頂いたことはこれからも役立つことと思います。PDF の投稿だけで済む雑誌でも、査読をパスしたときに .tex ソースファイルの提出を要求され、同じ問題が起こるかも知れません。今後ともよろしくお願いいたします。
植木
! LaTeX Error: Lonely \item--perhaps a missing list environment.
See the LaTeX manual or LaTeX Companion for explanation.
Type H for immediate help.
...
l.528 \bibitem {Lakatos}
Lakatos, Imre. (1970). ''History of
science and its...
?
\cite{kunen2014set}
%\cite{Lakatos}
@book{kunen2014set,
title={Set theory an introduction to independence proofs},
author={Kunen, Kenneth},
year={2014},
publisher={Elsevier}
}
@book{Lakatos,
author =
{Lakatos, Imre},
year =
{1970},
title =
{History of science and its rational reconstructions},
booktitle
= {Proceedings of the Biennial Meeting of Philosophy of Science
Association},
volume =
{\textbf{1970}},
pages =
{91-136},
publisher
= {Springer }
}
和田様
ご教示ありがとうございます。教えて頂いた texworks のマニュアルから、 \n が改行コードであることが分かり、 .bib ファイルへの変換が容易になりました。私が挙げた文献は大部分古いものなので、原文献から .bib ファイルのデータを得ることは困難です。たとえば下に挙げたLakatosの文献を google scholar で検索すると、引用マークが下に付きません。また私は退職して久しい在野の研究者なので身近に Springer 出版誌への投稿経験者はいません。
完成した .bib ファイルは以下のようなもので、 infinit.bib として保存しました。
@book{Lakatos,
author = "Lakatos, Imre",
year = "1970",
title = "History of science and its rational reconstructions",
booktitle = "Proceedings of the Biennial Meeting of Philosophy of
Science Association",
volume = "\textbf{1970}",
pages = "91-136",
publisher = "Springer ",}
...
そして本文末尾を
\bibliography{infinit}
\end{document}
として pLaTeX でタイプセットしたところ美文書作成入門第8版184ページのような警告も無く、PDF を生成できました。ただし文献参照番号は美文書作成入門にある通り [?] となりました。 次に英文用の文献スタイルファイルを、 .tex ファイルを入れたフォルダーの中を *.bst で探しましたが見つかりません。
Springer のマニュアルに従って、先頭に \documentclass[sn-mathphys]{sn-jnl}、末尾に \bibliographystyle{sn-mathphys} を入れて pbibtex を実行すると、本文中の分数式を生成する行でエラーが出ます。
これらの行を%を付けて無効にしてから pbibtex をかけると、 .bib ファイルに対するエラーメッセージがたくさん出ます。エラーメッセージの意味を忖度しながら、区切り文字の " を { } に変えるなどの修正をしましたが、エラーメッセージは変わりません。
それで documentclass を元に戻し \bibliographystyle{sn-mathphys} を消して、始めのように pLaTeX でタイプセットしたところ今度はエラーが出るので、 \bibliography{infinit} も消すと文献リストの無い PDF は生成できます。
修正ファイルの提出期限も近づき、エラー訂正も際限が無いので、残念ですがこの雑誌への投稿は中止して、別の雑誌に投稿したいと思います。
いろいろ教えて頂き、大変勉強になりましたが、教えて頂いたことはこれからも役立つことと思います。PDF の投稿だけで済む雑誌でも、査読をパスしたときに .tex ソースファイルの提出を要求され、同じ問題が起こるかも知れません。今後ともよろしくお願いいたします。
植木
! LaTeX Error: Lonely \item--perhaps a missing list environment.
See the LaTeX manual or LaTeX Companion for explanation.
Type H for immediate help.
...
l.528 \bibitem {Lakatos}
Lakatos, Imre. (1970). ''History of
science and its...
?
\cite{kunen2014set}
%\cite{Lakatos}
@book{kunen2014set,
title={Set theory an introduction to independence proofs},
author={Kunen, Kenneth},
year={2014},
publisher={Elsevier}
}
@book{Lakatos,
author =
{Lakatos, Imre},
year =
{1970},
title =
{History of science and its rational reconstructions},
booktitle
= {Proceedings of the Biennial Meeting of Philosophy of Science
Association},
volume =
{\textbf{1970}},
pages =
{91-136},
publisher
= {Springer }
}
和田様
ご教示ありがとうございます。教えて頂いた texworks のマニュアルから、 \n が改行コードであることが分かり、 .bib ファイルへの変換が容易になりました。私が挙げた文献は大部分古いものなので、原文献から .bib ファイルのデータを得ることは困難です。たとえば下に挙げたLakatosの文献を google scholar で検索すると、引用マークが下に付きません。また私は退職して久しい在野の研究者なので身近に Springer 出版誌への投稿経験者はいません。
完成した .bib ファイルは以下のようなもので、 infinit.bib として保存しました。
@book{Lakatos, author = "Lakatos, Imre", year = "1970", title = "History of science and its rational reconstructions", booktitle = "Proceedings of the Biennial Meeting of Philosophy of Science Association", volume = "\textbf{1970}", pages = "91-136", publisher = "Springer ",} ...
そして本文末尾を \bibliography{infinit}
\end{document}
として pLaTeX でタイプセットしたところ美文書作成入門第8版184ページのような警告も無く、PDF を生成できました。ただし文献参照番号は美文書作成入門にある通り [?] となりました。 次に英文用の文献スタイルファイルを、 .tex ファイルを入れたフォルダーの中を *.bst で探しましたが見つかりません。
Springer のマニュアルに従って、先頭に \documentclass[sn-mathphys]{sn-jnl}、末尾に \bibliographystyle{sn-mathphys} を入れて pbibtex を実行すると、本文中の分数式を生成する行でエラーが出ます。
これらの行を%を付けて無効にしてから pbibtex をかけると、 .bib ファイルに対するエラーメッセージがたくさん出ます。エラーメッセージの意味を忖度しながら、区切り文字の " を { } に変えるなどの修正をしましたが、エラーメッセージは変わりません。
それで documentclass を元に戻し \bibliographystyle{sn-mathphys} を消して、始めのように pLaTeX でタイプセットしたところ今度はエラーが出るので、 \bibliography{infinit} も消すと文献リストの無い PDF は生成できます。
修正ファイルの提出期限も近づき、エラー訂正も際限が無いので、残念ですがこの雑誌への投稿は中止して、別の雑誌に投稿したいと思います。
いろいろ教えて頂き、大変勉強になりましたが、教えて頂いたことはこれからも役立つことと思います。PDF の投稿だけで済む雑誌でも、査読をパスしたときに .tex ソースファイルの提出を要求され、同じ問題が起こるかも知れません。今後ともよろしくお願いいたします。
植木
私は、infinit.bib に何らかの記述ミスがあり、 .bbl が正しく生成されていないのかと思います。
ですので infinit.bib をアップロードしていただければ、どこに不具合があるかとかのチェックは可能です。
また「sn-jnl」にすると数式の一部でエラーが生じるとのことですが、考えられるのは植木さんの元々の記述に何らかの問題があるのではと思います。
texworks の通常の設定だと、多少の記述ミスのよるエラーは無視してなんとか pdf を作成を試みます。それなのでユーザは記述した latex 内容は問題なしと考える方が散見されます。これは 少なくとも .tex と .log の2ファイルがないと解析ができません。公開できる状態に改変していただければチェックは可能です。
お言葉に甘えて TEX による文献リスト作成でぶつかっている問題を記します。もしお時間がありましたらご検討いただければ幸いです。
元の論文 infinit26.tex は長いので、文頭から本文数行目までを下のように infinit29.tex として切り出しました。これには2件の引用が含まれています。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー
\documentclass[sn-mathphys]{sn-jnl}
...
\begin{document}
... (title,abstract 省略)
"Philosophy of science without history of science is empty; history of science without philosophy of science is blind." \cite{Lakatos}
E. Wigner said, "The first point is that the enormous usefulness of mathematics in the natural sciences is something bordering on the mysterious and that there is no rational explanation for it."\cite{Wigner} \, This quotation from the pioneer of quantum physics shows that elucidating the essential nature of mathematics is important for the natural science.
\bibliographystyle{sn-mathphys}
\bibliography{infinit}
\end{document}
(以下infinit.bib)
@book{Lakatos,<br /> author = {Lakatos, Imre},
year = {1970},
title = {History of science and its rational reconstructions},
booktitle = {Proceedings of the Biennial Meeting of Philosophy of Science Association},
volume = {\textbf{1970}},
pages = {91-136},
publisher = {Springer},
}
@book{Wigner,<br /> author = {Wigner, Eugene P},
year = {1967},
title = {The unreasonable effectiveness of mathematics in the natural sciences},
booktitle = {Symmetries and reflections},
publisher = {Indiana Univ. Press},
}
...
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー
上の infinit29.tex を pLaTeX でタイプセットしたところ、次のような PDF に変換されました。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー
”Philosophy of science without history of science is empty; history of science without philosophy of science
is blind.” Lakatos (1970)
E. Wigner said, ”The first point is that the enormous usefulness of mathematics in the natural sciences is something bordering on the mysterious and that there is no rational explanation for it.”Wigner(1967) This quotation from the pioneer of quantum physics shows that elucidating the essential nature of mathematics is important for the natural science.
References
Lakatos, I.: History of Science and Its Rational Reconstructions vol. 1970, pp. 91–136. Springer, ???
(1970)
Wigner, E.P.: The Unreasonable Effectiveness of Mathematics in the Natural Sciences. Indiana Univ.
Press, ??? (1967
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー
infinit29.tex をさらに pBibTeX でタイプセットしたところ、PDF は生成されず、次の log ファイルが出て終わりました。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー
This is pBibTeX, Version 0.99d-j0.33 (utf8.euc) (TeX Live 2020/W32TeX)
The top-level auxiliary file: infinit29.aux
The style file: sn-mathphys.bst
Illegal, another \bibstyle command---line 21 of file infinit29.aux
: \bibstyle
: {sn-mathphys}
I'm skipping whatever remains of this command
Database file #1: infinit.bib
I was expecting a `,' or a `}'---line 41 of file infinit.bib
:
: volume = {\textbf{3}},
(Error may have been on previous line)
I'm skipping whatever remains of this entry
I was expecting a `,' or a `}'---line 61 of file infinit.bib
:
: @article{Cantor1,<br /> (Error may have been on previous line)<br /> I'm skipping whatever remains of this entry<br /> I was expecting a `,' or a `}'---line 83 of file infinit.bib
:
: @book{Poincar1,<br /> (Error may have been on previous line)<br /> I'm skipping whatever remains of this entry<br /> I was expecting a `,' or a `}'---line 93 of file infinit.bib
: note = ``English
: translation by W. J. G. \textit{Science and Hypothesis}",W. Scott, London, 1905, },
I'm skipping whatever remains of this entry
Illegal end of database file---line 1124 of file infinit.bib
:
:
(Error may have been on previous line)
I'm skipping whatever remains of this entry
(There were 6 error messages)
(guessed encoding: Shift_JIS = sjis)
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー
しかし上のlog ファイルにある @article{Cantor1, と @book{Poincar1, は、本文の \cite で参照している bibitem ではありません。ここが問題なのかも知れないので infinit.bib の中の @article{Cantor1, と @book{Poincar1, の記述を、その前の @book{Dedekind, とともに下に記します。<br /> ーーーーーーーーーーーーーーーーーーーーーーーーーーーー<br /> @book{Dedekind,<br /> author = {Dedekind, Julius W. R},
year = {1872},
title = {\textit{Stetigkeit und Irrationale Zahlen}",
publisher = {Friedr. Vieweg, Brawnschweig},
}
@article{Cantor1,<br /> author = {Cantor, Georg},
year = {1883},
title = {\"{U}ber die unendliche lineare Punktmannigfalltigkeiten. Nr. 5. Grundlagen einer allgemeinen Mannigfalltigkeitslehre},
journal = {\textit{Mathematischen Annalen}},
volume = {\textbf{21}},
booktitle = {\textit{Georg Cantor, Abhandlungen Mathematischen und Philosophischen Inhalts},
editor = { Ernst Zermelo, 1932, },
note = {Reprinted by "Georg Olms, Hildesheim, 1966},
pages = {183-190},
}
@book{Poincar1,<br /> author = {Poincar\'{e}, Henri},
year = {1902},
title = {\textit{La science et l'hypoth\`{e}se}},
publisher = {Flammarion, Paris},
note = ``English translation by W. J. G. \textit{Science and Hypothesis}",W. Scott, London, 1905, },
note = {Reprinted by Dover, New York, 1952},
}
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー
これらの bibitem のどこかが文献スタイルファイルの」要求に合わないのかと思いますが、log ファイルのどこを見れば分かるのでしょうか。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー
文献リストの問題ではありませんが、元の論文 infinit26.tex のプリアンブルに
\documentclass[sn-mathphys]{sn-jnl}
として pLaTeX でタイプセットすると、下のエラーメッセージが出てタイプセットが中断されます。
! LaTeX Error: Command \bfseries invalid in math mode.
See the LaTeX manual or LaTeX Companion for explanation.
Type H for immediate help.
...
l.412 ... \frac{1}{c} i_z ~ . ~~ \cite{Einstein1}
\]
?
---------------------------------------
しかし上記の行番号 412 から始まる以下の3行の行頭に@を付けて無効化するとタイプセットを続行できます。
---------------------------------------
\begin{verbatim}
\[\quad \frac{\partial h_z}{\partial y} - \frac{\partial h_y}{\partial z} = \frac{1}{c}\frac{\partial e_x}{\partial t} + \frac{1}{c} i_x \, , \quad
\frac{\partial h_x}{\partial z} - \frac{\partial h_z}{\partial x} = \frac{1}{c}\frac{\partial e_y}{\partial t} + \frac{1}{c} i_y \, , \quad
\frac{\partial h_y}{\partial x} - \frac{\partial h_x}{\partial y} = \frac{1}{c}\frac{\partial e_z}{\partial t} + \frac{1}{c} i_z ~ . ~~ \cite{Einstein1} \]
\end{verbatim}
---------------------------------------
プリアンブルを \documentclass[fleqn,12pt,onecolumn,a4paper]{article} に代えると、この問題は起こりません。これらの行のどこかに問題があるのでしょうか。log ファイル全体は長いのでここには載せませんでした。
植木
\[\quad \frac{\partial h_z}{\partial y} - \frac{\partial h_y}{\partial z} = \frac{1}{c}\frac{\partial e_x}{\partial t} + \frac{1}{c} i_x \, , \quad
\frac{\partial h_x}{\partial z} - \frac{\partial h_z}{\partial x} = \frac{1}{c}\frac{\partial e_y}{\partial t} + \frac{1}{c} i_y \, , \quad
\frac{\partial h_y}{\partial x} - \frac{\partial h_x}{\partial y} = \frac{1}{c}\frac{\partial e_z}{\partial t} + \frac{1}{c} i_z ~ . ~~ \cite{Einstein1} \]
でしょうか。プレインテキストフォーマットで投稿されると変換されないと思います。
あと、Springerに欧文で投稿されるなら、platexじゃなくpdflatexでテストされるといいと思います。
お願い
説明とコードが混在しているので、問題点の把握やソースの切り出しなど手間がかかります。
また途中にエラーを検出した行数情報がありますが、その行番号と対応させるファイルがありません。示された bib 情報を全て集めても 40 行ほど、がエラー表示された行番号はそれ以上のものがあります。
ですので、情報公開可能な範囲のテスト用ソースを作り、コンパイル作業で生成されるログなど一式を zip で纏めるなどして添付ファイルでアップロードしてください。
今回の場合だと infinit29.* と infinit.bib になるかと思います。
これらを使い .log(tex のログファイル) .bbl(pbibtex のログファイル)などに記録された行番号情報をもとに検討しまうので、よろしくお願いします。
参考文献一覧に ???
が表示される件
pbibtex が sn-mathphys.bst と infinit.bib から作成される.bbl
ファイルを見ると、sn-mathphys.bst
を利用する際には、植木さんが想定されている以外、例えば DOI 情報などが必要のようです。
例に使用された二つの文献の bib 情報は以下から取得できます。
ただし、植木さんの記述の 年
との不一致なのは気になりますが。
History of Science and its Rational Reconstructions
The Unreasonable Effectiveness of Mathematics in the Natural Sciences
.bib ファイルの記述ミスがあります
.bib ファイルにしろ .tex ファイルにしろ、エラーや警告メッセージに付随した行番号は、少なくともその行以前に何らかの記述ミスがあるからです。
I was expecting a `,' or a `}'---line 41 of file infinit.bib
とと表示されていれば、infinit.bib の 41 行目には ,
か }
があるべき云々ですが、その前の記述で {
と}
が不一致なのが原因でしょう。
その他、気になる点がありましたので合わせて修正しておきます
1. .bst ファイルを使う場合は、textbf textit などの文字装飾しない方が良い
2. 連続するpageを参照する場合は {12--34} のように -
を二つくっつけた方が見やすくなる
3. 引用は ` が `` で開始して ' または ’’ で終了させる
--- infinit.bib.orig
+++ infinit.bib
@@ -32,25 +32,25 @@
@book{Dedekind,
author = {Dedekind, Julius W. R},
year = {1872},
-title = {\textit{Stetigkeit und Irrationale Zahlen}", ←「}」不足
+title = {Stetigkeit und Irrationale Zahlen},
publisher = {Friedr. Vieweg, Brawnschweig},
}
@article{Cantor1,
author = {Cantor, Georg},
year = {1883},
title = {\"{U}ber die unendliche lineare Punktmannigfalltigkeiten. Nr. 5. Grundlagen einer allgemeinen Mannigfalltigkeitslehre},
-journal = {\textit{Mathematischen Annalen}},
-volume = {\textbf{21}},
-booktitle = {\textit{Georg Cantor, Abhandlungen Mathematischen und Philosophischen Inhalts}, ←「}」不足
+journal = {Mathematischen Annalen},
+volume = {21},
+booktitle = {Georg Cantor, Abhandlungen Mathematischen und Philosophischen Inhalts},
editor = { Ernst Zermelo, 1932, },
note = {Reprinted by "Georg Olms, Hildesheim, 1966},
-pages = {183-190},
+pages = {183--190},
}
@book{Poincar1,
author = {Poincar\'{e}, Henri},
year = {1902},
-title = {\textit{La science et l'hypoth\`{e}se}},
+title = {La science et l'hypoth\`{e}se},
publisher = {Flammarion, Paris},
-note = ``English translation by W. J. G. \textit{Science and Hypothesis}",W. Scott, London, 1905, },←「{」不足
+note = { ``English translation by W. J. G. \textit{Science and Hypothesis}’’,W. Scott, London, 1905, },
note = {Reprinted by Dover, New York, 1952},
}
数式がエラーになる
奥山さんの解析された数式を利用して検証。
LaTeX Error: Command \bfseries invalid in math mode.
で検索し Weird “\bfseries invalid in math mode” problem を参考にしました。
添付ファイルについて
springer 投稿用に必要な .cls .bst などを含めたものをアップロードします。
2023-08-22-sn-article-template/infinit.bib 今回の検証での最後の bib
2023-08-22-sn-article-template/infinit.bib-ueki 植木さんの最初の2件簿 bib
2023-08-22-sn-article-template/infinit.bib.orig 植木さんの最初の2件を修正、残り3件追加
2023-08-22-sn-article-template/infinit29-wada.aux
2023-08-22-sn-article-template/infinit29-wada.bbl
2023-08-22-sn-article-template/infinit29-wada.blg
2023-08-22-sn-article-template/infinit29-wada.log
2023-08-22-sn-article-template/infinit29-wada.out
2023-08-22-sn-article-template/infinit29-wada.pdf
2023-08-22-sn-article-template/infinit29-wada.tex 検証用ファイル
以下は springer に投稿する際のテンプレート等
2023-08-22-sn-article-template/bst/sn-apacite.bst
2023-08-22-sn-article-template/bst/sn-aps.bst
2023-08-22-sn-article-template/bst/sn-basic.bst
2023-08-22-sn-article-template/bst/sn-chicago.bst
2023-08-22-sn-article-template/bst/sn-mathphys.bst
2023-08-22-sn-article-template/bst/sn-nature.bst
2023-08-22-sn-article-template/bst/sn-vancouver.bst
2023-08-22-sn-article-template/empty.eps
2023-08-22-sn-article-template/fig-eps-converted-to.pdf
2023-08-22-sn-article-template/fig.eps
2023-08-22-sn-article-template/sn-apacite.bst
2023-08-22-sn-article-template/sn-aps.bst
2023-08-22-sn-article-template/sn-article.pdf
2023-08-22-sn-article-template/sn-article.tex
2023-08-22-sn-article-template/sn-basic.bst
2023-08-22-sn-article-template/sn-bibliography.bib
2023-08-22-sn-article-template/sn-chicago.bst
2023-08-22-sn-article-template/sn-jnl.cls 今回使用するもの
2023-08-22-sn-article-template/sn-mathphys.bst 今回使用するもの
2023-08-22-sn-article-template/sn-nature.bst
2023-08-22-sn-article-template/sn-vancouver.bst
2023-08-22-sn-article-template/user-manual.pdf
いろいろ教えて頂きありがとうございます。私としてはまずご指摘のような infinit.bib の誤りを正したいと思います。誤りが無くなれエラーメッセージが出なくなるかも知れません。これ以上貴重なお時間を割いていただくのは心苦しいので、これまでのご教示を参考に自分で解決しようと思います。解決できなければ、投稿手続きだけにこれ以上時間をかけず、別の雑誌に投稿するつもりです。
この雑誌の Submission guidelines には、Reference list という見出しの下に "Journal names and book titles should be italicized.Journal article" などの条項があり、
Grady, J. S., Her, M., Moreno, G., Perez, C., & Yelinek, J. (2019). Emotions in storybooks: A comparison of storybooks that represent ethnic and racial groups in the United States. Psychology of Popular Media Culture, 8(3), 207–217.
という例が挙げられています。最初この例にならって thebibliography を使った文献リストを作りました(これの .bib ファイルへの変換にいま苦労しています)。Springerの他の雑誌に同様な PDF を投稿したこともあります。奥村先生が示唆されたように、編集部にこのいきさつを説明して thebibliography 形式の投稿に了解を求めることも考えています。今後ともよろしくご指導ください。
植木
もう手助け不要とのことですが、当方のミスも見つかったので訂正を兼ねて
参考文献に
???
が表示される件DOI情報が不足では
との私の発言は以下の理由により撤回
sn-mathphys.bst を使用時
@book
情報などにはaddress = {anyware}
の記述がないと???
が表示される
documentclass について
\documentclass[sn-mathphys,Numbered]{sn-jnl}% Math and Physical Sciences Reference Style
sn-article.tex には上記のように書かれているので
Numbered
のオプションを追加された方が良いですね。参考文献一覧でのタイトルなどの斜体表示について
- Reading and Writing | Submission guidelines には確かに書かれていますが ...
- 表題のようなことだるい作業をしなくて済むように .bst ファイルを使うのだと思うのですが
sn-mathphys.bst
はそのようになっていませんね。 - この件については、指摘されたら上記 URL に従ったと言えば良いので、この件も和田の意見は撤回します
bibitem 記述を .bib の変換
- 「2023年 08月 15日(火曜日) 16:02」に私が投稿した際に紹介した makebib.perl Gateway に10個くらいつづ貼り付けて変換してみてはいかがですか?
添付ファイルについて
先日提供したものは、和田の不十分な理解な状態での対応でしたので、植木さんの原文に近い形に .tex .bib を戻し、 .bib のエラー箇所を改めて修正して処理しやものを添付します。
- infinit29-wada.tex
- infinit29-wada.pdf
- infinit.bib
- @book → @article
- title / booktitle を ```\textit{...}``
- infinit.bib.orig ... 植木さんが提示された内容 + でっちあげアインシュタイン bib 情報
- infinit.bib.diff ... infinit.bib.orig と infinit.bib の差分