
Responder1
Duas alternativas com redimensionamento automático N
:
\documentclass{article}
\usepackage{amstext}% or package amsmath for \text
\newcommand*{\ttmath}[1]{%
\texttt{\mdseries\upshape#1}%
}
\begin{document}
$2^{\verb|N|-1}$ {\small(\verb|\verb|)}
$2^{\texttt{N}-1}$ {\small(\verb|\texttt| with \verb|amstext|)}
\textit{Italics $2^{\ttmath{N}-1}$ context} {\small(macro \verb|\ttmath|)}
$2^{\mathtt{N}-1}$ {\small(\verb|\mathtt|)}
\end{document}
Observações:
\texttt
aqui funciona com redimensionamento automático no modo matemático porque usa internamente\nfss@text
o que é redefinido no pacoteamstext
como\text
.A macro
\ttmath
também redefine a série e a forma dos atributos da fonte para se tornar independente da configuração atual da fonte do texto.\mathtt
é o comando mais eficiente e usa a fonte de máquina de escrever configurada para matemática. Geralmente é o mesmo que\ttfamily
. Alguns pacotes de fontes trocam ambas as fontes ao mesmo tempo comolmodern
, outros nãoberamono
. Portanto, depende da configuração da fonte, se\mathtt
pode ser usada no lugar de\verb
ou\texttt
.
Responder2
O kernel do LaTeX define \mathtt
e nada mais é necessário. A propósito, \verb
não deve ser abusado para imprimir na fonte da máquina de escrever, geralmente \texttt
é suficiente, enquanto \verb
é necessário para imprimir código TeX com caracteres especiais.
\documentclass{article}
\begin{document}
$2^{\mathtt{N}-1}$
$2^{\mathtt{N}^{\mathtt{M}}}$
\end{document}
Provavelmente é útil definir seu próprio comando semântico, digamos
\newcommand{\tvar}[1]{\mathtt{#1}}
E use $2^{\tvar{N}}$
. Dessa forma, você não fica preso à representação específica que pode ser alterada a qualquer momento, apenas modificando a definição.
Pode acontecer que a escolha de um conjunto de fontes diferente não seja atualizada \mathtt
. A solução é simples e a vantagem sobre outras soluções envolvidas \text
é que pode ser facilmente adaptada para suporte \boldmath
imediato.
\documentclass{article}
\usepackage[T1]{fontenc} % necessary for beramono
\usepackage{amsmath}
\usepackage{beramono}
% update \mathtt to use the same font as \ttfamily
\DeclareMathAlphabet{\mathtt}{\encodingdefault}{\ttdefault}{m}{n}
% if the monospaced font also supports boldface (b or bx)
\SetMathAlphabet{\mathtt}{\encodingdefault}{\ttdefault}{b}{n}
\newtheorem{theorem}{Theorem}
\begin{document}
$2^{\mathtt{N}-1}$ and \texttt{N}
\begin{theorem}
Something about $2^{\mathtt{N}-1}$
\end{theorem}
\end{document}
Nota
Usar \texttt
está errado, conforme exemplificado pelo código a seguir.
\documentclass{article}
\usepackage{amsmath}
\newcommand{\tvar}[1]{\mathtt{#1}}
\newtheorem{theorem}{Theorem}
\begin{document}
\section*{Right}
$2^{\tvar{N}-1}$
\begin{theorem}
Something about $2^{\tvar{N}-1}$
\end{theorem}
\section*{Wrong}
$2^{\texttt{N}-1}$
\begin{theorem}
Something about $2^{\texttt{N}-1}$
\end{theorem}
\end{document}
Responder3
Uma solução usando esta resposta de Werner:https://tex.stackexchange.com/a/120694/120578
\documentclass{article}
\usepackage{verbatim}% http://ctan.org/pkg/verbatimes
\usepackage{pgf}
\makeatletter
\newcommand{\mverbatimfont}{\def\verbatim@font{\ttfamily}}%
\makeatother
\def\verbatimfont#1{\pgfmathsetmacro\bls{1.2*#1}\mverbatimfont\fontsize{#1}{\bls}\selectfont}
\begin{document}
\verbatimfont{6}
$2^{\verb|N|-1}$
\verbatimfont{9}
$\verb|N|^{\verbatimfont{6}\verb|N|-1}$
\end{document}
Saída: