# How to make a single word look as some code?

I would like to be able to make a single word in a text look like a coded word. Is there any command such as \code{...} which allows me to do so?

(basically, I want to produce something like above for the "\code{...}" part)

• Do you want it to change the background to grey too? – N.N. Nov 24 '11 at 11:15
• @N.N : it could have been even better yeah, but it's not extremely important. – SRKX Nov 24 '11 at 12:46
• The answer is texttt{} how that is an unhuman command. How is anyone suppose to remember this? If you figure out what the ttt's stand for please tell me! – Charlie Parker Oct 15 at 16:12

## 4 Answers

Normally a monospaced font is used for this. This is accomplished with \texttt{...}. If you want to use code, you can use \def\code#1{\texttt{#1}}. From that point on you can write \code{...} to get monospaced output.

• @egreg I'm not so sure about the last approach (yes, I know why you're doing it, but from an interface POV I prefer macros where the arguments required are clear). – Joseph Wright Nov 24 '11 at 11:41
• @JosephWright That's why I wrote that it's advanced. :) – egreg Nov 24 '11 at 11:50
• I would also wrap a \mbox around the \texttt, to avoid the word being hyphenated if it happens to fall near the end of a line. – Karl Ove Hufthammer Nov 24 '11 at 11:51
• @wh1t3 Would you really want them hyphenated? That could become very confusing for the reader, especially for languages that use commands that can contain hyphens. For function names with arguments, I would define a separate command that handles this in a proper way, using penalties to get the optimal wrapping (e.g., never break the function name, but make is possible (but bad) to break at the comma between arguments). – Karl Ove Hufthammer Nov 24 '11 at 12:58

If you want a single word to look like a coded word and also to have a light-gray background as in StackExchange you can predefine a color \definecolor{light-gray}{gray}{0.95} and then define a new command: \newcommand{\code}[1]{\colorbox{light-gray}{\texttt{#1}}}.

From this point on you can use \code{word} to get mono-spaced words with gray background.

Of course for this to work you will need to load the xcolor package before \definecolor.

A full example would look like this:

% Better inline directory listings
\usepackage{xcolor}
\definecolor{light-gray}{gray}{0.95}
\newcommand{\code}[1]{\colorbox{light-gray}{\texttt{#1}}}

• Awesome, that's what I was looking for. Thanks :D – Sidahmed Feb 7 '17 at 11:41
• This is what the people want! – sunspots Feb 12 '18 at 7:51
• Hi. I've tried to do this in a document, but my document won't compile unless I surround the word like \code{$word$}, and then it puts everything in math font. When I don't it says "! Missing \$ inserted.". Any ideas? – la femme cosmique Sep 10 '18 at 19:22
• @lafemmecosmique Did your 'word' contain underscores? – Ilya Popov Sep 27 '18 at 16:02
• Yes it did. I had to escape character them out like \code{word_1} – la femme cosmique Sep 28 '18 at 8:56

\verb|code| or \verb#code# also works. It creates characters in monospace, although its primary utility to enter commands that the compiler wont confuse as tex commands.

• Why does \verb use | or # to start and end code rather than the usual { and }? – user3728501 Nov 29 '16 at 14:52
• @user3728501 what if I wanted to give an example LaTeX command using verbatim? I'd need different delimiters to indicate when to start/stop the verbatim text (since the { and } would need to be rendered as verbatim text). – Alex Nelson Aug 6 '18 at 13:44

I can't believe nobody mentioned the listings package. It provides a command called \lstinline{your_code} which can even highlight keywords for you.

See also this question: Should I use \lstinline for the language keywords embedded in text?

• Welcome to TeX.SX! Good catch. – TeXnician Jul 24 '18 at 7:12
• Syntax: \lstinline[⟨key=value list⟩]⟨character⟩⟨source code⟩⟨same character⟩ Also, some engines support a wider working range of working <character> delimiters. For exampe, I found ¿ to work with xelatex and not with pdflatex. – l --marc l Feb 18 at 6:35