将群友的某个需求移动到这里。
有一个私有的mystyle.bst文件:mystyle.bst
以及下面的MWE:
% main.tex
\documentclass[fontset=fandol]{ctexart}
\begin{filecontents*}[overwrite]{ref.bib}
@phdthesis {满红2014CSTR,
author = { 满红 },
title = {CSTR过程的模型辨识及其非线性预测控制方法研究},
school = {大连理工大学},
year = {2014}
}
\end{filecontents*}
\bibliographystyle{mystyle}
% \usepackage{gbt7714}
% \bibliographystyle{gbt7714-numerical}
\begin{document}
你好,世界\cite{满红2014CSTR}。
\bibliography{ref.bib}
\end{document}目前得到的效果是:

希望得到的效果是:
[S.l.]address={}等entry而显示更多的信息效果示例如下:
[1] 满红.CSTR过程的模型辨识及其非线性预测控制方法研究[D].大连理工大学,2014.如何魔改mystyle.bst? 诚邀S老师@u79794 解答~
Notes: 比较希望得到定位.bst关键信息的过程,同时又是根据什么参考文档做修改的思路,而不仅仅是得到魔改后的结果。
谢邀. 在这里主要介绍下查找思路:
首先编译你的这个 MWE,而后会生成一个 *.bbl 文件,这个是可以直观的查看最终 PDF 输出的内容的,发现里面:
\bibitem{满红2014CSTR}
满红.
CSTR过程的模型辨识及其非线性预测控制方法研究~[D].
[S.~l.]: 大连理工大学, 2014.根据你的要求,那么我们检索 S.~l.,发现 *.bst 里 140 行
FUNCTION {bbl.sine.loco} { language empty$ { "S.~l." } { "出版地不详" } if$ }得知这个输出由函数 bbl.sine.loco 控制,那么我们就搜索这个函数,这时会在额外 5 处搜到(可能对应不同的 if 判断,实测只有第 1861 行有效)
1860 -- 1862 行原始如下:
address empty$
{
"[" bbl.sine.loco * "]" * bbl.colon * % 无出版地
school empty$很好理解,意思就是
"[" bbl.sine.loco * "]" * bbl.colon
左方括号 S.~l. 右方括号 冒号刚好和你的截图对应. 这几行处理后如下
address empty$
{
% "[" bbl.sine.loco * "]" * bbl.colon * % 无出版地
"" school empty$注意到在注释掉这个function同时,还要在 school empty$ 前加 "",否则会报错(你理解为“助动词”好了)
不过其他基础我也给你改了,改好的 *.bst 见附件.

这一行实际上就是把
bbl.sine.loco做替换然后输出而已😋实际上的5处分别在:
Function format.address.publisherFunction format.address.publisherFunction format.address.publisher.year已经被注释Function format.address.publisher.year已经被注释Function format.address.school.year注意到Line 1854中的注释为:
仅有此处与学校『大连理工大学』有关,因此:
只要将:
修改为:
即可。
非常感谢S老师!