Por que usar comandos de baixo n�vel? Use os comandos do Latex, \newcommand.
> e a outra para o feminino
>
>
> \def\prof#1#2{Prof�. #1}
>
> \prof{Paula}
>
> Prof�. Paula
Isso vai imprimir sempre Prof�, qualquer que seja o primeiro argumento.
> ou at� mesmo esta, (que eu acho que seria a correta para definir o
> comando)
>
> \def\prof[#1]#2{Prof$^#1$}. #2}
>
> \prof[a]{Paula}
>
> Prof�. Paula
Tem um } sobrando ali. Al�m disso, h� alguns problemas:
- Se o argumento tiver mais de uma letra, s� a primeira vai ficar
elevada. #1 teria que estar entre chaves.
- N�o use o modo matem�tico para gerar os sobrescritos, a fonte fica
errada. \mathrm ou \text podem ajudar, mas o melhor � usar
\textsuperscript e ignorar completamente o modo matem�tico.
- Melhor usar ~ ao inv�s do espa�o para separar o t�tulo do nome para
evitar uma quebra de linha.
> resumindo, heheheheh
> queria saber como criar o comando com os seguintes resultados
>
>
> \prof{Luiz Gustavo}
>
> Prof. Luiz Gustavo
>
>
> \prof[a]{Paula}
>
> Prof�. Paula
Para criar comandos com um argumento opcional, usa-se a sintaxe
\newcommand{\command}[n][opt]{definicao}
n � o n�mero de argumentos (contando o opcional), e opt � o valor
atribu�do ao primeiro caso ele n�o seja informado. Podemos fazer algo como
\newcommand{\prof}[2][]{definicao}
Ou seja, se n�o informado, #1 fica vazio. Mas precisamos ent�o de uma
maneira de verificar se o argumento foi ou n�o informado para n�o gerar
um sobrescrito quando ele n�o foi informado. A maneira mais leg�vel �
\usepackage{ifthen}
\newcommand{\prof}[2][]{%
\ifthenelse{\equal{#1}{}}%
{Prof.~#2}%
{Prof\textsuperscript{#1}.~#2}%
}
--
You are in the hall of the mountain king.
Eduardo M KALINOWSKI
edu...@kalinowski.com.br
Antes de imprimir, pense
em sua responsabilidade e compromisso com o Meio Ambiente Voc� precisa verificar se o argumento � vazio e n�o usar
\textsuperscript se n�o tiver nada. Coloque num documento e veja a
diferen�a:
Prof\textsuperscript{}. aaaa
Prof. aaa
--
Most people can't understand how others can blow their noses differently
than they do.
-- Turgenev
Eduardo M KALINOWSKI
edu...@kalinowski.com.br
Renato
2012/2/9 Eduardo M KALINOWSKI <edu...@kalinowski.com.br>:
> On 02/09/2012 05:12 PM, Luiz Gustavo Rodrigues de Oliveira wrote:
>> Eduardo, esta postando quando você me mandou o seu e-mail, mas muito
>> obrigado pela dica do "~" tenho certeza que vai ser útil aqui, e eu
>> estava demorando a escrever o e-mail, pois estava procurando justmente
>> este comando "\textsuperscript" (que não sabia o nome, mas já tinha
>> visto ele uma vez) para deixa-lo em uma só linha, segue o comando
>> final. =D Valeu galera
>>
>>
>> \newcommand{\prof}[2][]{Prof\texsuperscript{#1}.~#2}
>>
>
> Você precisa verificar se o argumento é vazio e não usar
> \textsuperscript se não tiver nada. Coloque num documento e veja a
> diferença: