Support Any Polymer, Mer, Generic, and Monomer S-groups
- Dominant language
- C++
- Stars
- 406
- Forks
- 134
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 24
Description
**Background**
Ketcher will allow users to create Any Polymer, Mer, Generic, and Monomer S-groups. Indigo should preserve these types and their properties when structures are loaded, saved, and converted.
Supporting Ketcher issue: https://github.com/epam/ketcher/issues/10665
**Requirements**
Indigo should support conversion between KET and MOL V2000 and V3000 formats and their variants, CDX, and CDXML.
KET
KET should represent the following as separate S-group types:
Any Polymer
Mer
Generic
Monomer
The S-group type, included atoms, and repeat pattern should be preserved.
MOL V2000
Support:
ANY — Any Polymer
MER — Mer
GEN — Generic
MON — Monomer
The repeat pattern should be read from and written to M SCN.
MOL V3000
Support:
ANY — Any Polymer
GEN — Generic
MON — Monomer
The repeat pattern should be read from and written to CONNECT.
CDX and CDXML
Any Polymer, Mer, Generic, Monomer, and repeat pattern information should be converted to and from the corresponding KET representation.
PNG and SVG
Display the abbreviation outside the closing bracket, at its lower-right side:
Any polymer — anyp
Mer — mer
Monomer — mon
Generic — no abbreviation
Render brackets for Any polymer, Mer, Generic and Monomer, and the repeat pattern for Any polymer and Mer in the same way as for SRU polymer.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing Indigo's KET, MOL V2000/V3000, CDX/CDXML conversion entry points and the PNG/SVG rendering path. Compare the existing SRU polymer handling with the required Any Polymer, Mer, Generic, and Monomer mappings; done means types, included atoms, repeat patterns, and required abbreviations survive all listed conversions and render correctly.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100