Closed nkh closed 1 year ago
@nkh d2aa6429b691dd4ab6fe077abb980daf53c820ed
I still don't understand how to set up vim's related bindings I added three colors so you need to update your config file for this to work
cross_element_backgroud => [0.93, 0.93, 0.88],
cross_filler_background => [0.83, 0.83, 0.78],
normal_filler_background => [1.00, 0.88, 1.00],
gui.pl
Only updating basic.pl cannot get these nested hash values. When basci.pl and gui.pl coexist.
there's almost no difference between setting up bindings in the gui and the tui
let me explain why we want to use vim-like bindings, let's say, to simplify, that we just have 26 letters, no uppercase
using ctl + alt + key gives us around 100 combinations letter + letter + letter gives use around 18 000
if we hade uppercase, ie, 52 letters using ctl + alt + key gives us around 200 combinations letter + letter + letter gives use around 140 000
typing ctl + alt + key is not faster than key + key + key, and even less key + key
of course we don't need tens of thousands of combinations
do you know what CA0-a does? C0S-A? 0AS-a? CAS-A? C00-A? 0A0-a? 00S-a? ... without looking at the docs
if noticed that you defined a sub binding group with some binding needing the control key to be pressed, you'll soon see that it's very difficult to remember.
the whole point vim-like binding is to remember them, it's not a perfect system but it's expandable and easier to remember
let me give you and example, we have multiple types of boxes, let's say
let' start with a generic binder «i» for insert then «b» for box
the good thing here is that we can use the same thing for arrows but with «ia» as a prefix
but let's imagine that you come up with 4 new types of unicode borders (well you have), I don't want to imagine how to do that with the mouse, and with ctl + .... we've run out of shortcuts that are easy to remember. on the other hand ...
I used 1, 2, and 3 because I was lacking imagination but
would have given us keys to remember.
now a quick questionary, do you remember (although you've just seen it):
insert a box, a box using unicode type 2, a box that shrinks, a box with the default unicode?
Don't worry about the vim-bindings right now. as soon as i have some time I'll got through all the bindings and propose a change, specially for gui shortcuts, and create those that are missing.
No you can't really change nested hash values, not easily, this happens seldom so it's OK
I looked at your commit, good work, I propose you don't do more work on that branch before I merge it, it looks like I will have to do it manually.
Work on another part, one that you can branch from my main branch, not the old main branch.
how did it go with the synching via github?
@nkh
synching via github Your main branch has been completely synchronized, and there seems to be no problem at present.
The development I have done on your latest branch has no conflict.
About shortcut keys, to be honest, I really can't remember. I'm using it now while viewing default_binding.pl! ! !
Vim's mode is correct.
It's merged and I have added a commit about vim-like bindings.
I will run tests and try to understand the Cross mode, there's a lot to learn.
@qindapao, most of the module is code you added for cross and line handling, I recommend you start by refatoring that code in a separate module, Asciio::Element::Cross or something like that.
I notice that you've added
which is good but I'd like to set a few directives for that, please look in this ticket #39
1006 sub add_cross_elements 1093 sub scene_cross 1112 sub scene_dot 1128 sub scene_apostrophe 1142 sub scene_unicode_cross 1156 sub scene_unicode_cross_lose_right 1171 sub scene_unicode_cross_lose_left 1186 sub scene_unicode_cross_lose_up 1201 sub scene_unicode_cross_lose_down 1216 sub scene_unicode_right_down 1231 sub scene_unicode_left_down 1246 sub scene_unicode_left_up 1261 sub scene_unicode_right_up 1276 sub scene_x 1291 sub scene_unicode_x 1307 sub create_line