
如果你最近在投Elsevier旗下期刊八成會撞上這么一件事期刊投稿系統(tǒng)要求參考文獻必須按“作者姓氏名字首字母縮寫、年份、文章標題、期刊縮寫、卷號、頁碼、DOI”的固定順序排列而你手頭要么是Word自動生成的引用要么是LaTeX模板里不知道哪里冒出來的亂碼文獻。這時候Overleaf、EndNote、BibTeX這三個工具要是配合不好光是格式就能讓你改一下午。這篇文章不是概念科普而是基于我自己實際投稿Elsevier期刊的完整流程整理出來的一套操作方法。我會把三個工具各自負責什么、為什么要這樣分工、每一步具體怎么點以及我踩過的坑全部講清楚。內(nèi)容適合正在準備論文投稿的研究生、青年教師也適合剛接觸LaTeX不久、被參考文獻折騰到頭禿的科研新手。只要照著做投Elsevier期刊的參考文獻格式基本不會出大亂子。1. 先理清楚Overleaf、EndNote、BibTeX各自干什么為什么能湊到一起1.1 三個工具的“崗位分工”先說人話版本。Overleaf是一個在線LaTeX編輯平臺你不需要在本地裝TeX Live打開瀏覽器就能寫論文而且它內(nèi)置了大量期刊官方模板Elsevier旗下很多期刊都能直接在Overleaf里選到。EndNote是文獻管理軟件用來收集文獻、整理文獻庫、給文獻分組打標簽。它最大的優(yōu)勢是支持從Web of Science、PubMed、Google Scholar等數(shù)據(jù)庫批量導(dǎo)入文獻記錄還能在Word里插入引文。BibTeX則是一個獨立的參考文獻排版工具它不參與論文正文排版專門負責根據(jù)你在LaTeX代碼里寫的\cite{key}命令從.bib文獻數(shù)據(jù)庫文件中提取對應(yīng)條目再按期刊要求的格式生成參考文獻列表。這三個工具的配合邏輯其實很簡單EndNote負責“管文獻”把參考書目整理干凈BibTeX負責“排文獻”解決投稿格式問題Overleaf負責“寫論文”把正文和參考文獻最終編譯成一個PDF文件。1.2 為什么這套組合比WordEndNote更適合Elsevier投稿很多人在糾結(jié)要不要放棄Word。我的觀點是如果期刊提供官方LaTeX模板能用LaTeX就盡量別用Word。原因很實在Elsevier的期刊模板對格式的控制是“硬編碼”級別的LaTeX會自動把參考文獻目錄、圖表、公式都排列得整整齊齊基本不需要手動調(diào)間距而Word里你調(diào)整一個錯位的參考文獻編號可能要連帶改好幾處。另外Overleaf和EndNote之間通過BibTeX搭橋做到“一次整理、多處復(fù)用”。比如你同時投兩個不同期刊換模板后只需要換\bibliographystyle參考文獻列表的格式就會自動變化不需要手動重排幾百條文獻。WordEndNote雖然也可以切換style但在復(fù)雜長文檔里經(jīng)常出現(xiàn)編號錯亂、引文順序不穩(wěn)定問題。當然如果你是給導(dǎo)師提交論文初稿導(dǎo)師更習(xí)慣Word批注修改那么混合流程也完全可以初稿用Word寫、EndNote管文獻定稿后轉(zhuǎn)Overleaf。但我的建議是投稿階段直接走LaTeX路線省心。2. 投稿前必懂Elsevier參考文獻格式的底層規(guī)則2.1 Elsevier對參考文獻的硬性要求Elsevier各期刊的參考文獻標準樣式略有差異但大部分都遵循“編號順序制”或“作者-年份制”其中以“編號順序制numbered”最常見。以我投過的幾個期刊為例格式化要求一般包括作者姓名姓在前名縮寫在后如“Zhang, X.M.”姓與名縮寫之間用逗號多個作者用逗號分隔文章標題首字母大寫不需要書名號期刊名稱期刊名縮寫不可寫全稱出版年份用括號括起來放在標題之后卷號、期號、頁碼、DOI依次排列。舉例來說一篇標準文獻在參考文獻列表里長這樣[1] J. van den Berg, Z. Wang, X. Zhang, et al., A review on energy consumption in data centers, Appl. Energy 302 (2021) 117512. https://doi.org/10.1016/j.apenergy.2021.117512.這個格式是否規(guī)范完全取決于你用的style文件。EndNote里的Style文件和BibTeX的.bst文件就是干這個的。2.2 BibTeX的樣式體系在Overleaf的Elsevier LaTeX模板里通常已經(jīng)預(yù)設(shè)了BibTeX樣式。打開模板主文件你會看到類似這樣的代碼\bibliographystyle{elsarticle-num} \bibliography{myrefs}elsarticle-num是Elsevier官方提供的編號制參考文獻樣式也是大部分Elsevier期刊的默認格式。它的特點就是按正文引用順序編號實際操作中只要保證\cite命令位置正確參考文獻列表就能自動按序排列。.bib文件則負責存放文獻數(shù)據(jù)。一個最簡單的BibTeX條目長這樣article{zhang2021datacenter, author {Zhang, Xiaomei and Wang, Lan and Berg, J. van den}, title {A review on energy consumption in data centers}, journal {Applied Energy}, year {2021}, volume {302}, pages {117512}, doi {10.1016/j.apenergy.2021.117512} }這里每一項字段都要盡量填寫完整否則BibTeX在排版時會漏掉信息或直接報警告。最關(guān)鍵的字段是author、title、journal、year、volume、pages、doi。有些新手習(xí)慣只填前四項結(jié)果編譯出來參考文獻列表缺頁缺卷審稿人一眼就能看出不仔細。提示盡量不要手動創(chuàng)建.bib文件而是讓EndNote自動導(dǎo)出。手動輸入不僅容易打錯字段還會在處理特殊字符、重音符時留下隱患。3. EndNote端準備把文獻庫變成“投稿可用”的狀態(tài)3.1 下載正確的Elsevier輸出格式EndNote默認自帶的Styles列表里能看到“Elsevier (numeric)”等樣式但我建議你先別依賴舊版本自帶的style因為不同年份、不同子刊的格式細節(jié)會變。正確做法是先去EndNote官網(wǎng)下載最新的Elsevier投稿樣式。在EndNote官網(wǎng)的Styles頁面搜索“Elsevier”找到合適的.ens文件下載。下載后雙擊.ens文件EndNote會自動把它安裝到Styles目錄下。然后打開EndNote在“Tools Output Styles Open Style Manager”里勾選剛剛安裝的樣式讓它出現(xiàn)在快捷列表里。如果你投的是Elsevier的子刊比如Applied Energy、Journal of Cleaner Production這類有的期刊官網(wǎng)會額外提供專屬style文件優(yōu)先使用期刊給的那一版。我見過不少投稿人用通用的Elsevier樣式導(dǎo)出的文獻里期刊縮寫沒有正常還原就是因為樣式文件和期刊專用術(shù)語表不匹配。3.2 必做一步搞定期刊縮寫與Journal Term Lists這里必須單獨拉出來說因為“EndNote X9導(dǎo)出文獻格式?jīng)]有縮寫”這個問題幾乎天天有人在論壇里問。EndNote里有個功能叫“Journal Term Lists”作用是把期刊全稱自動替換成語料庫里的縮寫形式比如把“Applied Energy”替換成“Appl. Energy”。如果你的文獻里期刊名字是全稱而且EndNote沒有匹配到對應(yīng)的縮寫術(shù)語表導(dǎo)出的參考文獻里就會出現(xiàn)全稱期刊名這不符合Elsevier的要求。解決方式分兩步。第一步打開EndNote菜單欄選“Tools Open Term Lists Journals Term List”查看已有的期刊縮寫列表。里面如果沒有你需要的期刊手動添加點擊“Terms New Term”分別填寫全稱和兩個縮寫JCR縮寫和ISO縮寫。第二步從期刊官網(wǎng)或Elsevier的期刊名稱縮寫列表導(dǎo)入批量數(shù)據(jù)。網(wǎng)上也有人整理好的.txt術(shù)語表文件直接通過“Lists Import List”導(dǎo)入即可。實際操作中我習(xí)慣在投每個期刊前先把該期刊近三年的參考文獻列表里的期刊名都過一遍在Term Lists里補上缺失的縮寫。這個動作看起來很笨但能規(guī)避絕大多數(shù)“文獻格式?jīng)]有縮寫”的問題。3.3 從EndNote導(dǎo)出BibTeX文件EndNote里導(dǎo)出BibTeX的方法有幾種我最常用的是“File Export”然后在“Output Style”欄選擇“BibTeX Export”。導(dǎo)出的.txt文件其實內(nèi)容已經(jīng)是.bib格式你把它重命名成.bib就能直接用了。注意導(dǎo)出的文件默認可能是UTF-8編碼在Overleaf里基本沒問題但如果本地用老舊的TeX編輯器可能會遇到編碼問題。建議導(dǎo)出后先用文本編輯器打開確認中文和特殊符號沒有變成亂碼再上傳到Overleaf。中文文獻是另一個容易出問題的點。EndNote導(dǎo)出的BibTeX里中文作者名和中文標題會被原樣保留成漢字這時編譯BibTeX大概率會報錯。我的做法是在EndNote里先把中文文獻的作者名做成拼音標題保留英文翻譯或直接寫Chinese Title字段再導(dǎo)出。這樣做雖然信息不夠完整但能保證編譯通過、格式穩(wěn)定。4. Overleaf端實操從空項目到能編譯出規(guī)范參考文獻4.1 復(fù)制Elsevier官方模板而不是從零搭建不要自己做模板強烈建議你去Overleaf模板庫直接搜索“Elsevier”選擇官方維護的Elsevier Article (elsarticle)模板點擊“Open as Template”即可。這個模板自帶elsarticle.cls和elsarticle-num.bst等核心文件還包含了sample.tex和sample.bib能直接編譯出一個完整示例。很多人第一次打開模板會有點懵不知道哪些文件該刪哪些該留。我的建議是先保留所有文件編譯通過后再把sample.tex里的正文內(nèi)容替換成自己的章節(jié)結(jié)構(gòu)。從模板起步有幾個好處參考文獻樣式不用自己調(diào)整模板的腳注、圖表positioning都配置好了而且Overleaf自帶的編譯器環(huán)境一般都能直接跑通不用額外安裝宏包。4.2 把bib文件放進去并在TeX文件中聲明引用在Overleaf項目里點擊左上方“Menu”可以上傳.bib文件。如果你在本地已經(jīng)通過EndNote導(dǎo)出了myrefs.bib上傳后在文件列表里能看到。然后打開.tex主文件在文檔結(jié)束的\end{document}前加上\bibliographystyle{elsarticle-num} \bibliography{myrefs}elsarticle-num可以替換成其他樣式比如作者-年份制的elsarticle-harv。實際投Elsevier時期刊要求用哪種樣式就會在投稿指南里寫明如果不確定可以先默認用elsarticle-num。接下來是引用操作。在正文需要插入引文的位置寫The energy consumption of data centers has become a major concern \cite{zhang2021datacenter}.注意這個zhang2021datacenter必須和.bib文件里某個條目的key完全一致區(qū)分大小寫和后綴。我見過不少人編譯后參考文獻列表空白檢查半天才發(fā)現(xiàn).bib里key寫的是Zhang2021而.tex里引用的是zhang2021。4.3 編譯時如何查看BibTeX日志在Overleaf里你按“Recompile”后系統(tǒng)會自動執(zhí)行pdflatex → bibtex → pdflatex → pdflatex多輪編譯。日志區(qū)里能看到一段類似這樣的輸出This is BibTeX, Version 0.99d (TeX Live 2022) The top-level auxiliary file: main.aux The style file: elsarticle-num.bst Database file #1: myrefs.bib很多新手看到這串英文以為報錯了其實這是正?,F(xiàn)象是BibTeX在告訴你“我讀了哪個aux文件、用了哪個bst樣式、加載了哪個bib數(shù)據(jù)庫”。真正出問題的情況是后面出現(xiàn)Warning--I didnt find a database entry for zhang2021或者說There were undefined references.如果出現(xiàn)這些提示就需要回到.bib文件檢查對應(yīng)條目的key是否一致或者檢查.bib文件是否成功上傳、文件名是否在\bibliography{}里寫對。記住不要在文件名里帶空格或中文避免各種奇怪問題。4.4 修改和修訂階段Overleaf修訂模式怎么配合投稿后如果編輯部要求大修、小修修改稿階段經(jīng)常需要標注出“哪些地方做了修改”。雖然參考文獻格式不需要用修訂模式標出但修改稿的diff文件會讓審稿人覺得你很細心。Overleaf的“Review”功能可以對比不同版本之間的差異把改動用紅字顯示。操作方法是在菜單里找到“Review”創(chuàng)建新的Review版本再把你修改后的文本粘貼進來系統(tǒng)就能自動生成修訂對比。這里提一個經(jīng)驗改參考文獻格式時盡量不要在修訂模式下直接改正文的\cite位置因為編號是自動生成的新增或刪除一篇引用后面的所有編號都會變。審稿人如果看到紅字里全是編號變化會覺得你動了全文會招來多余的質(zhì)疑。正確的做法是把新加文獻的\cite放在正文對應(yīng)句子的標點前一次編譯后在對編輯的Response里說明“引文編號為自動更新新增了第X、Y篇參考文獻”即可。5. 常見報錯與日常問題排查實錄5.1 編譯日志常見信息速查表我把日常使用中最常遇到的幾類提示和解決方法整理成了表格方便你對照排查日志信息含義處理方式This is BibTeX, Version 0.99d... The top-level auxiliary file: main.auxBibTeX正常啟動正在讀取文件無需處理屬正常輸出I didnt find a database entry for XXX.bib中沒有找到該key對應(yīng)的條目檢查.tex中的\cite{XXX}和.bib中的key是否一致There were undefined references存在無法解析的引用重新編譯正常情況下多編譯兩次會消失若仍在檢查\bibliography{}路徑The style file: elsarticle-num.bst正在使用該bst樣式確認與期刊要求一致Repeated entry.bib中出現(xiàn)了重復(fù)條目打開.bib刪除重復(fù)的article{...}塊Warning--I didnt find a database entry for ...引用了不存在或拼寫錯誤的key在Overleaf中按CtrlF查找key并修正Missing $ inserted.bib標題或作者名中含有特殊符號如、%、_在特殊符號前加\轉(zhuǎn)義如\這份表格我在本地用A4紙打印了一份貼在工位上寫論文時基本當“速查手冊”用。Overleaf的日志窗口雖然不會彈出一堆紅字但只要有Warning最好一條條看完再繼續(xù)寫。5.2 EndNote安裝和網(wǎng)絡(luò)相關(guān)問題怎么處理“EndNote安裝”這個話題看起來簡單但我在不同電腦上裝了無數(shù)遍踩過的坑不少。最常見的兩個問題第一個是安裝時提示“EndNote is waiting for user”。這通常出現(xiàn)在安裝界面彈出了某個自定義選項、或者是許可證激活窗口被遮擋的時候。注意看一下任務(wù)欄里有沒有閃爍的小窗口點進去確認就能繼續(xù)。如果始終卡住建議先關(guān)閉殺毒軟件或安全衛(wèi)士再以管理員身份運行安裝程序。第二個是“EndNote安全頻道支持出錯”這類報錯。遇到這個問題優(yōu)先檢查EndNote版本是否過舊、系統(tǒng)證書是否過期以及網(wǎng)絡(luò)連接是否正常??梢試L試在EndNote里點擊“Help Check for Updates”或者直接卸載后安裝最新版。如果更新后仍報錯多半是系統(tǒng)時間不對或網(wǎng)絡(luò)環(huán)境里有干擾把電腦放到常規(guī)網(wǎng)絡(luò)環(huán)境下重試。5.3 PubMed文獻如何精準導(dǎo)入EndNote和BibTeX你可能會想為什么單獨提PubMed因為很多生物、醫(yī)學(xué)、環(huán)境科學(xué)領(lǐng)域的Elsevier期刊參考文獻大量來自PubMed數(shù)據(jù)庫。而PubMed默認導(dǎo)出的格式和EndNote、BibTeX之間有一個“最后一次轉(zhuǎn)換”的坑。在PubMed檢索結(jié)果頁面勾選需要的文獻點“Send to”在“Choose Destination”里選“Citation Manager”Format選擇“PubMed (NLM)”格式然后直接下載.nbib文件。這個.nbib文件雙擊后能直接用EndNote打開文獻信息幾乎無損導(dǎo)入。如果要把PubMed文獻轉(zhuǎn)成BibTeX最省事的路徑是先用EndNote導(dǎo)入.nbib再通過EndNote導(dǎo)出成BibTeX格式。不要直接從PubMed導(dǎo)出“CSV”或“RIS”然后試圖讓BibTeX讀取字段映射很可能錯亂最后參考文獻列表里會多出一堆不需要的字段。實際經(jīng)驗無論從哪個數(shù)據(jù)庫導(dǎo)入進EndNote后都要隨手篩查一遍“Author”字段。數(shù)據(jù)庫里常見的“張三, Li, Yan”這種姓名格式如果不清理導(dǎo)出BibTeX后BibTeX會把人名解析成彼此獨立的作者參考文獻縮寫出問題就在所難免。5.4 中文文獻在BibTeX里顯示亂碼怎么處理中文文獻混排在英文文獻里是很多國內(nèi)科研人都會遇到的問題。Elsevier期刊一般不接受中文文獻作為參考文獻但在寫開題報告、學(xué)位論文階段你經(jīng)常需要本地使用BibTeX管理中文文獻。BibTeX原生不支持中文除非你用XeLaTeX和ctex宏包否則中文文獻大概率變亂碼。我的處理方案是對于本地學(xué)位論文直接用XeLaTeX編譯.bib文件保持UTF-8編碼中文就能正常顯示。如果投稿Elsevier則不建議在.bib里放中文文獻而是把關(guān)鍵中文文獻的信息轉(zhuǎn)譯成英文格式并在文稿中說明中文原意。另外補充一點在EndNote里編輯中文文獻時不要直接在“Title”里混入漢字和LaTeX特殊字符。導(dǎo)出BibTeX后你還需要手工檢查一遍中英文混合的title給漢字部分加上\texorpdfstring之類的保護命令但這個操作比較高級新手別輕易嘗試直接轉(zhuǎn)譯為英文最穩(wěn)妥。5.5 審稿人要求修改引用編號或縮寫怎么辦有時候大修意見會包含“請將參考文獻中的期刊縮寫補充完整”或“引用編號請按照期刊要求采用順序編號制”。這種修改分兩種情況。如果是格式問題比如當前用的bst樣式是elsarticle-num但期刊實際要求作者-年份制你只需要改\bibliographystyle{}為期刊指定的樣式然后重新編譯。EndNote端不需要動因為.bib是數(shù)據(jù)文件與樣式無關(guān)。如果期刊要求“參考文獻中必須包含文章的DOI”但當前.bib條目里沒有這一項那就需要回到EndNote為缺失的記錄補全DOI字段并重新導(dǎo)出BibTeX。不要試圖在Overleaf的.bib里手動添加一行doi {...}雖然也可以但很麻煩不如直接在EndNote里補齊數(shù)據(jù)保證EndNote庫本身也是最新、最完整的。6 個人經(jīng)驗這套流程里我最想提醒你的幾個細節(jié)整套流程走下來有一件事我很后悔沒有早一點做在開始寫正文之前先花半小時把EndNote文獻庫整理干凈。這里的“干凈”指的是每個條目的作者、標題、期刊、卷號、頁碼、DOI都完整且沒有重復(fù)項。如果一開始不整理到論文寫了一半時再回頭補數(shù)據(jù)工作量會翻倍。另一個細節(jié)是每次編譯完養(yǎng)成滾動日志的習(xí)慣。Overleaf的日志區(qū)不會主動彈窗報錯很多Warning藏在后面你不主動看就很容易忽略。尤其是“I didnt find a database entry”這類提示它影響的可能只是某一條引文但如果不處理參考文獻列表缺條目會直接拖累投稿進度。最后關(guān)于EndNote和Zotero之爭其實沒必要糾結(jié)哪個更好。如果你已經(jīng)用順手了EndNote那繼續(xù)用就好如果你還在起步階段Zotero的免費和跨平臺確實有吸引力。但如果你要投的期刊剛好提供LaTeX模板整個“EndNote導(dǎo)出BibTeX、Overleaf編譯”這套流程依然離不開對.bib數(shù)據(jù)庫的依賴這時候選擇一個文獻管理軟件并用好它比換來換去更重要。試過幾次之后你就會發(fā)現(xiàn)參考文獻格式并不難難的是一開始就把這條路理順。希望這篇避坑指南能幫你少走一段彎路。