MolScript: 반응식과 굽은 화살표 메커니즘을 위한 텍스트 언어

게시: 2026년 10월 17일 · 작성자: Scidart Academy · 읽는 시간: 약 16분
어두운 코드 패널의 MolScript 여섯 줄과 그것이 그리는 SN2 단계: 브로모메테인을 공격하는 수산화 이온과 두 개의 굽은 화살표
MolScript 여섯 줄로 구조, 전하, 조건, 두 굽은 화살표까지 완전한 SN2 단계를 그립니다.

짧은 답: MolScript는 반응식과 전자 이동 메커니즘을 위한 작은 텍스트 언어입니다. 각 화학종을 SMILES로 쓰고, +, ->, <->, <=>로 연결하고, 화살표가 닿는 원자에 원자 맵 번호를 붙이고, 굽은 화살표마다 move 줄을 하나씩 씁니다. MolDraw가 구조, 조건, 비공유 전자쌍, 전하, 모든 화살표를 그리고, 보여 주기 전에 그리기 규칙에 따라 각 화살표를 검사합니다. 결과는 일반적인 편집 가능한 캔버스 콘텐츠이며, 이미지나 LaTeX용 chemfig 코드로 다운로드할 수 있습니다.

MolScript 한눈에 보기

작성하는 것SMILES로 쓴 화학종, 그 사이의 연산자, 화살표 뒤 대괄호 안의 반응 조건, 전자 이동을 나타내는 move 줄.
제공 기능배치가 끝난 반응식: 구조, 더하기 기호, 반응·평형·공명 화살표, 조건, 캡션, 비공유 전자쌍, 전하, 라디칼 점, 굽은 화살표.
화살표 종류비공유 전자쌍, 전하, 라디칼, 원자, 결합에서 시작해 원자, 결합, 형성 중인 결합으로 가는 전자 두 개짜리 굽은 화살표(->)와 전자 하나짜리 낚싯바늘 화살표(~>).
검사모든 맵 번호는 존재해야 하고 고유해야 합니다. 모든 화살표는 전자가 있는 곳에서 시작해야 합니다. 그려진 모든 화살표는 간격, 조준, 곡률, 여유 공간을 기준으로 평가됩니다. 문제는 줄 번호와 함께 돌아옵니다.
출력편집 가능한 MolDraw 캔버스 개체. LaTeX 문서용 chemfig(.tex)를 포함한 MolDraw의 모든 내보내기 형식.
현재 쓰이는 곳MolDraw AI 채팅이 MolScript를 써서 메커니즘을 그리며, Templates 패널의 메커니즘 그림도 MolScript로 만들어졌습니다.
다음 단계캔버스 앱을 위한 오픈 프레임워크와 어떤 어시스턴트든 불러올 수 있는 AI 스킬. 로드맵을 참고하세요.

첫 번째 스크립트: SN2

수산화 이온이 브로모메테인을 뒤쪽에서 공격하고, 같은 단계에서 브로민화 이온이 떠납니다. MolScript로는 네 줄입니다.

title: SN2 of bromomethane
[OH-:1] "hydroxide" + [CH3:2][Br:3] "bromomethane" ->[SN2][acetone] CO "methanol" + [Br-]
move :1 -> 1..2
move 2-3 -> 3
MolScript로 그린 브로모메테인의 SN2: 수산화 이온의 전하에서 탄소로 가는 굽은 화살표와 C–Br 결합에서 브로민으로 가는 두 번째 화살표, 반응 화살표 위에는 SN2, 아래에는 acetone
위의 네 줄 그대로 MolDraw가 그린 그림입니다.

