When typesetting C code in non-monospaced fonts, I've certainly found the "literate programming" options useful.
What I've used them for is specifying typography for symbol pairs that aren't very readable in the standard non-monospaced font -- not replacing them with a different symbol, but adjusting to make the same symbols more readable. For instance, "--" doesn't look right in Times, so I've used literate={--}{{\texttt{--}}
to make that look better.
Meanwhile, when one's using illustrative pseudocode in discussions of algorithms that are detached from details of programming language syntax, I do think it's useful to use non-programming symbols. For one thing, it helps make it clear that what you are writing is not compilable C code -- even if it has a C-like syntax, and is really just C with irrelevant bits removed. (Or Lisp, or whatever.) And, since the "irrelevant bits" are going to vary from discussion to discussion, I haven't found that one specific pseudocode format applies to everything.
To answer your question properly, one must first distinguish style from typesetting. It follows that there are two aspects for which you seek an answer.
The first is the Style. As you mention many style guides do not go into great detail about the whithertos and whyfores of the typesetting process. In this way they define the general act of punctuation, in which intonation and logical pauses are indicated (where to place a period, and when to use square brackets, etc.). For answers to such questions I shall direct you to the appropriate style guide, or your general appreciation for structure and locution.
But for the second, the typesetting, I shall address your question more directly. Typesetting is an art, pure and simple. It is an act in which you set the above structure–of alphabetic prose and an-alphabetic structure (punctuation)–into an attractive form. This may seem a little high handed, but a typesetting system, such as TeX, provides characters, and it is up to you or, more commonly, macros to define where TeX is to place which character.
For a "comprehensive list which details the best method of typesetting the various forms of punctuation" I would direct you to the following;
- James Felici, The Complete Manual of Typography.
- Robert Bringhurst, The Elements of Typographic Style.
Typesetting is a process in which you are trying to get the right characters separated by the appropriate amount of space, so practically speaking in TeX you simply write which characters you want, and adjust space accordingly (by choosing different "spacing" characters when required). Sometimes this is done for you by the TeX engine. With what you have mentioned you are pretty close to all the basics required for typesetting most documents, the particular examples you give are required because of some default macros in TeX. This process is aided a lot by many modern fonts, which have great kerning and, if you have XeLaTex, OpenType features which aid a lot in making contextual decisions for spacing on your behalf. What I have listed below is a good-enough-list of how to typeset punctuation in TeX.
Periods
A period is a period, period. However, typesetting a period has more to do with the spaces around it. Tex assumes that a period which is preceded by a lower-case letter is the end of a sentence. To prevent this, say in an abbreviation, use, as you mentioned above, etc.\ and
. If a upper-case letter ends a sentence, use THE END\@.
Using these macros allows for sentence spacing to be adjusted by your style (i.e. \frenchspacing
). However, there may be times when you wish for larger or smaller spaces, thus when writing an initialled name, your write J.\,M.~Smith
, which gives a thin space between initials, and a non-breaking space between that and the surname.
\, thin space (normally 1/6 of a quad);
\> medium space (normally 2/9 of a quad);
\; thick space (normally 5/18 of a quad);
\! negative thin space (normally 1/6 of a quad);
\quad quad space (a quad).
Hyphens and Dashes
There are three main forms of this. The hyphen is used to indicate a conjoined word, or is used at the end of a line to indicate the word continues on the next line, use the basic hyphen for this. The en-dash is used to indicate range, this is written in TeX by two consecutive hyphens, --
or textendash
. An em-dash (or an en‐dash with spaces) is used to indicate a parenthetical clause/phrase (which, if removed does not interrupt the sentence), this is written in TeX by three consecutive hyphens, ---
or \textemdash
. Some fonts include characters for a minus sign \textminus
, and others such as a figure dash.
Ellipsis is either written by three periods separated by spaces .~.~.
(some style-guides require larger spaces, ~
enforces nnon-breaking spaces), or by using the \ldots
character which is three periods condensed into one character. Alternatively you may use medium spaces between the periods, .\>.\>.
.
Quotation Marks There are two types of quotation marks, and both have a single and double variants. The basic form is the "typewriter" forms, written in TeX with simply the '
and "
keys. Though in normal prose you will prefer the "curly" quotation marks, entered by the use of `
and ``
for left/open quotes, and '
and ''
for right/closing quotes.
Special characters often need "escaping" simply because they are used for special purposes: \%
, \$
, \&
, \#
, \_
, \{
, \}
. You can use punctuation marks and basic mathematical symbols without restriction. For a backslash, use \textbackslash
.
Apostrophes, Parentheses, Colons, Semicolons, Commas, Exclamation and Question Marks
All of these are pretty basic in TeX, you simply type them in. When and how to use them should be suggested by your style-guide and grammar. (I think TeX automatically converts an '
[apostrophe] into a single right quote?)
Best Answer
NIST's guide for the use of SI recommends (on page 35) that "symbols representing purely descriptive terms (for example, the chemical elements) are roman". This would most likely apply to subatomic particles as well. To do this, I would use
\mathrm
:Of course, that looks like it might get tedious, so I'd probably define macros for them:
which would allow you to quickly and universally change them if you decided that some other typesetting convention was better.
Personally, I'd prefer sans-serif, but then I'm no chemist or particle physicist.