奧飛寺卞策謙明
量子比特報(bào)告 |公眾號(hào)
之前,我們介紹了一位了不起的本科生,他在數(shù)學(xué)課上使用 Vim+LaTeX 手寫了 1700 頁的課堂筆記,與老師的黑板書寫速度一樣快。
現(xiàn)在,這位小哥又開始上課了。上次他只教大家如何手動(dòng)輸入公式。這次他在數(shù)學(xué)筆記中展示了繪畫技巧。
他用的神器是+LaTeX,外加一個(gè)自定義快捷鍵,一個(gè)Ctrl+F,直接完成原來的六個(gè)步驟。
讓你在電腦上畫畫就能趕上老師。
無論是復(fù)分析、微分幾何、電動(dòng)力學(xué)adobe圖像處理軟件快捷鍵,還是我哥目前準(zhǔn)備的橢圓曲線畢業(yè)論文,這些神器都可以輕松搞定。
△【復(fù)分析中的路徑積分】
△【微分幾何中的流形】
△【電動(dòng)力學(xué)中的折射率橢球】
△【作者畢業(yè)論文中的橢圓曲線】
為什么選擇
我哥說不用圖也能畫軟件.
使用 TikZ 將圖形添加到 LaTeX 文檔。用 TikZ 畫一個(gè)向量 A 只需要 5 行代碼:
\begin{tikzpicture} \coordinate (A) at (1, 3); \draw[thick, ->] (0, 0) — (A); \node[above right] at (A) }; \end{tikzpicture}
運(yùn)行上述代碼,繪制向量A的圖形。(注意,A應(yīng)該等于(1,3),原文有誤。)
TikZ 的優(yōu)點(diǎn)是你只需要編寫代碼來繪制圖形。但是它的缺點(diǎn)也在這個(gè),因?yàn)槭谴a,不能實(shí)時(shí)看到圖像,運(yùn)行代碼的速度會(huì)比較慢。
因此,使用可以實(shí)時(shí)繪制的軟件比TikZ方便很多。
是一個(gè)開源矢量圖形編輯器,可在 Linux、mac 平臺(tái)上使用。雖然它的功能比 Adob??e 少,但它是免費(fèi)的。
圖形軟件與LaTeX代碼不沖突,仍然具有LaTeX排版能力。
下面開始介紹如何將這兩種武器與LaTeX結(jié)合起來。
向 LaTeX 文檔添加圖形
可選擇使用 LaTeX 在圖形中渲染文本,保存時(shí)只需將圖形導(dǎo)出為 pdf 和 LaTeX 文件即可。
在 pdf 文檔包含去除文本的圖形的地方,LaTeX 文件包含將文本放置在正確位置所需的代碼。
如果我們想在 LaTeX 中插入如下圖片:
您需要轉(zhuǎn)到“文件”→“另存為”并選擇pdf作為擴(kuò)展名。然后點(diǎn)擊保存,會(huì)彈出如下對話框:
選擇“省略PDF和LaTeX文件中的文本”(省略pdf中的文本并創(chuàng)建LaTeX文件)將圖形另存為pdf+LaTeX。
假設(shè)生成的文件存放在一個(gè)文件夾中,最終生成的目錄應(yīng)該是這樣的:
figures/ figure1.pdf_tex figure1.svg figure1.pdf
要將圖形插入到 LaTeX 文檔中,只需在開頭添加以下代碼:
\usepackage{import} \usepackage{xifthen} \usepackage{pdfpages} \usepackage{transparent} \newcommand{\incfig}[1]{% \def\svgwidth{\columnwidth} \import{./figures/}{#1.pdf_tex} }
假設(shè)圖形的路徑是/-.svg,輸入如下代碼將圖片插入到文檔中:
\begin{figure}[ht] \centering \incfig{riemmans-theorem} \caption{Riemmans theorem} \label{fig:riemmans-theorem} \end{figure}
編譯上述文檔,得到插入圖形的LaTeX排版結(jié)果:
以上圖形文字由LaTeX渲染,可根據(jù)需要更改字體,圖形也會(huì)相應(yīng)更新:
也就是說,隨著繪制的圖形,仍然保留了LaTeX的排版功能
快速創(chuàng)建包含圖形的 LaTeX 文檔
以上步驟顯然太繁瑣了。如果你在做課堂筆記時(shí)匆忙打開它,在搜索目錄中插入圖形adobe圖像處理軟件快捷鍵,你肯定跟不上節(jié)奏。
你要知道,小哥是能跟得上老師板書的神,所以他也有“捷徑”的秘技。
使用自定義的 Ctrl+F 快捷鍵,將上述步驟簡化為一鍵式。
Ctrl+F 后面的腳本要滿足以下六點(diǎn)要求:
1、根據(jù)LaTeX文件所在位置找到圖形目錄;
2、然后檢查是否有同名圖形(與文件同名的svg文件);
3、如果沒有同名文件,則將圖形模板復(fù)制到圖形目錄下;
4、將包含圖標(biāo)題的當(dāng)前行替換為插入圖的LaTeX代碼;
5、在其中打開一個(gè)新圖像;
6、設(shè)置文件查看器,每當(dāng)你按Ctrl+S將圖形保存為svg文件時(shí),也會(huì)自動(dòng)保存為pdf+LaTeX,這樣就不會(huì)再彈出之前的保存對話框了起來。
中的設(shè)置已經(jīng)給出:
inoremap: silent exec '.!inkscape-figures create "'.getline('.').'" "'.b:vimtex.root.'/figures/"' :w nnoremap : silent exec '!inkscape-figures edit "'.b:vimtex.root.'/figures/" > /dev/null 2>&1 &' :redraw!
我們來感受一下實(shí)際效果:
按Ctrl+F,LaTeX開頭插入圖形的代碼部分自動(dòng)補(bǔ)全。
如果要編輯圖形,可以按 Ctrl+F 打開選擇對話框,在當(dāng)前文檔中搜索圖形。選擇其中之一后,將顯示圖形。保存圖形時(shí),將插入圖形的代碼復(fù)制到剪貼板。
這些快捷方式使添加和打開圖形變得輕而易舉,無需記住每次都手動(dòng)將圖形保存為 pdf+LaTeX。具體腳本可以到項(xiàng)目頁面下載,地址附在文末。
繪制圖形
我哥說大部分情況下,畫圖比用TikZ快很多。
但是相比手繪,還是要慢很多,而且即使你可以使用內(nèi)置的快捷鍵來加快速度,也很難做到。
所以我編寫了一個(gè)自定義快捷方式管理器來完全控制每個(gè)鍵的“解釋”方式。
他說這給了他繪畫的很大靈活性。
繪制形狀
從內(nèi)置鍵盤快捷鍵開始。比如按R可以激活矩形繪制工具,E可以繪制橢圓等。
在實(shí)現(xiàn)上,這意味著快捷鍵管理器“重放”這些“鍵盤事件”,也就是將它們傳入然后執(zhí)行命令。
在的設(shè)置中,默認(rèn)的鉛筆快捷鍵和曲線工具快捷鍵P和B被替換為W和F。
他說用右手使用鼠標(biāo)時(shí)使用這些快捷方式更舒適、更容易使用。
基于左手按下快捷鍵的思路,他還把Z鍵設(shè)置為“取消”,Shift+Z設(shè)置為“刪除”,X設(shè)置難以觸及的%等等開。
按鍵組合和常用樣式
設(shè)置繪畫風(fēng)格是我哥哥使用的第二件事。他的繪畫風(fēng)格很簡單:
全圖如下:
這些圖紙的樣式小哥經(jīng)常用到,希望能快點(diǎn)調(diào)用。但是,使用的快捷方式過于繁瑣,耗時(shí)較長。例如,將以下圓圈和框的樣式從純黑色更改為灰色虛線:
你需要按Ctrl+Shift+F打開樣式面板,然后用鼠標(biāo)點(diǎn)擊相應(yīng)的按鈕來改變每個(gè)對象的樣式。此外,在 的快捷方式設(shè)置中,根本無法通過鍵盤執(zhí)行此操作。
我的兄弟認(rèn)為這太煩人了。理想情況下,這應(yīng)該只需要幾分之一秒即可完成。
這就是組合鍵發(fā)揮作用的地方。組合鍵是由兩個(gè)或多個(gè)鍵組成的快捷方式。
例如,當(dāng)我的兄弟同時(shí)按下 S 和 F 時(shí),他的快捷方式管理器會(huì)在所選對象上使用實(shí)心筆觸和灰色填充。想讓你的筆觸變粗嗎?同時(shí)按下S+F+G即可。
在此設(shè)置中,每個(gè)樣式屬性對應(yīng)一個(gè)按鈕:S為普通筆觸,F(xiàn)為灰色填充,G為粗體,A為粗體,D為虛線等。
這些表格中的一些樣式只響應(yīng)一個(gè)鍵,例如左上角的樣式:F 表示只填充灰色而不改變描邊。這可能會(huì)導(dǎo)致快捷鍵沖突的問題。
例如,按 F 也是調(diào)用曲線工具的快捷鍵。解決辦法是空格+F,充當(dāng)占位符。
使用這些組合鍵,按幾個(gè)鍵就可以解決之前的問題:
F+S 使矩形變?yōu)榛疑?yīng)用實(shí)心邊框。
F+H+E 用于填充灰色并使用非常粗的虛線。
A+G+D 添加箭頭并應(yīng)用虛線樣式。
添加文字
繪圖的另一個(gè)重要部分是添加文本。圖形通常包含數(shù)學(xué)公式,小哥只是想用他在 Vim 中設(shè)置的“代碼片段”。
為此,他設(shè)置按 T 鍵打開一個(gè)小的 Vim 窗口,可以在其中輸入 LaTeX 代碼。退出時(shí),您可以在以下位置插入一個(gè)文本節(jié)點(diǎn):
如上所述,在將圖像插入文檔時(shí),可以使用 LaTeX 輸入文本。如果您想立即插入文本怎么辦?大哥說,你可以用Shift+T來做到這一點(diǎn):
這兩種選擇各有利弊。小哥主要選擇第一種方式,因?yàn)槲谋臼怯肔aTeX文檔渲染的。
這意味著字體將始終匹配并且可以使用文檔中定義的宏。然而,一個(gè)缺點(diǎn)是文本的定位有時(shí)有點(diǎn)困難。
因?yàn)樵诰W(wǎng)上很難看到最終的結(jié)果,所以有時(shí)需要從PDF閱讀器中跳出來看到結(jié)果,然后再回來微調(diào)。
已保存和較少使用的樣式
雖然組合鍵可以滿足90%的使用需求。不過小哥有時(shí)候想玩?zhèn)€新花樣:用自定義樣式。
例如,要在光學(xué)領(lǐng)域繪制圖形,您需要一種玻璃和射線的風(fēng)格。為此,首先使用默認(rèn)快捷方式創(chuàng)建一個(gè)樣式:
選擇其中一個(gè)對象并按 Shift+S 保存樣式。然后輸入新樣式的名稱,例如“glass”,然后按 enter 確認(rèn),即可使用它。
之后,只需選擇一個(gè)對象,按 S,然后鍵入“glass”即可將適當(dāng)?shù)臉邮綉?yīng)用于該對象。此外,無需輸入全名。如果“g”沒有快捷鍵,直接輸入“g”即可。如果有,可以輸入“gl”或“gla”。
添加和保存對象
我設(shè)置的最后一部分是添加和保存對象。他說可以用A加,然后用Shift+A保存。例如,按 A 并輸入“ec”會(huì)添加一條橢圓曲線:
作為另一個(gè)例子,按下 A 并輸入“dg”會(huì)添加一個(gè)“鑰匙孔”,也可以使用“Ctrl+-”從給定的形狀細(xì)分:
此外,還有一些圖像涉及2D和3D軸圖像,常用于復(fù)雜分析和微分幾何。
如果你想自己嘗試一下,可以在這里下載:
可以找到小弟管理圖形的腳本,鏈接:
還有,兄弟的快捷方式管理器,鏈接:
但是,這兩個(gè)腳本都只能在基于 Linux 的系統(tǒng)上運(yùn)行。
兄弟說,第一個(gè)腳本應(yīng)該開箱即用,而第二個(gè)腳本可能不行。
最后附上原博客地址:
#
——結(jié)束——
真誠招聘
Qubit 正在招聘編輯/記者到北京中關(guān)村工作。我們期待有才華和熱情的學(xué)生加入我們!相關(guān)詳情請?jiān)诹孔颖忍毓娞?hào)()對話界面回復(fù)“招聘”二字。
量子比特·今日頭條簽約作者
?'?' ? 追蹤人工智能技術(shù)和產(chǎn)品的新發(fā)展