한 줄씩 살펴보면:

  1. title:은 반응식 위에 제목을 붙입니다.
  2. 반응식 줄은 화학종을 나열합니다. [OH-:1]은 산소에 맵 번호 1이 붙은 수산화 이온이고, [CH3:2][Br:3]은 탄소가 2, 브로민이 3인 브로모메테인입니다. "hydroxide"는 구조 아래에 그려지는 캡션입니다. ->[SN2][acetone]은 위아래에 텍스트가 있는 반응 화살표입니다.
  3. move :1 -> 1..2: 원자 1의 비공유 전자쌍(여기서는 음전하)이 1과 2 사이에 형성되는 결합으로 갑니다.
  4. move 2-3 -> 3: 기존 C–Br 결합의 전자가 브로민으로 갑니다.

맵 번호는 나와 화살표를 위한 표시일 뿐입니다. 그려지지 않으며 분자를 바꾸지도 않습니다.

언어

화학종과 연산자

어떤 SMILES든 화학종이 됩니다. 연산자는 양쪽에 공백을 두고 씁니다.

+함께 반응하는 물질이나 함께 생기는 생성물 사이의 더하기. +로 연결한 화학종은 항상 한 줄에 놓입니다.
->반응 화살표.
<=>평형 화살표(반쪽 화살촉 두 개).
<->공명 화살표(양쪽 화살촉). 한 화학종의 공명 구조 사이에 쓰세요.
=>역합성 화살표.

화살표 위아래 텍스트는 화살표에 붙여 대괄호 안에 씁니다: ->[NaBH4][MeOH, 0 °C]. 아래 텍스트만 쓰려면 첫 번째 괄호를 비워 두세요: ->[][reflux]. 화학종 뒤 큰따옴표 안의 캡션은 그 화학종 아래에 그려집니다: CC(=O)O "acetic acid".

여러 단계

연산자로 시작하는 줄은 마지막 화학종에서 반응식을 이어 가므로, 메커니즘을 한 줄에 한 단계씩, 그 단계의 화살표를 바로 아래에 두고 읽을 수 있습니다.

title: SN1 of tert-butyl bromide
C[C:1](C)(C)[Br:2] ->[slow] C[C+:3](C)C + [Br-]
move 1-2 -> 2
-> C[C+:4](C)C + [OH2:5]
move :5 -> 5..4
->[fast] CC(C)(C)[OH2+]
MolScript로 그린 2단계 SN1 메커니즘: C–Br 결합이 끊어지며 전자가 브로민으로 가서 tert-뷰틸 양이온이 생기는 이온화 단계, 그리고 물이 탄소 양이온을 공격하는 단계
줄은 반응 화살표에서만 바뀝니다. 반응식을 다음 줄로 이어 주는 화살표는 로드맵에서 개선할 항목 중 하나입니다.

굽은 화살표: move 줄

화살표가 닿는 모든 원자는 SMILES에서 맵 번호를 받습니다: [OH-:1], [CH3:2][Br:3], 일반 산소라면 [O:4]. 번호는 스크립트 전체에서 고유해야 합니다. 그다음:

move <from> -> <to>     two-electron curly arrow
move <from> ~> <to>     one-electron fish-hook

양쪽 끝은 같은 방식으로 씁니다.

:n원자 n의 비공유 전자쌍. 음이온에서는 화학자들이 그리듯 화살표가 음전하 기호에서 시작합니다.
n원자 n. 라디칼의 화살표는 점에서 시작합니다.
n-m원자 n과 m 사이의 기존 결합. 시작점이면 전자가 결합을 떠나고, 끝점이면 그 결합이 이중 결합이 됩니다.
n..mn과 m 사이에 형성되는 결합(끝점 전용). 화살촉은 원자 m 옆, n을 향한 쪽에서 멈춥니다.

여러 화살표를 세미콜론으로 구분해 한 줄에 쓸 수 있습니다: move :1 -> 1..4; 4-2 -> 2-3; 3-5 -> 5. 옮겨지는 수소는 [H:5][O:6]CC처럼 명시적으로 써야 그 결합에서 화살표를 시작할 수 있습니다. 맵 번호를 붙인 라디칼 중심은 수소 수를 함께 써야 점이 유지됩니다: CC(C)(C)[OH0:1]은 tert-뷰톡실 라디칼입니다.

화살표는 자동으로 배치됩니다. 특정한 휨을 원하면 중괄호로 재정의를 추가하세요: move 2-3 -> 3 {bow=0.3 side=left}.

지시문과 주석

title: …반응식 위의 제목.
per-row: 2 ~ 8반응식이 줄 바꿈되기 전 한 줄의 구조 수(기본값 4).
layout: row, cycle, branch반응식 모양: 왼쪽에서 오른쪽으로, 촉매 순환, 또는 반응물 하나에서 생성물 여러 개.
# …줄 끝까지 주석입니다. SMILES 안의 #(삼중 결합)은 주석이 아닙니다.

오류

문제는 해당 줄과 함께 쉬운 말로 돌아오므로, 사람이나 AI 어시스턴트가 그 줄을 고쳐 다시 그릴 수 있습니다.

line 1: put +, -> or <-> between "[O:1]C" and "[O:1]C"
line 3: no atom is tagged :9 in the SMILES (write it as [X:9])
line 4: n..m (a bond being formed) can only be the destination
line 5: a move needs -> (curly arrow) or ~> (fish-hook) between its ends
C (map 2) has no lone pair

타이핑은 줄이고 그리기는 늘리고: 이름, 강조, 번호

맵 번호는 원자가 모호할 때만 필요합니다. 한 단계의 반응물에 한 번만 나오는 원소는 그 자체로 이름이 되며, 결합 끝에서는 다른 쪽 끝과 결합한 원자만 셉니다. 다음은 맵 번호 없이, 화합물과 단계에 번호를 붙이고, 줄이 지그재그로 오가도록 쓴 SN1 메커니즘 전체입니다.

title: SN1 with element ends, numbered, snake rows
number: both
wrap: snake
per-row: 3
CC(C)(C)Br ->[slow] C[C+](C)C + [Br-]
move C-Br -> Br
-> C[C+](C)C + O
move :O -> O..C+
->[fast] CC(C)(C)[OH2+]

C-Br은 브로민과 결합한 유일한 탄소, C+는 전하로 고른 양이온, :O는 그 단계의 유일한 산소의 비공유 전자쌍입니다. 원소가 두 번 나오면 MolScript가 이를 알려 주고 맵 번호를 요청합니다.

h2원자 2의 수소를 자동으로 명시해 줍니다: move :1 -> 1..h2; h2-2 -> 2-3.
let base = [OH-:1] "hydroxide"화학종을 한 번 정의한 뒤 $base로 씁니다.
[OH]~C([H])([H])([H])~[Br] {ts}전이 상태: ~는 부분(점선) 결합이고, {ts}는 ‡가 있는 괄호를 그리고 형성·절단 중인 결합을 곧게 폅니다.
{δ+=2 δ-=3}원자 옆의 부분 전하.
{highlight=2/3-4:blue}원자 2와 3–4 결합에 형광펜 강조.
{ox=1:II}, {dative=1-2}유기금속 단계를 위한 산화수와 금속–리간드 결합.
[Ph] [R1] [Nu-:1]레이블로 그리는 약어와 R기.
->[{CC(=O)Cl}][AlCl3]화살표 위에 구조로 그린 시약.
layout: cycle촉매 순환. 첫 번째 화학종으로 끝나면 고리가 닫히며, chemfig로 내보낼 때 진짜 호로 나옵니다.

스크립트가 그림이 되는 과정

