Punctuation & brackets

Japanese punctuation — the comma 、 (touten) and period 。 (kuten) — and brackets 「」『』() are not the Western , and .. They are full-width glyphs with a half-width space already built into them, and they obey rules about where a line may begin and end. Japanese-aware engines such as pLaTeX and LuaTeX-ja handle the spacing, kerning, and line-breaking of these yakumono (punctuation glyphs) automatically. So as a rule you add no spaces of your own around them. This page covers choosing a comma/period style, using the brackets, and the automatic spacing and line-break rules underneath.

Comma and period (、。)

The basic Japanese punctuation marks are the comma 、 (touten, a mid-sentence break) and the period 。 (kuten, the end of a sentence). With a UTF-8 source you simply type them in the body text, just like ordinary characters, and they are set. They are different code points from the half-width , and ., are treated as yakumono, and carry a half-width space after them.

document.tex
吾輩は猫である。名前はまだ無い。
どこで生れたか、とんと見当がつかぬ。

The thing to keep in mind is that these are full-width yakumono. The comma, period, brackets, and middle dot (・) effectively occupy a half-width glyph, with the remaining half kept as space before or after the character face. So you should not press the space bar after . Adding a literal space in fact doubles the gap the typesetter already intends, leaving an unnatural opening. The rule is to leave the spacing around yakumono to the engine.

Ten-maru or comma-period

In horizontal-writing academic and technical documents, a long-standing convention uses the full-width comma and period ,. instead of the ordinary 、。 (ten-maru). This is not a rule of the national language; it descends from JIS Z 8301 (the style for standards documents), which prescribed ,and ., and it is common in mathematics books and science/engineering papers. Older Japanese government guidance long mixed ,。, but in 2020 official documents were standardized on 、。. Which to use follows your venue’s submission rules or your field’s custom — and within a single document you must be consistent.

A common misconception to clear up: jsclasses (jsarticle, jsbook, and the like) has no class option that switches punctuation to ,.. Which yakumono appear is ultimately decided by what you type into the source. If you want comma-period, the most straightforward approach is to type ,. directly in the body text.

document.tex
本稿では,記法を次のように定める.まず,集合 $A$ を……

A common workflow is to write with 、。 and do a global find-and-replace to ,. at the end. Going further, if you want to keep 、。 in the input but substitute only the output to ,., there are approaches: turning the Japanese characters into macros and swapping their definitions (a \catcode trick), replacing them at build time via a LuaTeX-ja callback, or converting with an editor extension. Note that all of these are mechanisms you set up yourself, not a feature of the class.

Note that commas inside mathematics follow Western typesetting rules. A coordinate like $(x, y)$ or a list separator uses a half-width comma with a small space, handled separately from body-text yakumono. Even if your prose uses comma-period, there is no need to make the commas inside formulas full-width.

Brackets (「」『』(), etc.)

For Japanese quotation and emphasis, reach first for the corner brackets 「」. Dialogue, quotations, and setting off a phrase use these. When you need to nest a quotation inside another, and for titles of books and works, use the double corner brackets 『』 (a common convention nests 「」 on the outside and 『』 within). For parentheses, use the full-width () for asides and readings. There are also []【】〔〕 and others, used variously for headings, dictionary entries, and so on.

BracketNameTypical use
「 」Corner bracketsDialogue, quotation, setting off a phrase (primary quotes)
『 』Double corner bracketsTitles of works; nested inside 「」
( )Full-width parenthesesAsides, notes, readings
[ ]Full-width square bracketsEditorial insertions, elisions
【 】Lenticular bracketsHeadings, strong labels
〔 〕Tortoise-shell bracketsNotes; an alternative to square brackets

With brackets too, the full-width versus half-width distinction matters. Use full-width () in Japanese as a rule; mixing the half-width Western () into Japanese leaves the surrounding spaces uneven and looks awkward. Conversely, inside Western (Latin) text use the half-width ( ). Japanese brackets are also yakumono: an opening bracket carries a half-width space before it, and a closing bracket a half-width space after.

document.tex
夏目漱石『吾輩は猫である』を引いて、「吾輩は猫である」と書いた(初出は 1905 年)。

Spacing and kerning around yakumono

The space a yakumono carries is recorded in the JFM (Japanese Font Metrics) and inserted automatically at typesetting time, which is why you type no spaces around punctuation. The trouble arises when yakumono run together. If a closing bracket is immediately followed by an opening bracket, for instance, the half-width space after the closer and the half-width space before the opener combine into a full-width gap. Japanese typesetting prefers to kern this down — closing it up to about a half-width (nibu) space.

pLaTeX and LuaTeX-ja perform this yakumono kerning automatically, based on the JFM. Usually you do nothing. Very occasionally, though, you want to cancel the automatic space at some spot, and that is what \inhibitglue is for — it suppresses the JFM-derived glue at that position. The flip side is that you rarely need it; leaving it to the automatic handling is normally enough.

The widths of yakumono are not uniform either. The spaces for the comma, period, opening and closing brackets, and middle dot are half-width, but the question mark ? and exclamation mark ! are treated as full-width, carrying a full-width space after them by default (so when a sentence continues right after ! mid-line, a kerning adjustment kicks in). The detailed handling of question and exclamation marks is covered on a separate page.

Line-start and line-end rules (kinsoku)

Japanese typesetting has kinsoku (line-break prohibition) rules. There are two main kinds: gyōtō-kinsoku specifies characters that must not begin a line, and gyōmatsu-kinsoku characters that must not end a line. The classic cases: a closing bracket 」, period 。, comma 、, or middle dot ・ must not start a line, and an opening bracket 「 or ( must not end a line.

These are enforced automatically as well. Internally, the pTeX family assigns each character a penalty for landing at a line start or a line end (prebreakpenalty / postbreakpenalty), and chooses break points so that the total penalty over the paragraph is minimized. In LuaTeX-ja you can tune these with \ltjsetparameter, but the classes (jsclasses, jlreq) load sensible JLReq-conformant defaults, so you normally need not touch them.

  • Never at line start (gyōtō-kinsoku): 。 、 , . ) 」 』 】 〕 ・ ー and the like.
  • Never at line end (gyōmatsu-kinsoku): opening brackets such as ( 「 『 【 〔.
  • Hanging punctuation: when a comma or period falls at a line end, some setups “hang” it slightly past the text edge; the default varies by class.

Spacing between Japanese and Western text

When English words or digits sit inside a Japanese sentence, the boundary needs a natural gap. This too is automatic: the roughly quarter-em (one-quarter of a full-width) space inserted between Japanese and Western text is **\xkanjiskip. Write “TeX は便利だ” and a thin space appears between “TeX” and “は”. The very small space between Japanese characters is \kanjiskip**, used for line justification.

So you need not type a half-width space at the Japanese/Western boundary yourself; doing so collides with the automatic gap and opens it too far. In LuaTeX-ja you can change the amount with \ltjsetparameter{xkanjiskip=...}, and disable the automatic insertion by setting autoxspacing to false. In the pTeX family, \xspcode and \inhibitxspcode give fine control over whether a space goes before or after particular characters.

document.tex
% LuaLaTeX + luatexja。和欧文間のアキを少し広げる
\ltjsetparameter{xkanjiskip=0.25\zw plus 1pt minus 1pt}
2026 年に LaTeX で論文を書く。

Western punctuation itself, meanwhile, has its own rules (one space after , and ., a slightly wider gap at sentence ends, --- for a dash, and doubled backticks/quotes for curly quotation marks). Those Western quotes and dashes, and the spaces inserted automatically, are gathered on the linked pages.