Hello applevis.
... I'm sorry, I was just trying vimtutor with voiceover. Basically if you don't use vo-l to read the line, j and l alone will make voiceover randomly skip very important portion of that line and basically you can't trust voiceover at all. Plus this new bug in sequoia randomly makes VO read from the beginning of that page. I tried with alison us and eloquence. Is there any speech rate to change? Even if it's yes I don't really understand how you can be productive with voiceover alone in the native terminal on the mac as such a simple thing as vim is unusable with its own native commands just because vo doesn't know how to properly read the output under the cursor skipping 99% of it.
macos 15.1.1. If I'm doing something wrong, please correct me. Otherwise, apple...............
Forum
macOS and Mac Apps
Comments
Tried Alex with 15.1.1 and…
Tried Alex with 15.1.1 and 15.3, same result. Unusable with native commands. Now it's timeI say it works all the time with linux or windows! Even Chromeos I'd bet.
Reports
FB16140150
Case-ID: 10833265
You need more time to try
I use terminal on daily basis and I find myself has no need to get back to GUI solutions. Note: don't be sad if my solution does not work for you.
First, make sure to interact with "Shell" text. All my commands assume this step is already done.
Use VO+arrows to navigate word by word (left and right) or line by line (up and down).
For announcements, keep in mind that VoiceOver speaks the text it pass by. For example, if you already moved after the first word in a line using VO+right arrow, then press VO+down, it will just announce what is after this word in this line. If you come from windows background, you will find this behavior different.
Navigating the keyboard cursor usually moves VoiceOver cursor. However, there has been a bug since Mac OS 13 (I guess), that VoiceOver cursor might be in a different position from keyboard cursor. As a solution, move keyboard cursor (using arrow keys for instance) twice and VoiceOver cursor will follow up.
For speaking rate, there is a new bug in Mac OS 15 that the rate/volume might not change when adjusted from VO+command+shift menu. So, it does not work all the time. I use Alex as my main Voice. As a solution, change it manually from VoiceOver utility.
Regarding skipping text in vim, yes this occasionallly takes place. Switching to another application of different activity, restarting vim/neovim and restarting VoiceOver usually fixes it and some other issues as well.
Another note regarding skipping text, but the slower your device, the more text it will skip as long as you press commands fast. You might need to synchronize your presses with VoiceOver or buy a faster device. I use M2Max. I have 2020 Intel iMac for work, and I just stick it to Mac OS 13. Mac OS 15 is slower than its predecessors.
For sure, VoiceOver could have been better, but it is what it is. Let's hope a good luck for Apple Accessibility team and a better future for everyone.
A couple of advice for you:
Hope that helps. You can find more about my terminal usage here.
I got why so much blind…
I got why so much blind people hated Ventura then 😂 W90% of what you told I was quite quick to figure it out but thanks still.
This bug was indeed there in…
This bug was indeed there in the betas but it's been patched for me since awhile now.
For speaking rate, there is a new bug in Mac OS 15 that the rate/volume might not change when adjusted from VO+command+shift menu. So, it does not work all the time. I use Alex as my main Voice. As a solution, change it manually from VoiceOver utility.
Already knew that, and it's well documented.
For announcements, keep in mind that VoiceOver speaks the text it pass by. For example, if you already moved after the first word in a line using VO+right arrow, then press VO+down, it will just announce what is after this word in this line. If you come from windows background, you will find this behavior different.
Seriously? This is ... I don't even have the words to describe my feelings reading this! I have an m2pro base model.
Another note regarding skipping text, but the slower your device, the more text it will skip as long as you press commands fast. You might need to synchronize your presses with VoiceOver or buy a faster device. I use M2Max. I have 2020 Intel iMac for work, and I just stick it to Mac OS 13. Mac OS 15 is slower than its predecessors.
I'm happy that I always send the full sysdiagnose in each of my feedback so hopefully they can reproduce and patch it.
I sometimes tend to think that macos accessibility problems are 90% improper documentation and 10% lack of testing, user feedbacks and bugs.
Indeed it works half the…
Indeed it works half the time only so vim is in fact slower for me on the mac than it is on windows or on arch linux for example. "I've really got to try Asahi now that I have more time!!! :)
"Note: don't be sad if my solution does not work for you."
Last time I tried tdsr it crashes completely whenever I open vim.
Default Terminal
I use the terminal utility that come out of the box with Mac OS. I have tried tdsr before, but did not like it. That was after many years of using the default terminal app.
It's fiddly but usable. I do…
It's fiddly but usable. I do wish it were better but it's certainly not the worst of apple's apps and won't be a priority for them. It would be great if there were another app that could fill in made by a 3rd party, apple's own apps tend to be pretty junk when it comes to accessibility, but I can't imagine that happening.
Tried everything,…
Tried everything, deprioritizing terminal in the process list and prioritize VO. VIM in this current state is unusable on both versions of macos sequoia. If I need >m2 max to use vim in an accessible way...
These are just scratching the surface
As to why I never upgraded past macOS Monterey. I'm not saying terminal in Monterey is perfect, but overall, macOS works fairly well in Monterey with voiceover, over the newer version of macOS. Of course there is the whole SNR thing, but using a third-party browser does help.
Unrealistic expectations
Is there a specific reason why you have to use Vim, or any other ncurses-based tool for that matter? Vim was my go to editor back in my sighted days, but that was because I was actually productive with it. These days, although I do use the console a lot, I do not do text editing in a terminal window. Whenever I have to edit a file from terminal I just launch TextMate using its
mate
command-line utility as I mentioned in a reply to a previous thread of yours.Of all the problems that Apple could fix, Terminal is probably the only one for which there is no algorithmic solution, because text-based interfaces do not provide the kind of semantic information that screen-readers rely on in order to convey the user interface to you. Technically speaking, a terminal is just a bidimensional array of colored fixed-size characters, and that's exactly how it is presented to sighted users. What text applications do is move the caret around and print out characters with different color combinations to draw content that visually might resemble a graphical user interface but makes absolutely no sense to a screen-reader. While it is possible to deploy some kind of heuristic to attempt to make sense out of the visual content of the terminal, doing so would be pointless in my opinion considering that there are usually far better solutions with actual accessibility semantics available, so I don't think anyone is going to waste time tackling that.
I'm not saying that interacting with Terminal using VoiceOver is already the best experience you can have, because it is definitely not, and could actually be significantly improved if only Apple paid a little attention to the state of accessibility on MacOS. However I do not think that it is reasonable to expect a screen-reader to work flawlessly under the conditions that I mentioned above, and especially with applications that move the text caret around the terminal window unpredictably.
Now it'll the time I say it…
Now it'll the time I say it works on windows since almost forever? :) Thank you for your replies though. As a blind learner I quickly realized my best bet is with text based solutions cause nvda support them very very well, and luckily for me a lot of devs use them too...
You could always try ...
You could always try third-party terminal solutions. I am fairly certain there are a few accessible ones on the Mac side of things.
Blind people use vim on the windows terminal?
Never heard of any accomplished blind people using Vim or any other text-based ncurses applications comfortably with a general purpose screen-reader on any platform, which is the subject that I am addressing in this thread, but what do I know? And it's not even hard to prove me wrong if such people actually exist, since we are on the Internet after all!
Again I did not say that VoiceOver cannot be improved, only that your expectation to be able to use that kind of application comfortably on a terminal with a screen-reader is unrealistic. The only exception I'm aware of is in the case of Emacs, because people built a whole desktop experience around it with its own screen-reader called Emacspeak, but then it's no longer NVDA or VoiceOver or Orca or even a terminal anymore..
On Windows my impression is that people just use Microsoft's Visual Studio Code in general. The developers room of the AudioGames forum is a good place to ask this kind of question on as lots of blind developers tend to gather around there, but I do believe that I already know what people are likely to answer, and it will not be too different from what I said earlier. You wouldn't even be the first person to not like my suggestions here and go there asking for confirmation only to get exactly the same kind of answer from other developers, and I actually encourage people to do it, because there's always the possibility of me being wrong and learning something new, which is my ultimate goal.
No offence taken! :) we can…
No offence taken! :) we can all relax. Yeah I don't actually know people personally but from several random sources and, well, I tried, it's definitely doable. And NVDA when properly configured never misses a single line in terminal unless it's wanted by a manual action. I always believed that electron apps and web apps were the future of accessibility until I went outside windows and snr plus other bugs made me realize that maybe I am biased but NVDA is the best screen reader to render web content with the chrome (or other chromium based) browser combination. I dislike VSCode on the mac because VO is so sluggish with the web app while on Windows terminal and notepad++ work so well together that I don't actually need VSCode at all, while it's a real joy to use there generally speaking.
I mean I truly started coding again in these holidays and currently use XCode and I am generally fine with it but my instinct for the past decade (and I am just 21 :) ) was to avoid IDEs whenever possible.
Even in college I had a programming class with c#, and tldr after 2 weeks with visual studio which is quite a good product from MS and had an insane accessibility leap compared to 2018 I quickly dropped it and used mgdb to debug, cs.exe from the command line to compile and notepad++ to write the code because back then I was young and afraid of everything outside nano :)
(Possible) good news?
So I had already reported this in Feedback (see above) and to accesibility@apple, and I just received a reply today that they've passed it to the appropriate team. They were grateful with the level of details I gave them, not only strictly about VIM but voiceover tendency to skip texts in terminal in general. I've updated the above message with the case ID now both about the same problem.
Bunting
Not sure it is quite time to hang out the bunting just yet. I've had loads of emails from Apple accessibility saying that they have reproduced my various problems and forwarded them onto the relevant team. The vast, vast majority are still present.
But I hope in this case I'm just being overly cynical.
I've tried macvim. There is…
I've tried macvim. There is an opened issue about core text, but the point is that even outside terminal this cursor sync problem's impact is just getting worst as even macvim with core text disabled has the exact same problems as terminal vim.
Vim workst best with a braille display.
I don't know how anyone uses Vim with speech on any platform. A braille display makes Vim usable. if you rely only on speech, you don't get any feedback when using Vim's keys to move around your file.
I'm pretty sure that someone…
I'm pretty sure that someone told that even braille doesn't work with vim on this specific versions of macos but I'll consider giving it a try.
Vim
There's another thread in here talking about setting up TextMate so you can use it in the terminal in place of vim. You just enable integration in settings, then can use "mate" in place of vim. It seems pretty good and means I don't need to worry.
I've been around long enough to know better than to try to persuade a vim user to try anything else, but just mentioning it in case.
I found an old plugin that…
I found an old plugin that will be quite hard I think to make compatible with modern mac version. I did considered this.
No so terminal is so broken *on my hardware* that in braille it indeed works better with vim but randomly when there is a new line vo will somehow popup the first line of the terminal last login something which is also another bug where VO randomly read from x amount of previous outputs in addition of skipping forward the new coming output. Thank you apple.
Where is that thread please?
vim vs textmate
From a very quick google, there is a plugin to make text mate behave like vim - https://github.com/philc/textmatevim
So not sure if that might be a good compromise.
But I do wish Apple would support the terminal out. It seems quite a lot worse in Sequoia, and Sonoma was also a step backwards.
Yeah but it's not easy to…
Yeah but it's not easy to install assuming it's possible because it's build against the latest sdk in 2012.
re: I'm pretty sure that someone…
The whole Vim braille thing was just a general statement. I am not running macOS right now. Braille has been screwed up on mac for a long time.
My advice is to move over to a different text editor that is GUI based. I don't really use Vim on Windows or Linux any more. Graphical based editors just work better with modern screen readers.
Why ???
Why is anyone even attempting to use VIM with a screen reader? Are you a masochist? Lol
Masochism indeed.
Brian,
I asked myself that same question a couple of years ago after using Vim for a few months. I am not even someone who writes code for a living. I just went down a rabbit hole of using a bunch of terminal applications. I have since learned that GUI based editors and word processors are jus easier to use.
Agreed
Although I am not on Mac anymore, when I was in college that was all I really had, well, I did also have BootCamp Windows 10, but that's a whole Nother thread. Anyways, I used GUI editors for when I was working with code, as a computer science major, it was pretty much a necessity for me while learning the Mac terminal. :)
TDSR
You all should really try TDSR. Its a screen reader for the terminal that works a lot better than VoiceOver. After you install it, you can just launch it with a script and then turn off VoiceOver, and it will speak all terminal output as it comes. You can review the text with Option+u to move up a line, Option+i to speak the current line, and Option+o to move down a line. Option with j, k, and l move by words, and option with m, comma, and period move by characters. Its better than NVDA in my opinion because it always reads all of the output instead of randomly skipping some or reading lines further up like NVDA does sometimes. I would say its almost as good as Speakup on Linux. I've never used Vim, but I regularly use edbrowse to edit text files in the Mac terminal and for programming.
Also I know Emacspeak works on the Mac, although I haven't tried it. For Braille in the terminal without VoiceOver, you could try BRLTTY.
NVDA doesn't skip text when…
NVDA doesn't skip text when configured properly as per the doc and the terminal app used. If you mean voiceover then I totally agree. I tried tdsr, it's good in all areas where VO is enough for me, but the one single thing where it crashes as it's no longer maintained is, well, vim itself! :) I really tried to install emacspeak, i have emacs and emacs installed and even the macswift speech server which works in the tcl when I test it but can't get emacs to load emacspeak. I've heard that fenrir can technically work on the mac too, I'll give it a try maybe with the swiftmac/emacspeak speech server itself.
Re: NVDA and Emacspeak
Does Emacs give any errors? Also, have you gotten NVDA to not skip lines in Msys2? It seems better in CMD or PowerShell than MSYS2. I think I tried both the new Terminal app and the old console and checked the settings but I might have missed something.
I tried stormux on my pi400…
I tried stormux on my pi400 and of course, vi! works flawlessly. It's not a vim specific but rather all the terminal issues of VO compounded in sequoia for lower end hardware which ruins the terminal experience on my m2pro, vo cursor jumping around, skipping random sometimes huge portions of text, restarting from reading between an output from 10 lines above when it's not from the complete beginning, and all this in regular text output not to mention ncursus.
macOS Terminal and Braille Display
I am a coding noob (just starting to learn CS in college). I am using the Terminal and find it easiest to read output with a braille display, if you have one. The panning commands on the braille display work as expected, even when speech/interaction is unstable.
I learned braille normally…
I learned braille normally but I find it too slow to be practical in coding for me. At least I can legally say now I use Arch by the way.
BBEdit
Has anyone else tried some of the BBEdit terminal functions? I just stumbled on them today and they sound interesting.
Firstly, I think it has some terminal integration like text mate. It sounds like, once installed, I should be able to do something like "ls | bbresults" although I can't quite get it to work. I'm not sure if maybe BBEdit has another part of the window where this is all going. It also has some other commands, like bbdiff although I haven't tried that yet and diffs are rarely accessible so not sure how it works here.
The other thing I thought was interesting was the Unix worksheet. So you can create a text document and start typing in linux commands. You then press ctrl+enter on a line to execute it, and the results are shown below within the text editor.
Although up and down arrows don't go through history, they do move you about the document so you can get back to a command you executed before and just do it again. I'm not sure if there is auto-complete - I've not found it yet if there is.
I'm still wrapping my head around what I might use it for, but I reckon there are some situations where it could prove to be a more convenient alternative to the normal terminal.
Anyone else come across this?
But this corrects a non…
But this corrects a non problem. Terminal is great, the interaction model is a non-issue and VO has the best selection schema compared to other screen readers I've tried, nvda included. It's just that cursor never follows and never reads properly the output, and it's all those compounded issues that makes vim unusable on my m2 pro and that apparently I'd need an m2 max to run a software written originally in the 70s while my raspberry pi 400 on stormux (archlinux flavor) is perfectly able to manage vim with fenrir screen reader, highlighting several skill issues on apple end.
Not sure I agree
If you are talking about my BBEdit comments, I'm not sure I agree.
If the bbresults thing works then it could be a useful alternative to reading long amounts of text, such as with TextMate. I'm not sure if it could also be used as the default git editor instead of vim.
Regarding the worksheet, I'm still undecided on it, but it does seem to provide a more consistent experience than the terminal. So if I type ls in terminal, I may or may not get the output depending on how VoiceOver is feeling. In BBEdit it seems to always take me to the end and I can arrow up through the results. There may be other shortcuts I've not found yet to get to the top. And then you have all the features of a text editor just there. Plus it has some of the features of using the "script" command as it's going to keep a log of everything you are doing.
It also gets around some of the issues that VoiceOver has with reading the line you are currently typing in. And as VoiceOver has gone weird with history it also circumvents the need for that. There may be some other advantages like being able to control word wrap etc.
Having said that, I'll probably keep using terminal but it does seem to provide a more consistent interface for VoiceOver. You aren't going to be using vim in it though. I can imagine if I'm running commands with a lot of log output (e.g. running unit tests or builds or whatever) then it might be useful.