Re: [orca-list] Vim, is it usable for us?
- From: Janina Sajka <janina rednote net>
- To: Rastislav Kish <rastislav kish gmail com>
- Cc: orca-list gnome org
- Subject: Re: [orca-list] Vim, is it usable for us?
- Date: Fri, 4 Sep 2020 00:31:29 -0400
Hi Again, Rastislav:
Some responses for you in line below ...
Orca screen reader developers writes:
Hello Janina,
heh, on my machine, the gui is on f7. Took me few reboots to find that out.
Ah, sorry about that! F7 is the old way. Most Linux distros moved the
gui to F1 some 15 years ago--so long ago I no longer even mention the
old way.
I guess not all moved!
:)
Technically, the problems I face are not related to tts, as Fenrir uses
espeak directly by default, so it doesn't clash with Orca.
No, I've never fully understood this myself, but I'm not a programmer.
It's not the espeak TTS, nor the Orca screen reader. It's the bridge
between the two. Unless I've been asleep for the last decade, the only
choice with Orca is Speech-Dispatcher. Many years ago, before
Speech-Dispatcher, we had something called gnome-speech, but
gnome-speech is long dead. RIP.
Yes, fenrir gives you the choice of Speech-Dispatcher or sox. I've never
had any luck with Fenrir plus Speech-Dispatcher. I've only ever used it
with sox, and I haven't seen the issues you describe.
But, fenrir is a backup environment for me right now. Among other
complaints, there's a bit too much lag between keypress and speech.
So, I'm a Speakup user, and the interface between espeak and Speakup is
espeakup. Yes, that's not a typo. These are three packages.
Espeakup and Speech-Dispatcher don't get along well in my experience.
Supposedly one can use the same audio device under pulseaudio with both
of these, but I've never had much luck with that personally. Others on
this list will have more hopeful stories there.
I gave up a long time ago and simply got a second audio device plus a 12
channel Mackie audio mixer. Seems like a lot for just two, maybe three
audio devices, but my 12 channels are all full between my several
machines, and I'm now looking at a 22 channel board from SoundCraft.
But, I digress.
The more problematic part is keyboard, as Fenrir steals it for itself with
Evdev, Some keys like Super for example are not available in gui, and I
guess not even in other ttys.
Hmmm, doesn't seem correct. Fenrir is still in active development, and
the devs are on this list, so perhaps there's a conversation there.
As for using 23 consoles, that makes relation 1:23 of gui and console
environments. Due to your usage of them as "windows", I guess most of your
work is done in console, isn't it?
Yes, it is, and it's even more complicated then that because I run
screen with 10 terminals in some ttys. If that doesn't make your head
spin, let me provide an example:
I do email in the console using mutt (and vim editor) on tty10. Why 10?
I forgot. It just worked out that way years ago!
Now, my script does two things really. It opens those 23 consoles, but
it also opens screen and configures each tty where I use screen in
different ways depending on the tty.
So, the bash script that launches screen opens ten mutt sessions, each
pointing at a different folder.
When I want to look at my inbox, I do Ctrl+Alt+F10 and then Ctrl-a 1.
When I want to look at my W3C mail, which is much of my work, I do the
above sequence but ending in 9.
And, of course, once in the tty, I don't need to do that part because
I'm already there. My blind computer lists are on screen terminal 4, so
when I want to see what's happening on the Orca list, it do Ctrl-a 4.
My music related lists are on ctrl-a 3.
My Android, and Macintosh are on ctrl-a 6.
The nice thing about screen is that you can detach and reattach. I have
a Fedora linux running on a linode virtual machine that I ssh into. It's
where I run sendmail and the procmail recipies that auto sort my
incoming mail into the various folders I mention above.
In particular I run all my mail reading over ssh. It's fast enough
because I have a good connection. But, it's usually also fast enough
when I travel on business. Remember travel before covid? Ah, the good
old days! May they return! ssh to rednote.net worked fine for me from
Japan last year.
So, after getting off the plane and firing up my laptop, I open tty 10
(because that's where my head expects mail to be), ssh to rednote.net,
and resume my (named) screen session with those 10 terminals. Bingo.
Everything is in place just as when I left home before getting on the
airplane.
Do you like tui over gui in general, for tasks like e-mails reading, web
surfing, coding, etc. or does your work require it?
It would be difficult to do web work anymore without a graphical
browser. Cudoos to Joanie for expanding our world into Chromium! It's
nice to have that and Firefox. I always have multiple windows of Firefox
and Chromium open in tty1, as well as thunderbird over imaps.
For the record I also use Safari and Chrome on two Mac machines, and my
company assigned VPN machine is a Windows 10 machine.
Add to that my Android phones, and I can test a web page in most
browsers. I have everything except IOS.
I'm asking as someone raised on Windows, a heavily gui based environment,
I've thought for long time that tui was something used only because a lack
of usable gui. After I've got some more experiences in programming, I've
understood terminal as an efficient way of managing servers and similar
devices, but until now, I didn't view it as an environment usable for daily
life (study, work and fun combined together).
Ah yes. That's the way of things today, and that's just fine. Most
people will grow up on a gui. That's probably easier, much easier for
sighted folks, though it's complex enough even with sight. Just ask my
senior citizen neighbors trying to grapple with condo board meetings
over Zoom because we're trying to practice social distancing! <smile>
The truth of the matter is that a lot of engineering work, whatever the
OS, get's done on the cli.
This is true on Apple where the terminal versions of various Mac
utilities provide far more switches and options than their graphical
equivalents.
An example would be diskutil, which does so much more than it's
graphical equivalent, Disk Utility.
And, while the Power Shell on Windows looks very compelling because it's
database driven, Microsoft saw fit to introduce a build of Linux for
Windows under the category of WSL: Windows Subsystem Linux -- or
something like that.
So, on my Amazon VPM I have Ubuntu from the Microsoft Store under WSL. I
don't do much with it myself, rsync files, do things like ls -1rt and so
forth, but it's the first app I open when I log into my Amazon laptop.
Could I do the same from Power Shell? Of course, but I have to learn
Power Shell syntax, and the truth of the matter is that I've enough work
to do, thank you very much. I prefer to just open Ubuntu and be lazy
about it! <smile>
Let me remark also about Linux on Windows that several of the heavy
accessibility engineers I work with in W3C were very, very happy when
WSL came along because suddenly they had bash tools on the same machine
where they did their software development.
In other words Microsoft didn't create WSL for ordinary Windows users.
They created it for serious engineering use.
That of course doesn't mean, that it's not possible or good, I've just never
thought about it, neither did I try it. :)
Because of my age, my trajectory started with a command line Apple 2E in
the early 1980's. But, that's just the difference in our ages, I think.
I'd be surprised if any younger folks today start out on cli. That
wouldn't make much sense, imo.
So the 1:23 relation actually piqued my interest.
I thought it might! <smile>
As for ctrl and alt keys on the left and right, they're not the same in gui
either. Or at least, on my machine, the right alt is altgr, although it
probably depends on OS, as Windows for example always decomposes the key to
ctrl and alt.
For awhile I think the gui thinking on Linux was to make them
equivalent, which is accomplished via loadkeys. I know some years ago I
created my own tweaked loadkeys that I would source (via the now
deprecated rc.local) on boot to put them back as distinct. It seems
that's no longer necessary?
As for the script, what exactly is it doing? Is it responsible for logging
you in to those 23 ttys, or does it also start respective apps in them (if
they are event-based of course)?
OK, let me provide the script total of 6 lines in case wrapping breaks
something ...:
<cut here>
#!/bin/bash
#We want bash under everything except our graphical tty
for i in `seq 2 24`; do
openvt -f -c $i -u janina
sudo -u janina /home/janina/.bash_ttys
done
<end script>
Now, for this to work properly I've also tweaked under /etc so that
booting only opens tty1 in multi-user mode. There are a couple files
related to that, and I don't remember what they all are off the top of
my head.
Suffice it to say that the above script means I only provide my login
and password on tty 1, and I get 22 screens already open as janina.
For a reason I like, but can't remember now how I setit up, tty6 prompts
for login and I login there as root.
tty8 is opened for janina and then the .bash.ttys script sudo's that tty
to root.
Believe it. There are a few commands that don't work the same way if you
sudo vs logging in the console as root. I discovered that the hard way,
so I just provide myself the option of two root consoles (without
screen!).
ttys 2, 3, 4, 5, 7, 9, and 12 all run screen with different .screenrc
definitions for each.
Surprise. One of the most frequent auto-opened apps in those screen
terminals is lynx. Yes, I still find lynx useful especially when I need
to look at the code driving a web page.
I still like doing my google searches using lynx. Having said this you
won't be surprised to learn that xclip is also my friend.
On Windows, my Keyjutsu project is capable of very efficient computer usage,
jumping to windows of particular type without any effort is one of the
things it can do in matter of eye-blink, although I've never thought about
it.
Yeah, Windows is the environment I know least well, I'm afraid. Mostly I
know to do Alt-TAB and, once in an app like Outlook, the various
internals like folder switching, or switching between mail and calendar,
etc., etc.
I'm grappling with redlining and margin notes in Word and Excel docs
with NVDA with some growing success.
I do sometimes bring over my docx and xlsx files to Linux and access
them with Libreoffice. But, since I have to manage comments, I generally
stick to Windows.
Didier suggested a gui text editor I installed following his suggestion.
I've yet to test out using geany, but I'm looking forward to it.
As I think I said yesterday, I need to be efficient between paragraphs
with line breaks (for vim) and paragraphs with line breaks only at the
paragraph boundary. That doesn't work so well in vim. It's the most
negative thing I can say about vim.
I hear it works better in emacs, and I'm looking forward to checking out
geany.
Here's what happens:
I write some html with lots of text in <p> tags. This goes to my boss
who pulls it into Word, makes his own edits, sends it around the company
to whoever else needs to see it, etc. Eventually it comes back to me as
a Word document that I need to convert back into html and push to
github. Joy oh joy.
I've learned I need to be careful of smart quotes, and smart
apostrophes, as well as the mdash. I've learned that I might pepper my
html with the plus symbol (+) because that's what vim puts on screen
when you have only paragraph based line breaks.
So, at some point, I run several %s search and replace operations. Smart
quotes, for instance, get turned into <q> and </q> based on unicode
numbers.
Sadly there seems to be no alternative for it on Linux, and building one far
more complicated (at least if one doesn't know the Linux event system and
the ways to control it :) ).
I believe you. But, think of it this way. Nobody knows everything, and
if you choose to learn the event system you will end up with marketable
skills and the ability to do some powerful good work for the blind
community. It's all a question of how you like to spend your time, and
it's pretty awesome if you can arrange your life to do what you love and
have somebody pay you for it. I'm sort of there with my web standards work.
And, I'd best get to it!
Wishing you all the best and looking forward to many more conversations,
Janina
Best regards
Rastislav
Dňa 3. 9. 2020 o 7:15 Janina Sajka napísal(a):
Hi Again, Rastislav:
You should be able to use both at once, i.e. switching back and forth
between console and graphical environments all day long.
Ctrl+Alt+Fn is your friend. Usually these days the graphical environment
is at Ctrl+Alt+F1, and you should have console environments at
Ctrl+Alt+F[2-6]. These will each require login, and you can login as any
user on your system.
The problem is that they speak through different TTS supporting
architectures, and these can clash so that it can be difficult to have
speech working in both environs. The safest way to avoid this is to use
separate sound devices for graphical and console. And, you might even
want a third device for non TTS audio.
On my computers I have the following sequence when I boot up:
1.) I get a console login prompt on tty1 with console speech already
started.
2.) After logging in, if everything seems correct, i.e. no problems
to solve, I launch an additional 23 consoles using the app openvt in a
script like so:
sudo /root/bin/mycons
This is because openvt wants to run as root, but I want the consoles
opened as my normal user, janina. This works because the right side Ctrl
and Alt keys are different from the left side ones in the
console--unlike the graphical environment, so that Ctrl+Alt+F1 using
Ctrl and Alt to the right of the spacebar will open tty 13, not tty 1.
Yes, I have very specific use for all these consoles. I always smile
when someone on one of my teleconferences says something like: "wait, I
lost that window ..." I never lose windows because I have defined
functions on specific ttys.
Let me know if you'd like my script.
3.) Next I run startx after killing Speakup in tty1 (which sources
.xinitrc) to get my graphical Orca environment.
This is not too much work to boot, imo, because this environment tends
to remain booted for days and even weeks at a time.
Best,
Janina
Orca screen reader developers writes:
Hello,
this may be a stupid question, but I was thinking, how do these console
screenreaders work?
Can they be used in normal terminal in graphical system, or does the OS have
to be a fully console installation?
And if they run in the graphical environment, does it collide with Orca?
or is it possible to use both at once?
Best regards
Rastislav
Dňa 30. 8. 2020 o 23:39 Storm Dragon napísal(a):
Howdy,
Vim is being used to compose this message. It is, in my opinion, the
best text editor on the planet. Be warned though, if you do get into
using it and have to use a graphical text editor for some reason, you'll
most likely get a file with a lit of A :w, etc in it lol.
I use it with Fenrir, most often in the console. It has spellcheck, and
all sorts of nifty features including backups, macros, etc.
You may need to disable the ruler by typing the following:
:set noruler
If you need to know line and column information, press control+g to have
it briefly shown on the bottom line.
you can make the noruler setting permanent by adding it to your ~/.vimrc.
Thanks,
Storm
On Sun, Aug 30, 2020 at 04:56:33PM -0400, Orca-list wrote:
Yes, Vim works well with a screen reader. You'll probably achieve
better results with Fenrir or Speakup than with Orca in
Gnome-Terminal, though. It also works well with a braille display,
which is what I generally use.
It's easy to apply the editor commands once you've read the text to
decide what changes you want to make. I tend to use Emacs for
serious writing projects, but that just reflects my preference
rather than any limitation of Vim.
On 8/30/20 4:41 PM, Rastislav Kish via orca-list wrote:
Hi folks,
during my Linux adventures, I couldn't have missed possibly one
of the most legendary Linux tools, Vim.
Vim's philosophy of writing and editing text with a language was
completely new for me, so I have quite enjoyed learning about
it.
However, after reading some introductory texts and few
experiments, I have two questions:
* how usable is Vim with Orca? I have noticed various rather
strange behaviors like reading currently missed word when
navigating character by character or reading a line in somewhat
shuffled order when I approach it from the next line. H, J, K
and L keys doesn't seem to work at all, I have to use arrow
keys, I don't know, whether this is function of Vim or Orca.
* Is Vim potentially useful for blind people? I can imagine,
that when a sighted person sees the whole layout of a page, he /
she has an imagination in his / her head what he / she wants to
select, delete or replace, and thus a way to express it wia a
special language can be very handy. However, blind people don't
have this ability, we rather know our current position and drag
the selection from it, until we find the ending point, as our
view is limited to max. one line at once.
So, the question is, is the ability to define operations with a
language still that advantageous under these circumstances? On a
graphical system, would you use Vim over a traditional editor
like Pluma, or something similar with plugins, and if yes why?
Best regards
Rastislav
_______________________________________________
orca-list mailing list
orca-list gnome org
https://mail.gnome.org/mailman/listinfo/orca-list
Orca wiki: https://wiki.gnome.org/Projects/Orca
Orca documentation: https://help.gnome.org/users/orca/stable/
GNOME Universal Access guide:
https://help.gnome.org/users/gnome-help/stable/a11y.html
_______________________________________________
orca-list mailing list
orca-list gnome org
https://mail.gnome.org/mailman/listinfo/orca-list
Orca wiki: https://wiki.gnome.org/Projects/Orca
Orca documentation: https://help.gnome.org/users/orca/stable/
GNOME Universal Access guide:
https://help.gnome.org/users/gnome-help/stable/a11y.html
_______________________________________________
orca-list mailing list
orca-list gnome org
https://mail.gnome.org/mailman/listinfo/orca-list
Orca wiki: https://wiki.gnome.org/Projects/Orca
Orca documentation: https://help.gnome.org/users/orca/stable/
GNOME Universal Access guide: https://help.gnome.org/users/gnome-help/stable/a11y.html
_______________________________________________
orca-list mailing list
orca-list gnome org
https://mail.gnome.org/mailman/listinfo/orca-list
Orca wiki: https://wiki.gnome.org/Projects/Orca
Orca documentation: https://help.gnome.org/users/orca/stable/
GNOME Universal Access guide: https://help.gnome.org/users/gnome-help/stable/a11y.html
--
Janina Sajka
https://linkedin.com/in/jsajka
Linux Foundation Fellow
Executive Chair, Accessibility Workgroup: http://a11y.org
The World Wide Web Consortium (W3C), Web Accessibility Initiative (WAI)
Co-Chair, Accessible Platform Architectures http://www.w3.org/wai/apa
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]