BBCode(비비코드)
Bulletin Board Code
1 개요
주로 서양의 인터넷 게시판(BBS), 특히 여러 인터넷 포럼에서 지원하는 마크업 언어(markup language)로, HTML의 극히 일부 기능을 가져오되 HTML 코드와 섞이지 않도록 HTML의 < > 대신 [ ]를 사용한다. 예를 들어 특정 글씨를 굵게 할 경우 HTML에서는 <b>굵은 글씨</b>[1]로 쓰지만 BBCode를 쓰는 게시판의 경우 [b]굵은 글씨[/b]의 형태로 코딩한다.
이러면 HTML의 < > 태그들을 모두 [ ]으로 바꿔 쓰면 되는 것 같지만 실제로는 그렇지 않다.[2] HTML보다 문법 기능을 대폭 간소화했기 때문에 그 과정에서 HTML보다 문법을 훨씬 간단하게 만든 경우도 있기 때문이다. 예를 들어 글씨를 20pt로 쓰려면 BBCode를 지원하는 대부분의 게시판에서는 [size=20]글씨[/size] 식으로 쓰기 때문에 대체로 HTML보다 훨씬 간단하다. 대신 CSS를 포함한 HTML 코드보다 지원하는 기능이 적다.
BBCode는 HTML보다는 문법이 간단하지만, 위키 문법, 또는 위키 문법과 유사성이 많은 마크다운보다는 코딩이 대체로 복잡한 편이다. 예를 들어 굵은 글씨는 BBCode에서 [b]굵은 글씨[/b] 형태로 쓰는데 아무래도 '''굵은 글씨'''[3] 또는 **굵은 글씨**[4] 형태로 쓰는 위키 문법이나 마크다운보다는 단순하지 않다. 그리고 많은 위키 엔진은 BBCode보다 더 상세한 기능을 제공하는 경우가 많아 상대적으로 BBCode는 빈약한 편이다. BBCode는 어차피 게시판에 올리는 글에 몇 가지 효과만 주기 위한 목적으로 만들어졌기 때문에 위키보다는 많은 기능이 필요하지 않다.
BBCode도 위키 문법과 마찬가지로 일종의 '사투리', 즉 이종들이 있을 수 있다. 게시판 소프트웨어마다 조금씩 다른 문법을 쓴다든지, 소프트웨어에 따라 몇몇 문법을 제한한다든지 등등... 하지만 태생적으로 위키 문법보다 기능이 적기 때문에 위키 문법보다는 이종 간 차이가 심하지 않은 편이다.
BBCode를 제공하는 게시판 소프트웨어들은 글을 작성할 때 BBCode 사용법을 알 수 있게 도움말을 자체적으로 제공하는 경우가 많다. 예를 들면 글 작성하는 칸 근처에 문법 사용 예를 작은 글씨로 설명해 놓는다든지 등등. 글 작성하는 칸 위에 편집용 버튼들을 둬서 그걸 클릭하면 적절한 문법이 입력되게 하는 경우도 많다. 예를 들어 '글씨'를 드래그한 상태로 굵은 글씨 아이콘을 클릭하면 자동으로 [b]글씨[/b] 꼴로 바꿔주는 식이다. 덕분에 BBCode를 정확히 몰라도 금방 익혀서 쓸 수 있다.
2 대한민국에서의 사용
대한민국에서는 널리 퍼져 있지 않은 편이다. 한국에서 쓰이는 게시판 소프트웨어들은 HTML 코드를 허용하되[5] 보안상 문제를 일으킬 가능성이 있는 태그만 선택적으로 무력화시키거나(블랙리스트) 반대로 특정 태그만 선택적으로 허용하는(화이트리스트) 식으로 처리하는 경우가 많기 때문이다. HTML이 섞일 가능성 자체를 원천 봉쇄하기 위해 [ ]을 사용하는 BBCode의 접근 방식과 차이가 있는 셈.
다만 국내 웹사이트에도 서양식 포럼형 게시판을 운영하면서 아예 서양권에서 쓰는 게시판 소프트웨어를 쓰는 경우가 꽤 있다. 다수를 차지하는 건 아니어도 아예 없는 건 아닌 셈. 그런 경우 거의 BBCode를 지원한다.
3 BBCode를 지원하는 소프트웨어
서양권에서 개발된 게시판 소프트웨어 상당수에서 거의 BBCode를 내장하고 있다. 이들이 사용하는 BBCode 문법도 대동소이하다.
- phpBB([1]) - 오픈소스 소프트웨어
- Invision Power Board(IP Board 또는 IPB, [2]) - 상용 소프트웨어
-
UBB.classic(옛 이름Ultimate Bulletin Board) - 상용 소프트웨어. 2012년을 끝으로 개발이 중단됐다. 참고로 이 소프트웨에서 처음으로 BBCode를 사용했다.[6]
근래에는 거의 phpBB가 쓰이는 듯하다.
참고로 위키백과 등에서 쓰는 위키엔진인 미디어위키와 위 IPB를 결합한 Ipb Wiki#라는 소프트웨어도 있다.[7] 미디어위키는 문서마다 토론란을 제공하고 있는데 이것도 위키 문법으로 작성해야 해서[8][9] 불편이 있다. 그래서 토론 기능은 IPB의 게시판 기능을 이용하게 하는 것이다. IPB의 기능에 따라 게시판에서는 BBCode 입력이 당연이 가능한데, 위키 문서 안에서도 BBCode 입력을 할 수 있다. 즉 IpbWiki의 위키 문서 안에서는 굵은 글씨를 쓰려면 '''굵은 글씨'''라고 써도 되고 [b]굵은 글씨[/b]로 써도 된다. 단 게시판 안에서는 위키 문법을 못 쓰고 BBCode만 쓸 수 있는 듯.- ↑ 또는 <strong>굵은 글씨</strong>을 쓰기도 하는데 기능상에 다소 차이가 있다.
- ↑ 단순히 < > 태그들을 모두 [ ]으로 바꿔 쓰면 된다면 굳이 그럴 필요 없이 HTML 태그를 그대로 입력할 수 있게 하면 된다. 굳이 [ ] 태그를 쓰는 건 보안 위협을 차단하기 위해 HTML 태그를 그대로 쓰지 못하게 하기 위한 것이었다.
- ↑ 나무위키가 사용 중인 모니위키를 포함한 일부 위키 엔진은 이 방식을 쓴다.
- ↑ 도쿠위키 등의 일부 위키 엔진과 마크다운 문법에서는 이 방식을 쓴다.
- ↑ 근래에는 위지위그(WYSIWYG) 방식을 도입해서 HTML이 뭔지 아예 모르는 사람도 사용에 지장에 없게 하는 경우가 많다.
- ↑ 이 게시판 소프트웨어 자체는 1996년에 처음 출시되었는데, BBCode가 도입된 건 1998년이었다.
- ↑ 물론 미디어위키를 개발한 위키미디어 재단이나 IPB를 만든 Invision Power Services라는 곳과는 무관한 프로그래머들이 두 소프트웨어를 수정, 결합해 내놓고 있다. 그러니 Ipb Wiki를 사용하고자 할 경우 주의할 것.
- ↑ 아이디와 날짜까지 수동으로 써줘야 한다. 물론 쉽게 입력 가능한 문법(~~~~)이 있기는 하지만 그걸 일일이 입력해야 하니 초보자는 의견 글을 남기는 방법도 정확히 몰라서 애를 먹을 수가 있다.
- ↑ 단 위키백과 등 위키미디어 재단의 프로젝트에서는 아직 도입하고 있지 않지만, 미디어위키에 설치하는 확장 소프트웨어 중에는 좀 게시판스럽게 쓸 수 있는 툴들이 서드파티에 의해 개발되긴 했다. 미디어위키 소프트웨어의 공식 위키에는 확장 소프트웨어들의 소개 글들이 있으니 찾아보면 된다.