Convert Columns to Text

Flatten multi-column text into a single list with smart delimiter detection.

Apple
Date
Grape
Banana
Elderberry Honeydew
Cherry
Fig

Controls

Spaces to split columns

Tip: For names like "New York", increase minimum gap or use a different delimiter.

Statistics

Input Chars
69
Items
7
Columns
3
Lines
3

What is Column Flattening?

The Convert Columns to Text tool intelligently flattens multi-column text layouts into single vertical lists. When you copy-paste data from PDFs, terminal outputs (like ls or top), or spreadsheets, the formatting often appears as visual columns separated by whitespace. This tool extracts those items into a clean, one-item-per-line format perfect for Excel, databases, text editors, or further processing.

Premium Features

4 Delimiter Types

Spaces, Tabs, Commas, or Pipes. Choose the right separator for your data source.

File Upload & Download

Upload .txt, .csv, .tsv files. Download flattened results instantly.

Batch Processing

Process multiple column sets separated by blank lines independently.

Comparison Mode

View original and flattened side-by-side for easy verification.

Live Statistics

Real-time metrics: items extracted, columns detected, lines processed.

Case Conversion

Convert to lowercase, UPPERCASE, or Title Case while flattening.

Common Use Cases

Terminal Command Output

Extract filenames from ls output, process IDs from ps, or server names from docker ps. Convert multi-column terminal displays into clean lists for scripting.

Database Exports

Flatten pipe-separated or tab-delimited database dumps. Convert SQL query results copied from terminals into vertical lists for Excel import.

PDF Table Extraction

When you copy tables from PDFs, they often paste as space-separated columns. This tool extracts individual cells into a clean list for further processing.

Email & Contact Lists

Extract email addresses or names from formatted contact lists. Perfect for cleaning up data before importing into CRM systems.

How to Use

  1. Paste your multi-column text into the input area (or upload a .txt/.csv file)
  2. Select the appropriate delimiter: Spaces, Tabs, Commas, or Pipes
  3. If using space delimiter, adjust Minimum Gap to match your data (default: 2 spaces)
  4. Enable Batch Mode if processing multiple separate column sets
  5. Optional: Enable Comparison Mode to verify the conversion
  6. Optional: Choose a case conversion option if needed
  7. Copy the flattened result or download as .txt file
  8. Check statistics to verify items extracted correctly

Frequently Asked Questions

What is column flattening and when do I need it?

Column flattening converts multi-column text layouts (like ls output, PDFs, or terminal displays) into a single vertical list. You need this when you copy-paste data from formatted sources and want to extract individual items. For example, converting 'Apple Banana Cherry' (3 columns) into 'Apple\nBanana\nCherry' (3 lines). Common use cases include processing ls output, database exports, copied spreadsheet data, and extracted PDF tables.

How does the column detection work?

The tool uses intelligent delimiter detection. For space-separated columns, it looks for gaps of multiple spaces (default: 2+ spaces) to distinguish between column separators and spaces within content (like 'New York'). You can choose from 4 delimiter types: Spaces (configurable gap), Tabs, Commas, or Pipes (|). The minimum gap setting only applies to space-separated columns—single spaces within content are preserved, while 2+ consecutive spaces trigger column splitting.

Can I upload files instead of copy-pasting text?

Yes! Click the Upload button to load .txt, .csv, or .tsv files directly. The tool will automatically process the file content. After flattening, you can download the result as a .txt file using the Save button. This is perfect for processing large datasets or automating workflows without manual copy-paste.

What is Batch Mode and when should I use it?

Batch Mode processes multiple column sets separated by blank lines independently. Enable it when your input contains multiple separate tables or lists. For example, if you have two separate ls outputs or multiple data blocks in one file, batch mode will flatten each block separately and preserve the separation in the output. Without batch mode, all content is treated as one continuous dataset.

What delimiters are supported?

The tool supports 4 delimiter types: (1) Spaces: Multi-space gaps (configurable threshold 2-10 spaces), perfect for ls output and terminal displays. (2) Tabs: Tab-separated values (TSV files). (3) Commas: CSV format or comma-delimited data. (4) Pipes: Pipe-separated values (|), common in databases and Markdown tables. Choose the delimiter that matches your source data format.

How do I handle names with spaces like 'New York'?

Names with single spaces like 'New York' are automatically preserved when using space delimiter because the tool only splits on multiple consecutive spaces (default: 2+). If 'New York' is splitting incorrectly, increase the Minimum Gap setting to 3 or 4 spaces. Alternatively, if your source data uses tabs, commas, or pipes, select the appropriate delimiter instead of spaces to avoid ambiguity.

What is Comparison Mode?

Comparison Mode displays your original input and flattened output side-by-side, making it easy to verify the conversion. Toggle it on to see both versions simultaneously—original columns on top (blue theme) and flattened list below (green theme). This is useful for checking that names with spaces weren't split incorrectly or that the right delimiter was chosen.

Can I convert the output to uppercase or lowercase?

Yes! The Case dropdown offers 4 options: (1) As-Is: Keep original case, (2) lowercase: Convert everything to lowercase, (3) UPPERCASE: Convert everything to uppercase, (4) Title Case: Capitalize the first letter of each word. This is useful for standardizing data before importing into databases or Excel.

What do the statistics mean?

The statistics section displays: (1) Input Chars: Total characters in your input text, (2) Items: Number of items extracted into the flattened list, (3) Columns: Number of columns detected (based on first line), (4) Lines: Number of lines or blocks processed (depends on batch mode). These metrics help verify the conversion worked correctly—if Items is too low, you may need to adjust the delimiter or gap setting.

Is my data safe and private?

Absolutely! All processing happens entirely in your browser using JavaScript—no data is sent to any server. Your text never leaves your computer. Files you upload are read locally, and downloads are generated client-side. We don't store, log, or have access to any of your data. This makes it safe for confidential information like employee lists, database exports, or sensitive documents.