Skip to content
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

Cleanup and readme rewrite #42

Merged
merged 3 commits into from Mar 22, 2015
Merged

Cleanup and readme rewrite #42

merged 3 commits into from Mar 22, 2015

Conversation

vspinu
Copy link
Collaborator

@vspinu vspinu commented Mar 12, 2015

I have removed some trailing paranthesis here and there (this is the emacs core convention). Added some missing autoloads and wrote a completely new readme.

uk-ar added a commit that referenced this pull request Mar 22, 2015
Cleanup and readme rewrite
@uk-ar uk-ar merged commit 48a1810 into uk-ar:master Mar 22, 2015
@uk-ar
Copy link
Owner

uk-ar commented Mar 22, 2015

It's awesome!! 😄

@uk-ar
Copy link
Owner

uk-ar commented Mar 22, 2015

@vspinu To be honest, I cannot maintain this package for a log time. So, I wanted you to join this project as maintainer, if yor're interested.

How about this?

@vspinu
Copy link
Collaborator Author

vspinu commented Mar 22, 2015

@vspinu To be honest, I cannot maintain this package for a log time. So, I wanted you to join this project as maintainer, if yor're interested.

How about this?

Yes. I would be happy to join. I think it's a very good start. I am a bit unhappy that I have discovered it only now.

I have a couple of questions. Where did you inspire yourself for this implementation? Are you aware of other projects that do similar stuff? How key-combo compares to them?

Also, why did you stop working on it? Do you still think that 1pre-command1 hook is the best way to go?

Thanks.

@vspinu
Copy link
Collaborator Author

vspinu commented Mar 23, 2015

I would like to streamline the user interface first. That might introduce some slight backward incompatibilities. I hope you are fine with that. It might also require bumping the version to 2.0 to indicate changes in UI.

For now, I would like to refactor the configuration a bit by moving all config options into key-combo-config.el and declare multiple levels of defaults. Something like key-combo-lisp-keys-1 for very basic keys that all people would agree upon, all the way to key-combo-lisp-keys-10 that would include all the keys that anyone can think of. With the graduate build up of the keys in intermediate key-combo-lisp-keys-N where 1 < N < 10. This would allow flexible modification and addition of defaults in the future.

I also would like to move the changelog coments into a separate CHANGELOG.md to air key-combo.el a bit more.

@uk-ar
Copy link
Owner

uk-ar commented Mar 23, 2015

Thank you for accepting my proposal! Now you can push to this repository in directory.

I'm not good at English, but I'll try to answer your question one by one.

Where did you inspire yourself for this implementation? Are you aware of other projects that do similar stuff? How key-combo compares to them?

Key-combo is inspired by 2 Elisp

Smartchr.el is a Elisp to support input several candidates with a single
key, like ess-smart-underscore in Emacs Speaks Statistics -- when user types
"=" key, it inserts " = " for the first time or it replaces " == " by "=" for
the second time.

Sequential-command.el Integrate multiple commands into one command. Pressing C-e goes to end of line for the first time, and it goes to end of buffer for the second time.

Smartchr.el can map command to only one key, So I frustrated with the situation when typing mix key.

For example, I type "=>" as ruby hash but it insert " = >". So I wrote key-combo, that insert " => ".

@uk-ar
Copy link
Owner

uk-ar commented Mar 24, 2015

Also, why did you stop working on it?

I prefer using language specified code formatter, e.g. go fmt, autopep8, rubocop. But I also want to use interactive and language independent code formatter especially for the new language like Swift.

Do you still think that 1pre-command1 hook is the best way to go?

That's difficult problem. 1pre-command hook is not good design, because it need many global variables and command loop informations. I also try post-command hook or independent command loop, but it has other problems with emacs client or other Elisps using pre-command hook.

Now I try to develop line oriented formatter named electric-formatter. It used electric indent mode, so it is less interactive than key-combo but more easy to maintain and configure.

@vspinu
Copy link
Collaborator Author

vspinu commented Mar 24, 2015

Thanks for the explanation. I have added a "related projects" section to the readme.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants