컨텐츠로 건너뛰기

코드 실행

ZetoPad는 여러 언어로 코드 스니펫을 실행하고 앱 내에서 출력을 직접 표시할 수 있습니다.

코드 실행하기

  1. 코드 스니펫 열기
  2. Cmd+R을 눌러 실행
  3. 하단의 출력 패널에 결과 표시

지원 언어

네이티브 실행

시스템에 설치된 인터프리터를 사용하는 언어:

언어인터프리터
Pythonpython3 또는 python
JavaScriptnode
TypeScriptts-node 또는 tsx
Rubyruby
Gogo run
Rustrustc + 실행
Shellbash 또는 sh
PHPphp
Perlperl
RRscript

WASM 샌드박스 실행

시스템 접근 없이 안전한 실행을 위해 ZetoPad는 WebAssembly 기반 런타임을 포함합니다:

언어런타임
JavaScriptQuickJS
LuaLua WASM
PythonPyodide

WASM 실행은:

  • 샌드박스 - 파일 시스템이나 네트워크 접근 없음
  • 빠른 시작 - 외부 인터프리터 불필요
  • 일관성 - 모든 시스템에서 동일한 동작

출력 패널

출력 패널 표시:

  • stdout - 코드의 표준 출력
  • stderr - 에러 메시지와 경고
  • 종료 코드 - 성공 (0) 또는 실패

패널 제어

  • 지우기 - 출력 제거
  • 복사 - 출력을 클립보드에 복사
  • 닫기 - 패널 숨기기

타임아웃 처리

코드 실행에는 무한 실행 스크립트를 방지하기 위한 구성 가능한 타임아웃이 있습니다:

  • 기본값: 30초
  • 설정에서 구성 가능
  • 초과 시 실행 종료

크기 제한

메모리 문제를 방지하기 위해 출력 제한:

  • 최대 출력 크기: 1MB
  • “[Output truncated]” 메시지와 함께 잘림

보안 고려사항

신뢰할 수 없는 코드의 경우 시스템 접근이 없는 WASM 샌드박스 모드를 사용하세요.

빠른 테스팅

빠른 코드 실험을 위한 “scratch” 스니펫 생성:

scratch.py
x = [1, 2, 3, 4, 5]
print(sum(x))
print([i**2 for i in x])

환경 변수

네이티브 실행은 쉘의 환경 변수를 상속합니다.

작업 디렉토리

코드는 임시 디렉토리에서 실행됩니다. 파일 작업에는 절대 경로를 사용하세요.