如何将多个 GitHub 源代码文件合并为一个列表?

如何将多个 GitHub 源代码文件合并为一个列表?

我目前有以下命令,用于从 GitHub 托管的文件创建列表:

\NewExpandableDocumentCommand{\GitHubFile} { O{foo-default-group} m m m } {%
|"wget -qO- https://raw.githubusercontent.com/#1/#2/#3/#4"
}

然后我创建如下列表:

\lstinputlisting[language=Java, firstline=8]{
    \GitHubFile{foo-repo}{master}{foo/bar/Foo.java}
}

这将生成以下(正确的)输出:

在此处输入图片描述

我的问题是:

我如何创建一个新命令(或修改现有命令)以便将多个\GitHubFile命令组合成一个列表?

例如,在伪代码中:

\lstinputlisting[language=Java]{
    \GitHubFile{foo-repo}{master}{foo/bar/Foo.java}
    \GitHubFile{foo-repo}{master}{foo/bar/Bar.java}
}

这将输出如下内容:

@Configuration
@ComponentScan("com.dzone.book.spring.rest")
public class Application {

    public static void main(String[] args) {

        ApplicationContext context = new AnnotationConfigApplicationContext(Application.class);
        Car car = context.getBean(Car.class);
        car.start();
    }
}

class Bar {
   // ...some content
}

假设的内容Bar.java是:

class Bar {
   // ...some content
}

我知道有一些附加组件我想稍后添加(例如,能够仅包含每个文件中的行ab以便Foo.java只有第 8-10 行和Bar.java第 2-6 行等),但这些可以稍后添加。

感谢您的帮助。

相关内容