我正在寻找默认 beamer 主题 ( *.sty
) 的源代码以供研究。
对诸如 之类的关键字进行文件内容搜索\setbeamertemplate
仅返回texworks.exe
。
如果这些定义仅作为二进制文件提供,还有其他方法来安装源吗?
答案1
TeX 加载的文件使用 LaTeX 文档类,例如beamer
文本文件:不涉及二进制文件。如果您知道 TeX 加载的文件的名称,则可以使用 找到它kpsewhich
。例如,主beamer
类文件称为beamer.cls
,并且
kpsewhich beamer.cls
在命令行/终端上可以找到它。在我的系统上它显示
c:/texlive/2014/texmf-dist/tex/latex/beamer/beamer.cls
然后,您将在beamer
文件夹中找到随附的其他文件:对于 来说,文件很多beamer
,而对于许多软件包来说,可能没有其他文件。( 的设置beamer
相当复杂:如果您想查找特定的代码片段,则需要读取很多文件。)
(类文件都有扩展名.cls
,包文件都有.sty
内置于 LaTeX 内核的扩展名,latex.ltx
如果你想读的话,它被称为!beamer
主题文件有一个命名模式beamer<type>theme<name>.sty
,例如'Seagull'颜色主题由定义beamercolorthemeseagull.sty
。)
kpsewhich
一些文档类和包使用源/提取方法,其中源可能无法直接使用。例如,可以使用
kpsewhich siunitx.dtx
给我
c:/texlive/2014/texmf-dist/source/latex/siunitx/siunitx.dtx
注意beamer
没有使用此类源,因此不会显示任何内容。还请注意,MiKTeX 和 TeX Live 对源文件采用不同的方法:TeX Live 包含所有未压缩的文件,因此很容易找到,而在 MiKTeX 中,大多数源都压缩在 中<installation root>\source
。
正如评论中所述,.log
TeX 生成的文件包含每个加载文件的位置。MiKTeX 始终提供这些文件的完整路径,而 TeX Live 则在适当的情况下提供相对路径(在某些情况下使其更易于阅读)。
答案2
它是texmf\source\beamer-src.tar.bz2
,其中texmf
必须用安装的主根目录替换 — — 通常C:\Program Files\MiKTeX 2.9
用于 64 位安装,或C:\Program Files (x86)\MiKTeX 2.9
用于 32 位安装。
一般来说 (几乎) 所有源都安装在 中Main Root\source
。可以使用 MiKTeX 包管理器检查特定包的确切位置:右键单击包名称并选择选项卡Files
;弹出窗口将显示包中所有文件的列表,按路径排序,例如这个: