join text
Glue up to seven prompt fragments with a separator you control
- text
The most common text operation in ComfyUI is also the most annoying to do by hand: taking two or three prompt fragments and gluing them into one string with the right separator. Join text does exactly that - seven text slots, one separator, one output. It's the glue node you'll wire up constantly, and it's one of the plainest, most reliable things in the ymc suite.
It pairs naturally with input text preset, which is where the fragments come from: keep your subject in a, your style block in b, your lighting tags in c, and join them into the single string that feeds your CLIP/text encoder. Because the default separator is _, the first thing you'll do is probably change it - for a tag-style prompt you want , (comma-space), and for filenames you might want _ after all.
How it works
Nothing clever, and that's the selling point. The node takes a through g, drops any empty fields (filter(None)), and joins what's left with your splitchar. Two behaviors worth internalizing:
- Empty slots are ignored. Leave
d–gblank and they silently vanish from the result. That means you can keep this one node permanently in a workflow and only fill the slots you need. - The join is literally
splitchar.join(...)- no spacing magic, no smart commas. Type the separator exactly how you want it in the output, including spaces.
Inputs and outputs
- splitchar - the separator, default
"_"; set it to,for tag prompts or\nfor line breaks - a through g - seven STRING inputs, empty ones ignored
- Output: text - the joined string
Installing it
# ComfyUI Manager: search "ymc suite" and install ymc-node-suite-comfyui
# or:
cd ComfyUI/custom_nodes
git clone https://github.com/YMC-GitHub/ymc-node-suite-comfyui
Restart after installing. Dependencies are four small pure-Python PyPI helpers that self-install; no models, no GPU footprint.
Gotchas
- The typo-prone bit is the separator:
,with a trailing space is different from,, and for tag prompts the space actually matters to many encoders. Decide once and stick with it. - There's a sibling, join text to text preset - adv, that also accepts an incoming text wire and timestamp tokens. If you need to merge a dynamic text stream rather than fixed slots, that's the one - this node's slots are plain widgets.
- If WAS Node Suite is installed alongside, Manager may flag shared node names between the packs; disable one if save nodes start conflicting.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| splitchar | STRING | _ | — |
| a | STRING | — | |
| b | STRING | — | |
| c | STRING | — | |
| d | STRING | — | |
| e | STRING | — | |
| f | STRING | — | |
| g | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |