我最近在运行 Snow Leopard 的 Mac 上安装了 TeXLive 2011。我没有下载 MacTeX(原因我们在此不再赘述)。我遇到了一个问题,无法pdflatex
看到我的本地 texmf 树。我的树位于~/Library/texmf
,并且我在 有一个指向该目录的符号链接~/texmf
。
在之前的安装中,它可以看到我的树,~/Library/texmf
无需我在安装后进行任何额外的配置。
我需要做什么才能让 [la]tex 看到我的本地树?
答案1
未经测试,因为我没有您使用的设置。请尝试以下操作:
tlmgr conf texmf TEXMFHOME "~/Library/texmf:~/texmf"
看看是否可行。通常情况下,可以使用 来运行,sudo
但由于您没有管理员权限,我假设不使用 来运行也可以。
答案2
当你安装 TeX Live 时,你可以修改一堆路径设置:
<D> directories:
TEXDIR (the main TeX directory):
/usr/local/texlive/2011
TEXMFLOCAL (directory for site-wide local files):
/usr/local/texlive/texmf-local
TEXMFSYSVAR (directory for variable and automatically generated data):
/usr/local/texlive/2011/texmf-var
TEXMFSYSCONFIG (directory for local config):
/usr/local/texlive/2011/texmf-config
TEXMFVAR (personal directory for variable and automatically generated data):
~/.texlive2011/texmf-var
TEXMFCONFIG (personal directory for local config):
~/.texlive2011/texmf-config
TEXMFHOME (directory for user-specific files):
~/texmf
您可以TEXMFHOME
在安装过程中轻松更改以指向所需的目标,就像~/Library/texmf
使用命令行和 GUI 安装程序一样。如果您已经过了那个点,您可以在texmf.cnf
安装 TeX Live 的顶层文件夹中找到一个文件(texmf-whatever
树旁边)。如果没有,只需创建一个新的。将行更改为(或创建)TEXMFHOME
:
TEXMFHOME = ~/Library/texmf
MacTeX 在里面设置(重新定义)了以下变量texmf.cnf
:
% (Public domain.)
% ...
TEXMFHOME = ~/Library/texmf
TEXMFVAR = ~/Library/texlive/2011/texmf-var
TEXMFCONFIG = ~/Library/texlive/2011/texmf-config
如果您想要与 MacTeX 中相同的位置,您可以执行相同的操作,但我建议您TEXMFVAR
在安装结束后不要触碰它,或者至少您最好将文件夹从旧位置移动到新位置。
对于个人安装,我建议您portable
无论如何选择安装并且只进行更改TEXMFHOME
。
请注意,Alan Munn 的建议是
> tlmgr conf texmf TEXMFHOME "~/Library/texmf:~/texmf"
setting texmf TEXMFHOME to ~/Library/texmf:~/texmf (in /path/to/your/texlive/texmf.cnf)
以用户友好的方式执行完全相同的操作(除了将搜索路径设置为两个不同的文件夹这一小节),前提是你能记住该命令。我发现直接编辑配置文件(或者如果我搞砸了其他设置,则重新安装 TeX Live)更简单:)。
答案3
尝试运行kpsewhich -var-value TEXMFLOCAL
以查看 TeX 认为您的本地texmf
树应该在哪里。
答案4
您可以编辑~/.MacOSX/environment.plist
并设置TEXMFHOME
为/Users/<your short username>/Library/texmf
。该文件是纯文本 XML 文件,您可以手动编辑或使用 XCode (链接至 Apple 的技术问答文档)。下次登录时,所有应用程序都会设置该环境变量,即使它们不是从终端运行的(终端显示为~/.bash_profile
)。