kindaVim.docs icon indicating copy to clipboard operation
kindaVim.docs copied to clipboard

CANNOT open on MacOs15 Sequoia Beta1

Open 0xCABBA6E opened this issue 1 year ago • 47 comments

Hello!

I just discovered this great app "KindaVim" today, but can't open it on the latest Mac system (MacOs15 Sequoia Beta1).

My colleague uses this app well on macos14.

I upgraded to the latest macos yesterday to try out the new features, but nothing... trying to downgrade to macos14 now.

Can u start trying to adapt to macos15, or can I build a version locally?

Thanks!

0xCABBA6E avatar Jun 12 '24 07:06 0xCABBA6E

I downloaded KindaVim from the official website and homebrew, then double-clicked it, but nothing happened.

0xCABBA6E avatar Jun 12 '24 07:06 0xCABBA6E

I just discovered this great app "KindaVim" today, but can't open it on the latest Mac system (MacOs15 Sequoia Beta1).

yeah. that was a bold move to except it to work on a first developer beta 🤣🤣🤣 especially on macOS 15. Swift 6 now. breaking changes. a lot of apps are gonna crash. kV included.

Can u start trying to adapt to macos15

i did check how all my apps work on Sequoia and yeah two of them crash. might take some time to upgrade them to Swift 6. no idea. the whole thing was just released like a day ago.

or can I build a version locally?

什么哈哈哈哈哈哈哈

godbout avatar Jun 12 '24 07:06 godbout

I downloaded KindaVim from the official website and homebrew, then double-clicked it, but nothing happened.

yeah nothing to do with download location. kV will just crash when you open it, that’s it. from the logs i kinda believe it’s from the event tap system. also Apple is release a whole new HID Framework in beta to handle keyboard presses etc. so yeah, i’m gonna do the work to get kV working for the macOS 15 release for sure, but no idea yeah how long it’s gonna take. will see if i can do some hack to make kV work in the betas tho.

godbout avatar Jun 12 '24 07:06 godbout

OH, Thanks for your reply!

I always thought that rolling back the version was as simple as clicking on the system boot, but I found out that it is not. I can't roll back the system version. I don't have enough time and energy to erase the data and migrate again.

This is too bad for me, not because the beta system is bad and cannot be rolled back, but because I found this treasure software the day after I updated the new system, but I can't use it....

This might help me cure my obsessive compulsive disorder...

And may be exists other method that can temply run on macos15?

In the end, thanks your development for vim ecology and waiting your good news!

( 可以中文沟通啊哈? )

0xCABBA6E avatar Jun 12 '24 09:06 0xCABBA6E

I just discovered this great app "KindaVim" today, but can't open it on the latest Mac system (MacOs15 Sequoia Beta1).

yeah. that was a bold move to except it to work on a first developer beta 🤣🤣🤣 especially on macOS 15. Swift 6 now. breaking changes. a lot of apps are gonna crash. kV included.

MacOs15 Sequoia Beta1 does not have any new features as advertised. The experience is terrible! I was attracted by the new feature "iPhone Mirror", but it turned out to be unusable. Not only is there a lack of new features, but it also causes important and efficient software to crash.

I think I will NOT upgrade any macos beta version in the future

0xCABBA6E avatar Jun 12 '24 09:06 0xCABBA6E

MacOs15 Sequoia Beta1 does not have any new features as advertised. The experience is terrible! I was attracted by the new feature "iPhone Mirror", but it turned out to be unusable. Not only is there a lack of new features, but it also causes important and efficient software to crash.

yes. it's a Developer Beta. it's made for developers to see if their apps are running well, try new APIs, etc. some APIs will be deprecated or removed so developers need to make changes. having the Developer Betas now gives a few months for developers to adjust. definitely not for the public. i don't even install the Public Beta on my production machines.

I think I will NOT upgrade any macos beta version in the future

if you're just a user you better avoid the Developer Betas and try the Public Betas instead. usually they come out one month after the Developer ones. personally i don't install them on my prod machines yeah coz there's still issues, and i get used so quick to stuff not working that when the official release happens i don't wanna use those new stuff anymore 😂️

godbout avatar Jun 12 '24 11:06 godbout

This is too bad for me, not because the beta system is bad and cannot be rolled back, but because I found this treasure software the day after I updated the new system, but I can't use it....

gonna work on it tonight. but busy the next couple of days. let's see.

