diff --git a/README.md b/README.md index e465dfc..f20d6c1 100644 --- a/README.md +++ b/README.md @@ -11,9 +11,10 @@ |---|---|---|---| | 러시아 문학 | `/russian.html` | 9 × 9 · 40칸 | 13 | | 영국 문학 | `/british.html` | 9 × 9 · 39칸 | 12 | +| 독일 문학 | `/german.html` | 9 × 9 · 41칸 | 14 | 각 페이지는 단독으로 열어도 동작한다. 셸(`/`)의 탭은 해시로 상태를 남기므로 -`/#russian`, `/#british` 로 바로 들어갈 수 있고, 탭을 다시 눌러도 풀던 내용은 유지된다. +`/#russian`, `/#british`, `/#german` 으로 바로 들어갈 수 있고, 탭을 다시 눌러도 풀던 내용은 유지된다. ## 구성 @@ -22,8 +23,9 @@ | `site/index.html` | 셸 — 왼쪽 탭(좁은 화면에서는 위쪽 탭) + 게임을 띄우는 iframe | | `site/russian.html` | 러시아 문학 편 (머리말 + 퍼즐 데이터) | | `site/british.html` | 영국 문학 편 (머리말 + 퍼즐 데이터) | -| `site/assets/crossword.css` | 두 편이 공유하는 화면 양식 | -| `site/assets/crossword.js` | 두 편이 공유하는 게임 엔진 (한글 IME 입력, 검사/힌트/타이머) | +| `site/german.html` | 독일 문학 편 (머리말 + 퍼즐 데이터) | +| `site/assets/crossword.css` | 각 편이 공유하는 화면 양식 | +| `site/assets/crossword.js` | 각 편이 공유하는 게임 엔진 (한글 IME 입력, 검사/힌트/타이머) | | `nginx/default.conf` | nginx 설정 (8080 리슨, `/healthz` 헬스체크) | | `Dockerfile` | nginx:1.27-alpine 정적 서빙 이미지 | | `k8s/deployment.yaml` | Deployment + NodePort Service (31380) | @@ -50,6 +52,9 @@ nginx 로 파일만 내려주면 끝. 등록돼 있어야 한다.** 우연히 생긴 두 글자 구간이 남아 있으면 그 칸을 채워도 완료 판정이 나지 않는 것처럼 보이므로, 격자를 새로 짜면 이 조건을 먼저 확인한다. +단서를 쓸 때는 **다른 항목의 정답을 단서 안에 그대로 적지 않는다.** 서로가 서로를 +알려 주면 두 칸이 한꺼번에 풀려 버린다. + ## 배포 Jenkins 잡(`crossword`)을 돌리면 아래가 순서대로 진행된다. diff --git a/site/german.html b/site/german.html new file mode 100644 index 0000000..60b5447 --- /dev/null +++ b/site/german.html @@ -0,0 +1,74 @@ + + + + + +가로세로 낱말풀이 · 독일 문학 + + + + + + +
+
+
Deutsche Literatur · 9 × 9
+

독일 문학가로세로 낱말풀이

+
+
00:00경과 시간
+
0/41채운 칸
+
+
+ +
+
+
+ – + 가로 + 칸을 눌러 시작하세요. +
+ +
+
+ +
+ +
+ + + + + +
+ +

+ 같은 칸을 한 번 더 누르면 가로 ↔ 세로가 바뀌고, 오른쪽 단서도 그에 맞춰 바뀝니다.
+ 화살표 이동 · Space 방향 전환 · Tab 다음 단어 · Backspace 지우고 뒤로 +

+
+ + +
+
+ + + + + + + diff --git a/site/index.html b/site/index.html index 78b93a4..166eb77 100644 --- a/site/index.html +++ b/site/index.html @@ -101,6 +101,12 @@ body{ .nav a .og{display:none} .rail-foot{display:none} } +/* 아주 좁은 화면: 탭이 셋 이상이면 상표를 접고 탭에 폭을 몰아 준다 */ +@media (max-width:560px){ + .brand{display:none} + .nav a{padding:10px 6px} + .nav a .kr{font-size:13px} +} @media (prefers-reduced-motion:reduce){ *{animation:none !important;transition:none !important} } @@ -124,6 +130,10 @@ body{ 영국 문학 British literature + + 독일 문학 + Deutsche Literatur +
@@ -140,7 +150,8 @@ body{ var PAGES = { russian: {file:'russian.html', name:'러시아 문학'}, - british: {file:'british.html', name:'영국 문학'} + british: {file:'british.html', name:'영국 문학'}, + german: {file:'german.html', name:'독일 문학'} }; var DEFAULT = 'russian';