Page tree
Skip to end of metadata
Go to start of metadata



Markush Editor Application

 Markush Editor is a desktop application of ChemAxon to view, create and edit complex Markush structures. Markush Editor represents the hierarchical nature of a Markush structure in graphical form. The structures of an opened Markush file will be identified, classified and organized as scaffolds and attached R-groups to help you follow each nested structure. Markush Editor is a standalone desktop application. Running this application, you need to download and run Markush Editor installer. Without valid Markush Editor license editor can be used viewer only mode. Short video tutorials demonstrating the main functionality are available here.

Markush Editor layout

Main Menu and Toolbar

The main menu contains File, View, Tools, Window and Help elements.

  • File
    • New, 
    • Open (Ctrl+O), 
    • Compose Markush Structure..., 
    • Save, 
    • Save As...,
    • Save All,
    • Exit.
  • View
    • Show Only Editor (Ctrl+Shift+Enter)
    • Full Screen (Alt+Shift+Enter)
  • Tools
    • Plugins
    • Options... 
  • Windows
    • Checker View
    • Reset Windows
    • Close Window
    • Close All Documents
    • Close Other Documents
    • Documents...
  • Help
    • Help (F1)  
    • Licenses... 
    • Check for Updates...
    • About ChemCurator...

  • "Collapse molecule tree"  Closes all nodes of the tree. The default setting is off.
  • "Expand molecule tree"  Expands all the nodes of the tree. The default setting is off.
  • "Always display scaffold in Fragments"  Displays the relevant scaffold of the selected R-group. The default setting is on.
  • "Toggle molecule display in tree"  Expands the boxes of the tree to show the structure of the molecule. The default setting is on.
  • R-group search box.
  • "Enumerate Markush structure"  Open the Markush enumeration panel.

Panels and views

Markush Editor contains five main components as default. All of the components can be reorganized and resized.

  1. Editor panel contains Markush tree, Scaffold and R-group fragments view;
  2. Checker checker displays the error and warnings related your Markush structure;
  3. Preview displays enumerated examples;
  4. Nesting view displays the embedding of the selected R-group(s);
  5. Validation view can display the matching non-matching of individual structures against your Markush structure.

Editor panel

The Markush structures of the opened file are organized and arranged in the Editor panel. In the tree view the scaffold is presented on the first (parent) level of the tree, and the associated R-groups are classified as its children. The scaffold(s) and attached groups are denoted by named boxes. The parent level boxes are named as: "Scaffold(n)". Child level boxes are marked with the relevant R-group definition (e.g.: R1, R2,...Rn or the R-group alias if it has), followed by the number of members. To view any scaffold or R-group definition, select the relevant node. The structure(s) of the chosen element will be presented in the fragment view. The selected items are highlighted in the tree view.


Select a node and see the relevant structure(s) in the View panel

You can select more than one structure from the tree using Shift+Left-Click or Ctrl+Left-Click to display them in the View panel at the same time. 

NoteShift/Ctrl+Arrow keys work for selection as well.


Select more nodes and see structures in the View panel

Expand the nodes of the Tree panel to show the small structures of each node.

Preview panel

Preview tab displays enumerate examples (max. four) of the selected R-group(s).


See enumerate examples in Preview panel

Nesting view panel

Nesting view tab displays the step-by-step route of embedding of any selected R-group starting from the scaffold.


Follow the embedding of the selected R-group in Nesting panel

Validation panel

Validation panel can be used to check matching and non-matching of individual structures against your Markush structure. Matching structures are highlighted by green non-matching structures are highlighted by red.


Display of structure matching and non-matching  in Validation panel

If any of the validation structures selected, the matching and non-matching R-groups and fragments are also highlighted in the editor panel's scaffold, tree and fragment view.

Display of structure matching and non-matching in Editor panel

Structure checker panel

Structure checker panel displays the structure drawing errors and warnings related to the active editor component. In case of an error, an exclamation mark appears in a red circle  found error report on statusbar, in case of warning in as yellow triangle appears feature checker. By clicking on the checker items, you are able to choose between the available automatic fixer options. You are able to fix the issues one-by-one with the Fix Selected button or all together with the Fix All button.

Edit Marksuh Structures 

Create Markush structure

If you want to create a new Markush structure, click on the New icon,   in the toolbar or select New from the file menu. A new empty scaffold definition appears, and you can draw your scaffold by the previously described way.

Scaffold can edit like any R-group definition (see next section). To expand your structure add R-groups to your scaffold and after saving it new empty R-group definitions appears and you can continue the editing.

Edit R-groups and fragments

You can edit R-group definitions or individual fragment definitions by right clicking or double clicking on the tree node or the selected fragment. From the context menu, you can select the Edit function or you can add new fragments or remove the existing ones.