스크립트는 매번 같은 단계를 거치므로 같은 스크립트는 항상 같은 그림을 만듭니다.

  1. 읽기. 스크립트를 반응식 줄, move 줄, 지시문으로 나눕니다. 각 화학종, 연산자, 캡션, 조건을 줄 번호와 함께 기록합니다.
  2. 레이블 검사. move에 쓴 모든 맵 번호는 정확히 한 원자에 있어야 하고, 모든 n-m은 실제 결합이어야 하며, 모든 시작점에는 줄 전자가 있어야 합니다(비공유 전자쌍, 전하, 라디칼, 결합).
  3. 화학종 그리기. 각 SMILES는 깔끔한 결합각을 가진 2D 구조가 됩니다. 화살표에 필요한 명시적 수소는 원자로 그리고, 전하, 비공유 전자쌍, 라디칼 점은 SMILES에 적힌 곳에 추가합니다.
  4. 반응식 배치. 구조, 더하기 기호, 화살표를 실제 너비대로 배치하고, 줄은 반응 화살표에서 바꾸며, 조건과 캡션은 텍스트가 겹치지 않도록 간격을 둡니다.
  5. 굽은 화살표 배치. 각 화살표는 화학자가 그리는 위치에서 출발해 결합, 레이블, 다른 화살표를 피해 휩니다(자세한 내용은 아래).
  6. 화학 검사. 굽은 화살표가 있는 모든 단계를 전자 단위로 재현합니다. 각 화살표는 비공유 전자쌍, 라디칼, 결합에서 전자 두 개(낚싯바늘은 한 개)를 가져와 원자나 결합에 놓습니다. 그 결과 구조는 화살표 뒤에 쓴 구조와 일치해야 합니다. 잘못된 생성물(원자와 전하 차이 포함), 전자가 10개인 탄소, 남은 전자가 없는 원자에서 나오는 화살표, 짝이 없는 낚싯바늘 화살표, σ 결합을 끊는 공명 화살표는 줄 번호와 함께 보고됩니다.
  7. 모든 화살표 평가. 배치한 각 화살표를 규칙에 따라 측정합니다. 복잡한 자리에서 규칙을 만족하지 못한 화살표도 그려지되 경고로 보고됩니다.
  8. 편집 가능한 개체로 넘기기. 결과는 일반 캔버스 콘텐츠입니다. 구조를 드래그하면 화살표가 따라오고, 무엇이든 스타일을 바꾸고 내보낼 수 있습니다.

MolScript가 적용하는 화살표 규칙:

꼬리비공유 전자쌍이나 음전하 기호, 라디칼 점, 또는 전자를 내주는 결합의 가운데. 원자 레이블 위에는 절대 놓이지 않습니다.
화살촉전자를 받는 원자 바로 앞, 또는 형성 중인 결합의 틈에서 공격하는 원자를 향한 쪽.
곡선구조의 바깥쪽으로 휘며 화살촉 각도는 일정합니다. 낚싯바늘 화살표의 미늘 하나는 곡선 바깥쪽에 둡니다.
여유 공간결합, 레이블, 전하, 점, 다른 화살표와 거리를 둡니다. 같은 대상을 향하는 화살표는 겹치지 않고 부채꼴로 펼쳐집니다.
길이읽기에 너무 짧거나 따라가기에 너무 긴 화살표는 표시됩니다.

MolScript 테스트 세트의 모든 기준 메커니즘은 MolDraw가 바뀔 때마다 그려지고 이 규칙으로 평가됩니다. 현재 41개 메커니즘, 81개 굽은 화살표가 그리기 규칙과 전자 계산을 모두 통과하며, Templates 그림도 마찬가지입니다. MolScript 갤러리에서 모두 볼 수 있습니다.

풀이 예제

E2 제거 반응: 한 단계에 화살표 세 개

title: E2 elimination
[OH-:1] + [H:4][CH2:2][CH:3](C)[Br:5] ->[E2] C=CC + O + [Br-]
move :1 -> 1..4; 4-2 -> 2-3; 3-5 -> 5
MolScript로 그린 E2 제거 반응: 수산화 이온이 수소를 가져가고, C–H 결합이 C=C π 결합이 되고, C–Br 결합이 끊어지며 전자가 브로민으로 갑니다
염기가 수소를 가져가고, C–H 전자가 새 π 결합이 되며, 브로민화 이온이 떠납니다.

