I was trying to customize the bindings and found this code in remapping.h:
bind(context, key_right, MDFR_CTRL, seek_whitespace_right); bind(context, key_left, MDFR_CTRL, seek_whitespace_left);
I thought it means that seek_whitespace_right and left is what the cursor normally does when you press ctrl and arrows -- skip words and stop at underscores (which is very convenient, btw). But I tried to do the following:
bind(context, 's', MDFR_ALT | MDFR_CTRL, seek_whitespace_left); bind(context, 'f', MDFR_ALT | MDFR_CTRL, seek_whitespace_right);
and the cursor actually seeks white spaces in this case (I want it to seek underscores). How is it possible that the same functions in two different situations do different things? Am I misunderstanding something? What are these functions supposed to do?
When I do a very similar thing:
bind(context, 'e', MDFR_ALT | MDFR_CTRL, seek_whitespace_up_end_line); bind(context, 'd', MDFR_ALT | MDFR_CTRL, seek_whitespace_down_end_line);
everything works perfectly -- it seeks empty lines up and down.