On 24/01/2026 20:59, Michal Navratil wrote:

Hello Paul,

Hello Michal,


thank you for the kind reply.

Btw. wouldn't AI-assisted coding help you?
It does help me. I am part-way through a blog-post/article about it.
 Americans are already pretty near this milestone - you get like the most of it written and than just go through it and make it perfect...

There are technical limitations. This fragment of Coot is about 500k loc, say about 2M tokens. Using Claude, I get 200 k tokens budget - that's an order of magnitude less than it needs to understand the context. Or so I believe. I actually haven't tried asking Opus 4.5 to make the fix - maybe it could do it. If I tried, it would blow my budget for the rest of the month I imagine (and I now like programing with a Claude window open).

 I think it is like with the progressive Italians making their marble sculptures using 400 000 USD robots - they make 99 %, but the final human touch makes them perfect...

My experience so far has been largely the other way around, as long as I have put in place the groundwork, dug the foundations, as it were, it can do a nice job with the building and decoration.

May be I will add, besides stressing how important is the cross-eye stereo, some other suggestions, like a hot key for moving by 10 residues (thanks for space forward and shift+space backward, that is awesome) (ctrl+space 10 forward and ctrl+shift+space 10 backward?).
One of those things is not like the other! (one is 5 days (or more) and the other is 5 minutes (or less)).

The key-bindings/shortcuts system has been re-written from scratch and is now flexible. Lucrezia is the doyen of all things key-binding.

Anyway see attached - stick it in your ~/.config/Coot directory (and restart, of course).

There isn't a key-code for Shift-Space so backwards is Ctrl-X. You can check that it's been stored using coot.print_key_bindings() in the Python interface.

Oh, and on testing, it became apparent that it would be nice if there was a visual cue meaning or saying "that residue doesn't exist" - that isn't available in scripting (not easily, anyway). I will add something.

Paul.

p.s. and (Adrian) for the record, the Gravity's Rainbow reference was something to do with getting your message past the text filter? - with ironic overtones, perhaps?


########################################################################

To unsubscribe from the CCP4BB list, click the following link:
https://www.jiscmail.ac.uk/cgi-bin/WA-JISC.exe?SUBED1=CCP4BB&A=1

This message was issued to members of www.jiscmail.ac.uk/CCP4BB, a mailing list 
hosted by www.jiscmail.ac.uk, terms & conditions are available at 
https://www.jiscmail.ac.uk/policyandsecurity/
import coot
import gi

def ten_step_internal(offset):
    ar = coot.active_residue_py();
    if ar:
        new_res_no = ar[2] + offset
        coot.set_go_to_atom_molecule(ar[0])
        coot.set_go_to_atom_chain_residue_atom_name(ar[1], new_res_no, ar[4])

def ten_step_plus():
    ten_step_internal(10)

def ten_step_minus():
    ten_step_internal(-10)

# ctrl space ("What is the gdk key hexcode for the space key?")
coot.add_key_binding_gtk4_py(int(0x20), 1, ten_step_plus, "The 10-step program")
# ctrl x
coot.add_key_binding_gtk4_py(int(0x78), 1, ten_step_minus, "The negative 10-step program")

Reply via email to