日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

vscode只有utf8_基于VSCode搭建LaTeX写作环境

發(fā)布時(shí)間:2024/9/27 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vscode只有utf8_基于VSCode搭建LaTeX写作环境 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

前言

由于要進(jìn)行畢業(yè)設(shè)計(jì),配置了一套VSCode環(huán)境以便于“優(yōu)雅的”書寫代碼和論文

LaTeX常用于排版學(xué)術(shù)論文,它可以讓我們專心于內(nèi)容而不用費(fèi)心于排版或字體。LateX有TeX Studio等類似于IDE一類的編輯器,但是總感覺這類工具功能的確完善,但總有些別扭(丑),加上一些其他因素,我就把注意打到了VSCode上,期望打造一個(gè)一體化的開發(fā)寫作環(huán)境。

內(nèi)容

環(huán)境->基礎(chǔ)配置->正反向搜索

環(huán)境及版本

注意:未來(lái)的版本更新可能導(dǎo)致本文章失效
  • 操作系統(tǒng):Windows 10
  • Visual Studio Code 1.14.1
  • Tex Live 2019(清華鏡像)
建議下載離線DVD,在線版本對(duì)國(guó)內(nèi)網(wǎng)絡(luò)環(huán)境不友好,教育網(wǎng)用戶可以考慮使用清華開源鏡像站或其他高校提供的鏡像。安裝后在命令行內(nèi)執(zhí)行tex -v檢查是否寫入了所需的環(huán)境變量(安裝目錄/bin/win32/),不然需要自己寫入Path中(基本上安裝程序都會(huì)完成這一步)
  • LaTeX Workshop 8.6.0 (VSCode擴(kuò)展)
  • SumatraPDF (非必需,內(nèi)置實(shí)現(xiàn)更好用,感謝 @曾旋 )
一個(gè)簡(jiǎn)易的開源PDF閱讀器,用于反向搜索,如要使用標(biāo)記功能請(qǐng)下載pre-release版本

配置

首先在VSCode中安裝LaTeX Workshop

VSCode擴(kuò)展

之后進(jìn)入首選項(xiàng)進(jìn)行配置,找到擴(kuò)展LaTeX中的Tools或Recipes,進(jìn)入settings.json

首先配置工具和編譯鏈

將下方內(nèi)容填充進(jìn)settings.json:

如果實(shí)在不知道應(yīng)當(dāng)放在那里可以查一下settings.json的格式,本文最后會(huì)放上一個(gè)完整的配置"latex-workshop.latex.tools": [{// 編譯工具和命令"name": "pdflatex","command": "pdflatex","args": ["-synctex=1","-interaction=nonstopmode","-file-line-error","%DOCFILE%"]},{"name": "xelatex","command": "xelatex","args": ["-synctex=1","-interaction=nonstopmode","-file-line-error","-pdf","%DOCFILE%"]},{"name": "bibtex","command": "bibtex","args": ["%DOCFILE%"]}],"latex-workshop.latex.recipes": [{//編譯鏈"name": "xelatex","tools": ["xelatex"]},{"name": "pdflatex","tools": ["pdflatex"]},{"name": "xe->bib->xe->xe","tools": ["xelatex","bibtex","xelatex","xelatex"]}]

這里只是簡(jiǎn)單配置了幾種編譯鏈,具體寫文章時(shí)應(yīng)按需要到這里配置新的編譯鏈。

此時(shí)可以新建tex文件,嘗試一下編譯生成pdf了,保存文件時(shí)會(huì)自動(dòng)編譯,點(diǎn)擊右上方的預(yù)覽按鈕查看pdf,默認(rèn)使用內(nèi)置窗口。

%test.tex documentclass[UTF8]{ctexart} begin{document} 你好,world! end{document}

根據(jù)我上方的配置文件,默認(rèn)采用xelatex編譯。可以在左面LaTeX面板中看到配置的編譯鏈。

或者在命令面板Ctrl+Shift+P中選擇Build with recipe

至此,一個(gè)簡(jiǎn)易的LaTeX寫作環(huán)境已經(jīng)搭建完成,還需要根據(jù)需要再自定義編譯工具和工具鏈。

通過內(nèi)置PDF瀏覽器實(shí)現(xiàn)正反向搜索

感謝評(píng)論區(qū)提示。

通過SumatraPDF實(shí)現(xiàn)正反向搜索(不推薦)

最開始并不打算使用外置PDF閱讀器,但內(nèi)置PDF只能實(shí)現(xiàn)正向搜索,而Adobe Acrobat又不支持SyncTex,只能采用開源的SumatraPDF。

由于VSCode的子進(jìn)程機(jī)制導(dǎo)致現(xiàn)在使用反向搜索有點(diǎn)奇怪,要么必須從VSCode右上角的預(yù)覽按鈕啟動(dòng)閱讀器,要么必須自己?jiǎn)?dòng)PDF。下面會(huì)將兩種配置寫在一起供自己選擇,配置里帶cli.js的語(yǔ)句是只能在VSCode內(nèi)啟動(dòng)預(yù)覽,不帶cli的必須在外面啟動(dòng)PDF閱讀器,注釋掉其中一句就行。這個(gè)問題具體可見Github上的issue:Synctex inverse search doesn't work half the time

