Skip to content

Commit f4b59d4

Browse files
committed
translate docs to Vietnamese
1 parent c323abe commit f4b59d4

36 files changed

Lines changed: 4329 additions & 2149 deletions

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
# VNOJ Documentation
1+
# LCOJ Documentation
22

3-
Documentation for the [VNOJ](https://github.com/VNOI-Admin/OJ) system.
3+
Tài liệu hướng dẫn cho hệ thống [LCOJ](https://github.com/luyencode/OJ).
44

5-
VNOJ is based on [DMOJ](https://github.com/DMOJ/online-judge) and serves as the official online judge of [VNOI](https://vnoi.info/).
5+
LCOJ được phát triển dựa trên [DMOJ](https://github.com/DMOJ/online-judge) [VNOJ](https://github.com/VNOI-Admin/OJ).
66

7-
Access the documentation at <https://vnoi-admin.github.io/vnoj-docs>.
7+
Truy cập tài liệu tại <https://luyencode.github.io/docs>.

docs/README.md

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,16 @@
1-
# VNOJ: Modern Online Judge
1+
# LCOJ: Hệ thống chấm bài trực tuyến
22

3-
This documentation aims to guide you through installing your own VNOJ instance.
3+
Tài liệu này hướng dẫn bạn cài đặt và sử dụng hệ thống LCOJ.
44

5-
Feel free to reach out to us on [Discord](https://discord.gg/TDyYVyd) if you have any questions.
5+
LCOJ được phát triển dựa trên [DMOJ](https://github.com/DMOJ)[VNOJ](https://github.com/VNOI-Admin).
6+
7+
## Nội dung
8+
9+
- **Hệ thống Judge** - Hướng dẫn cài đặt và cấu hình judge
10+
- **Hệ thống Website** - Cài đặt, quản lý và cấu hình website
11+
- **Định dạng bài tập** - Cách tạo và cấu hình bài tập
12+
- **Ví dụ bài tập** - Các ví dụ thực tế trong thư mục [problem_examples](https://github.com/luyencode/docs/tree/master/problem_examples)
13+
14+
## Hỗ trợ
15+
16+
Nếu có thắc mắc, vui lòng tạo issue tại [GitHub Issues](https://github.com/luyencode/lcoj-docker/issues).

docs/_sidebar.md

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
1-
- Site
2-
- [Installing the site](site/installation.md)
3-
- [Updating the site](site/updating.md)
4-
- [Contest formats](site/contest_formats.md)
5-
- [Permission system](site/permission_system.md)
6-
- [Managing problems through the site interface](site/managing_problems.md)
7-
- [Rendering LaTeX math in problem statements](site/mathoid.md)
8-
- [Rendering LaTeX diagrams in problem statements](site/texoid.md)
9-
- [PDF generation of problem statements](site/pdfoid.md)
10-
- [reCAPTCHA spam registration prevention](site/recaptcha.md)
11-
- [SSL proxying for user content](site/ssl_content_proxy.md)
12-
- [User data downloads](site/user_data_download.md)
13-
- [Contest data downloads](site/contest_data_download.md)
1+
- Hệ thống Website
2+
- [Cài đặt website](site/installation.md)
3+
- [Cập nhật website](site/updating.md)
4+
- [Các định dạng kỳ thi](site/contest_formats.md)
5+
- [Hệ thống phân quyền](site/permission_system.md)
6+
- [Quản lý bài tập](site/managing_problems.md)
7+
- [Hiển thị công thức toán học LaTeX](site/mathoid.md)
8+
- [Hiển thị sơ đồ LaTeX](site/texoid.md)
9+
- [Tạo file PDF cho đề bài](site/pdfoid.md)
10+
- [Chống spam với reCAPTCHA](site/recaptcha.md)
11+
- [SSL proxy cho nội dung người dùng](site/ssl_content_proxy.md)
12+
- [Tải dữ liệu người dùng](site/user_data_download.md)
13+
- [Tải dữ liệu kỳ thi](site/contest_data_download.md)
1414
- [API](site/api.md)
1515

16-
- Judge
17-
- [Setting up a judge](judge/setting_up_a_judge.md)
18-
- [Configuring a judge](judge/judge_configuration.md)
19-
- [Supported languages](judge/supported_languages.md)
20-
- [Status codes](judge/status_codes.md)
16+
- Hệ thống Judge
17+
- [Cài đặt judge](judge/setting_up_a_judge.md)
18+
- [Cấu hình judge](judge/judge_configuration.md)
19+
- [Các ngôn ngữ được hỗ trợ](judge/supported_languages.md)
20+
- [Các mã trạng thái](judge/status_codes.md)
2121

22-
- Problem file format
23-
- [Problem format](problem_format/problem_format.md)
24-
- [Custom checkers](problem_format/custom_checkers.md)
25-
- [Custom graders](problem_format/custom_graders.md)
26-
- [Generators](problem_format/generator.md)
27-
- [Problem examples](problem_format/problem_examples.md)
22+
- Định dạng bài tập
23+
- [Cấu trúc bài tập](problem_format/problem_format.md)
24+
- [Custom checker](problem_format/custom_checkers.md)
25+
- [Custom grader](problem_format/custom_graders.md)
26+
- [Generator](problem_format/generator.md)
27+
- [Ví dụ bài tập](problem_format/problem_examples.md)
2828

29-
- About
30-
- [License](about/LICENSE.md)
29+
- Giới thiệu
30+
- [Giấy phép](about/LICENSE.md)

docs/about/LICENSE.md

Lines changed: 97 additions & 651 deletions
Large diffs are not rendered by default.

docs/index.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
55
<meta name="viewport" content="width=device-width,initial-scale=1">
66
<meta charset="UTF-8">
7-
<title>VNOJ Documentation</title>
7+
<title>LCOJ Documentation</title>
88
<link rel="stylesheet" href="//unpkg.com/docsify/lib/themes/vue.css">
99
<link rel="icon" type="image/x-icon" href="favicon.ico">
1010
</head>
@@ -15,7 +15,7 @@
1515
loadSidebar: true,
1616
alias: {'/.*/_sidebar.md': '/_sidebar.md'},
1717
subMaxLevel: 3,
18-
name: 'VNOJ Docs'
18+
name: 'LCOJ Docs'
1919
}
2020
</script>
2121
<script src="//unpkg.com/docsify/lib/docsify.min.js"></script>

docs/judge/judge_configuration.md

Lines changed: 92 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,102 @@
1-
# Configuring a judge
1+
# Cấu hình Judge
22

3-
The VNOJ judge is configured with a YAML file, which contains the runtimes, problems folders, and other information.
3+
Judge được cấu hình thông qua file YAML, chứa thông tin về ngôn ngữ lập trình, thư mục bài tập và các thiết lập khác.
44

5-
A sample configuration file is available [here](https://github.com/VNOI-Admin/vnoj-docs/blob/master/sample_files/judge_conf.yml).
5+
File cấu hình mẫu: [judge_conf.yml](https://github.com/luyencode/docs/blob/master/sample_files/judge_conf.yml)
66

7-
## Runtimes
7+
## Cấu trúc file cấu hình
88

9-
The runtimes are configured with a `runtime` node. While most runtimes can be automatically configured with `dmoj-autoconf`, those that are not in the `$PATH` variable will not be automatically detected, and will need to be manually configured.
9+
### ID - Tên judge
1010

11-
## Problems
11+
Tên hiển thị của judge, phải trùng với tên đã tạo trên website:
1212

13-
The problems are configured with `problem_storage_globs`. This is a list of (potentially recursive) globs, as defined by Python's `glob` library.
14-
Any folders that match any of the listed globs and contain an `init.yml` will be treated as a problem directory.
15-
For example:
16-
- `/mnt/problems/folder1/*` will match `/mnt/problems/folder1/problem1`.
17-
- `/mnt/problems/folder2/**/` will match all subfolders of `/mnt/problems/folder2`, e.g. `/mnt/problems/folder2/foo/bar/problem2`.
18-
- `/mnt/problems/folder3/year20[0-9][0-9]` will match `/mnt/problems/folder3/year2023`.
13+
```yaml
14+
id: judge1
15+
```
1916
20-
## ID
17+
### Key - Mã xác thực
2118
22-
The judge's display name is configured with an `id` node. This is a string, and it should match the one on the site interface.
19+
Mã bảo mật để judge kết nối với bridge, phải trùng với mã trên website:
2320
24-
## Key
21+
```yaml
22+
key: your_secret_key_here
23+
```
2524
26-
This key is used to validate your judge's connection to the bridge, and as such, should match the one on the site interface. This is configured with a `key` node.
25+
### Problem Storage - Thư mục bài tập
26+
27+
Danh sách các thư mục chứa bài tập. Mỗi thư mục bài tập phải có file `init.yml`:
28+
29+
```yaml
30+
problem_storage_globs:
31+
- /problems/*
32+
- /problems/archive/**
33+
```
34+
35+
**Ví dụ:**
36+
- `/problems/*` - Tìm tất cả thư mục con trực tiếp trong `/problems`
37+
- Khớp: `/problems/bai1`, `/problems/bai2`
38+
- Không khớp: `/problems/folder/bai3`
39+
40+
- `/problems/archive/**` - Tìm tất cả thư mục con (bao gồm thư mục lồng nhau)
41+
- Khớp: `/problems/archive/2023/bai1`, `/problems/archive/bai2`
42+
43+
- `/problems/year20[0-9][0-9]` - Tìm thư mục theo pattern
44+
- Khớp: `/problems/year2023`, `/problems/year2024`
45+
46+
### Runtimes - Ngôn ngữ lập trình
47+
48+
Cấu hình các ngôn ngữ lập trình được hỗ trợ:
49+
50+
```yaml
51+
runtime:
52+
python3: /usr/bin/python3
53+
gcc: /usr/bin/gcc
54+
g++: /usr/bin/g++
55+
```
56+
57+
**Lưu ý:**
58+
- Hầu hết ngôn ngữ được tự động phát hiện bằng lệnh `dmoj-autoconf`
59+
- Chỉ cần cấu hình thủ công nếu chương trình không nằm trong `$PATH`
60+
61+
## File cấu hình đầy đủ
62+
63+
Ví dụ file `judge.yml` hoàn chỉnh:
64+
65+
```yaml
66+
id: judge1
67+
key: my_secret_authentication_key
68+
69+
problem_storage_globs:
70+
- /problems/*
71+
72+
runtime:
73+
python3: /usr/bin/python3
74+
python2: /usr/bin/python2
75+
gcc: /usr/bin/gcc
76+
g++: /usr/bin/g++
77+
java: /usr/bin/java
78+
```
79+
80+
## Tự động phát hiện ngôn ngữ
81+
82+
Để tự động phát hiện các ngôn ngữ có sẵn trên hệ thống:
83+
84+
```sh
85+
dmoj-autoconf > judge.yml
86+
```
87+
88+
Sau đó chỉnh sửa file `judge.yml` để thêm `id`, `key` và `problem_storage_globs`.
89+
90+
## Kiểm tra cấu hình
91+
92+
Sau khi chỉnh sửa file cấu hình, khởi động lại judge:
93+
94+
```sh
95+
docker restart judge
96+
```
97+
98+
Kiểm tra log để đảm bảo không có lỗi:
99+
100+
```sh
101+
docker logs judge
102+
```

0 commit comments

Comments
 (0)