Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/solved-ac/boj-description-converter
Convert olymp.sty based TeX problem files to BOJ Stack descriptions
https://github.com/solved-ac/boj-description-converter
Last synced: 3 months ago
JSON representation
Convert olymp.sty based TeX problem files to BOJ Stack descriptions
- Host: GitHub
- URL: https://github.com/solved-ac/boj-description-converter
- Owner: solved-ac
- License: mit
- Created: 2022-06-18T13:32:09.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-06-30T14:09:22.000Z (over 1 year ago)
- Last Synced: 2024-06-14T01:26:09.568Z (5 months ago)
- Language: TypeScript
- Homepage: https://solved-ac.github.io/boj-description-converter/
- Size: 5.07 MB
- Stars: 14
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-baekjoon - solved-ac/boj-description-converter - UCPC 측에서 사용하는 [olymp.sty](https://github.com/GassaFM/olymp.sty) 기반 TeX 문제 본문을 BOJ Stack과 UCPC 규약에 알맞게 변환하는 도구입니다. (문제 출제)
README
# boj-description-converter
[solved-ac.github.io/boj-description-converter](https://solved-ac.github.io/boj-description-converter/)
Convert [UCPC](https://github.com/ucpcc/ucpc2020-description-layout)-flavored [olymp.sty](https://github.com/GassaFM/olymp.sty) based TeX problem statements to HTML, complying with [BOJ Stack](https://stack.acmicpc.net/guide/problem) and [UCPC](https://github.com/ucpcc/problemsetting-guidelines) formatting guidelines.
## Why?
For contests on BOJ with printed problemset, it is often challenging to:
* Keep TeX and HTML descriptions synced - especially when multiple problemsetters are working on multiple problems
* Convert one format to another - although BOJ supports MathJax, it is such a tedious and easily mistakable job to translate TeX markups to HTML. Few examples include:
* `\alpha` → `α` (greek letter 'alpha')
* ``` `` ... '' ``` → `“ ... ”` (double quotes)
* `\textit{...}` → `...` (italic text)
* `\textbf{...}` → `...` (bold text)
* `\begin{center}...\end{center}` → `
...
` (centered text)
* `\t{...}` → `...
` (colored verbatim)
* `\begin{itemize} \item ... \end{itemize}` → `
- ...
This project aims to eliminate manual converting work by problemsetters, and make problemsetters to just focus on setting great problems.
## Usage
1. Copy-paste [olymp.sty](https://github.com/GassaFM/olymp.sty) based TeX problem statement into the left input area.
1. Preview the render output and fix the statement if needed.
1. Copy-paste generated HTML to BOJ Stack.
### 'I hate MathJax' Mode
This tool offers the ability to try rendering the equations in pure HTML while avoiding MathJax as much as possible. Currently supports the following:
* Superscripts and subscripts
* Most of the TeX math symbol rendering commands, i. e. `\le`, `\delta`, `\rightarrow`
* Italic texts on variables
* Spacing around operators and functions like `ln` or `sin`
* Fractions
* `\sum`
## Contributing
Contributions are welcome!
## TODO
* Cleanup code
* `tabular` environment
* Converting `\color` names to hex string
*