打開VSCode的settings.json,加入以下內(nèi)容:

注意下面所有的路徑要修改為自己設(shè)備上的安裝目錄 "latex-workshop.view.pdf.viewer": "external", "latex-workshop.view.pdf.external.viewer.command": "D:/SumatraPDF/SumatraPDF.exe", // 注意修改路徑"latex-workshop.view.pdf.external.viewer.args": ["%PDF%"],"latex-workshop.view.pdf.external.synctex.command": "D:/SumatraPDF/SumatraPDF.exe", // 注意修改路徑"latex-workshop.view.pdf.external.synctex.args": ["-forward-search","%TEX%","%LINE%","-reuse-instance","-inverse-search",//""D:Microsoft VS CodeCode.exe" -r -g "%f:%l"", //無(wú)cli版本,需外界啟動(dòng)""D:Microsoft VS CodeCode.exe" "D:Microsoft VS Coderesourcesappoutcli.js" -r -g "%f:%l"", //有cli,必須內(nèi)部啟動(dòng)"%PDF%"]

之后在SumatraPDF的設(shè)置中,設(shè)定反向搜索命令行,要和剛才的cli選擇一致,注意更換安裝目錄

有cli.js:

"D:Microsoft VS CodeCode.exe" "D:Microsoft VS Coderesourcesappoutcli.js" -r -g "%f:%l"

無(wú)cli.js:

"D:Microsoft VS CodeCode.exe" -r -g "%f:%l"

配置完之后最好將兩個(gè)軟件全關(guān)掉,使用“正常(妥協(xié))的方法”:

  • 命令行有cli的在VSCode內(nèi)啟動(dòng)預(yù)覽
  • 沒有cli的自行打開SumatraPDF

之后就能享受到正反向搜索了,正向在VSCode內(nèi)的快捷鍵為Crtl+Alt+J,反向在SumatraPDF內(nèi)雙擊內(nèi)容即可。

如果之后反向搜索功能間歇性抽搐的話還是要重啟一下應(yīng)用看看是不是沒有用“正確的方法”。

總結(jié)

VSCode的擴(kuò)展性的確很強(qiáng),盡管在反向搜索上有點(diǎn)問題,但不影響它的主要功能,不需要反向搜索用內(nèi)置的分屏瀏覽也完全足夠。

在Windows上如果想要有更好的體驗(yàn)可以將編輯器的中文字體更換一下,這里推薦一個(gè)更紗黑體,其他操作系統(tǒng)也可以參考一下,畢竟VSCode是全平臺(tái)的編輯器,只不過反向搜索的SumatraPDF只有Windows版,其他操作系統(tǒng)需要尋找替代品。

這里再放一個(gè)完整的配置:

"latex-workshop.view.pdf.viewer": "external", "latex-workshop.view.pdf.external.viewer.command": "D:/SumatraPDF/SumatraPDF.exe", // 注意修改路徑"latex-workshop.view.pdf.external.viewer.args": ["%PDF%"],"latex-workshop.view.pdf.external.synctex.command": "D:/SumatraPDF/SumatraPDF.exe", // 注意修改路徑"latex-workshop.view.pdf.external.synctex.args": ["-forward-search","%TEX%","%LINE%","-reuse-instance","-inverse-search",//""D:Microsoft VS CodeCode.exe" -r -g "%f:%l"", //無(wú)cli版本,需外界啟動(dòng)""D:Microsoft VS CodeCode.exe" "D:Microsoft VS Coderesourcesappoutcli.js" -r -g "%f:%l"", //有cli,必須內(nèi)部啟動(dòng)"%PDF%"],"latex-workshop.latex.tools": [{// 編譯工具和命令"name": "pdflatex","command": "pdflatex","args": ["-synctex=1","-interaction=nonstopmode","-file-line-error","%DOCFILE%"]},{"name": "xelatex","command": "xelatex","args": ["-synctex=1","-interaction=nonstopmode","-file-line-error","-pdf","%DOCFILE%"]},{"name": "bibtex","command": "bibtex","args": ["%DOCFILE%"]}],"latex-workshop.latex.recipes": [{//編譯鏈"name": "xelatex","tools": ["xelatex"]},{"name": "pdflatex","tools": ["pdflatex"]},{"name": "xe->bib->xe->xe","tools": ["xelatex","bibtex","xelatex","xelatex"]}]

總結(jié)

以上是生活随笔為你收集整理的vscode只有utf8_基于VSCode搭建LaTeX写作环境的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。