And may be exists other method that can temply run on macos15?

you could install a macOS 14 VM with UTM: https://github.com/utmapp/UTM

In the end, thanks your development for vim ecology and waiting your good news!

my pleasure. i need my moves everywhere hehe.

( 可以中文沟通啊哈? )

可以吹水哈哈哈哈哈哈。我今年开始学普通话。我住在澳门,这里中国人说广东话但是我今年一个星期一次去大陆练习普通话hehe.

godbout avatar Jun 12 '24 12:06 godbout

希望我会进步!中文很他妈难。操。

godbout avatar Jun 12 '24 12:06 godbout

yes. it's a Developer Beta. it's made for developers to see if their apps are running well, try new APIs, etc. some APIs will be deprecated or removed so developers need to make changes. having the Developer Betas now gives a few months for developers to adjust. definitely not for the public. i don't even install the Public Beta on my production machines.

if you're just a user you better avoid the Developer Betas and try the Public Betas instead. usually they come out one month after the Developer ones. personally i don't install them on my prod machines yeah coz there's still issues, and i get used so quick to stuff not working that when the official release happens i don't wanna use those new stuff anymore 😂️

oh, got it. To be honest, I even not notice the develop beta tag, and never not noticed the difference between developer beta and public beta. After this time, I finally remembered. Fine...

0xCABBA6E avatar Jun 12 '24 14:06 0xCABBA6E

gonna work on it tonight. but busy the next couple of days. let's see.

Thk! Waiting for your adapting! Actually I use karabiner for textinput all the time, so that i won't be stuck on small textinput.

you could install a macOS 14 VM with UTM: https://github.com/utmapp/UTM

But it only is vm, not on prod machine. hh, I can install a macos14 on my ParallelDesktop machine to just experience the smooth fuellings while using KD.

0xCABBA6E avatar Jun 12 '24 14:06 0xCABBA6E

可以吹水哈哈哈哈哈哈。我今年开始学普通话。我住在澳门,这里中国人说广东话但是我今年一个星期一次去大陆练习普通话hehe.

希望我会进步!中文很他妈难。操。

哈哈,那是一个有活力的好地方!语言这个东西吧不是母语硬去学太费劲了,我从小到大到现在的英文水平也就刚会写流水账的吊样子。

Good night and thk again👏🏻

0xCABBA6E avatar Jun 12 '24 14:06 0xCABBA6E

Thk! Waiting for your adapting! Actually I use karabiner for textinput all the time, so that i won't be stuck on small textinput.

not so good news. first, if i compile on macOS 15 it doesn't crash. hmm. maybe the SDK. bad news tho is that Apple doesn't allow kV anymore to listen to keystrokes. not sure why. maybe another round of tightening security. hope kV will not require disabling the SIP, coz if that's the case then the project is off. will need more time to research, and no ETA possible.

But it only is vm, not on prod machine. hh, I can install a macos14 on my ParallelDesktop machine to just experience the smooth fuellings while using KD.

yah, same as PD.

godbout avatar Jun 12 '24 17:06 godbout

哈哈,那是一个有活力的好地方!语言这个东西吧不是母语硬去学太费劲了,我从小到大到现在的英文水平也就刚会写流水账的吊样子。

我们要加油哈哈哈哈

Good night and thk again👏🏻

will keep you updated for when i have something working.

godbout avatar Jun 12 '24 17:06 godbout

Thk! Waiting for your adapting! Actually I use karabiner for textinput all the time, so that i won't be stuck on small textinput.

not so good news. first, if i compile on macOS 15 it doesn't crash. hmm. maybe the SDK. bad news tho is that Apple doesn't allow kV anymore to listen to keystrokes. not sure why. maybe another round of tightening security. hope kV will not require disabling the SIP, coz if that's the case then the project is off. will need more time to research, and no ETA possible.

Oh, I forget to leave my sys info.

PC Chip MacOsVersion
MacBookPro 2020 13.3inch Apple M1 Version 15.0 Beta (24A5264n)

After your reminder and my experience yesterday, I also found a problem with the keyboard listening. That's a Safari extension, named 'Immersive Translate', whose basic function works well, only a function about holding 'alt' and then moving the mouse pointer to something content to translate is bad. Whatever I reinstall or reboot my PC or reset to default, no matter what I do it does always not work.

I think maybe they are the same kind of problem, or else it is a new system-level strict security limit.

