-
-
Notifications
You must be signed in to change notification settings - Fork 39.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ideas for features and optimizations #272
Comments
|
|
|
|
You should be able to use |
It's way to messy to clean up right now. I made a gist of |
Cool - you can see it compared to QMK's current action.c here. |
So what do you think? Any questions? Ignore the stuff for Oneshot modifiers for now. I'll get to that later. |
I can't dig too much into it right now but it looks good! |
and a lot clearer :) but still using weak_mods? |
@mecanogrh I want to do away with those. |
I think I've cleaned up all the changes having to do with modifiers. Should I send a pull request? |
Yeah! It'll be a lot easier to review the changes there. |
@jackhumbert We're not going to continue this thread? |
@jackhumbert Is supporting the reversed diode orientation and keyboards without diodes at all very important to you? There are a few decisions about the code I'm having a hard time making. |
Reverse diodes are important - I'm not sure what you mean by keyboards w/o them. |
So I've been thinking about changing |
I think keeping the "rows" and "columns" terminology is more important - the "input" and "output" stuff should be limited to the implementation of the matrix scanning in matrix.c. I'd like to go through and update each project, then contact someone with that board/controller to test it out, but that's a bit farther down the road. |
Yes, the terms "input" and "output" would only be seen in Should I go ahead and change those files without testing them? Do you want to support keyboards that ghost? It looks like some of the grandfathered keyboards do. I've made some changes that might cause them to short. |
I would prefer to do this sort of modification myself, sorry. |
Which one are you talking about? I can try to explain, if needed. |
@jackhumbert Sorry to ask another question, but my debugging skills are at their limit. Have you made any fundamental changes to the way keystrokes are processed recently? I have a branch in which my efficient version of |
I would just try to take a look at the commits and trace back. Remember that you can switch branches once you commit your changes. |
So making a copy of that branch and running |
@ETLang - https://www.codeschool.com/learn/git - highly recommended. |
@ezuk Git wasn't really the problem. My code just seems fragile for some reason. |
being proficient in git really helps track down issues. of course, this is just a suggestion. |
@ezuk Well, I have a commit that's causing my keyboard to not work, but it really only consists of refactoring. How can I use git to help me? |
@jackhumbert @ezuk So it turned out that I made an insanely stupid mistake in the code. |
@eltang you don't have to announce it ;) |
@jackhumbert I guess you like surprises then? :P |
@eltang I mean, you don't have to comment here saying that you made a mistake - just open the PR and we'll talk about it there. It saves us a bit of time. |
@jackhumbert Ah. I just wanted to make sure you and @ezuk didn't keep looking for a solution to my problem in the meantime. |
@eltang I don't know about Erez, but I thought you resolved it.. either way, talking about it with us able to see the resolution/fix is always preferred. |
@jackhumbert Oops, brain fart. My code broke again after that, but for some reason I thought it was the same problem. Sorry about that. |
TMI On Fri, May 20, 2016, 11:53 Eric Tang notifications@github.com wrote:
|
@eltang this is what I was talking about - fewer status updates, more results :) or: don't just tell, show. I'm gonna lock this thread for now as encouragement ;) |
I have some ideas for features and optimizations and I would like to discuss them here. They will require quite substantial changes and I want to make sure that they will be merged before making them.
action.c
.weak_mods
andmacro_mods
. Thereal_mods
are changed every time the modifiers that are being sent to the system need to be changed. However the catch is that manual modifier state changes that are performed by the user are stored aphysical_mods
variable. On every press,real_mods
will be set tophysical_mods
. In addition, theS()
macro and its friends will be changed. Instead of simply applying the modifier, it sets the state of the modifier inreal_mods
to the inverse of the state of that modifier inphysical_mods
. The purpose of all these changes is to make it possible for layouts like Programmer Dvorak to be easily programmed and work seamlessly after that.The text was updated successfully, but these errors were encountered: