# Format file Word cho tool import EMS

Cách dùng trang import: [import-word-to-ems-huong-dan.md](import-word-to-ems-huong-dan.md).

Chọn đúng luồng trên trang. Cùng một file Word không dùng được cho cả ba luồng.

## Quy tắc đáp án dùng chung cho Close-end

Đáp án đúng là chữ màu đỏ `#FF0000`.

- Cả đoạn phải đỏ thì mới được nhận là đáp án. Một đoạn vừa chữ đen vừa chữ đỏ thì đoạn đó không được đánh dấu đáp án.
- Trong ô của bảng, từng cụm chữ được xét riêng. Cụm đỏ là đáp án, cụm đen không phải.
- Không bịa đáp án. Câu không có chữ đỏ thì không có đáp án.
- Chỗ trống: một dãy hơn 3 dấu `_` được đổi thành ` ___ ` (dấu cách, ba gạch dưới, dấu cách). Đúng ba gạch dưới được giữ nguyên.
- Nhiều đáp án đúng của cùng một chỗ trống viết cách nhau bởi ` / `. Ví dụ `flying kites / flying a kite` thành hai đáp án. `nine o'clock / 9 o'clock / nine / 9` thành bốn đáp án.
- `quiz_type` chưa có cấu trúc sẽ bị bỏ qua, không gửi EMS. Đã có: 0, 1, 2, 4, 6, 7, 12, 13, 14. Chưa có: 3, 5, 8, 9, 10, 11, 15, 16, 18, 19.

## Luồng Close-end

Dùng style Heading của Word. Một đoạn thường viết chữ "Part 1" không được tính là heading.

**Lesson** là Heading 1 `LESSON N` hoặc `Practice Test N`. `LESSON 1` và `Lesson1` đều được nhận. Lesson không bắt buộc. Có lesson thì mỗi lesson một đề thành phần và một cuộc thi, hình thức exercise. Không có Heading 1 này thì cả file gom một đề và một cuộc thi, tên chỉ là tên folder.

### Khung bài

```text
Heading 1    LESSON 1
Heading 2    Exercise 1. ...
             Dạng bài: quiz_type_N
             nội dung câu hỏi và đáp án
Heading 2    Exercise 2. ...
             Dạng bài: quiz_type_N
             ...
Heading 1    LESSON 2
Heading 2    Exercise 1. ...
             Dạng bài: quiz_type_N
             ...
```

`Practice Test 1` viết bằng Heading 1 cũng là một lesson, dùng thay cho `LESSON 1` khi file theo kiểu đề IELTS.

- Tên question lấy phần ngắn của exercise, ví dụ `Exercise 7`. Nội dung câu vẫn giữ nguyên heading đầy đủ.
- Mỗi exercise một question. Các question trong một lesson vào một đề. Mỗi lesson một cuộc thi.

### Dạng câu và cách ghi đáp án

Ghi đúng một dòng `Dạng bài: quiz_type_N` ngay trong exercise. Số N quyết định cấu trúc, tool không tự chọn loại khác.

| Dòng trong Word | EMS | Đáp án |
| --- | --- | --- |
| `quiz_type_0` | Tự luận | Cả đoạn bài mẫu tô đỏ đưa vào solution |
| `quiz_type_1` | Một đáp án | Đúng một phương án tô đỏ |
| `quiz_type_2` | Nhiều đáp án | Mọi phương án đúng đều tô đỏ. Lời giải đưa vào solution khi là bảng có ô đầu `Solution` |
| `quiz_type_4` | Trả lời ngắn | Đáp án đỏ. Nhiều đáp án thì cách nhau bởi ` / ` |
| `quiz_type_7` | Điền vào chỗ trống | Mỗi chỗ ` ___ ` một đáp án đỏ, theo thứ tự |
| `quiz_type_12` | Kéo thả | Chỗ trống ` ___ `, đáp án đỏ, kèm ngân hàng từ |
| `quiz_type_13` | Nói, không chấm theo bài mẫu | Đáp án gợi ý màu đỏ không được đưa vào solution. Solution để trống |
| `quiz_type_14` | Dropdown | Các lựa chọn A/B/C dùng chung, mỗi chỗ trống một đáp án đỏ |

Với `quiz_type_14`, cặp viết bằng dấu gạch chéo như `However/Although` mà `Although` tô đỏ được hiểu là chỗ trống, hai lựa chọn, và `Although` là đáp án đúng.

Bảng trong Word được giữ thành bảng HTML.

Lời giải của `quiz_type_2` cần là một bảng, ô đầu tiên là chữ `Solution`. Bảng đó được đưa vào solution.

**Chú ý: Một đoạn văn thường ghi Solution rồi đến lời giải không được tách ra. Đoạn đó nằm trong nội dung câu hỏi.**

```text
Heading 1    LESSON 1
Heading 2    Exercise 3. Questions 1-3
             Dạng bài: quiz_type_2
             A. option
             B. option          ← tô đỏ nếu đúng
             C. option          ← tô đỏ nếu đúng
             [bảng]
             Solution | No. | Key
                      | 1   | A, C
                      | 2   | B
```

### Bài đọc, quiz_type 6

Heading 2 bắt đầu bằng `Reading Passage` hoặc `Part` thì cả khối đó là một bài đọc, câu cha `quiz_type 6`. `Reading Passage 1` và `Part 1` đều khớp. `Exercise 1` không phải bài đọc.

Trong bài đọc, dòng `Dạng bài: quiz_type_N` không tách thành question mới. Nó đánh dấu nhóm câu con.

Có ba kiểu. Tool tự nhận và chỉ đi một nhánh.

**1. Bài đọc thông thường**

Dùng khi không khớp hai kiểu đặc biệt bên dưới. Đoạn văn nằm ở câu cha. Nhóm câu hỏi nằm ở câu con theo `Dạng bài` bên trong. Heading 1 `Practice Test 1` trong ví dụ là lesson.

```text
Heading 1    Practice Test 1
Heading 2    Reading Passage 1
             đoạn văn
             Dạng bài: quiz_type_14
             Questions 1-4
             A. ...
             B. ...
             1. câu hỏi
             2. câu hỏi
             Key tô đỏ: 1. B  2. A
             Dạng bài: quiz_type_7
             Questions 5-8
             5. câu ___ 
             Key tô đỏ
```

- `quiz_type_14`: câu con giữ đề bài và các lựa chọn. Mỗi số là một câu cháu, đúng một đáp án đỏ.
- `quiz_type_1` trong bài đọc cũng thành một nhóm dropdown, nhưng mỗi số có bộ A/B/C/D riêng.
- `quiz_type_7`: câu con là đoạn điền. Mỗi chỗ trống một câu cháu, `listKeyword` là đáp án đỏ.
- `quiz_type_2`: mọi phương án đỏ đều đúng. Bảng có ô đầu là `Solution` được đưa vào solution, cùng kiểu với ví dụ ở trên.
- Dòng đáp án kiểu `21. I 22. H` chỉ để lấy đáp án, không chép vào nội dung câu.

**2. Bài đọc đáp án là hình**

Nhận khi trong một bảng có dòng `Dạng bài: quiz_type_1` và các ô là ảnh. Heading 1 `Practice Test 1` là lesson.

```text
Heading 1    Practice Test 1
Heading 2    Reading Passage 1: Listen and choose the correct answer.
             [bảng]
             1. What was the matter with Tom yesterday?    Dạng bài: quiz_type_1
             A [ảnh]     B [ảnh]     C [ảnh đỏ]
             2. Which man is Lily's dad?                  Dạng bài: quiz_type_1
             A [ảnh]     B [ảnh]     C [ảnh đỏ]
```

- Câu cha `quiz_type 6`, chỉ giữ dòng heading.
- Mỗi câu là câu con `quiz_type 1`, `answer_type` = 1.
- Mỗi ảnh là một đáp án, `answer_content` để trống, link ảnh nằm ở `answer_url_image`.
- Chữ cái tô đỏ là đáp án đúng. Mỗi câu phải có ít nhất hai ảnh và đúng một chữ đỏ.

**3. Bài đọc kể chuyện, điền từ**

Nhận khi trong bài đọc có đúng một dòng `Dạng bài: quiz_type_7`, có ảnh đứng riêng giữa các đoạn, và có đoạn đỏ đúng chữ `Key`. Heading 1 `Practice Test 1` là lesson.