Whatever, hope it is only a bug. Bless Bless Bless.

0xCABBA6E avatar Jun 13 '24 01:06 0xCABBA6E

not so good news. first, if i compile on macOS 15 it doesn't crash. hmm. maybe the SDK. bad news tho is that Apple doesn't allow kV anymore to listen to keystrokes. not sure why. maybe another round of tightening security. hope kV will not require disabling the SIP, coz if that's the case then the project is off. will need more time to research, and no ETA possible.

I just remembered that 'KarabinerElements' always works well on macOS15, isn't its principle through listening to keyboard events to hijack and forward? It works well, maybe can throuthing some ideas for you.

0xCABBA6E avatar Jun 13 '24 02:06 0xCABBA6E

I just remembered that 'KarabinerElements' always works well on macOS15, isn't its principle through listening to keyboard events to hijack and forward? It works well, maybe can throuthing some ideas for you.

Karabiner-Elements is a low level keyboard virtual driver. it replaces the Apple keyboard driver and grabs everything at the OS level, before things are passed to other apps. it's a complete different system. kV doesn't need to do this. or shouldn't need. but if it's a new SIP restriction then yeah, might have to go the KE way. but that's a total different project lol

godbout avatar Jun 13 '24 05:06 godbout

Karabiner-Elements is a low level keyboard virtual driver. it replaces the Apple keyboard driver and grabs everything at the OS level, before things are passed to other apps. it's a complete different system. kV doesn't need to do this. or shouldn't need. but if it's a new SIP restriction then yeah, might have to go the KE way. but that's a total different project lol

Fine... Now I'm temporarily using VE's Vim mode. Good luck to us. 🧐

0xCABBA6E avatar Jun 13 '24 06:06 0xCABBA6E

I would like to ask, can KV be used in electronic applications such as Notion?

0xCABBA6E avatar Jun 13 '24 10:06 0xCABBA6E

I would like to ask, can KV be used in electronic applications such as Notion?

you mean Electron? to be able to "calculate" Vim motions apps need to return a whole bunch of correct info. native apps do by default. Electron need to implement this themselves. most of them don't. in that case kV needs to do the Vim motions by simulating key presses rather than doing text calculations/manipulations. so some moves are missing, some are "less" accurate, etc. there's a Wizard that shows you the current information about an app, and where put it in the Settings. if an app is not found, you can request it and i investigate.

Screenshot 2024-06-13 at 23 34 57

godbout avatar Jun 13 '24 15:06 godbout

I would like to ask, can KV be used in electronic applications such as Notion?

you mean Electron? to be able to "calculate" Vim motions apps need to return a whole bunch of correct info. native apps do by default. Electron need to implement this themselves. most of them don't. in that case kV needs to do the Vim motions by simulating key presses rather than doing text calculations/manipulations. so some moves are missing, some are "less" accurate, etc. there's a Wizard that shows you the current information about an app, and where put it in the Settings. if an app is not found, you can request it and i investigate.

yeah, Spelling mistakes, I mean Electron app. I have seen your discuss on reddit, felling it's also a problem. Does the words 'you have to add it to the Key mapping' in the picture mean I can customize special commands such as mapping h to left arrow, mapping l to right arrow, mapping x to delete for special not working correctly apps( like some electron ) by myself to implement my vim motion in KE's settings? If this is what I think, maybe it's enough for some simple edit on Notion.

0xCABBA6E avatar Jun 14 '24 01:06 0xCABBA6E

Report, Wooshy also can't run on macos15 like KV, only scrolla works well.

0xCABBA6E avatar Jun 15 '24 07:06 0xCABBA6E

yeah, Spelling mistakes, I mean Electron app. I have seen your discuss on reddit, felling it's also a problem. Does the words 'you have to add it to the Key mapping' in the picture mean I can customize special commands such as mapping h to left arrow, mapping l to right arrow, mapping x to delete for special not working correctly apps( like some electron ) by myself to implement my vim motion in KE's settings? If this is what I think, maybe it's enough for some simple edit on Notion.

TL;DR: with the Key Mapping Family kV will remap the keys for you. no need to add anything to K-E.

longer explanation:

nah. you'll be able to get more info from The Wizard when you can run kV.

https://github.com/godbout/kindaVim.docs/assets/121373/7eec62f9-3ef8-45b4-bb84-6a79d28cf4d4

there's some info also in the README from this repo but briefly.

