# String Merge

This function block merges multiple text inputs into a single combined string. Use it to build filenames, messages, labels, or any composite text from separate inputs.

## 📥 Inputs <a href="#inputs" id="inputs"></a>

`String` — One of the text inputs to be merged. The block accepts multiple `String` inputs; the default layout provides two.

## 📤 Outputs <a href="#outputs" id="outputs"></a>

`String` — The merged result produced by concatenating all provided inputs in left-to-right order.

## 🕹️ Controls <a href="#controls" id="controls"></a>

`Input size` — Choose how many text inputs the block exposes. Increasing this will add more `String` inputs; decreasing will remove inputs.

## ⚙️ Running mechanism <a href="#running-mechanism" id="running-mechanism"></a>

* On each run the block reads all available `String` inputs (in the order they appear) and concatenates them into a single text value.
* The concatenated result is sent to the `String` output socket for downstream use.
* If an input is empty or not provided, it contributes no characters to the final result (effectively treated as an empty string).

## 🎯 Features <a href="#features" id="features"></a>

* Dynamic input count via the `Input size` control — tailor the number of text inputs to your use case.
* Simple, deterministic concatenation — predictable ordering of parts makes it easy to build structured names and messages.
* Lightweight and ideal for UI-level string assembly (filenames, labels, log lines).

## 📝 Usage tips <a href="#usage" id="usage"></a>

* Arrange text parts left-to-right in the order you want them merged.
* Use descriptive text inputs (for example: prefix, separator, counter, timestamp) to build clear filenames or identifiers.

## 💡 Tips and Tricks <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* Combine with `String Input` to allow manual entry of parts, then merge to form a final label or filename.
* Use `Number Input` and `String Merge` together when you need incremental counters in filenames.
* Add a timestamp by merging `Date-Time` (or values from `Date-Time List`) to create unique, traceable file names.
* Create structured export records by merging fields and feeding the result into `Data to JSON` or `CSV Export` for logging.
* Build dynamic image filenames (prefix + timestamp + index) with `String Merge` and use the result with `Image Logger` or `Image Write` to save images with meaningful names.
* Combine with `Choose Folder` or `File/Folder Operations` to assemble full paths for file operations.

## 🛠️ Troubleshooting <a href="#troubleshooting" id="troubleshooting"></a>

* If a merged output seems to be missing parts, check the number of active `String` inputs via the `Input size` control and ensure each input is connected or contains text.
* If separators are missing, add explicit separator inputs (for example, a dash or underscore) between parts before merging.
