[chimera-dev] Enhancing the command-line

Tom Goddard goddard at sonic.net
Wed Jul 15 11:01:05 PDT 2015


Hi Joshua,

  We are ahead of you.  In Chimera 2 which is not yet released we have put in support for command completion, command keyword completion, it should be able to give you the whole syntax of the command in the status line.  It doesn’t do this yet but it is supposed to have those capabilities.  We haven’t discussed improved command history search but I agree that would be handy, to for instance bring back your last command starting with “surf”.

  Could these features be put in Chimera 1?  I don’t think we will do it because we are putting all effort on Chimera 2 and plan a first release with very minimal capabilities this Fall.  We’d be happy to help you add these things to Chimera 1.  The command-line user interface is in

	chimera/share/Midas/midas_ui.py

and uses the Tk window toolkit.  This would be the place where you would bind the tab key or other special keys that for instance do history search.  We don’t have detailed Chimera 1 programming API documentation, just a few tutorials 

	http://www.cgl.ucsf.edu/chimera/docs/ProgrammersGuide/index.html <http://www.cgl.ucsf.edu/chimera/docs/ProgrammersGuide/index.html>

and nothing that describes command-line code.

  A basic problem is that Chimera 1 only knows the command names.  There is no table of keyword arguments that a command takes so you couldn’t provide any detailed help on tab completion.  It doesn’t seem very useful to complete just the command name.

  To get programming help use the chimera-dev mailing list.  The Chimera developers here, Eric, Conrad, Greg and I will answer any technical questions through that list.

	Tom



> On Jul 15, 2015, at 10:40 AM, Broyde, Joshua E. wrote:
> 
> Dear Tom,
> I hope you are well. I have a general question/issue regarding the Chimera user interface that I wanted to discuss with you.
> The Chimera GUI user interface is extremely intuitive and well done, but I was wondering if it would be possible to beef up the command-line user interface? For example, it would be nice if there was tab completion within the command-line interface For example, if a user typed "mat" and then a tab, the command line could show "match", "matchmaker", "matrixcopy" ,""matrixget", and "matrixset". Other features could include a more robust history search, for example.
> 
> These kind of things are implemented in other command-line interfaces for other resources, such as Bash, iPython, and Rstudio.
> 
> This is something that I was thinking of doing myself to make my work more efficient, except that I don't know where to begin from a programatic perspective. Are there any files/directories or things I should know about how the command-line works internally in Chimera that would help for implementing this? Is there a point person at RBVI I could contact to ask questions regarding this? I need to generally know more about the internal guts of the CLI of Chimera before beginning.
> 
> Of course, if I produce something useful, I will share it with you so you can share it with the general Chimera community.
> 
> Sincerely,
> Joshua Broyde

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://plato.cgl.ucsf.edu/pipermail/chimera-dev/attachments/20150715/400a71f5/attachment.html>


More information about the Chimera-dev mailing list