유니코드로 IRC 채팅하기 + 리눅스에서 UTF-8 한글 사용법

yongjoo의 이미지

유니코드(utf-8)로 IRC하는 방법과 함께
utf-8 한글 일반적인 사용법을 간단히 정리해 보았습니다. ^^

* utf-8은 유니코드의 한 인코딩입니다.
* IRC는 인터넷 릴레이 채팅입니다.

요즘 유행하는 "아ㅤㅎㅐㅎㅤㅎㅐㅎ" "뚫ㅤㅎㅜㄺ뚫ㅤㅎㅜㄺ" "ㅤㅃㅞㄺ"등의 글자는
일반적인 리눅스 환경에서는 입력되지도 않고,
출력하기도 쉽지 않습니다. 이런 글자는 표준
완성형(euc-kr)에는 없는 글자이고 유니코드로만
표현가능하기 때문입니다.

특히 리눅스 사용자와 윈도 사용자가 같이 IRC 채팅할때
MS윈도에서 mIRC로 이런 글자를 입력하게되면 확장완성형이
라는 윈도전용 인코딩으로 뿌려지기 때문에 윈도 사용자에
게만 보이고 다른 환경에서는 글자가 깨지거나 아무것도
보이지 않습니다.

대안은 유니코드(utf-8)를 쓰는 것입니다~

1. bitchx, irssi

터미널용 irc 프로그램에서 utf-8을 사용하려면 utf-8이
지원되는 터미널에뮬레이터를 사용하여야 합니다.
현재 mlterm이 utf-8 한글 입출력하기에 제일 나은것 같습
니다. vim 등으로 utf-8 입출력하는데도 문제가 없더군요!

LANG=ko_KR.UTF-8 환경에서 ami 1.2 이상을 띄운
상태에서 mlterm을 실행하면 됩니다. mlterm에서 utf-8
채팅을 하는 스크린샷과 자세한 설정법은 데비안유저스의
다음 링크를 참고하세요.
http//debianusers.org/jsboard/read.php?table=pic&no=149

bitchx와 irssi 모두 utf-8 사용에 문제가 없는것 같은데
irssi는 문서에 명시적으로 utf-8이 사용가능하다고
나와 있네요.

2. xchat

그놈2 어플리케이션에서는 utf-8로 한글을 사용하는데
거의 지장이 없는 것 같습니다. 다만 글꼴이 문제되는데
gnu unifont, 백묵 트루타입, 윈도의 굴림이나
Arial Unicode MS 같은 폰트를 쓰면 일단 되는 것 같습니다.
아마 찾아보면 더 좋은 폰트가 있을 것 같습니다.

그놈2 어플리케이션에서 utf-8 한글을 쓰려면
LANG=ko_KR.UTF-8 환경에서 ami 1.2 이상이 필요합니다.
ami 대신 im-hangul 입력 모듈이 설치되어 있어도 됩니다.

글꼴에 맞는 글자가 없어서 글이 분해되어 나오는 수가
있는데 (ㅤㅎㅐㅎ -> 해ㅎ) 보이기만 이렇게 보일 뿐이지
실제 utf-8 코드는 "ㅤㅎㅐㅎ"으로 제대로 입력된다고 합니다.
(이 내용은 im-hangul 홈페이지에서 알았습니다)

xchat에서도 역시 LANG=ko_KR.UTF-8 환경에서 ami 1.2 이상을
띄우고 irc 입력창에서 /charset utf-8 명령을 쳐주면
utf-8 채팅이 됩니다.

3. chatzilla

챗질라는 모질라 웹 브라우저에 딸려오는 IRC 클라이언트입
니다. 역시 LANG=ko_KR.UTF-8 환경에서 ami 1.2와 함께
/charset utf-8 명령으로 utf-8 채팅이 가능합니다.

4. MS 윈도에서

xchat과 모질라는 모두 MS 윈도용 버전이 있기 때문에
윈도에서 사용하기에도 편리합니다. 윈도에서는 단지
irc 입력창에 /charset utf-8 명령을 주는 것만으로
utf-8 채팅이 됩니다.

주의 윈도에서 많이 쓰는 mIRC로는 utf-8 채팅이 되지 않습니다!!

윈도에서 utf-8 채팅하는 스크린샷
http//debianusers.org/jsboard/read.php?table=pic&no=150&page=1

맺는말

mlterm에서의 utf-8 한글 사용을 테스트해 주시고 자세한 설정법을
알려주신 #debian 채널의 가락쇠님깨 감사드립니다 (_ _)

그리고 utf-8로만 채팅하는 전용 채팅방이 HanIRC에 문을
열었습니다 많이 놀러와 주세요!

서버 irc.hanirc.org
채팅방 #utf-8

이만하면 리눅에서의 유니코드 사용도 큰 장애는 없는것
같습니다. 행복한 유니코드 세상이 빨리 오기를 ㅡoㅡ;

-추가

mlterm보다도 그놈터미널2가 훨씬 utf-8 사용하기가 좋네요.
백묵 트루타입이나 윈도 굴림체등을 폰트로 설정하고
메뉴에서 터미널의 인코딩을 지정해주는것만으로
쉽게 euc-kr <-> utf-8 전환이 됩니다.
그놈 터미널 추천합니다!

-또추가

그놈터미널2에서 인코딩을 Korean UHC로 하면 확장완성형을
보고 쓸 수가 있습니다. 이 방법으로 윈도 사용자와도 깨지는
글자 없이 채팅을 할 수가 있습니다.

또한 xchat2에서도 /charset cp949 명령을 주면 역시
확장완성형을 사용할 수 있습니다. 폰트는 백묵 트루타입이나
윈도 굴림 같이 유니코드 한글이 포함된 것을 사용해야 합니다.

bitchx는 유니코드를 지원하지 않기 때문에 약간의 문제가
있습니다. 입력할때 한글이 물음표로 표시되고, utf-8 문자열을
터미널 제어 코드로 인식해서 깨져 나오기도 합니다.
이런 문제는 LANG=ko_KR.UTF-8 환경에서
irssi를 쓰면 해결됩니다.

HanIRC의 #utf-8 채널은 #unicode로 방을 옮겼습니다.

Forums: 
keizie의 이미지

내부 인코딩을 euckr로 먹이고 그 안에서 bitchx나 irssi를 띄우는 식이죠.

cwryu의 이미지

당장 UTF8로 설정해서 쓰기에는 서버쪽 문제가 남아 있습니다.

hanirc 서버에서 닉네임/채널이름이 EUC-KR 기준으로 패치되어 있습니다. 그리고 3바이트를 차지하기 때문에 각종 길이 제한들이 더 심하게 느껴질 거구요. 채널별로 인코딩을 다르게 한다는 것도 현재 클라이언트에서는 힘들구요.

7339989b62a014c4ce6e31b3540bc7b5f06455024f22753f6235c935e8e5의 이미지

EUC-KR이 아니라 확장 완성형 (CP949)입니다.
따라서 햏 쀍 같은 글자는 잘 보이죠... :)

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.