마이클 첨가: 콘쥬게이션 계를 따라 이어지는 화살표

title: Michael addition
[CH2-:1]C(C)=O + [CH2:2]=[CH:3][C:4](C)=[O:5] ->[1,4-addition] CC(=O)CCC=C(C)[O-]
move :1 -> 1..2; 2-3 -> 3-4; 4-5 -> 5
MolScript로 그린 마이클 첨가: 엔올레이트 탄소가 β-탄소를 공격하고 전자가 C=C와 C=O 결합을 지나 산소로 이동합니다
2-3 -> 3-4는 C=C π 전자를 C–C 결합으로 옮겨 이중 결합으로 만듭니다.

딜스–알더: 고리를 이루는 화살표

title: Diels–Alder
[CH2:1]=[CH:2][CH:3]=[CH2:4] + [CH2:5]=[CH2:6] ->[Δ] C1CC=CCC1
move 1-2 -> 2-3; 3-4 -> 4..5; 5-6 -> 6..1
MolScript로 그린 딜스–알더 반응: 뷰타다이엔과 에텐의 고리형 전이 상태 주위의 굽은 화살표 세 개로 사이클로헥센 생성
세 화살표 중 두 개는 두 분자 사이에 형성되는 결합에서 끝납니다.

라디칼 첨가: 낚싯바늘 화살표

title: Radical addition of Br• to propene
[Br:1] + [CH2:2]=[CH:3]C -> BrC[CH]C
move 1 ~> 1..2
move 2-3 ~> 1..2
move 2-3 ~> 3
MolScript로 그린 프로펜에 대한 브로민 원자의 라디칼 첨가와 낚싯바늘 화살표 세 개: 두 개는 새 C–Br 결합에서 만나고, 하나는 라디칼이 되는 탄소로 갑니다
~>는 낚싯바늘 화살표를 그립니다. 1..2에서 끝나는 두 화살표는 새 결합의 가운데에서 만납니다.

공명: 엔올레이트

[CH2-:1][C:2](C)=[O:3] <-> C=C(C)[O-]
move :1 -> 1-2
move 2-3 -> 3
MolScript로 그린 엔올레이트의 두 공명 구조와 양쪽 화살촉 공명 화살표, 굽은 화살표 두 개
<->는 공명 화살표입니다. 굽은 화살표는 한 구조가 다른 구조로 바뀌는 과정을 보여 줍니다.

MolScript로 만든 것: 완성된 그림

MolDraw Templates 패널(왼쪽 도구 막대 아래쪽 버튼)의 메커니즘 그림은 MolScript로 작성되었습니다. 피셔 에스터화, 알돌 첨가, 그리냐르 첨가의 각 단계는 짧은 스크립트이며, 템플릿이 그 주위에 패널, 단계 레이블, 강조 원, 메모를 더합니다. 단계가 텍스트이므로 모든 그림의 모든 화살표가 위 예제와 같은 방식으로 검사됩니다.

피셔 에스터화 템플릿: 산소 추적을 표시한 전체 반응, 5단계 굽은 화살표 메커니즘, 핵심 정리, 딘–스타크 장치
피셔 에스터화 템플릿: 4패널 그림 안의 MolScript 5단계.

MolScript와 chemfig

chemfig는 대부분의 화학자가 구조와 메커니즘을 조판할 때 쓰는 LaTeX 패키지입니다. 본래 목적에 아주 뛰어나며, MolScript는 LaTeX 안에서 chemfig를 대체하려는 것이 아닙니다. 둘은 서로 다른 것을 기술합니다.