basically with kV the idea is that the user has to do as little as needed. but because of the nature of the project, macOS, non-native apps not respected standards etc., things can't be perfect. if the app kV is dealing with properly implements the macOS Accessibility, then kV manipulates text buffer. everything is calculated and manipulated, and the accuracy of the motions is usually on par with Vim. that's what is called the Accessibility Strategy in kV. when the app kV is dealing with doesn't implement the macOS Accessibility properly, kV can't then manipulate and make buffer calculations, so instead it remaps keys. this is called the Keyboard Strategy in kV. automatically your h will be remapped to the left arrow, j to down, etc.

so why is this not done automatically? well actually it is lol. if kV detects that an app doesn't return proper data, then it switches to the Keyboard Strategy automatically.

BUT it's still more a little complicated than that:

  1. some apps have good macOS Accessibility support but ONLY for reading, not for writing (those apps go into the PG-R Family). some Electron apps are better implemented than others (those go to the Electron Family, the ones with shittier implementation go to the Key Mapping Family). some apps are so bad that kV can't even detect if an input is text or not. those ones go to the 911 Family.
  2. some behaviors ultimately will be up to the users and which moves they wanna use, or which trades-off they wanna have. for example one app could be put in the Electron Family where you would be able to move with great precision, but you wouldn't be able to delete or you could add it to the Key Mapping Family where you could move and delete but with less precision. this is up to the user to choose what they'd prefer.

so overall, there is this system of The Wizard. if you find that the app you're using doesn't work very well with kV, you send it to The Wizard. The Wizard tells you what's the issue with the app, and in which Family to put it, depending on what UX you're looking for. if The Wizard cannot find the app, you can make a request and i'll investigate how that app is done, and i'll be added to The Wizard in the next release.

there's a use for K-E (and Hammerspoon) with kV tho: when you want to have custom remapping. currently there's no support in kV for custom remapping. one of the reason is that there's tools that are especially done for that, like K-E. so it's not a priority for now in kV. may be done one day, but if done it has to be done properly, so it's gonna take time.

godbout avatar Jun 16 '24 03:06 godbout

Report, Wooshy also can't run on macos15 like KV, only scrolla works well.

yes, same issue with event taps. seems that one is solvable more easily. i'm expecting a release next week.

godbout avatar Jun 16 '24 03:06 godbout

yeah, Spelling mistakes, I mean Electron app. I have seen your discuss on reddit, felling it's also a problem. Does the words 'you have to add it to the Key mapping' in the picture mean I can customize special commands such as mapping h to left arrow, mapping l to right arrow, mapping x to delete for special not working correctly apps( like some electron ) by myself to implement my vim motion in KE's settings? If this is what I think, maybe it's enough for some simple edit on Notion.

TL;DR: with the Key Mapping Family kV will remap the keys for you. no need to add anything to K-E.

Ah, sorry, I spelled it wrong again. I mean KV not KE in the word "implement my vim motion in KE's settings?". And thanks very much for your detailed instructions again!

Now that I have read your reply and understand, there are two ways to implement vim motion, one way that using system APIs can work well, and another way that only can implement read text moving by imitation or auto-remapping not modify content. If an app is not accepted in one of these two ways, there is no way to deal with that.

0xCABBA6E avatar Jun 16 '24 06:06 0xCABBA6E

yes, same issue with event taps. seems that one is solvable more easily. i'm expecting a release next week.

hhh, good weekend, very very very looking forward to the day that KindaVim & Wooshy & Scrolla all can run on macos15, and thanks for your troublesome work.

0xCABBA6E avatar Jun 16 '24 06:06 0xCABBA6E

Now that I have read your reply and understand, there are two ways to implement vim motion, one way that using system APIs can work well, and another way that only can implement read text moving by imitation or auto-remapping not modify content. If an app is not accepted in one of these two ways, there is no way to deal with that.

actually the Keyboard Strategy can remove content also. but it can't really calculate word boundaries etc. properly. so it's a little hit and miss. and each Strategy (Accessibility and Keyboard) are even more subdivided. because kV doesn't only add Vim moves in text input, but you can also go down lists, dropdowns, menus etc. so even before checking if it can read text data, it checks what kind of AX Element it's dealing with. but there's apps that are so shit that you can't even check this. those ones usually have to go to the 911 Family. last resource to get a semblance of Vim motions. it's really rare that an app is completely unusable.

