WikiText
1. 개요
1. 개요
WikiText는 위키 문서를 작성하기 위해 설계된 경량 마크업 언어이다. 위키백과 공동체에 의해 개발되어 2001년 위키백과와 함께 최초로 등장했으며, 이후 미디어위키 기반의 다양한 위키 프로젝트에서 표준 문서 편집 형식으로 널리 사용되고 있다.
이 마크업 언어의 주요 목적은 복잡한 HTML 코드를 몰라도 쉽게 문서를 서식화하고, 하이퍼링크를 생성하며, 표나 목록과 같은 구조화된 콘텐츠를 추가할 수 있도록 하는 데 있다. 사용자가 웹 브라우저를 통해 직접 문서를 편집하고 저장할 수 있는 위키의 협업적 특성에 최적화되어 있다.
WikiText는 미디어위키 소프트웨어의 핵심 구성 요소로, 위키백과를 비롯한 수많은 지식 공유 사이트의 운영 기반이 된다. 단순한 문법을 통해 텍스트를 굵게 또는 기울임꼴로 표시하고, 제목을 정의하며, 내부 문서 간 또는 외부 웹사이트로의 링크를 쉽게 걸 수 있는 기능을 제공한다.
이 언어는 기술에 익숙하지 않은 일반 사용자도 쉽게 배워 활용할 수 있도록 고안되었으며, 위키 시스템의 개방성과 편집 용이성을 실현하는 데 기여한다.
2. 역사
2. 역사
WikiText는 2001년 위키백과가 시작되면서 그 문서를 작성하기 위해 자연스럽게 발전한 마크업 언어이다. 초기 위키 소프트웨어인 UseModWiki의 마크업 문법을 기반으로, 수많은 사용자들의 실용적인 편집 요구에 부응하며 점차 표준화된 형태를 갖추게 되었다. 이 언어는 복잡한 HTML을 직접 작성할 필요 없이 간단한 기호를 사용하여 서식을 적용할 수 있도록 설계되어, 기술적 지식이 없는 일반 사용자도 쉽게 콘텐츠를 기여할 수 있게 하는 데 핵심적인 역할을 했다.
위키백과의 성장과 함께 WikiText도 빠르게 진화했다. 사용자들은 링크, 표, 목록 생성 등 다양한 기능을 필요로 했고, 이를 구현하기 위한 새로운 문법이 지속적으로 제안되고 채택되었다. 이러한 과정은 주로 미디어위키 소프트웨어의 개발과 함께 진행되었으며, WikiText는 사실상 미디어위키의 기본 마크업 언어로 자리 잡게 되었다. 이후 위키미디어 공동체를 비롯한 전 세계의 많은 위키 사이트들이 이 문법을 표준으로 채택하며 널리 보급되었다.
시간이 지남에 따라 WikiText는 단순한 서식 언어를 넘어, 템플릿, 파일 포함, 수학 공식 표현 등 복잡한 문서 작성을 지원하는 풍부한 기능 세트를 갖추게 되었다. 이러한 발전은 전적으로 사용자 주도의 협업 편집 환경에서 비롯된 것으로, WikiText의 역사는 바로 위키 철학과 오픈 콘텐츠 운동의 실질적인 구현 역사이기도 하다.
3. 문법과 기능
3. 문법과 기능
3.1. 기본 서식
3.1. 기본 서식
3.2. 링크와 네비게이션
3.2. 링크와 네비게이션
위키텍스트의 핵심 기능 중 하나는 문서 간 연결을 가능하게 하는 링크 생성이다. 내부 링크는 대괄호 두 개([[ ]])를 사용하여 생성한다. 예를 들어 [[위키백과]]는 해당 문서로 연결되는 링크가 된다. 파이프 문자(|)를 사용하면 표시되는 텍스트를 다르게 지정할 수 있는데, [[위키백과|자유 백과사전]]은 "자유 백과사전"이라는 텍스트로 위키백과 문서에 연결된다.
외부 웹사이트로의 링크는 대괄호 한 개([ ])를 사용한다. URL과 함께 표시할 설명을 추가할 수 있으며, [https://example.com 예시 사이트]와 같이 작성한다. 이러한 링크 문법은 하이퍼텍스트 기반의 지식 네트워크를 구축하는 데 필수적이다.
네비게이션을 지원하기 위해 위키텍스트는 특수한 네임스페이스와 분류 기능을 제공한다. 문서를 [[분류:위키 소프트웨어]]와 같이 특정 분류에 포함시키면 관련 문서들을 체계적으로 묶고 탐색할 수 있다. 또한, {{위키프로젝트}}와 같은 틀을 사용하면 문서의 상태를 표시하거나 일관된 디자인 요소를 제공하여 사용자 경험을 향상시킨다.
3.3. 표와 목록
3.3. 표와 목록
WikiText에서 표를 작성할 때는 파이프(|)와 하이픈(-) 기호를 사용한다. 표의 시작과 끝은 파이프와 하이픈으로 이루어진 행으로 구분하며, 각 셀의 내용은 파이프 기호로 나눈다. 예를 들어, 간단한 2x2 표는 {|으로 시작하고 |}으로 끝나며, 헤더 셀은 ! 기호로 표시할 수 있다. 이러한 문법은 HTML 테이블을 생성하지만, 편집자는 복잡한 태그를 알 필요 없이 직관적으로 표를 만들 수 있다.
목록은 번호 없는 목록과 번호 있는 목록으로 나뉜다. 번호 없는 목록은 각 행 시작에 별표(*)를 붙여 작성하며, 들여쓰기를 위해 별표를 추가한다. 번호 있는 목록은 파운드 기호(#)를 사용하며, 동일한 방식으로 중첩이 가능하다. 정의 목록은 용어와 설명을 세미콜론(;)과 콜론(:)으로 구분하여 작성한다.
표와 목록은 함께 사용될 수 있어 정보를 체계적으로 정리하는 데 유용하다. 예를 들어, 제품 비교나 연혁을 나열할 때 표를 사용하고, 그 안에 항목별 세부 사항을 목록으로 포함시키는 것이 일반적이다. 이러한 기능은 미디어위키를 비롯한 대부분의 위키 엔진에서 지원하는 표준 문법에 속한다.
문법 요소 | 설명 | 예시 |
|---|---|---|
표 시작/종료 | `{ |
|
표 행 | 새 행은 파이프와 하이픈(` | -`)으로 시작 |
일반 셀 | 셀 내용은 파이프(` | `)로 구분 |
헤더 셀 | 셀 내용은 느낌표( |
|
번호 없는 목록 | 행 시작에 별표( |
|
번호 있는 목록 | 행 시작에 파운드( |
|
3.4. 특수 기능과 확장 문법
3.4. 특수 기능과 확장 문법
위키텍스트는 기본적인 서식과 링크 외에도 다양한 특수 기능과 확장 문법을 지원한다. 이러한 기능들은 문서의 구조를 풍부하게 하고, 복잡한 콘텐츠를 효과적으로 표현하는 데 사용된다.
주요 특수 기능으로는 템플릿과 파일 삽입이 있다. 템플릿은 특정한 서식이나 정보를 여러 문서에서 재사용할 수 있게 하는 강력한 도구이다. 예를 들어, 정보 상자나 주의 문구, 날짜 형식 등을 표준화하는 데 널리 쓰인다. 파일 삽입 기능을 통해 문서 내에 이미지, 동영상, 오디오 파일 등을 표시할 수 있으며, 크기나 정렬, 캡션을 지정하는 문법을 제공한다.
또한, 위키텍스트는 조건문, 변수, 파서 함수와 같은 확장 문법을 포함할 수 있다. 이는 미디어위키 엔진의 확장 기능에 의해 제공되며, 더 동적이고 복잡한 문서 작성을 가능하게 한다. 수학 공식을 표현하기 위한 TeX 표기법 지원, 문법 강조가 적용된 소스 코드 블록 삽입, 특정 문서 분류를 위한 분류 태그 등도 중요한 확장 요소에 속한다. 이러한 기능들은 위키텍스트를 단순한 마크업 언어를 넘어서는 유연한 문서 작성 도구로 만든다.
4. 주요 구현체
4. 주요 구현체
위키텍스트는 여러 위키 소프트웨어에서 각자의 방식으로 구현되었다. 가장 대표적인 구현체는 미디어위키로, 위키백과를 비롯한 수많은 위키 사이트에서 사용되는 엔진이다. 미디어위키의 위키텍스트 문법은 사실상의 표준으로 자리 잡았으며, 다양한 확장 기능을 통해 표, 수학 공식, 템플릿 등을 지원한다.
다른 위키 엔진들도 각자의 위키텍스트 문법을 채택하고 있다. 예를 들어, 모인모인은 간단한 문법을 사용하며, TWiki는 자체적인 서식 규칙을 가지고 있다. 티키 위키 CMS 그룹웨어와 같은 일부 플랫폼은 여러 종류의 위키 문법을 지원하기도 한다.
구현체 | 주요 특징 |
|---|---|
미디어위키 | 위키백과에서 사용, 풍부한 확장 기능과 템플릿 시스템 |
모인모인 | 가벼운 문법과 설치 용이성 |
TWiki | 엔터프라이즈용, 구조화된 워크플로 지원 |
티키 위키 CMS 그룹웨어 | 다중 문법 지원, 그룹웨어 기능 통합 |
이러한 다양한 구현체는 기본적인 서식과 링크 생성 개념은 공유하지만, 표 처리나 특수 기능에 있어서는 차이를 보인다. 이로 인해 한 위키 플랫폼에서 작성된 내용을 다른 플랫폼으로 옮길 때 문법 변환이 필요할 수 있다.
5. 장단점
5. 장단점
WikiText의 가장 큰 장점은 배우기 쉽고 사용하기 편리하다는 점이다. HTML과 같은 복잡한 마크업 언어에 비해 문법이 직관적이어서 기술에 익숙하지 않은 일반 사용자도 쉽게 문서를 작성하고 편집할 수 있다. 이는 위키백과와 같은 대규모 협업 프로젝트의 성공에 핵심적인 역할을 했다. 또한, 텍스트 기반이기 때문에 편집 도구가 간단하고, 문서 파일의 크기가 작으며, 버전 관리 시스템과의 호환성도 좋다.
반면, WikiText의 주요 단점은 구현체에 따른 문법의 불일치 문제이다. 미디어위키의 마크업과 다른 위키 엔진(예: 모인모인, 도쿠위키)의 마크업은 상당한 차이가 있어, 한 위키에서 익힌 지식이 다른 위키로 바로 이전되지 않는다. 또한, 고급 서식이나 복잡한 레이아웃을 표현하는 데 한계가 있으며, 표준화된 규격이 부재하다는 점도 문제로 지적된다.
장점 | 단점 |
|---|---|
배우기 쉽고 직관적 | 구현체별 문법 불일치 |
빠르고 가벼운 편집 | 복잡한 레이아웃 표현의 한계 |
협업과 버전 관리에 적합 | 공식 표준의 부재 |
다양한 미디어위키 확장 기능 활용 가능 | 초보자에게 특수 기능 문법이 다소 복잡할 수 있음 |
전반적으로 WikiText는 기술 장벽을 낮춰 누구나 쉽게 콘텐츠를 기여할 수 있게 함으로써 집단 지성 구축에 기여했지만, 그 단순함이 때로는 표현의 제약으로 작용하고, 분열된 생태계는 사용자에게 혼란을 줄 수 있다.
