How do I get InDesign to break lines at non-space characters?

Sometimes InDesign will break lines at non-space characters immediately. I would start typing abcde..., and as soon as the string reaches the border, InDesign would break the line. Cool.

Other times it won't break the line at first. I would start typing abcde..., and once the string reaches the border it would first disappear and only after I have typed several more characters it would show up again, spreading across two lines. Not so cool.

How do I control this behavior?

(I hope it's okay I'm asking this here; my motivation is type-design related and I'm guessing type designers are more likely to know the answer.)
Tagged:

Comments

  • This frustrates me about InDesign, too. First, check your hyphenation settings and futz with them. Mine are set to hyphenate just about any situation to avoid this problem. Second, I use a lot of soft returns (shift-return) and adjust lines of text as I set up the proof. 
  • Does it break the line cleanly, or does it hyphenate?
  • In addition to what Dyana wrote, take note that hyphenation is linked to the set language. The same text will break differently depending on which language is applied. A non-word string like AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz will break with hyphens when a language is applied, and without hyphens when set to no language. Or it won’t break at all! The Composer mode (Paragraph/Single-line, Adobe/Global) has an effect, too.
  • Mark Simonson
    Mark Simonson Posts: 1,719
    edited February 2021
    Depending on what you're trying to do, you can create a paragraph style where the minimum, desired, and maximum word spacing is 0%, and then insert a space after every character. If you need to include spaces, you can use one of the other whitespace characters instead (i.e., quarter or third space). (Be sure to put spaces around the white space character, too, otherwise it will prevent a break.) Note: This also breaks kerning and other OT features such as calt and liga, which could be a problem.


  • John Hudson
    John Hudson Posts: 3,126
    If you are dealing with non-linguistic text or don’t care too much about getting linebreaks in orthographically correct places for the actual language, experiment with setting the language in InDesign to Czech or Lithuanian. Both these languages have very permissive hyphenation rules, which can be algorithmically applied rather than relying on a dictionary, so will tend to produce nicely even lines in any text. Obviously do not rely on this trick if producing an actual publication in a language that has stricter orthographic rules around hyphenation.
  • Thanks for all these tips!

    Hyphenation is off, to answer @Nick Curtis's and other people's question.
    When it breaks the line, whether immediately or only after a while, it does so cleanly.
    (And I need it to break cleanly, without hyphens. A typical scenario: I want to fill a whole page with abc...xyz — and abc...xyz alone, without any hyphens.)

    @Mark Simonson, my usual workaround is to insert a zero-width space after each character. I guess this method has pluses and minuses compared to yours.

    Inserting a space after each character isn't the end of the world, but it would be much more convenient if you could just type your string and it would spread across multiple lines. And the fact that sometimes it works exactly like that makes me think there's got to be some way to control it, some setting I'm missing or something like that.
  • I've often wished that InDesign (and other apps) had a "break anywhere, no hyphenation" line break option. It'd be really handy for certain kinds of type specimens, which currently have to be done more or less manually. I wonder if it would be possible to create and add a custom dictionary or language?
  • “break anywhere, no hyphenation” would be a godsend when I’m adjusting my brute force proofs to fit different extreme weights and sides.
  • Cristóbal Henestrosa
    edited February 2021
    What about adding a discretionary line break after every character? I am absolutely noob in GREP, but I managed to figure out a way to achieve it.
    Before:

    After:

    The text I typed:
    Is this what you are looking for?
  • @Cristóbal Henestrosa, thanks for this suggestion!
    This is first time I hear about discretionary line breaks.
    For my purpose, I don't see a major difference between discretionary line break and zero-width space, but it's good to have both in my toolbox.