π€ CR Multiline Text
A text box that can also parse CSV and split into a list
- multiline_text
- show_help
The plainest reading of this node is "a bigger text box," and most of the time that's exactly what you're using it for. But it's got a couple of tricks past that: it can treat its own contents as a CSV row and split them on commas, or strip out characters you don't want, before handing the result downstream. It's a small utility, but it's the kind of node that quietly removes the need for three other nodes in a list-building workflow.
What it's for
ComfyUI workflows that batch things - a list of style keywords, a set of captions, values you want to cycle through - need the raw text to get from "a block you typed" to "a clean list a downstream node can iterate over." CR Multiline Text does that conversion in one node instead of you wiring up a text box plus a separate string-splitter plus a separate cleanup step.
How it works
You type or paste your text into the box. From there, three independent toggles change what happens to it before it's output:
- Turn on CSV mode and the node treats your text as comma-separated values, respecting a quote character so values that themselves contain commas don't get split incorrectly.
- Turn on character removal and it strips out whatever characters you specify, applied before anything else.
- Turn on string splitting and it breaks the (possibly already-CSV-parsed) text into a list rather than passing it through as one block.
You can combine these - clean the text, then split it - or leave everything off and it behaves like a plain multiline string node.
Inputs and outputs that matter
text- the multiline box itself. This is the only thing most people will touch.convert_from_csv(boolean) - treat the text as CSV rather than plain lines.csv_quote_char(default') - the character CSV mode uses to wrap values that contain commas, so they don't get split mid-value.remove_chars(boolean) +chars_to_remove- strip specific characters from the text before output.split_string(boolean) - split the result into a list instead of one combined string.
Output is multiline_text, typed as a wildcard so it'll connect to whatever expects a string or a list of strings on the other end - plus the standard show_help link to this node's wiki page.
How to install it
Via ComfyUI Manager: search "Comfyroll Studio" and install. Or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes.git
Restart ComfyUI. This is a plain-text utility node - no models, no extra dependencies beyond what the pack already needs.
Common issues & troubleshooting
CSV mode splits things you didn't want split. Check your csv_quote_char. If a value in your text contains a comma and isn't wrapped in that quote character, it'll get split as two values. Set the quote char to match how your source data is actually quoted (a spreadsheet export, for instance, might use double quotes, not the default single quote).
Downstream node complains about the wrong type. Because the output is a wildcard type, it's easy to feed a list into something expecting a single string, or vice versa, and only find out when it errors. Check whether split_string is on or off - that's the toggle deciding whether you're sending one block of text or a list of pieces.
Nothing changed even with a toggle on. Remember the toggles are independent booleans, not a mode selector - flipping convert_from_csv on does nothing to line-splitting unless split_string is also on. If you expected a list back and got one long string, check that specific toggle rather than assuming CSV parsing implies splitting.
Comfyroll fails to load at all. If none of the pack's CR nodes show up after install, that's usually an interrupted clone or a stale ComfyUI Manager cache rather than anything specific to this node - delete the ComfyUI_Comfyroll_CustomNodes folder and re-clone rather than debugging the specific error.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | β | |
| convert_from_csv | BOOLEAN | false | β |
| csv_quote_char | STRING | ' | β |
| remove_chars | BOOLEAN | false | β |
| chars_to_remove | STRING | β | |
| split_string | BOOLEAN | false | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| multiline_text | * | β |
| show_help | STRING | β |