주의: 이 번역은 원문보다 오래되었습니다.

데비안 웹 페이지 작업 방법

일반 정보

자원 요구사항

웹 사이트에서 작업하려면, 적어도 250MB 데이터를 저장할 디스크를 준비하세요. 이것은 현재 소스 아카이브 크기를 반영합니다. 만약 실수로 모든 페이지를 다시 만들면, 적어도 두 배 공간이 필요할 겁니다. 부분 체크아웃하면, 더 작은 공간(예를 들어 영어 50MB)이 필요할 겁니다.

부분 체크아웃

많은 사람들이 전체 webwml 트리를 체크아웃 할 필요 없고, 중요한 파일이 추가되고 디렉터리에 전체 git pull하지 않으면, 때로 파일이 빠지고 빌드가 깨질 수 있습니다. 필요한 모든 파일(.wmlrc 파일 같은)을 갖고 있는지 우리에게 불평하기 전에 점검하세요.

`#'로 시작하는 줄은 무엇인가요?

WML에서, `#'로 시작하는 줄은 주석입니다. 그들은 마지막 페이지에 보이지 않으므로 보통 HTML 주석보다 선호됩니다.

WML에 대한 더 많은 정보를 위해서는 using WML를 읽어보세요.

편집자를 위한 에티켓

이 페이지를 변경할 수 있나요?

그때 그때 달라요. 작은 실수를 만나면, 예를 들어 오타, 그걸 바로잡으세요.

약간의 정보가 빠졌다면, 그것도 자유롭게 수정하세요.

만약 무언가 끔찍해서 새로 쓸 필요가 있다면, debian-www로 가져와서 토론하세요. 우리는 여러분에게 동의할 겁니다.

템플릿에 문제가 있음을 발견하면(예를 들어 webwml/english/template/debian 디렉터리에 있는 파일), 커밋 전에 변화에 대해 생각해야 하는데, 왜냐면 템플릿 변화는 사이트의 큰 부분이 다시 빌드되기 때문입니다.

새 디렉터리를 추가하면, Makefile도 추가하세요!

새 디렉터리를 git에 추가할 때는 주의해야 합니다. 현재 디렉터리가 ../Makefile에 있다면 반드시 그 안에 Makefile을 들어야 합니다.— 그러지 않으면 make는 에러 메시지를 낼 겁니다.

명확하고 간단한 영어 쓰기

데비안 웹 페이지는 영어가 모국어 아닌 사람들이 읽고 번역하므로, 명확하고 간단한 영어를 쓰는 게 좋으며, 속어, 이모티콘, 모호한 숙어를 쓰지 마세요.

이 중 하나를 한다면, 그 뜻을 설명하는 파일에 주석을 추가하세요.

의심되거나, 제안을 교정하려면, 영어 현지 팀에 문의 하세요.

README를 찾으세요

어떤 디렉터리는 README를 포함해서 어떻게 디렉터리가 구성되었는지 이해하는 것을 돕습니다. 그것은 그 영역에서 일 할 때 필요한 정보를 제공해야 합니다.

내용의 변화와 형식의 변화를 나누세요

언제나 내용 변화와 형식 변화를 나누어서 패치 또는 커밋 하세요. 그들이 섞이면, 번역자가 차이를 찾기 매우 어려워집니다. 그런 섞인 변화로 git diff -u하면, 여러분 스스로 어지러울 겁니다.

일반적으로, 임의의 형식 변경을 피하세요. XHTML/XML에 맞지 않는 오래된 페이지는 다른 변화와 함께 커밋 되면 안 됩니다. (물론, 새로운 것은 처음부터 제대로 할 수 있어야 합니다.)

가능하면 번역도 업데이트 하세요.

어떤 변경은 WML 파일에 쓰인 언어에 독립적, URL 또는 내장된 Perl 코드에 내장된 Perl 코드 같은 것. 같은 카테고리 오타를 수정하면 또 실패하는데, 왜냐면 번역자는 번역하는 동안 대개 그것을 무시하기 때문입니다. 그런 언어독립적인 변화로, 다른 언어로 모르더라도 같은 변화를 모든 번역파일에 하고, translation-check 헤더 안의 버전을 안전하게 올릴 수 있습니다.

번역자 스스로 같은 일을 하는 것은 그들에게 심각히 어려운 것은 아니며, 작업할 모든 체크아웃을 영어를 쓰는 편집자에게 하는 것을 블편할 수 있습니다. 그러나, 우리는 사람들이 그것을 할 것을 장려하는데 한 사람이 할 수 있는 무언가를 위해 수십명을 괴롭히는 것을 피하기 위함입니다.

게다가, 그런 변화를 적용하는 것은 쉬운데, smart_change.pl 스크립트를 webwml 최상위 수준에서 쓰면 됩니다.

링크

이 링크가 제대로 안 보입니다. 내가 그걸 수정해야 하나요?

