我目前正在编写包含大量源代码引用的文档,其中我通常一次包含一个完整的方法。
/*
...
*/
public class MyClass {
public MyClass(String... someArguments) {
/*
...
*/
}
@Override
public String toString() {
return "Some information on this specific instance.";
}
}
目前,我会这样做,例如:
\lstinputlisting[firstnumber=13,firstline=13,lastline=16]{./path/MyClass.java}}
此源代码保存在并行编辑的单独文件中,导致我想要包含的方法移动或更改其行数。方法本身可能会被重写以包含其他行、注释等。
在文档开头进行简单的添加(例如额外导入)会导致所有对这些行的引用都需要更新。
理想情况下我想做这样的事情:
\importmethod{toString()}{./path/MyClass.java}
或者可能使用其他选项/语法:
\importmethod[annotations=true]{MyClass > toString()}{./path/MyClass.java}
只要方法签名不变,它就会一直寻找该方法的完整部分,包括注释、JavaDoc 注释等。
这是否已经存在于某个包中或者可以通过宏实现?