chemfigMolScript
기술하는 대상그림: 각 결합의 각도와 길이, 그리고 각 화살표의 기준점, 오프셋, 휨.화학: SMILES로 쓴 화학종과 어떤 전자가 어디로 가는지.
배치구조와 반응식마다 손으로.자동: 구조, 줄, 조건, 캡션.
굽은 화살표이름 붙인 점 사이의 TikZ 경로. 위치는 LaTeX를 두 번째로 실행할 때 확정됩니다.맵 번호 사이의 move 줄 하나. 그리기 규칙에 따라 배치하고 평가합니다.
실수이상해 보이는 PDF로 드러납니다.줄 번호와 함께 보고됩니다: 없는 맵 번호, 전자가 없는 시작점, 존재하지 않는 결합.
결과문서 안에 조판된 출력물.편집 가능한 캔버스 개체와 이미지, 벡터, chemfig 내보내기.
적합한 용도LaTeX 문서 안에서의 세밀한 조판 제어.손으로든 AI 어시스턴트로든 정확하고 깔끔한 메커니즘을 빠르게 얻기.

둘은 함께 쓸 수 있습니다. MolScript로 그린 다음 Download → chemfig (.tex)를 고르면 문서에 넣을 chemfig 코드를 얻습니다. chemfig 메커니즘 예제에서 그 코드가 어떤 모습인지 볼 수 있습니다.

왜 텍스트인가: MolScript와 AI 어시스턴트

MolScript는 언어 모델이 좌표를 전혀 다루지 않고도 메커니즘을 그릴 수 있도록 설계되었습니다.

  • 모델은 이미 SMILES를 잘 씁니다. 그래서 모든 화학종이 모델이 아는 표기법으로 쓰입니다.
  • 원자 맵 덕분에 화살표가 모호하지 않습니다. "원자 1의 비공유 전자쌍에서 1과 2 사이에 형성되는 결합으로"는 "산소에서 탄소로 가는 화살표"처럼 잘못 배치될 수 없습니다.
  • 오류를 바로 고칠 수 있습니다. line 3: no atom is tagged :9를 받은 모델은 3번째 줄을 고쳐 다시 시도할 수 있습니다.
  • 기하 구조는 모델의 일이 아닙니다. 휨, 간격, 여유 공간은 엔진이 정하고 검사하며, 이는 모델이 가장 약한 부분입니다.

MolDraw AI 채팅은 이미 이렇게 작동합니다. "알돌 첨가의 메커니즘"을 요청하면 뒤에서 MolScript를 씁니다. MolScript는 AI 스킬로도 패키지화되어 있습니다. 언어 레퍼런스, 대부분의 실수를 잡아내는 규칙, 검사를 마친 예제 41개, 작은 독립 실행형 검사기를 담은 폴더 하나입니다. 이 스킬이 어시스턴트에게 가르치는 작업 흐름은 중간체를 계획하고, 스크립트를 쓰고, 검사기를 실행하고, 보고된 문제를 모두 고친 다음에야 답하는 것입니다. 그래서 메커니즘은 보여 주기 전에 전자 하나하나까지 검사됩니다.

이것이 얼마나 잘 작동하는지 측정하기 위해 41개의 메커니즘 요청("tert-뷰틸 양이온의 E1 탈양성자화를 보여 줘", "산화수를 표시한 Pd 교차 짝지음 순환을 그려 줘")으로 이루어진 평가 세트가 있으며, 각각 기준 스크립트가 있습니다. 답은 네 가지로 점수를 얻습니다: 컴파일되는가, 전자가 맞는가, 올바른 생성물로 끝나는가, 모든 굽은 화살표가 그리기 규칙을 통과하는가. 기준 스크립트는 100%를 받습니다.

로드맵: MolDraw 기능에서 오픈 프레임워크로

