Line Wrapper
Hard-wraps text at a column width, or unwraps it back into single-line paragraphs.
Inserts line breaks at a given column, or takes them back out. The column count is measured in terminal columns rather than characters, because a Hangul syllable occupies two cells — wrapping Korean at 80 characters without that gives lines 160 columns wide.
Text
Settings
Insert line breaks at the given column.
Result
Lines
4
Widest line
58 columns
How to use it
Choose wrap or unwrap
Unwrap joins the lines of each paragraph back into one, keeping blank lines as the paragraph boundary. That is the direction for text copied out of a PDF.
Set the column count
72 or 80 for a commit message or an email, 100 for code comments. Leave "count CJK as two columns" on for anything containing Korean.
Add an indent if the format needs one
Continuation lines can carry a prefix — spaces for a quoted block, a marker for a bullet list. The first line of each paragraph is left alone.
Common questions
Why do my Korean lines look twice as long?
Because they are, in columns. A Hangul syllable is one character and two cells in every monospaced editor. This tool counts cells, so the widest-line figure is what you will actually see.
Unwrapping merged my bullet list
Unwrap joins on blank lines only. Put a blank line between items, or use the line-break remover, which recognises -, •, 1. and 가. as the start of a new item.
A long URL got cut in half
Turn off "break words longer than the width". The line will then run past the column rather than splitting a token that has to stay whole.
Feed it from
Line Break Remover
Joins broken lines back into paragraphs, keeping blank-line boundaries intact.
Text Splitter
Splits a long text into chunks by line count, character budget or a delimiter, keeping sentences whole.
Korean Character Counter
Counts characters with and without spaces and in bytes, matching how application forms count them.
Case Converter
Converts between UPPER, lower, Title, Sentence, camelCase, snake_case, kebab-case and CONSTANT_CASE.
Next
These accept what this tool produces, so the result can go straight in.
Line Break Remover
Joins broken lines back into paragraphs, keeping blank-line boundaries intact.
Text Splitter
Splits a long text into chunks by line count, character budget or a delimiter, keeping sentences whole.
Whitespace Cleaner
Trims trailing spaces, collapses runs of blanks, converts tabs and removes empty lines.
Find & Replace
Replaces text by literal, whole word or regular expression, with capture groups and a preview of every hit.
Markdown Editor
Edits Markdown with a live preview and exports the rendered HTML, with GFM tables and task lists.
Text Anonymiser
Finds emails, phone numbers, card numbers and IDs in free text and masks or pseudonymises them.