Comments (15)
it appears that the pqrs-org/Karabiner-Elements#3627, so i wondered if it was an issue in your case.
@godbout I don't notice any slowness, but I don't use it in a tight loop - just to activate a scroll mode.
would you still rather get the remapping natively within Scrolla?
Personally, I'm fine with either, but it is indeed quite a sophisticated setup. Not everyone would be motivated.
also if you don't mind sharing, it'd be interesting for me to know what kind of remapping you (and others) are doing. thank you!
I'm on Dvorak and I don't use hjkl
at all. I have a dedicated layer on a keyboard, where I bound arrow keys to the physical hjkl
keys. So I remapped hjkl
to arrows. Here are all the remappings.
from scrolla.docs.
ah, i see. didn't make sense coz i had kindaVim in mind, but yeah, i see, you wanna keep the home row. usually what i've been recommending for custom mapping is using Karabiner-Elements or Hammerspoon. Karabiner-Elements is especially made for this. although for Scrolla itself, it's less of an issue to add a few custom keys. it's not like a whole .vimrc like for kV. so yeah, added to the list of things to explore. thanks. no ETA tho. will update the thread once i start digging.
from scrolla.docs.
@alex35mil does it work well? i had to remove the Distributed Notifications and replace them by something else for kV coz it was too slow and kinda unpredictable.
is your solution working exactly the way you want? or would still adding settings to change the default keys be useful natively? i'd like to add that to Scrolla but as usual when you start digging then it becomes a series of hard questions: do i allow only one mapping? several? one keys or several keys? how do i represent things in the Settings? text input? dropdowns? blah blah blah. lemme know what you have in mind. that'll help me figure out something. thanks.
from scrolla.docs.
I believe for most vim users this should be as "simple" as using a config file to remap things..
so basically writing a Karabiner-Elements from scratch 🤣️🤣️🤣️ in that case i have a really hard time seeing the point. especially for Scrolla. for kV yes, but for Scrolla (and Wooshy), i'd expect having a bunch of users that are not super into Vim or don't care about Vim motions, so my idea would be to allow anyone to change the mapping easily through the UI. if it's through config files then why not using KE/Hammerspoon? macOS keyboard remapping is its whole thing in itself, which is why you have tools like KE taking care just of this.
what i can see is that there's definitely a stronger and deeper need for kindaVim. so i'll have to dig into this. but this needs to be 1) done separately, maybe as a package 2) heavily tested. once done i may want to use that package for Wooshy and Scrolla. but again, that may mean 1) specific syntax for kV/Wooshy/Scrolla (which is a disadvantage imo) rather than widespread KE 2) heavy work that is not gonna happen overnight.
but this involves adding some "doc" page explaining what format to use (maybe toml?) and what things are able to modify, also, I believe the settings UI would be nine to allow the user search/pick the config file.. in my case I would place this file in
.local/scrolla/config.toml
but that may be different for other users
yeah this also brings a whole lot of discussion. some people want yaml, some want toml, some want json, others want edn. some want the stuff to be stored in macOS's standard folders. some in XDG directories, blah blah blah.
not discarding the whole idea because in the long term i think it's very needed, again at least for kV, to have native kV remapping. but in the short/middle term i want something simpler. at least development wise, and for mainstream users. something that i can get out in a few weeks, and still heavily tested (automatedly. yes just invented the word).
from scrolla.docs.
@godbout hey, I'm using Distributed Notifications without any issues. I use Hammerspoon to listen for the notifications + to set a Karabiner variable, and Karabiner to do the remappings. I don't see any perf issues with this setup and things work the way I want it.
from scrolla.docs.
@godbout I don't notice any slowness, but I don't use it in a tight loop - just to activate a scroll mode.
ok. good to know. thanks.
Personally, I'm fine with either, but it is indeed quite a sophisticated setup. Not everyone would be motivated.
yeah. i think for kV i'd except for people to be ok with KE and Hammerspoon but for Scrolla and Wooshy not so much.
I'm on Dvorak and I don't use
hjkl
at all. I have a dedicated layer on a keyboard, where I bound arrow keys to the physicalhjkl
keys. So I remappedhjkl
to arrows. Here are all the remappings.
thank you! was curious about sequences rather than single letters.
if you're using Scrolla intensively, you may want to chip in here: #16 (comment)
pondering a way to move the cursor around for apps that don't support the macOS Accessibility.
from scrolla.docs.
you mean keyboards without jkduGg
keys? the keys aren't "hardcoded", and respond to users' keyboard layouts. or is there something i'm missing?
from scrolla.docs.
i'm asking coz i'm not sure if you're literally talking about options to choose your own ways to scroll, like m
instead of j
for example (this currently doesn't exist), or if you're having issue with different keyboard layouts (this should be taken into consideration and if it doesn't work then it's a bug).
from scrolla.docs.
it's not a bug per se, more like a feature consideration, what I'm trying to say is that I use a different keyboard layout distribution, so, the letters hjkl
are not in the home row (except for k), so, I was wondering if there is a way to re-map the current keys to something else.
from scrolla.docs.
+1 for that. Much prefer IJKL to match my Ferris Arrow layout
from scrolla.docs.
+1 for that. Much prefer IJKL to match my Ferris Arrow layout
well i could do a native solution, but you can do it with KE and Hammerspoon. see post above.
from scrolla.docs.
I configured Karabiner to enable a Scrolla layer with my remappings and disable it on Esc
, but it is far from perfect since I can leave the scrolling mode not only via Esc
, but literally with any key combo or a click and I'm not sure if there's a reliable way to make Karabiner to unset the variable on any keystroke except the ones I use for scrolling.
It would be great to have an option to change the defaults instead of dealing with Karabiner.
from scrolla.docs.
I found the section regarding the Distributed Notifications API and implemented it via Hammerspoon + Karabiner [commit].
from scrolla.docs.
do i allow only one mapping? several? one keys or several keys? how do i represent things in the Settings? text input? dropdowns? blah blah blah. lemme know what you have in mind. that'll help me figure out something. thanks.
I believe for most vim users this should be as "simple" as using a config file to remap things.. but this involves adding some "doc" page explaining what format to use (maybe toml?) and what things are able to modify, also, I believe the settings UI would be nine to allow the user search/pick the config file.. in my case I would place this file in .local/scrolla/config.toml
but that may be different for other users
from scrolla.docs.
@godbout hey, I'm using Distributed Notifications without any issues. I use Hammerspoon to listen for the notifications + to set a Karabiner variable, and Karabiner to do the remappings. I don't see any perf issues with this setup and things work the way I want it.
thanks for letting me know. it appears that the CLI might be slow, so i wondered if it was an issue in your case. would you still rather get the remapping natively within Scrolla? also if you don't mind sharing, it'd be interesting for me to know what kind of remapping you (and others) are doing. thank you!
from scrolla.docs.
Related Issues (20)
- AX splash-screen shows "Quit Wooshy" HOT 2
- Option to scroll on key press without holding HOT 11
- Allow passthrough HOT 5
- Distributed Notifications API HOT 3
- issue with showing canvas in certain cases HOT 2
- Selection border not showing for scrolling in `qlmanage` PDF preview HOT 10
- Active app unable to receive keystrokes after Scrolla on Spotlight HOT 5
- Single j press keeps scrolling while others behave as expected HOT 21
- Allow "acceleration" option for scrolling HOT 4
- Any reason to not scroll with up/down? HOT 7
- not working on Arc HOT 14
- Does not support switching between multiple scrolling areas in Electron programs HOT 19
- Feature Request: double tap for faster scrolling HOT 2
- Arc browser main pane not supported when sidebar is open HOT 3
- Seems to get the main window scroll only HOT 8
- Not compatible with BetterMouse very well. HOT 6
- URI controls HOT 2
- Scrolla crashes when used on Microsoft Outlook HOT 5
- Feature request: use H/L or J/K to move between scrollable areas HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from scrolla.docs.