Edit R-group definition from context menu


Edit fragment definition from context menu


Sketch window opens with the selected definitions. Modified definitions can be saved by the "Save" button in the bottom right corner of the  sketch window, or dropped by pressing the Cancel button.

Sketch window 

R-group bridging

With R-group bridging, you can create connected R-group definitions. First you need to select two R-groups (on the same level and with one attachment point and only one occurrence in the parent structure) and after right clicking on it, you can select the "Create Bridge" function. 


A new empty R-group definition appears with R(x) + R(y) label where x and y the number of the originally selected R-groups. You can add fragment  definitions with two attachment points to this R-group.

Enumerate Markush Structure

Markush enumeration panel can be opened from the Markus Editor panel toolbar  button. Enumeration can generate the specific compounds represented by the Markush structure. The following configuration options are available:

Main options specify some essential enumeration settings:

  • Full enumeration: This performs exhaustive enumeration of the Markush structure. Markush libraries can potentially be vast in size, so the enumeration is limited to a maximum number of structures that you can specify.
  • Random enumeration: This performs random enumeration of the Markush structure. This is mostly useful for large Markush libraries where it is not practical to fully enumerate the library. Random enumeration allows you to sample the library in a random fashion so that you obtain a good representation of the various structures in the library. The same warning about library size that are described for full enumeration also applies to random enumeration.
  • Enumerate homology groups: This option specifies whether homology groups (Alkyl, Aryl etc.) in the Markush structure should be enumerated with examples of the group. Note that this gives a representative sample of structures for the homology group, but not necessarily an exhaustive set.
  • Number of structures: This limits the number of enumerated structures that are generated.

Basic filter options can help to eliminate the chemically incorrect enumerates:

  • Filter duplicates: Eliminate the duplicated enumerates.
  • Filter valance errors: Eliminate enumerates with valance errors.
  • Filter infeasible rings:  Eliminate enumerates with chemically impossible ring systems.

Display options help to understand the correlation between the enumerates and the Markush structure but have some performance overhead:

  • Scaffold alignment: Preserve the original scaffold orientation in the enumerated structures.
  • Fragment coloring: Coloring structure parts coming from different fragments with different colors.

Biased enumeration currently can be used only with sequential enumeration. Enumerated structures can be limited according to the predefined property ranges. Biased filters guiding the full enumeration process to the desired direction and this way biased enumeration has significant performance benefits compared to the post filtering but the enumeration itself is slightly slower with biased filers.

Enumerated structures can be displayed into the Grid view and the Spreadsheet view.  Spreadsheet view contains not only the enumerated structures but the used R-group fragments, and some calculated field incéouding Formula, Name Mass. Enumeration results can be saved in various formats by  icon in the left sidebar of the enumeration panel.

Markush Composer Wizard

With Markush Composer wizard, you can automatically generate Markush structures based on a set of compounds. The compound set needs to be in one file (sdf, smiles, etc). The composer wizard can be opened from File->Compose Markush Structure...

After selecting the menu point, the Composer wizard opens.

After selecting the Input file, the generation process can be parametrized. 

Main options:

If you want to generate single level Markush structures, uncheck the Enable nested R-groups check box.

If you don't want to reuse any R-group definition, uncheck the Merge duplicated R-groups check box.

If you don't want to generate atom lists, uncheck the Enable atom lists check box.

Scaffold options:

You can choose between Automatic detection of scaffold or User-defined scaffold.

Advanced options:

For processing a very large set of compounds, you can choose a fast search mode instead of normal in Search mode. With fast search mode, the  precision of the common substructure finding algorithm is lower, which can cause suboptimal result in some cases.

If the largest common part of the set of compounds is lower than the Minimum scaffold size, the composer generates more than one Markush structures with larger scaffolds.

If some of the R-group fragments in an R-group definition have larger common parts than the Minimum common size of nesting R-groups, the algorithm generates a new nested R-group.

If User-defined scaffold option selected, with the Next button you can navigate to the second page of the wizard dialog. In the second page, a preferred scaffold can be set. Input structures not containing the preferred scaffold can be ignored with the Ignore input molecules not containing the scaffold option or in other case composer generates one or more additional Markush structures with different scaffolds for the non-matching input structures. If you not set any scaffold, Composer tries to find the optimal scaffold automatically. You can use atom lists, bond lists, and R-groups on your predefined scaffold. If you don't define any R-group Composer automatically add R-groups to your scaffold, but if you define at least one R-group Composer use exactly what you set, that means input molecules with substituents in different position will be ignored. 

After click on the Finish button the wizard automatically generates a Markush structure based on the input set.



  • No labels