Navigation

Writing

설계 문서 작성 기준. 문서는 for-humanity Markdown, pnpm docs:dev로 읽음. 문서별 정본은 Workflow 00.A절의 표. for-humanity 기능(frontmatter, Note, Details, 표, 흐름도)의 정본은 for-humanity Writing.

00 한눈에

절내용
01content/ 구성과 사이트 명령
02새 문서 추가 순서
03빈 틀
04짜임. 번호, 앵커, 가름
05문장
06Markdown 표기
07언어와 번역본
08한 사실은 한 곳에
09흐름도
10끝낼 때 확인

이 문서에 걸린 질문은 Open items.

파일

01 파일

공개 문서는 content/public/ 안에 보관. 묶음 하나 = 하위 폴더 하나, 폴더와 사이드바 묶음이 같음.

폴더묶음내용
working/How we work작업 순서, 문서 쓰는 법
scripting/Scripting스크립트 규칙, Razor 문법, 모듈 조립, 머리 위 알림
game/Game reference게임 규칙과 자료. PvP, 핫키, 아이템 번호
mechanics/Mechanics스킬 계열별 서버 규칙. 바딩, 네크로, 매저리
templates/Templates템플릿별 캐릭터 판단. 스킬, 코덱스 배분, 소환수 선택, PvP
loops/Loops루프 하나의 설계. 블록 순서, 설정 이유, 블록 설계
questions/Open questions아직 확인 못 한 것
경로역할
content/README.md사이트 홈(/). 저장소 목적 소개와 문서 링크. frontmatter 없음
content/public/공개 문서. 하위 폴더명 public은 페이지 URL에서 제외
content/private/로컬에서만 읽는 문서. 현재 없음, 필요할 때 생성
content/asset/favicon.svg사이트 아이콘. pnpm docs:build가 결과물에 덮어씀
for-humanity.config.ts저장소 루트의 SiteConfig 타입 설정. 포트(port), 언어(lang), 묶음 순서(navigation), 확인 알약 문구(status)
명령역할
pnpm docs:devlocalhost:4323/uoo/ 개발 서버. 수정 시 다시 그림
pnpm docs:buildcontent/dist/에 사이트 생성. frontmatter, 깨진 .md 링크, 부품 문법 검사
pnpm docs:previewlocalhost:4323/uoo/에서 생성한 사이트 띄우기
pnpm typecheckfor-humanity.config.ts의 설정 타입 검사
node util/check-docs.mjs끊긴 링크와 앵커, 번호 제목의 앵커 검사

공개 사이트: minu-ha.github.io/uoo. 배포 경로는 for-humanity.config.ts의 basePath, 도메인은 url에서 지정. GitHub 저장소의 Pages 소스는 GitHub Actions. master push 또는 Documentation 수동 실행 시 .github/workflows/docs.yml이 빌드 후 content/dist 전체 배포. 링크 검사는 빌드된 홈의 대표 주소에서 배포 경로 판별. 하위 경로 밖의 사이트 내부 링크는 오류.

쓰기

02 새 문서

  1. content/public/ 안의 맞는 묶음 폴더에 kebab-case .md 생성. 템플릿 문서는 templates/<템플릿>.md
  2. 03절 빈 틀에서 시작
  3. frontmatter
    • name: 영어 이름. 문서 제목과 사이드바 목록
    • label: 한글 설명. 사이드바 툴팁, 검색 결과와 링크 미리보기 설명
    • group: 폴더에 맞는 묶음(01절 표). 새 묶음이면 폴더 추가, for-humanity.config.ts의 navigation에 순서 추가
    • order: 묶음 안 순서. 10 단위
  4. 두 곳에 한 줄씩 추가
    • Workflow 00.A절 문서별 정본 표
    • AGENTS.md “언제 무엇을 읽나” 표. 읽을 일이 있는 문서만

03 빈 틀

---
name: {영어 이름}
label: {한글 이름}
group: {묶음}
order: {묶음 안 순서}
---

{이 문서의 범위 한두 줄. 여기 없는 것의 위치 링크}

## <a id="00"></a>00 한눈에

{절마다 내용을 적은 표}

::part[{가름}]

## <a id="01"></a>01 {절}

{본문}

### <a id="01.A"></a>01.A {소제목}

{본문}

04 짜임

05 문장

짧고 간결한 명사형. 한눈에 읽히는 글.

말뜻
루프핫키 하나로 켜 두는 메인 스크립트(script/combat/*, script/gather/*)
루틴핫키 하나로 한 번 돌고 끝나는 조립 스크립트(restock/loadout 등). 레시피에 # @ once
패스while not dead 한 바퀴
모듈, 블록module/ 파일 하나. 루프 안에서는 그 파일에서 온 코드 묶음 = 블록
레시피루프 하나의 모듈 구성과 설정을 적은 recipe/ 파일
템플릿캐릭터 스킬 구성(Bard Necro, Lumberjack PvP 등)
교전var__fighting 1. 사거리 안에 고른 적 있음
고치기 전고친 뒤
config/ 아래 파일은 게임을 끈 상태에서만 고친다. 클라이언트가 종료할 때 설정 파일을 통째로 덮어쓰기 때문이다.config/는 게임 종료 상태에서만 수정. 종료 시 클라이언트가 통째로 덮어씀
핫키로 돌리면 클라이언트를 껐다 켠다. 리로드로는 절대 안 된다.핫키 실행 → 클라이언트 재시작. 리로드로는 반영 불가
회복·실패·재시도 분기회복, 실패, 재시도 분기

06 Markdown

07 언어와 번역본

08 한 사실은 한 곳에

09 흐름도

확인

10 끝낼 때 확인