이 도구가 지우는 것
텍스트에는 작성된 곳의 서식이 따라옵니다. 웹페이지는 글자를 HTML 태그로 감쌉니다. README나 채팅 메시지는 마크다운의 별표와 샵(#)을 씁니다. 커뮤니티 게시판은 대괄호로 된 BBCode를 씁니다. Word, Google 문서, 이메일에서 복사하면 줄바꿈 없는 공백, 폭 없는 문자, 불필요한 빈 줄이 따라오기도 합니다. 이 텍스트 서식 제거 도구는 그런 서식을 지우고 글만 남깁니다.
붙여넣을 때 일어나는 일을 짚어 둡니다. 이 페이지의 입력 칸은 일반적인 textarea와 같은 일반 텍스트 칸입니다. Word나 웹페이지의 서식 있는 텍스트를 붙여넣으면, 글자가 들어오기 전에 브라우저가 이미 굵게, 기울임, 글꼴, 크기, 색, 링크 서식을 버립니다. 브라우저가 버리지 못하는 것은 문자로 쓰인 서식입니다. 코드로 복사한 태그, 마크다운 기호, BBCode, & 같은 엔티티 코드, 숨은 공백 문자가 그렇습니다. 이 도구는 바로 그 부분을 정리합니다.
사용 방법
- 서식 있는 텍스트 칸에 붙여넣습니다. HTML과 마크다운이 섞인 예시가 들어 있어 동작을 먼저 확인할 수 있습니다.
- 입력하는 동안 일반 텍스트 칸에 정리된 결과가 나타납니다.
- 지울 항목을 고릅니다. 다음 옵션은 기본으로 켜져 있습니다.
- HTML 태그 제거
- 마크다운 제거
- BBCode 제거
- 특수 폰트를 일반 문자로
- 공백과 빈 줄 정리
- 키보드 따옴표와 하이픈으로 바꾸고 싶다면 둥근 따옴표와 대시를 키보드 문자로를 켭니다.
- 복사 또는 다운로드를 누릅니다. 안내 문구에 지운 서식 문자 수가 표시됩니다.
예시
아래 결과는 모두 기본 설정에서 이 도구로 만든 것입니다. ¶는 줄바꿈을 나타냅니다.
| 서식 있는 텍스트 | 일반 텍스트 |
|---|---|
<p>We hit our goal & shipped the <a href="https://example.com">new site</a>.</p> |
We hit our goal & shipped the new site. |
## Next steps ¶ ¶ - **Fix** the _footer_ ¶ - Read the [style guide](https://example.com/guide) |
Next steps ¶ ¶ Fix the footer ¶ Read the style guide |
[b]Sale[/b] ends [url=https://example.com]Friday[/url] |
Sale ends Friday |
Use **bold** and *italic* and 뒤에 백틱으로 감싼 단어 하나 |
Use bold and italic and code. |
Tom & Jerry <3 |
Tom & Jerry <3 |
> Quoted line ¶ # Heading |
Quoted line ¶ Heading |
| snake_case_name and 2 * 3 * 4 stay as they are | snake_case_name and 2 * 3 * 4 stay as they are |
## 다음 단계 ¶ ¶ - **수정**할 것: _푸터_ ¶ - [스타일 가이드](https://example.com)를 읽기 |
다음 단계 ¶ ¶ 수정할 것: 푸터 ¶ 스타일 가이드를 읽기 |
<p>목표 달성 & 새 사이트 공개</p> |
목표 달성 & 새 사이트 공개 |
[b]세일[/b]은 금요일까지 |
세일은 금요일까지 |
작동 원리
도구는 정해진 순서대로 여러 번에 걸쳐 정리합니다.
- 마크다운을 먼저 처리합니다. 코드 블록 울타리, 가로줄, 표의 구분 행, 링크 정의를 지웁니다. 제목, 인용, 글머리 기호는 기호만 빠집니다. 이미지는 대체 텍스트를, 링크는 링크 글자를 남깁니다. 굵게, 기울임, 취소선, 인라인 코드는 기호가 글자를 바깥에서 감쌀 때만 기호를 지웁니다.
- 다음은 HTML입니다. 주석, 스크립트, 스타일은 통째로 지웁니다. 블록 요소는 줄바꿈으로 바꿔 문단이 나뉘게 하고, 표의 셀은 탭으로 바꾸며, 나머지 태그는 모두 지웁니다. 이름이나 번호로 된 문자 코드는 원래 문자로 되돌립니다.
- [b], [url=…], [quote]처럼 대괄호로 된 BBCode 태그를 지우고 글자는 남깁니다.
- 폰트 생성기로 만든 특수 폰트를 일반 문자로 되돌리고 취소선 기호를 지웁니다.
- 정리 단계에서는 보이지 않는 문자를 지우고, 특수 공백을 일반 공백으로 바꾸고, 줄 앞뒤의 공백을 잘라 내고, 빈 줄은 연속으로 하나까지만 남깁니다.
한국어 마크다운에서 알아 둘 점
마크다운 기울임 기호는 바깥에서 단어를 감싸고 바로 뒤에 글자가 오지 않을 때만 지웁니다. 한국어는 조사가 단어에 바로 붙기 때문에 이 규칙에 걸리는 경우가 있습니다. 이 도구로 직접 확인한 결과입니다.
| 서식 있는 텍스트 | 일반 텍스트 |
|---|---|
*기울임*은 그리고 **굵게**는 그리고 _밑줄_을 |
*기울임*은 그리고 굵게는 그리고 _밑줄_을 |
별표 두 개로 감싼 굵게는 조사가 붙어도 지워지지만, 별표 하나나 언더바 하나로 감싼 기울임은 바로 뒤에 조사가 붙으면 그대로 남습니다. 이런 기호가 남았다면 텍스트 바꾸기로 *나 _를 지우면 됩니다.
팁과 한계
- 목록의 글머리 기호가 사라집니다. 서식을 지우는 것이 목적이니 당연한 결과이지만, 목록 모양을 남기고 싶다면 나중에 하이픈을 직접 붙이거나 줄바꿈 제거로 목록을 쉼표로 구분된 한 줄로 바꾸면 됩니다.
- 부등호 뒤에 글자가 오고 나중에 다른 방향 부등호가 나오면 HTML 태그처럼 보여서 지워집니다. 수식이나 코드를 정리할 때는 HTML 태그 제거를 끕니다.
- 정리 옵션이 켜져 있으면 들여쓰기가 지워집니다. 들여쓰기를 남기려면 공백과 빈 줄 정리를 끕니다.
- 링크는 주소가 아니라 글자만 남습니다. URL이 필요하다면 정리하기 전에 복사해 둡니다.
- 꾸민 유니코드 글자도 여기서 변환됩니다. 따옴표, 이모지, 악센트, 숨은 문자를 더 세밀하게 다루려면 일반 텍스트 변환기를 씁니다.
다른 방법
Word: 텍스트를 선택하고 Ctrl+Space를 누르면 글자 서식이 지워집니다. 붙여넣을 때 선택하여 붙여넣기에서 서식 없는 텍스트를 골라도 됩니다. 어느 방법이든 문자로 입력된 태그나 마크다운은 지우지 않습니다.
Google 문서: Ctrl+Shift+V로 서식 없이 붙여넣거나, 서식 메뉴의 서식 지우기(Ctrl+\)를 씁니다. 이 경우에도 텍스트로 입력된 기호는 남습니다.
Mac: 많은 앱에서 Cmd+Shift+Option+V를 누르면 주변 텍스트의 스타일에 맞춰 붙여넣습니다.
코드: 브라우저에서는 new DOMParser().parseFromString(html, 'text/html').body.textContent로 HTML 문자열의 텍스트만 얻을 수 있습니다. Python에서는 BeautifulSoup의 get_text()가 같은 일을 합니다. 마크다운은 보통 파서나, 이 도구에서 쓰는 것 같은 정규식 묶음이 필요합니다.
정리한 텍스트에 원본에서 온 이중 공백이나 엉뚱한 빈 줄이 남아 있다면 공백 제거로 더 세밀하게 정리할 수 있습니다.