웹 서버가 설정되는 방법 때문에 (content negotiation 사용), 내부 링크의 어느 변화도 필요치 않습니다. 사실은 그러지 않기를 제안합니다. 링크가 틀린 것으로 느껴지면 그것을 수정하기 전에 debian-www에 쓰세요.

링크 수정하기

외부 웹 사이트로의 링크가 (301, 302, <meta> 리디렉트, 또는 이 페이지는 옮겨졌습니다.)라고 하면 debian-www에 알려주세요.

깨진 링크 (404, 403, 또는 링크가 말하는 것과 다른 페이지)를 찾으면, 그것을 수정하고 debian-www에 번역가가 알고 있는대로 얘기하세요. 더 좋은 것은, 가능하다면 다른 모든 번역에서 링크를 수정하고, translation-check를 업데이트하는 겁니다.

텍스트를 데이터에서 분리

foo.def 그리고 foo.data 파일은 무엇인가요?

To make it easier to keep the translations up to date, we separate the generic parts (data) from the textual parts (text) of some pages. The translators only need to copy and translate the textual parts of those, the generic parts will be added automatically.

An example may help in understanding this. It takes several files to generate the page of vendor listings in CD/vendors:

index.wml:
The text at the top of the vendors page is in this file. A translated copy of this should be placed in each language directory.
vendors.CD.def:
This contains all the pieces of text which are needed for each vendor entry. Translations are added via <language>/po/vendors.xy.po.
vendors.CD:
This file contains the actual vendor entries which are independent on the language, so a translator doesn't need to touch this file.

When one of the people behind cdvendors@debian.org adds a new vendor, they add it to debiancd.db, convert it into WML format as vendors.CD (using getvendors.pl), and then let WML and the makefiles do their magic. All the translations get rebuilt using the existing translated text but with the new vendor data. (An updated translation for free!)

새 페이지 추가하기

데비안에 새 페이지를 추가하는 것은 꽤 쉽습니다. header 및 footer를 바르게 얻는 것은 모두 WML을 쓰면 됩니다. 여러분이 할 모든 것은 새 파일을 꼭대기에 아래와 같은 행을 포함하는 겁니다.:

#use wml::debian::template title="TITLE OF PAGE"

followed by the body. All pages should use the wml::debian::template template file unless they are using a special one created just for that section, e.g. the News or security items.

The templates we have allow you to define certain variables which will affect the pages created. This should avoid having to create different templates for every situation and allow improvements to be easier to implement. The variables currently available and their purpose are:

BARETITLE="true"
Removes the "Debian --" part that is usually prepended to all the <title> tags.
NOHEADER="true"
Removes the initial header from the page. A custom header can, of course, be included in the body.
NOMIRRORS="true"
Removes the mirror dropdown list from the page. It is generally not recommended to be used, except for a handful of pages.
NOHOMELINK="true"
Removes the link back to the main Debian page, which is normally added to the bottom of the page.
NOLANGUAGES="true"
Removes the links to versions in other languages, which are normally added to the bottom of the page.
GEN_TIME="true"
Sets the date on the resulting files to the timestamp of the generated files, instead of the timestamp of the source file.
NOCOPYRIGHT="true"
Removes the copyright notice at the bottom of the page.

Note that you can use any string as the value of these variables, true, yes, foo, it doesn't matter.

An example of the use of this is in the ports pages which have their own headers. ports/arm/index.wml uses:

#use wml::debian::template title="ARM Port" NOHEADER="yes"

If you want to do something that can't be done using the existing templates, first consider extending one of them. If it isn't possible to extend one in a backward compatible way, try to make the new template a superset of an existing one so the pages can be converted to it at the next major upgrade (hopefully never more than every 6 months).

If you are creating a page that is generated by a script or has little prose, consider using the <gettext> tags to ease the task of keeping translations up to date.

다른 파일 포함

If you want to separate some parts of your page into a distinct file (which is then included by your main file) use the extension .src if your file contains content which should be translated because then your included file is tracked for changes as any ordinary .wml file. If you use any other extension, like .inc, translators will not notice your updates and different languages might ship different content.

새 디렉터리 추가하기

주의: install이름의 디렉터리를 만들지 마세요. 그것은 make를 헷갈리게 하고 디렉터리 안의 페이지는 자동 업데이트가 안 될 겁니다.

아래는 웹 사이트에 디렉터리를 추가하는 예를 설명입니다.

   mkdir foo
   git add foo
   cd foo
   cp ../intro/Makefile .
   git add Makefile

상위 디렉터리 안의 Makefile을 편집하고 방금 만든 디렉터리를 SUBS 변수에 추가하세요. 이러면 make가 돌 때 디렉터리가 빌드에 추가됩니다.

마지막으로, 저장소에 만들어진 모든 변화를 커밋하세요

   git commit Makefile foo