按照文献引用顺序对文献进行编号。
请确保word中有且只有[n]
这一种引用格式,[1-3]
或 [1,2,3]
等形式需要统一改写成[1][2][3]
。
请确保word中所有形如[n]
的字符串均代表引用,否则这些字符也会被计入引用而被错误的改写,如果有的话可以先把不代表引用的字符替换为其他格式比如<n>
等到程序处理完后再改写回来。
首先确保已经安装python3.6或更高版本。
-
使用 pip 安装依赖
python -m pip install sort_reference
-
指定输入输出文件
python -m sort_reference [input] [output]
如:
python -m sort_reference testcase/paper.docx testcase/processed_paper.docx
-
手动处理引用顺序
最后的引用目录还无法使用程序自动排序,执行结束后手动排序一下即可。
假设具体的报错内容是total 2 text blocks in snippet: '12'
, 全文搜索找到每一处[12]
, 删除其中的数字并重新输入一遍即可
出现这个报错是因为一些引用的字符被word分到了多个不同的文字块中,具体来说,某一个[12]
的字符被word分割为了[1
和2]
两个字符串,只是显示时看起来是连续的。此时删除字符并重新输入就可以保证新输入的字符在同一个文字块内了。
testcase/paper_badcase.docx
中复现了这一错误,只需要重新输入一遍12
就可以解决。
导出前使用ctrl+a
和ctrl+F11
禁用全局域更新,导出后ctrl+a
和ctrl+shift+F11
启用全局域更新即可。网络上有大量教程,可以自行搜索。理论上不是本程序导致的。