1 개요
- runbox 스펙
2 v1
2.1 box 유형
box | 입력 | 출력 | lang 옵션 | box 단위 식별 | 비고 |
---|---|---|---|---|---|
run | 단일 cell | 단일 출력 | 단일 lang 지원, 필수 | 불필요 | - |
multi | 멀티 cell | 단일 출력 | 멀티 lang 지원, 생략가능 | multi={id} | 파일명 없으면 runbox.{lang} |
notebook | 멀티 cell | 멀티 출력 | 단일 lang 지원, 필수 | notebook={id} | 입력 출력 1:1 |
2.2 api 유형
box | lang | api | 비고 |
---|---|---|---|
run | bash, c, cpp, csharp, go, java, kotlin, perl, php, python, r, ruby, sqlite3 | run | |
html, javascript | front | ||
tex, latex | tex | ||
multi | bash, c, cpp, csharp, go, java, kotlin, perl, php, python, r, ruby, sqlite3 | multi | |
html, javascript | TBD | ||
tex, latex | TBD | ||
notebook | python, r | notebook |
2.3 기타 옵션
옵션 | 설명 | 영역 | 비고 |
---|---|---|---|
hide | cell 숨김 | cell | multi/notebook |
filename | 파일명 지정 | cell | multi |
hideerr | output에서 stderr 숨김 | cell | |
outheight | output의 height 지정 | cell | |
outmaxheight | output의 maxheight 지정 | cell |
- PHP autoload
json
Copy
{
"cells": [
{
"filename": "a.sh",
"source": "echo Hello World1",
"main": 1
},
{
"filename": "b.sh",
"source": "echo Hello World2"
}
]
}
3 v2
3.1 wikitext form
html
Copy
<syntaxhighlight lang="text">
<syntaxhighlight lang='python' group="1">
print('hello')
print('world')
</syntaxhighlight>
<syntaxhighlight lang='text' group="1">
lorem
ipsum
</syntaxhighlight>
</syntaxhighlight>
3.2 frontend form
json
Copy
{
"cells": [
{
"group": "1",
"lang": "python",
"filename": "runbox.py",
"main": 1,
"source": "print('hello')\nprint('world')",
"options": {
"asciinema": false,
"fold": false,
"hideerr": false,
"outheight": "auto"
}
},
{
"group": "1",
"lang": "text",
"filename": "1.txt",
"source": "lorem\nipsum"
}
]
}
3.3 backend form
json
Copy
{
"apiVersion": "v1",
"kind": "box",
"metadata": {
"name": "run-python-0-ac13eb57df"
},
"spec": {
"type": "run | notebook",
"lang": "python",
"asciinema": false
},
"cells": [
{
"lang": "python",
"filename": "runbox.py",
"main": 1,
"source": [
"print('hello')",
"print('world')"
],
"outputs": []
},
{
"lang": "text",
"filename": "1.txt",
"source": [
"lorem",
"ipsum"
],
"outputs": []
}
]
}
4 같이 보기
편집자 Jmnote
로그인하시면 댓글을 쓸 수 있습니다.