SMI_CANONICALISE(1)

πŸ“¦
version 0.4.0 Β· 4 versions
, in ubuntu resolute, ubuntu stonking

πŸŽ€ NAME πŸŽ€

smi_canonicalise β€” canonicalise SMILES, bestie πŸ’…

Oh and hey, this whole thing lives in the User Commands corner of the manual, so if you ever forget where you found it: it's smi_canonicalise(1), section 1, the user-commands section. Noted. Slay.


✨ DESCRIPTION ✨

πŸ¦‹ USAGE πŸ¦‹

smi_canonicalise [<args>] [<files>]

That's the whole vibe. Args, files, go. 🫢

πŸ’– DESCRIPTION πŸ’–

Okay so real talk: smi_canonicalise reads in files full of SMILES descriptors and spits them back out using a stable atom ordering established by Graph::Nauty. Stable. Ordered. Immaculate. ✨

And if there's more than one moiety? They get ordered in lexicographic order. Alphabetical-ish, basically. The moieties are getting lined up single file and they're gonna like it. πŸ’…

πŸ‘‘ OPTIONS πŸ‘‘

Every flag, every default, no cap:

  • --infer-hydrogens β€” infer hydrogen atom counts according to valency rules. [default] β€” yes, this is what happens unless you say otherwise ✨
  • --no-infer-hydrogens β€” do not infer hydrogen atom counts. Do not pass go, do not count H's.
  • --aromatise β€” aromatise Kekule structures. (experimental) β€” it's giving science experiment, handle with care πŸ§ͺ
  • --no-aromatise β€” do not attempt to aromatise. [default]
  • --aromatisation-method STR β€” mark flat rings as aromatic. Two methods are supported: 'electron-cycles', which follows Richard L. Apodaca's electron cycle-based approach (default), and 'Huckel', which aims to follow H??ckel's rule as implemented in Chemistry::Ring. There's also 'external-list': it uses aromaticity defined using the --aromatic-atoms or --aromatic-bonds options. Three names, described as two, we love a mystery 😭
  • --aromatic-atoms STR β€” a comma-separated list of 0-based aromatic atom numbers, consulted during aromaticity detection. This implies --aromatisation-method 'external-list'. It's the friend that brings the guest list.
  • --aromatic-bonds STR β€” a comma-separated list of bonds, expressed as dash-separated pairs of 0-based aromatic atom numbers. The list gets consulted during aromaticity detection. This implies --aromatisation-method 'external-list' too. Guest list, bond edition πŸŽ€
  • --kekulise β€” kekulise simple aromatic structures. (experimental) β€” again, experimental, we're in the lab, goggles on πŸ₯½
  • --no-kekulise β€” do not attempt to kekulise. [default]
  • --no-acyclic-aromatic-bonds β€” convert acyclic aromatic bonds to single. Just. Single. Living their simple life. πŸ¦‹
  • --canonicalise-haloanions β€” canonicalise the representation of haloanions. [default] β€” iconic behaviour, honestly
  • --no-canonicalise-haloanions β€” retain the input representation of haloanions. Leave them exactly as you found them, no edits, no notes.
  • --canonicalise-nitro-groups β€” canonicalise the representation of nitro groups by converting them from *-[N+]([O-])=O to *-N(=O)=O. A glow-up, fr fr ✨
  • --no-canonicalise-nitro-groups β€” retain the input representation of nitro groups. [default] β€” untouched, unbothered, in its original form πŸ’…
  • --ignore-class β€” ignore SMILES atom class in canonicalisation. (useful for testing)
  • --preserve-order β€” preserve the input order of molecular entities and atoms. No rearranging, bestie, we keep the seating plan exactly as it was πŸͺ‘
  • --random-order β€” instead of canonical, output SMILES in random order. (useful for testing) β€” chaos mode, lowkey iconic 🎲
  • --help β€” print usage message and exit. Our beloved. The one flag that always has your back 🫢
Heads up bestie: --aromatise and --kekulise are marked (experimental) in the original, so don't come for me if the science gets weird πŸ§ͺ😭

And that's the whole page, mwah πŸ’‹ This was smi_canonicalise version 0.4.0+dfsg, from February 2026, and it's filed under User Commands. Go canonicalise something gorgeous. Periodt. πŸŒˆπŸ’–

πŸ“¦ where this page comes from