Go to Sign up
Note: Your files never leave your device. We don't upload, transfer, or store your data.
|
|
|
|
|---|---|---|
|
|
|
Textile is a lightweight markup language that converts plain text into structured HTML. Developed by Dean Allen for the Textpattern CMS, it uses simple punctuation to represent formatting — similar to Markdown but with a different syntax philosophy.
Textile is the default or supported markup in:
Redmine — issue tracking and project management (tables in wiki, issues, comments)
GitLab — wiki pages and issue descriptions
Basecamp — message formatting
Textpattern — CMS content authoring
Jekyll — via the jekyll-textile-converter plugin
Ruby on Rails — RedCloth gem for text-to-HTML conversion
Textile tables use pipe characters (|) to separate cells:
|_. Name |_. Age |_. City ||Alice|30|Berlin||Bob|25|Tokyo|Key syntax elements:
| Element | Syntax | Result |
|---|---|---|
| Header cell | \_. | <th> |
| Row header | \_. on first cell | <th> in <tbody> |
| Cell separator | | | <td> boundary |
| Bold text | *text* | <strong> |
| Italic text | _text_ | <em> |
| Colspan | \/2. | Spans 2 columns |
| Rowspan | \2. | Spans 2 rows |
Rendered output for the example above:
| Name | Age | City |
|---|---|---|
| Alice | 30 | Berlin |
| Bob | 25 | Tokyo |
Manually writing Textile pipe tables for large datasets is error-prone and tedious. A converter automates this:
Redmine wikis — Paste project data, release notes, or comparison tables directly into wiki pages
GitLab issues — Include structured data in issue descriptions and merge request comments
Basecamp messages — Format tabular data in project discussions
Textpattern articles — Embed data tables in CMS content
Documentation — Generate Textile tables for Ruby on Rails project documentation
| Format | Extension | Notes |
|---|---|---|
| Excel Workbook | .xlsx | Default format since Excel 2007 |
| Legacy Excel | .xls | Excel 97–2003 format |
| Macro-Enabled | .xlsm | Excel with VBA macros (data only) |
Multi-sheet workbooks are supported — a sheet selector appears when multiple worksheets are detected.
Enable Table Head Syntax to format the first row as a Textile header row using _. prefix:
|_. Name |_. Age |_. City |
|Alice|30|Berlin|
When disabled, all rows use regular cell formatting:
|Name|Age|City|
|Alice|30|Berlin|
Enable Row Header to format the first column of each data row as a row header (bold <th> cell):
|_. Name |_. Age |_. City |
|_. Alice |30|Berlin|
|_. Bob |25|Tokyo|
This is useful when the first column contains row identifiers (names, categories, labels).
Enable Escape Characters to escape Textile's special syntax characters (|, ., -, ^) in cell values. This prevents accidental formatting when cell content contains these characters.
For example, a cell containing Price: $19.99 could be misinterpreted by the Textile parser. Escaping ensures literal output.
After uploading your Excel file, the built-in editor lets you:
Add, delete, and reorder rows and columns
Transpose rows to columns
Remove empty rows and duplicate rows
Apply case transformations (UPPERCASE, lowercase, Capitalize)
Find and replace values (with regex support)
All processing happens in your browser. Your Excel files are never uploaded to any server.
Drag and drop an .xlsx, .xls, or .xlsm file onto the upload area, or click to browse. If the workbook has multiple sheets, select the desired sheet from the dropdown.
Use the toolbar to modify your data. Insert or remove rows and columns, transpose the table, deduplicate rows, or apply bulk case changes.
In the Properties panel:
Table Head Syntax — toggle on to format the first row as a header
Row Header — toggle on to bold the first column
Escape Characters — toggle on to escape Textile special characters
Click Convert. The Textile markup appears in the Output Data panel.
Click Copy to Clipboard to paste the Textile into Redmine, GitLab, or Basecamp, or use Download File (Premium) to save the .textile file.
| Feature | Textile | Markdown |
|---|---|---|
| Cell separator | | | | |
| Header row | \_. prefix | Separator line ---|--- |
| Row header | \_. on cell | Not supported |
| Colspan | \/2. | Not supported (HTML only) |
| Rowspan | \2. | Not supported (HTML only) |
| Bold in cell | *text* | **text** |
| Alignment | >. <. =. | Not supported (HTML only) |
| Primary platforms | Redmine, GitLab, Basecamp | GitHub, Jekyll, Hugo |
Textile tables are more expressive than Markdown tables — they support row headers, colspan, rowspan, and per-cell alignment natively.
Redmine wikis — Paste project data, sprint summaries, or API parameter tables into wiki pages
GitLab issues — Include structured test data or comparison tables in issue descriptions
Basecamp messages — Format schedule data, resource tables, or status reports
Textpattern content — Embed data tables in CMS articles
Ruby documentation — Generate Textile tables for Rails project READMEs and guides
Migration from Excel — Move tabular content from spreadsheets into Textile-based platforms
The converter accepts .xlsx (Excel Workbook), .xls (Excel 97–2003), and .xlsm (Macro-Enabled Workbook) files. Multi-sheet workbooks are supported with a sheet selector.
No. All conversion happens entirely in your browser using client-side JavaScript. Your files are never uploaded, transferred, or stored on any server.
Textile is a lightweight markup language that converts plain text to HTML using simple punctuation. It is the default markup in Redmine and is supported by GitLab, Basecamp, and Textpattern. Tables use pipe characters (|) for cell separators and _. for header cells.
When enabled, the converter wraps the first row with Textile heading syntax (_. prefix), producing header cells. When disabled, all rows use regular cell formatting.
When enabled, the first column of each data row is formatted as a row header using the _. prefix, producing bold cells. This is useful when the first column contains row identifiers like names or categories.
When enabled, the converter escapes Textile's special syntax characters (|, ., -, ^) in cell values. This prevents accidental formatting when cell content contains these characters.
Textile is supported by Redmine (wiki, issues), GitLab (wiki, issues), Basecamp (messages), Textpattern (CMS content), and Jekyll (via plugin). The RedCloth gem provides Textile support in Ruby on Rails applications.
Yes. After uploading your file, a full table editor opens where you can add or remove rows and columns, transpose the table, deduplicate rows, change text case, and find and replace values.