Citoid가 사용 가능합니다

최근 편집: 2021년 5월 15일 (토) 16:54
.
낙엽1124

5월 15일 업데이트로 미디어위키의 참고 문헌을 위한 확장 기능인 Citoid가 시험적으로 설치되었습니다.[1] 이제부터 문서에 출처를 넣을 때 각 틀 변수를 일일이 입력하지 않고 URL만 입력하면 {{인용}} 틀을 사용한 출처를 추가할 수 있습니다.

위키백과에서 출처를 넣는 모습.

Citoid는 동음이의어로 미디어위키의 확장 기능과 노드 서비스를 동시에 뜻합니다. 설치 안내서는 각 위키에서 Citoid 서비스를 직접 실행하고 또 확장 기능을 설치하도록 안내하지만 이번 업데이트는 확장 기능만을 설치하고 서비스는 한국어 위키백과의 것을 사용하도록 설정하였습니다. 이 설정이 안정적인지 확실하지 않기 때문에 시험적이라고 표현하였습니다.

아래는 다른 위키에서 참고할 수 있도록 Citoid 확장 기능의 설치 과정을 적었습니다. 일반 사용자의 경우 읽지 않아도 무방합니다.

Citoid 확장 기능 설치 및 설정하기

아래 내용은 페미위키에서 필요했던 내용만을 간략히 다룹니다. 전체적인 가이드는 공식 문서를 참고하세요.

Citoid의 참고 문헌 처리 과정

URL만을 가지고 Citoid를 통해 참고 문헌을 추가할 때는 다음 일이 일어납니다(간략화된 버전입니다).

  1. 사용자에게 전달받은 URL을 Citoid 노드 서비스(혹은 Citoid를 업스트림으로 갖고 있는 RESTBase 노드 서비스)의 API에 전달하여 필요한 정보들을 얻어 옵니다. 예를 들어 해당 URL이 나타내는 참고 문헌의 종류, 제목, 저자, 언어 등입니다.
  2. 위키의 관리자가 미리 설정한 Citoid-template-type-map을 참고하여 해당 참고 문헌을 나타내려면 어떤 틀을 사용하여야 하는지를 확인합니다. 이는 위키에 어떠한 참고 문헌을 인용할 때, 예를 들어 {{서적 인용}}이나 {{뉴스 인용}} 등과 같이 여러 종류의 틀을 사용하기 때문에 필요한 과정입니다.
  3. TemplateData 확장 기능이 제공하는 API를 호출해 해당 틀에서 Citoid를 위해 제공되는 매핑 데이터를 불러옵니다.
  4. 참고 문헌의 정보와 인용 틀 매핑 데이터를 이용해 틀 호출 위키텍스트({{뉴스 인용|제목=…|뉴스=…}}와 같은 것)를 생성합니다.
  5. 생성된 위키텍스트를 시각 편집기 API에 전달해 HTML 파싱 결과를 받아옵니다.
  6. HTML을 시각편집기에 추가합니다.

Citoid 설정에 문제가 있을 때는 위 과정 중 어느 것이 실패했는지를 확인해 주세요.

Citoid 확장 기능 설치

설치는 다른 확장 기능과 동일하게, 소스 코드를 미디어위키가 설치된 디렉토리 안 extensions/Citoid에 저장하고 LocalSettings.php에 코드를 추가하는 것으로 가능합니다.

wfLoadExtension( 'Citoid' );
$wgCitoidFullRestbaseURL = 'https://ko.wikipedia.org/api/rest_';

위 설정은 한국어 위키백과의 REST API를 사용하도록 Citoid를 설정하는 예를 보여줍니다.

또 Citoid는 명시되지 않은 의존성이 있음에 주의하세요. 다음은 필요한 것으로 생각되는 확장 기능의 목록입니다.

  • VisualEditor
  • TemplateData

페미위키의 경우 이미 위 확장 기능을 모두 사용하고 있어서 별도 작업은 없었습니다.

Citoid-template-type-map.json 설정하기

위키의 미디어위키:Citoid-template-type-map.json 문서를 편집해 참고 문헌의 종류에 따라 어떤 틀을 호출할지를 설정합니다.

  • 각 키는 참고 문헌의 종류를, 값은 해당 참고 문헌에 사용할 틀의 이름을 나타냅니다.
  • 미디어위키 이름공간에 대한 편집 권한이 있어야 수정이 가능합니다.
  • 적어 넣은 인용 틀들이 실제로 위키에 존재하고 잘 작동하는지 확인해주세요.

페미위키의 경우 한국어 위키백과와 영어 위키백과의 값들을 참고하여 작성했습니다.

TemplateData의 map 설정하기

참고 문헌의 각 정보들이 인용 틀의 어떤 틀 변수에 매칭되는지 설정하는 작업입니다. TemplateData에 대한 사전 지식이 필요합니다.

편집은 각 인용 틀들의 TemplateData에 maps.citoid로 맵을 추가하면 됩니다. 페미위키의 경우 한국어 위키백과의 값을 그대로 복사했습니다.

잘 되는지 확인하기

편집을 통해 참고 문헌을 인용해서 문제가 없는 것을 확인하는 것으로 작업이 끝납니다.

링크

출처

  1. “Citoid 도입 · Issue #61 · femiwiki/femiwiki”. 2021년 5월 14일에 확인함.