MolScript와 그 컴파일러, 반응식·화살표 엔진을 어떤 캔버스 앱이든 반응과 메커니즘을 그리는 데 쓸 수 있는 오픈 소스 프레임워크로 공개할 계획입니다. 프로그래밍 언어 수준의 신뢰성, 즉 문서화된 명세, 안정적인 출력, 바로 고칠 수 있는 오류를 갖추는 것이 목표입니다. 지금과 그 공개 사이에 남은 일은 다음과 같습니다.

언어

화학종, 연산자, 조건, 캡션, 이어 쓰기 줄완료
비공유 전자쌍, 전하, 라디칼, 결합에서 시작하는 전자 두 개짜리 화살표와 낚싯바늘 화살표완료
형식 문법과 적합성 테스트 세트를 갖춘 버전 관리 명세(MolScript 1, molscript: 1)완료
재사용할 수 있는 이름 붙은 화학종: let A = … 후 다음 단계에서 $A완료
방향 지정: {rotate=90}, {flip}, {align=3}완료
전이 상태({ts}, ~로 쓰는 부분 결합), δ+ / δ−, 괄호완료
강조({highlight=2/3-4:blue}), 화합물 및 단계 번호(number: both)완료
화살표 위에 구조로 그린 시약, 약어(Ph, Ts, Boc)와 R기완료
모든 호에 읽기 쉬운 레이블이 있는, 스스로 닫히는 촉매 순환완료
순환 안의 굽은 화살표, 금속–리간드 결합({dative=1-2}), 산화수({ox=1:II})완료

정확성

레이블 존재 여부, 시작점의 전자 유무, 그려진 모든 화살표의 기하 규칙 통과 여부완료
전자 계산: 화살표가 의미하는 생성물을 구해 적힌 생성물과 비교완료
각 단계의 전하 및 원자 균형, 옥텟, 짝 없는 낚싯바늘 화살표, 공명(σ 결합) 검사완료
수소를 더 간단히: h2는 원자 2의 수소를 가리킴완료
맵 번호 줄이기: 그 단계에서 유일한 원소면 충분함(move C-Br -> Br)완료

배치

실제 너비로 줄 배치, 조건과 캡션이 겹치지 않음완료
균형 잡힌 줄 바꿈(4 + 1이 아닌 3 + 2)과 너비 기준 줄 바꿈(width:)완료
줄 사이 연결 화살표 단축: wrap: snake는 다음 줄을 짧은 아래쪽 화살표로 되돌려 이어 감완료
격자 배치(layout: grid), 줄마다 열 정렬완료

프레임워크

MolDraw 앱과 독립된 단독 패키지로서의 컴파일러와 검사기완료
컴파일러와 렌더러 사이의 안정적이고 문서화된 반응식 형식완료
캔버스, SVG, PNG 출력; chemfig와 JSON 내보내기완료
진짜 호를 사용한 촉매 순환의 chemfig 내보내기(그리고 다시 가져오기)완료
명령줄 도구: 스크립트를 넣으면 검사 보고서, 이미지, chemfig 파일이 나옴완료
버전 관리된 배치로, 업그레이드 후에도 스크립트가 같은 모양으로 그려짐완료
편집기 지원: 입력하는 동안 구문 강조와 문제 표시(Templates의 MolScript 탭)완료
편집기에서 맵 번호, 옵션, 키워드 자동 완성(Tab은 첫 번째 항목 선택)완료
자동으로 검사되는 공개 기준 메커니즘 갤러리완료
검사된 메커니즘 41개인 갤러리를 수백 개로 확장다음
패키지, 스킬, 명세를 오픈 소스로 공개다음

AI 스킬

MolDraw AI 채팅에서 사용 중이며, 줄 번호가 붙은 오류를 모델에 다시 전달완료
패키지화된 스킬: 레퍼런스, 규칙, 풀이 예제, 어시스턴트가 답하기 전에 실행할 수 있는 검사 단계완료
올바른 화학과 깔끔한 화살표를 기준으로 채점하는 41개 메커니즘 프롬프트 평가 세트완료
주요 AI 모델의 평가 세트 점수 공개다음

