更改 texmf 文件夹的位置以便在多台计算机上使用(OS X / Apple)

更改 texmf 文件夹的位置以便在多台计算机上使用(OS X / Apple)

我目前正在运行 Os X 10.11.6(El Capitan),据我所知,应该texmf在用户下创建文件夹Library;但是,我想知道是否可以更改该文件夹的位置?

我希望能够在我的 Dropbox 帐户上设置文件夹,以便可以从不同的计算机访问存储在其中的文件,因为我大约一半的排版工作是在台式机上完成的,另一半是在笔记本电脑上完成的。这可能吗?虽然我有很多使用 LaTex 的经验,但我对“底层”知识/理解很少或根本没有(长期、缓慢的工作正在进行中);感谢您的理解。

答案1

另一种方式是创建一个符号链接,~/Library/texmf指向您希望texmf树所在的位置(~/Dropbox/texmf可能)。

答案2

您可以尝试编辑

/usr/local/texlive/2016/texmf.cnf

默认情况下,

% (Public domain.)
% This texmf.cnf file should contain only your personal changes from the
% original texmf.cnf (for example, as chosen in the installer).
%
% That is, if you need to make changes to texmf.cnf, put your custom
% settings in this file, which is .../texlive/YYYY/texmf.cnf, rather than
% the distributed file (which is .../texlive/YYYY/texmf-dist/web2c/texmf.cnf).
% And include *only* your changed values, not a copy of the whole thing!
%
TEXMFHOME = ~/Library/texmf
TEXMFVAR = ~/Library/texlive/2016/texmf-var
TEXMFCONFIG = ~/Library/texlive/2016/texmf-config

更改路径后,TEXMFHOME =您可以将“个人树”设置为您喜欢的任何路径。

您可能需要超级用户权限才能进行编辑。您可以使用任何文本编辑器进行编辑,我建议使用nano终端,因为它易于使用:

nano /usr/local/texlive/2016/texmf.cnf

或者,如果文件需要权限,

sudo nano /usr/local/texlive/2016/texmf.cnf

设置立即发生改变。

答案3

您可能会认为有一种方法可以设置环境变量TEXMFHOME,或者TEXINPUTS也许BIBINPUTSBSTINPUTS为适当的值;但 Apple 决定他们不喜欢环境变量,因此这比它应该的要困难得多。在 El Capitan 中,似乎有决不设置一个环境变量,该变量将对从 GUI(启动板或通过单击 Finder 中的图标)启动的所有应用程序可见。如果您愿意经历一些麻烦,您仍然可以一次为一个应用程序设置变量。这个问题展示了如何。

我将以 TeXShop 为例进行说明:

  1. 在 bash 提示符下输入defaults find texshop | grep "keys in domain"并检查结果以了解应用程序的全名(“域”)。

    % defaults find texshop | grep "keys in domain"
    Found 1 keys in domain 'com.apple.universalaccess': {
    Found 214 keys in domain 'TeXShop': {
    

    因此域名只是“TeXShop”;其他应用程序的名称以公司域名开头,等等。(例如,的域名emacsorg.gnu.Emacs。)

  2. 创建 ~/Library/LaunchAgents/TexShop.plist。它需要看起来像一个特定的 XML 模板,你会发现这里。编辑它以添加一个或多个 launchctl setenv要传递给 TeXShop 的命令。

    launchctl setenv TEXINPUTS /home/alexis/Dropbox/texmf/tex
    
  3. 使用此命令(从 bash 提示符或从您的)激活新配置.bash_profile

    launchctl load ~/Library/LaunchAgents/Texshop.plist
    

    由于某种原因,这给了我“服务已加载”的消息,但如果没有它,TeXShop 将无法看到我设置的环境变量。(运行此操作后重新启动 TeXShop。)

诚然,正如 Sergei Golovan 所建议的那样,在 中添加符号链接似乎更简单~/Library,但我想使用环境。

相关内容