= Needed Command Functionality = Chimera2 command functionality needed for early release(s) based on [wiki: EarlyReleaseRequirements]. This is somewhat high-level; more detailed guidelines and examples are in [http://www.cgl.ucsf.edu/home/meng/chi2/command-structure.html Chimera2 Command-Structure Thoughts]. == Late summer release == Initial versions (not necessarily final/full implementations) of: * '''open''' (suggest same general syntax as Chimera1, possibly adjusting prefixes; covers both local files and web-fetch) * '''display''', '''modeldisplay''' (suggest replacing with '''show/hide''') * '''ribbon''' (suggest replacing with '''cartoon''' and including spline and any other whole-chain parameters as options to this command) * '''surface''' (see [https://www.rbvi.ucsf.edu/trac/chimera2/wiki/SurfaceCategories surface command and category thoughts]; should include calculation parameters, vertexDensity, visiblePatches) * '''repr''', '''ribrepr''', '''ribscale''', '''surfrepr''' (suggest consolidating into a new '''style''' command, generalizing ribbon to cartoon as per [http://www.cgl.ucsf.edu/home/meng/chi2/ribbons.html ribbons writeup], and including pseudobonds) * '''color''' (leaving color-by-attr and color-by-scalar-field separate; '''rainbow''' might be merged with those two) * '''volume''' (redundancy with show/hide/color etc. OK with me, but should review structure and keywords ''vs.'' the negotiable [http://www.cgl.ucsf.edu/home/meng/chi2/command-structure.html command guidelines]) * some way to adjust subdivision/smoothness; any global setting could be covered by '''set''' (see below) and any attribute by '''setattr''', but there could also be options in '''surface''', '''volume''', '''cartoon''' and/or a top-level '''quality''' command Extremely useful catchalls, I suggest retaining as permanent commands even though there will be some redundancy: * '''set''' global settings: silhouettes, background color, depth-cuing parameters, shadows, lighting (if many sub-options, e.g. lighting, judiciously consider making a separate top-level command; also keeping a redundant but longer '''set''' command is OK with me) * '''setattr''' attribute values GUI-only, or do we need commands? * '''select''' (including up/down) * save/restore session, could be '''save session''' with restore covered by '''open''', or '''session (save|restore)''' * '''save image''' (or '''image save''') with supersampling option Command accoutrements: * decide on keyword conventions * decide on what kinds of colorspecs are allowed * list of built-in color names == December release == The following functionality is listed for the December release, but not necessarily as commands: * '''transparency''' (similar to '''color'''; takes care of individual settings, whereas '''set''' or another command would be used for related global parameters) * '''freeze''' or something like that to control model activation for motion (in Chimera1, '''freeze''' is something different) * '''clip''', '''section''', '''thickness''' (suggest combining into single command to control global clipping, say '''clip''' or '''gclip''') * '''mclip''' per-model clipping * '''distance''' pseudobonds that could be intermodel * '''sop cap''' or equivalent (unless global options in '''clip''' would suffice) * single-layer transparency ('''set''' or other command control) Command accoutrements: * more built-in specs like ions, ligand, helix, strand, protein, ''etc.'' * full atomspecs (see [http://www.cgl.ucsf.edu/home/meng/chi2/frameatom_spec2.html Chimera2 atomspec writeup]) == Highly desirable == Again listed but not necessarily as commands: * '''findhbond''' * '''rangecolor''' or equivalent for color-by-attribute * '''scolor''' or equivalent for color-by-scalar (radial, volume value, ''etc.'') - logical to merge '''rangecolor''' and '''scolor''', maybe also '''rainbow''', but what's a good name? stick with rangecolor, or something else like colorscale, colormap, colorvalue, rangecolor, valuecolor, ??? * '''sop hideDust''' or equivalent * '''define''' geometric objects based on atomic coordinates: axes, planes, centroids, ellipsoids * '''shape''' or other way of defining geometric objects arbitrarily - I suggest BILD-like position specification; Chimera1 '''shape''' position specification is much too difficult * '''scene''' save, restore, list * fancy-shaped clipping (if global add options to '''clip''', otherwise to '''mclip''' if feasible; Chimera1 has octant stuff in '''vop''' subcommands) * '''label''' (possibly merge with '''rlabel'''; takes care of individual settings, whereas '''set''' or another command would set related global parameters) - whether global or not, I'd like a command control for font/fontsize (this isn't in mentioned in the features list, though) * '''2dlabels''' * '''colorkey''' * adjustable material properties ('''setattr''' or other) * background color-gradient ('''set''' or top-level '''background''' command) * multiple-layer transparency ('''set''' or other command control) * '''save/export''' PDB, volume data, ''etc.'' (question: what is the distinction between save and export? I don't understand how various programs divide output into these categories) Command accoutrements: * more built-in specs like functional groups, amino acid categories, element symbols, ''etc.'' == Would be nice == Again listed but not necessarily as commands: * '''cartoon''' (or whatever we're calling the ribbons-plus command) options for cylinders/pipes, planks * tube option(s) for cartoon '''style''' * ring fill, aromaticity, bond multiplicity options for atom '''style''' * '''surface''' provisions for multiple surfaces on same atoms, including SAS and/or SES == Eventually == * motion-scripting or other frame-argument commands (see [http://www.rbvi.ucsf.edu/chimera/docs/UsersGuide/movies.html#moviecommands Chimera1 movie-related commands])