
Estou escrevendo um artigo e costumava \vec{}
expressar todos os vetores. Agora mudei de ideia e quero escrevê-los em negrito usando, \bf{}
por exemplo. Existe uma maneira rápida de alterar tudo o que foi gravado \vec{}
sem \bf{}
fazer isso para cada vetor?
Responder1
Primeiro, devo lembrar que \bf
é uma macro simples do TeX. Não é uma má prática usá-lo, mas não é mais necessário, pois \bfseries
foi introduzido com o LaTeX e sua sintaxe é exatamente a mesma do bom e velho \bf
.
Segundo,não mude sua marcação!(explorando uma rotina de busca e substituição). Se você escreveu \vec
em seu manuscrito, você o fez porque o elemento que deseja compor é um vetor enãoporque a \vec
macro coloca uma pequena seta acima da sua carta.
Você não quebra nada se redefinir, \vec
pois é uma macro simples que invoca \mathaccent
. Na verdade, redefini-lo é a melhor prática. A maneira mais curta e eficiente de fazer isso no seu caso seria
\renewcommand\vec{\mathbf}
Se você quiser usar a forma original da \vec
macro ao lado da redefinida você deve colocar \let\arrowedvec=\vec
(escolha o nome que quiser em vez de "arrowedvec")antesa linha com \renewcommand\vec{\mathbf}
e use \arrowedvec
, é claro, quando precisar da versão original do \vec
. Alternativamente, você também pode definir a macro diretamente: \def\arrowedvec{\mathaccent"017E}
. A única diferença aqui diz respeito ao uso de memória, que hoje em dia não é mais um problema.
Termo aditivo
Recomendo a leitura do postSepare o conteúdo da formatação - ou seja, "basta digitar". Ele contém uma breve discussão sobre marcação lógica.
Responder2
A maneira correta de fazer isso seria usar um comando de busca e substituição em seu editor de texto em conexão com uma macro personalizada, por exemplo \myvec
.
No entanto, se você insiste em ter uma solução rápida dentro do seu documento (o que eu desencorajo), você pode adicionar o seguinte ao preâmbulo do seu documento:
\let\oldvec=\vec
\renewcommand{\vec}[1]{\oldvec{\mathbf{#1}}}
Se você deseja que a letra seja impressa em negrito sem o acento vetorial em cima dela, use
\renewcommand{\vec}[1]{\mathbf{#1}}
em vez de
Responder3
Você poderia mudar o significado de \vec
, mas isso seria uma prática muito ruim. O que eu faria:
- Defina o novo comando com estilo como:
\newcommand{\vectorstyle}[1]{\mathbf{#1}}
- Use o recurso Localizar e Substituir do seu editor de texto/IDE para
\vec{
substituir\vectorstyle{
- Em caso de próxima alteração, basta substituir a definição do
\vectorstyle
PS Não use \bf
. É uma má prática. Você pode usar \bfseries
em seu lugar.
Responder4
Primeiro, {\bf ...}
está obsoleto. Em vez disso, você deve usar \mathbf{...}
ou \boldsymbol
, dependendo de quais pacotes você usa. Para substituir você tem duas possibilidades:
- Por meio do editor a função 'Substituir' substitui
\vec{
por exemplomathbf{
. - Redefina
\vec
com\renewcommand
(isso oferece uma maneira fácil de mudar de ideia novamente ...:))