godbout avatar Jun 16 '24 17:06 godbout

hhh, good weekend, very very very looking forward to the day that KindaVim & Wooshy & Scrolla all can run on macos15, and thanks for your troublesome work.

btw not sure if you're aware but developers cannot push updates to the Mac App Store using Xcode Beta. which means that if you have apps from the Mac App Store that crash, it's possible that this cannot get fixed before the public release lol so yeah, better avoid betas on your main machine if you're not a developer. i'm trying to figure out here what to do myself. i can install Sequoia on another partition but i'm gonna miss all my tools. or i can install it on my main machine(s) but most probably i'm gonna get disgusted 😂️ so not sure yet. hmm. gonna have to sleep on this tonight.

godbout avatar Jun 16 '24 17:06 godbout

Now that I have read your reply and understand, there are two ways to implement vim motion, one way that using system APIs can work well, and another way that only can implement read text moving by imitation or auto-remapping not modify content. If an app is not accepted in one of these two ways, there is no way to deal with that.

actually the Keyboard Strategy can remove content also. but it can't really calculate word boundaries etc. properly. so it's a little hit and miss. and each Strategy (Accessibility and Keyboard) are even more subdivided. because kV doesn't only add Vim moves in text input, but you can also go down lists, dropdowns, menus etc. so even before checking if it can read text data, it checks what kind of AX Element it's dealing with. but there's apps that are so shit that you can't even check this. those ones usually have to go to the 911 Family. last resource to get a semblance of Vim motions. it's really rare that an app is completely unusable.

More clear. 👌🏻

0xCABBA6E avatar Jun 17 '24 02:06 0xCABBA6E

btw not sure if you're aware but developers cannot push updates to the Mac App Store using Xcode Beta. which means that if you have apps from the Mac App Store that crash, it's possible that this cannot get fixed before the public release lol so yeah, better avoid betas on your main machine if you're not a developer.

I think I will rashly upgrade to the developer beta version in the future. There are really a lot of problems. I have never understood mac development, and I don’t know that beta cannot be launched on the app store. But aren’t these three tools released through HomeBrew and Github?

i'm trying to figure out here what to do myself. i can install Sequoia on another partition but i'm gonna miss all my tools. or i can install it on my main machine(s) but most probably i'm gonna get disgusted 😂️ so not sure yet. hmm. This is definitely a difficult choice... 🤨

Maybe you can install Sequoia in a virtual machine and configure the XCode build tool at the same time. Then set the project folder on the host as a shared folder. I searched and found that XCode has a remote debugging function.

gonna have to sleep on this tonight.

Pay attention to your body, Annoying Monday is here again. Thanks for your hard work again. Respect!

0xCABBA6E avatar Jun 17 '24 02:06 0xCABBA6E

I think I will rashly upgrade to the developer beta version in the future.

sounds like a new typo lol

There are really a lot of problems. I have never understood mac development, and I don’t know that beta cannot be launched on the app store. But aren’t these three tools released through HomeBrew and Github?

kV, Wooshy and Scrolla can't be on the App Store yeah, not allowed. (would love Apple to accept them, then no need to deal with licenses, payments etc.) but they're still notarized by Apple. they're sent to Apple Tim who checks that there's no malicious shit inside and they add their seal of proof so that my apps can run on your system. i'm not sure what is their policy now about notarizing stuff built through Xcode betas.

Maybe you can install Sequoia in a virtual machine and configure the XCode build tool at the same time. Then set the project folder on the host as a shared folder. I searched and found that XCode has a remote debugging function.

thought about it but or 1) you do emulation and it's slow af, like not enjoyable using or 2) you do virtualization and it works fine if both the hosts and the guests are at least at the same level. if the host is older than the VM, you're gonna run into issues. it's possible to do it with a bunch of tricks for Sequoia, but i'm not sure it's worth it. i'm probably gonna have not only to test my apps on Sequoia (which i already do) but also develop them on it. if i'm running into issues already because of the VM status, i'm not gonna be sure about what's going on. yeah, not worth it. at least for me. (plus missing all my tools installed to do my dev.)

Pay attention to your body, Annoying Monday is here again. Thanks for your hard work again. Respect!

lol. always. sleep first. good food. work out. all first before the rest. also i'm doing this full time so every day is actually Sunday for me 哈哈哈哈哈哈哈哈

godbout avatar Jun 17 '24 14:06 godbout