티스토리/텍스트큐브 태그를 손쉽게 정리하자!

티스토리 사용하면서 내가 느낀 불편함 중 하나는 태그 정리다.

태그는 대략 아래와 같은 규칙 및 특성을 갖는다.

1. 대소문자의 구분은 없다. 즉, "it""IT"는 같은 태그다.

2. 하지만, 처음 지정한 태그의 대소문자 규칙을 무조건 따라 통일한다.
   즉, 맨 처음 "it"라는 태그를 썼으면, 이후 "IT", "It", "iT"는 자동으로 "it"로 바뀐다.

3. 태그 사이에 공백이 들어갈 수 있으며, 공백도 그냥 문자다.
   즉, "제임스 본드""제임스본드"는 다른 태그다.

4. 컴마(,)는 태그로 지정할 수 없다.

5. 특정 태그를 몽땅 없애거나, 몽땅 변환하는 기능은 없다.
   따라서, "James Bond""제임스 본드"가 공존하기 시작하면 정신이 없어진다.

문제는 처음 블로그를 운영할 때는 별 생각없이 태그를 지정하다 막상 정신을 차려보면 태그를 정리할 수 없게 된단 거다.
(이건 시스템의 문제라기 보단 그냥 인간이 운영하기 때문에 생기는 한계 같음)

이런 문제를 한방에 해결할 수 있는 방법을 찾다가 결국 방법을 찾는 건 포기하고, 프로그램을 하나 간단하게 만들었다.

사용자 삽입 이미지

이젠 식상할 만도 한 특성인 단순하기 짝이 없는 화면.


이 프로그램은 백업파일을 읽어서 사용된 태그를 출력해주고, 규칙에 따라 태그를 정리해 다시 XML 파일로 기록해준다.
이 프로그램의 주요 기능 및 특성은 아래와 같다.

1. 태그 목록 파일은 UTF-8이 아니라 ANSI 포맷으로 저장하고 읽어들임
   (UTF-8 포맷을 쓰는 것이 상식이지만, 태그목록을 대부분 메모장으로 편집할 가능성이 높아 어쩔 수 없었음)

2. 태그 목록을 출력할 때 사용 빈도수를 함께 출력할 수 있음

3. 4GB 이상의 백업 XML 파일도 문제 없이 읽고 씀

4. 태그 목록을 출력할 때와 변환할 때 같은 에디트 박스를 사용함.
    즉, 태그 목록을 출력한 뒤 이 목록을 입맛에 맞게 수정하고 다시 태그 변환을 하면 됨.
    (한편으로는 귀차니즘으로 이런 식으로 구성한 면도 있음)

사용 방법 및 태그 목록 변환 규칙은 아래와 같다.

1. 백업 XML을 정한 뒤 기본 설정인 "TAG 목록 출력" 라디오 버튼을 그대로 두고 "처리!" 버튼 클릭

2. 태그 목록(text file)으로 아래와 같은 형태의 텍스트 파일이 생성됨. (ANSI 포맷이라 메모장으로 읽으면 됨)

it, 25
j, 1
James Bond, 15
제임스 본드, 8
제임스본드, 1
라데팡스, 1
파리, 1

3. 2번에서 생성된 파일을 직접 수정함. 규칙은 아래와 같음.

 - 규칙의 각 줄은 엔터로 구분됨
 - 각 태그는 컴마로 구분됨
 - 한 줄에 태그가 하나 있으면 그 태그를 삭제한다는 뜻임
 - 태그가 두 개 이상이면 맨 앞에 적힌 태그로 변경한다는 뜻임

즉, 위의 태그 목록에서 "it"는 대문자 "IT"로 바꾸고, "제임스 본드" 관련 태그는 몽땅 "제임스 본드"로 바꾸며 잘못 입력된 태그인 "j"를 없애려면 목록을 아래와 같이 작성하면 된다.

IT, it
제임스 본드, James Bond, 제임스본드
j
이렇게 하면 목록에서 언급되지 않는 "라데팡스", "파리"는 그대로 두고, 언급되는 태그만 수정되게 된다.
또한, 한 포스트에 "제임스 본드"와 "James Bond" 태그가 모두 있는 경우 "제임스 본드" 태그는 한번만 기록된다.

4. 설정을 "태그 변환"으로 바꾼 뒤 "처리!" 버튼 클릭.
새로운 파일명으로 새 백업파일이 생성된다.

이 프로그램을 사용하려면 아래 압축파일을 풀면 된다.
언제나 그렇듯이 윈도우 XP 이상의 환경에서는 어떠한 추가 라이브러리도 필요 없고, 언제라도 실행이 가능하다.



덧. 이 프로그램을 만들다 보니 티스토리에서 글의 작성자에 대한 사소한 문제가 생각났다.
팀블로깅을 하거나, 두 블로그를 합치는 등의 과정에서 글의 작성자가 제대로 인식되지 않는 경우가 발생한다.
(본 블로그도 예전 즉, http://bluenlive.net 시절에 작성된 글의 경우 작성자가 비회원으로 나옴)

위의 프로그램을 완성한 뒤에 이러한 목록을 정리해줄 수 있도록 슬쩍 수정했다.
화면이 비슷한데, 사실 화면이 비슷한 것이 아니라 아예 똑같다. 일부 이름과 파일명만 수정했다.

사용자 삽입 이미지

이 프로그램은 백업 XML 파일에서 작성자(author)의 목록을 뽑아주며, 정해진 규칙에 따라 작성자를 통일해준다.
즉, 아래와 같은 목록은

83261, 1284
작성자가 1284인 글을 찾아 작성자를 83261로 바꿔준다.
이 작성자는 티스토리/텍큐닷컴 내부적으로 부여되는 숫자이며, 백업 파일의 <author ....> 태그에서 볼 수 있다.

물론, 설치형 텍스트큐브에서는 이 <author> 태그 자체가 존재하지 않는다.
또한, 태그 정리 프로그램과는 달리 작성자를 없애는 기능은 제공하지 않는다.

이 프로그램은 위의 압축파일에 함께 넣어두었다.