如何將所有 \vec{} 改為 \bf{}

如何將所有 \vec{} 改為 \bf{}

我正在寫一篇論文,我用來\vec{}表達所有向量。現在,我改變了主意,想用\bf{}例如粗體字母來寫它們。有沒有一種快速方法可以更改所有已寫入的內容,\vec{}\bf{}無需對每個向量執行此操作?

答案1

首先,我必須記住這\bf是一個普通的 TeX 巨集。使用它並不是一個壞習慣,但是自從\bfseriesLaTeX 引入以來它就不再需要了,而且它的語法與舊的\bf.

第二,不要更改您的標記!(透過利用搜尋和取代例程)。如果您\vec在手稿中寫道,那麼您這樣做是因為您想要排版的元素是向量,並且不是因為\vec宏在你的字母上方放置了一個漂亮的小箭頭。

如果您重新定義,您不會破壞任何東西,\vec因為它是一個調用\mathaccent.事實上,重新定義它是最佳實踐。在您的情況下完成此操作的最短且最有效的方法是

\renewcommand\vec{\mathbf}

\vec如果您想在重新定義的巨集旁邊使用巨集的原始形式,您應該放置\let\arrowedvec=\vec(選擇您想要的任何名稱而不是“arrowedvec”)當然,當您需要 的原始版本時,可以使用\renewcommand\vec{\mathbf}和 使用。或者,您也可以直接定義巨集:.這裡唯一的區別涉及記憶體使用,現在這已經不再是問題了。\arrowedvec\vec\def\arrowedvec{\mathaccent"017E}

附錄

我建議閱讀該帖子將內容與格式分開 - 即“只需輸入”。它包含對邏輯標記的簡短討論。

答案2

執行此操作的正確方法是在文字編輯器中使用與自訂巨集相關的搜尋和取代命令,例如\myvec.

但是,如果您堅持在文件中提供快速解決方案(我不鼓勵這樣做),您可以將以下內容添加到文件的序言中:

\let\oldvec=\vec
\renewcommand{\vec}[1]{\oldvec{\mathbf{#1}}}

如果您希望將字母以粗體列印,且其頂部不帶有向量重音符號,請使用

\renewcommand{\vec}[1]{\mathbf{#1}}

反而

答案3

你可以改變 的含義\vec,但這將是非常糟糕的做法。我會做什麼:

  1. 定義新指令的樣式如下:\newcommand{\vectorstyle}[1]{\mathbf{#1}}
  2. 使用文字編輯器/IDE 的尋找和替換功能來\vec{替換\vectorstyle{
  3. 如果發生下一次更改,只需替換\vectorstyle

PS 不要使用\bf。這是不好的做法。你可以用\bfseries它代替。

答案4

首先,{\bf ...}已經過時了。相反,您應該使用\mathbf{...}\boldsymbol,具體取決於您使用的軟體包。要更換,您有兩種可能性:

  • 透過編輯器,「替換」功能可以替換\vec{為例如mathbf{
  • 重新定義\vec\renewcommand這提供了再次改變主意的簡單方法......:))

相關內容