```text
Heading 1    Practice Test 1
Heading 2    Reading Passage 1: Look at the pictures and read the story.
             Dạng bài: quiz_type_7
             Meera's Saturday
             [ảnh 1]
             đoạn truyện
             Examples:
             0. Meera lives in a block of flats in the city.
             Questions:
             1. They go up in the ___.
             2. On Saturdays, Meera ___ at eight o'clock.
             [ảnh 2]
             đoạn truyện
             Questions
             3. ...
             [ảnh 3]
             ...
             Key                         ← cả đoạn màu đỏ
             1. lift                     ← cả đoạn màu đỏ
             2. gets up
             5. flying kites / flying a kite
             7. nine o'clock / 9 o'clock / nine / 9
```

- Câu cha `quiz_type 6`, `answer_type` = 0, chỉ giữ dòng hướng dẫn.
- Mỗi ảnh là một câu con `quiz_type 7`. Ảnh, đoạn truyện và các câu hỏi của ảnh đó nằm trong câu con. Câu ví dụ số 0 nằm trong nội dung, không chấm điểm.
- Mỗi chỗ trống là một câu `quiz_type 4`, `answer_type` = 0.
- Đáp án lấy từ `Key`. Một dòng một số. Nhiều đáp án đúng cách nhau bởi ` / `, tất cả đều được nhận, `isExact` = true.

## Luồng Writing task 1 + Writing task 2

Không dùng Heading 1 / Heading 2 của luồng Close-end. Viết bằng đoạn văn thường. Ở luồng này, lesson là đoạn `Practice Test N`. Có lesson thì mỗi Practice Test một cuộc thi. Không có dòng `Practice Test N` thì các task gom về `Practice Test 1`.

```text
Practice Test 1
Writing Task 1
Easy IELTS - Task 1 - 20
đề bài, có thể kèm ảnh và bảng
đoạn bài mẫu tô đỏ cả đoạn

Writing Task 2
Easy IELTS - Task 2 - 21
đề bài
đoạn bài mẫu tô đỏ cả đoạn

Practice Test 2
Writing Task 1
...
```

- Dòng `Easy IELTS - Task 1 - 20` gắn prompt 8. Dòng `Easy IELTS - Task 2 - 21` gắn prompt 9. Phải đúng từng chữ trong danh sách prompt.
- Bài mẫu là các đoạn tô đỏ cả đoạn.
- Mỗi Practice Test một cuộc thi. Task 1 và Task 2 là hai đề, Task 1 đứng trước.
- Chọn luồng này trên một file Heading 1 / Heading 2 thì không ra câu nào.

## Luồng Vocabulary + Writing

```text
Heading 1    LESSON 1
Heading 2    Exercise 1. ...
             Dạng bài: quiz_type_N
             câu hỏi và đáp án đỏ
Heading 2    Exercise 2. ...
Heading 2    C. Writing
Heading 3    Exercise 6. You should spend about 20 minutes on this task
             Easy IELTS - Task 1 - 20
             bảng đề bài
             bảng có ô đầu tiên bắt đầu bằng "Model answer"
Heading 3    Exercise 7. ...
             Easy IELTS - Task 2 - 21
             ...
Heading 1    LESSON 2
             ...
```

- Heading 1 `LESSON N` là lesson. Không bắt buộc. Có lesson thì mỗi lesson hai đề và một cuộc thi. Không có lesson thì cả file gom một cặp đề, tên chỉ là tên folder.
- Heading 2 `Exercise N` là câu Close-end theo `Dạng bài`.
- Heading 2 hoặc Heading 1 có chữ `writing` hoặc `writting`, và không phải `Exercise N`, mở phần viết.
- Exercise trong phần viết phải là **Heading 3**. Heading 2 sẽ bị coi là câu thường và bị đưa vào đề từ vựng.
- Phần viết là `quiz_type 0`. Dòng `Easy IELTS - Task 1 - 20` hoặc `Easy IELTS - Task 2 - 21` chọn prompt. Bảng có ô đầu bắt đầu bằng `Model answer` là bài mẫu.
- Tên folder có chữ `vocal-write` không được hiểu là kỹ năng writing.
