Mac OS X 10.10 Yosemite下Sublime Text/LateX tools無法使用xelatex解決辦法

環境

Mac OS X Yosemite Sublime Text 3 MacTeX-2014 Skim

配置

參考部署MAC上的Sublime Text+LaTeX中文環境

  1. 安裝MacTeX,此安裝包比較大,大概2.4G的樣子。嫌大可裝BasicTeX,不過要手動安裝latexmk,在終端下輸入sudo tlmgr install latexmk,我記得tlmgr好像不在path里面,可能要打絕對路徑,我裝的是完整版的,所以對此不是很確定。

  2. 安裝Sublime Text 3package control

Package control安裝步驟

  • 打開Sublime,control+`或者View > Show Console打開控制臺
  • 輸入
    import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
  • 等待完成
  1. package control安裝好后就可以開始裝LaTexTools了。

Sublime中Command+Shift+P,輸入install,按下enter,再輸入LatexTools,應該會自動補全,回車確認后等待安裝完成。

  1. OS X下,sublime編譯PDF文件通過Skim預覽,所以我們要安裝并且配置Skim。

配置Skim
最新版本的LateXTools以及Skim支持默認ST2以及ST3,只需在偏好設置 > 同步選擇Sublime Text就行了。

  1. 進行到這里,sublime的LaTeX已經基本配置完成,接下來添加中文支持。
  • 最新的LateXTools可以通過在每個tex文件最前加上%!TEX program = <program> program可選pdflatex, lualatexxelatex,默認為pdflatex

編輯~/Library/Application Support/Sublime Text 3/Packages/LaTeXTools/目錄下makePDF.py,找到
proc = subprocess.Popen(cmd, stderr=subprocess.STDOUT, stdout=subprocess.PIPE)
這一行并添加env=os.environ
proc = subprocess.Popen(cmd, stderr=subprocess.STDOUT, stdout=subprocess.PIPE,env=os.environ)
保存,現在就能編譯成功了。

測試代碼

%!TEX program = xelatex
\documentclass{article}
\usepackage{fontspec, xunicode, xltxtra}
\setmainfont{Hiragino Sans GB}
\title{Title}
\author{}
\begin{document}
\maketitle{}
\section{Introduction}
This is where you will write your content. 在這里寫上內容。
\end{document}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容