# Spaces and tabs

**URL:** <https://racket.discourse.group/t/spaces-and-tabs/4404>\
**Category:** Languages\
**Created:** [September 28, 2026, 2:30pm UTC](https://racket.discourse.group/t/spaces-and-tabs/4404 "2026-09-28T14:30:16Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![hendrikboom3](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/hendrikboom3/32/2748_2.png) [@hendrikboom3](https://racket.discourse.group/u/hendrikboom3)\
**Post date:** [September 28, 2026, 2:30pm UTC](https://racket.discourse.group/t/spaces-and-tabs/4404/1 "2026-09-28T14:30:16Z")

</div>

I'm familiar with the spaces and tabs prroblem in Python.iHow is this resolved in Rhombus ?

---

<div class="post-metadata">

**Author:** ![bakgatviooldoos](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/bakgatviooldoos/32/1381_2.png) [@bakgatviooldoos](https://racket.discourse.group/u/bakgatviooldoos)\
**Post date:** [October 2, 2026, 10:15am UTC](https://racket.discourse.group/t/spaces-and-tabs/4404/2 "2026-10-02T10:15:52Z")

</div>

Hi, @hendrikboom3.

From what I can tell, it seems like tabs vs. spaces aren't [parsed](https://docs.racket-lang.org/shrubbery/token-parsing.html) ambiguously in shrubbery notation:

> Lines and indentation-influencing whitespace are not represented as tokens. Instead, each token conceptually has a line and column derived from its position in the input sequence of characters. The line for an input sequence increments at a linefeed character (code point 0x0A), a two-character sequence of return (code point 0x0C) and linefeed, or a return character that is not followed by a linefeed character. The column of an input sequence for measuring _indentation_ increments once per Unicode _grapheme cluster_, except that tabs are treated specially. Note that the use of grapheme clusters is a different counting of columns than built into a Racket or Rhombus input port, which counts by Unicode code points. More generally, a column corresponds to a sequence of spaces and tabs, where all non-tab grapheme clusters are treated like a space.

I'm not sure _how_ tabs are treated differently from other grapheme clusters (because I don't really know much about the topic), but hopefully this helps to point in the right direction.