가르치거나, 논문을 쓰거나, 화학 소프트웨어를 만들면서 이 방향에 의견을 주고 싶다면 MolDraw의 Request feature로 알려 주세요.

사용해 보기

  1. MolDraw와 AI 채팅을 열고 메커니즘을 요청해 보세요. 예: "2-브로모프로페인과 수산화 이온의 E2 메커니즘을 그려 줘". 채팅이 MolScript를 쓰고 그림을 그립니다.
  2. 또는 왼쪽 도구 막대 아래쪽의 Templates를 열고 피셔 에스터화, 알돌, 그리냐르 그림을 추가하거나, MolScript 탭에서 직접 스크립트를 써 보세요. 스크립트를 구문 강조하고, 입력하는 동안 문제를 보여 주고, 캔버스에 그려 줍니다.
  3. 결과는 일반 그림처럼 드래그하고, 스타일을 바꾸고, 확장한 뒤 이미지나 chemfig로 다운로드하세요.

질문과 답변

MolScript란 무엇인가요?

MolScript는 반응식과 굽은 화살표 메커니즘을 위한 짧은 텍스트 언어입니다. 화학종은 SMILES로 쓰고 +, ->, <->, <=>로 연결하며, 굽은 화살표 하나는 원자 맵 번호 사이의 move 줄 하나입니다. MolDraw가 구조, 조건, 비공유 전자쌍, 전하, 화살표를 그리고, 결과는 캔버스에서 계속 편집할 수 있습니다.

MolScript에서 굽은 화살표는 어떻게 그리나요?

SMILES에서 화살표가 닿는 원자에 원자 맵 번호를 붙이세요. 예: [OH-:1], [CH3:2][Br:3]. 그런 다음 원자 1의 비공유 전자쌍이 원자 2와 결합을 만드는 것은 move :1 -> 1..2로, C–Br 결합이 끊어지며 전자가 브로민으로 가는 것은 move 2-3 -> 3으로 씁니다.

낚싯바늘(전자 하나) 화살표는 어떻게 그리나요?

-> 대신 ~>를 쓰세요. move 1-2 ~> 1은 원자 1과 2 사이 결합의 전자 하나를 원자 1로 보냅니다. 같은 형성 결합(n..m)에서 끝나는 두 낚싯바늘 화살표는 그 결합의 가운데에서 만납니다.

MolScript가 chemfig보다 나은가요?

둘은 서로 다른 문제를 풀며 함께 쓸 수 있습니다. chemfig는 문서 안에서 모든 결합과 화살표를 직접 배치하는 LaTeX 패키지입니다. MolScript는 화학을 기술하고 배치와 화살표 모양은 MolDraw에 맡기며, MolDraw가 모든 화살표를 검사합니다. MolScript로 그린 그림은 무엇이든 LaTeX 문서용 chemfig 코드로 다운로드할 수 있습니다.

AI 어시스턴트가 MolScript를 쓸 수 있나요?

네. MolDraw AI 채팅은 MolScript를 써서 메커니즘을 그립니다. 언어 모델은 SMILES를 잘 쓰고, 원자 맵 덕분에 모든 화살표 끝이 모호하지 않기 때문입니다. 오류는 줄 번호와 함께 돌아오므로 모델이 고칠 수 있습니다. 다른 어시스턴트도 쓸 수 있도록 패키지화된 AI 스킬을 계획하고 있습니다.

MolScript는 오픈 소스가 되나요?

그럴 계획입니다. 언어, 컴파일러, 반응식·화살표 엔진을 다른 캔버스 앱이 반응과 메커니즘을 그리는 데 쓸 수 있는 오픈 프레임워크로 공개할 예정입니다. 로드맵에 먼저 해야 할 일이 정리되어 있습니다.

관련 가이드

최종 업데이트: