Hi everyone so since we’ve all been confined to our houses I’m wanting to start trying to get back into playing muds
The problem I guess is I am completely blind so I use mush with jaws on my computer
Now I used to play muds along time ago and I think i used mush but I can’t exactly remember
But anyways now to my problem so I have mush installed on my computer and I have the mush reader plug-in installed and everything works great there
But I thought there was a way either through mush or the plug-ins where you could make it to where you could just press control tab to move back-and-forth between the input and output windows and then use your up-and-down arrow to scroll through each window to see certain parts of what you inputted and output it
I read somewhere that there’s a plug-in out there called output functions which I think is what I need but when I try to search it out on Google I can’t seem to find it and it doesn’t seem to be in the main plug-ins list on this site
Is there anybody out there that might be more knowledgeable about the stuff that could maybe give me some assistance any help would be greatly appreciated thanks
Tab moves the focus to the command window if it isn't there already.
Ctrl+Up-arrow and Ctrl+Down-arrow scroll the output window (whether or not the focus is there). However that would not be particularly useful if you can't see it.
Ctrl+H shows the command history, which you can move up or down through with the arrow keys. I'm not quite sure how useful that would be as it probably won't be spoken out.
You could do Ctrl+H to recall the commands, and then up-arrow a few times and then Alt+R to recall it.
More simply, though, just use Up-arrow and Down-arrow in the command window and it cycles through recently-entered commands. I don't know if it speaks them, but that shouldn't be hard to make it do.
I got it figured out from another source that didn’t get back to me until after I had already posted this LOL you do you have to have a plug-in for it it’s called output functions but since someone else gave it to me in a dropbox link I’m not sure that I should post it to this forum so you may have to go find it yourself but I think it should be added to the main plug-ins list so that it’s easier for somebody like me to find it in the future if someone else like me is having this issue
And just for future reference the output is not read out with these commands nothing is the only reason that I’m getting things read out through the mud is because of the mush reader plug in
Quote: I’m not sure that I should post it to this forum so you may have to go find it yourself but I think it should be added to the main plug-ins list
Uh. That's going to be hard if we don't know what you're talking about.
Yeah I don’t really know much about it except for that it’s a plug-in that you can install into mush to control tab between the input and output windows and then aero up and down through them
Quote: control tab between the input and output windows
You're probably not describing what you think you are. It sounds like your plugin is dumping all of your output to a notepad window. Control+Tab switches between the normal display and the notepad display.
Nick, output text isn't navigable by screen reader users because there's no cursor so nothing gets read when scrolling. The notepad has a cursor though, so they can navigate and hear the text in it wherever the cursor is. The trick is not overfilling the notepad. There's an AppendToNotepad function, but could there also be a corresponding popOldestFromNotepad function? That way you could turn the notepad into a fixed size buffer (pop #lines+#newlines-maxlines to maintain a reasonable maximum size) without having to resort to ReplaceNotepad which seems very heavy if the notepad is holding many thousands of lines. I agree that a send_output_to_notepad plugin using that feature would be quite handy as a standard part of the install for blind players.
That all sounds very confusing but fiendish I think you’re right what it does is yes it puts it into a notepad window basically that I can control tab between that window in the input window where I can type in my command to the game and in that notepad window it makes it basically like how it would look in notepad itself where I can air up and down between the commands the game recently spit out after I typed in my command
So for example in the input window I could type in examine box and then the mud would say this is a very large rectangular box with a lock on the front And that description would appear in the output window so then I can arrow up and down through it
The reason why this is crucial for me to be able to have in this program is because without this I wouldn’t be able to necessarily go through each saying that the mud put out to be able to tell the spelling of certain words so I can figure out what my next command will be to type in to the mud
So for example the output of it’s a large box with the lock on the front if I were to hit control tab after typing in my input to go to the output window I could arrow up to that line of text in here at spoken and then either left or right arrow to go by character or control left or control right arrow to go by word
And yes Nick without the mush reader plug-in and this plug-in in my opinion mush is essentially unusable by a screen reader so in my opinion these plug-ins are vital to making sure that mush is usable for a blind person
Quote: If that is what is wanted, surely making some key that just works its way back through the output buffer and speaks it would achieve what they want?
I think only partly. The notepad also provides them native support for reading word by word or character by character and page-up/down and searching and selecting arbitrary sections of text by keyboard (urls, quotes, etc), which are all quite valuable.
Yes exactly and as a sided user you guys might be able to take full advantage of these things but as a blind user mush would be almost completely in accessible without these plug-ins
Yeah I don’t really know much about it except for that it’s a plug-in that you can install into mush to control tab between the input and output windows and then aero up and down through them
Yes exactly and as a sided user you guys might be able to take full advantage of these things but as a blind user mush would be almost completely in accessible without these plug-ins
I think I need to to state exactly what you want to happen, not just the general idea.
Doing screen-reading of a notepad or word processing document is fundamentally different to a MUD output, because the contents of the word processing document don't change as you just ponder and stare at the screen. The MUD output does.
So if you say "if I press key X I want it to speak the second-last line of output, and then if I press X key again I want it to speak the third-last line of output" then what happens if more output arrives while it is doing this? Is the third line still the third line from the bottom (which was previously the second line) and thus you hear the same line twice? Or does it remember where you were when you started doing this and keep moving up from that point? If if it is the latter, what resets its "pointer" to be back at the bottom?
OK I’m not really sure how it works exactly I just know that it acts like a notepad window in the sense that I can move up and down through the lines and then when new lines come in I’m not really sure if it interrupts it or not because I haven’t played a mud in a really long time
now what would be nice is if when you’re looking at a line of text if a new line comes in it just stays on that same line that you were reading until you’re done reading it and then you can go down and look at the new text but if the output functions plug-in does that I am not sure because like I said I haven’t played a mud in a really long time and haven’t had time to really dive into it as of late to really experiment more
now what you could do if you really want more information about the plug-in is email the author of the mush reader plug-in for screen readers his email is tspivey@pcdesk.net
That’s what I did when I couldn’t find the output functions plug-in and that’s when they sent it to me but that’s about all I can give you information wise I didn’t invent the plug-in I only use it to play my games so I don’t really know how it works and the ins and outs of how it works and how it was made
Hello, I have the following plugins:
MushReader: Allows screen readers to read the output of the mud.
Chanel_history: It allows to save the messages of the channels to later be able to read them by means of fast keys.
output_functions: Add many facilities to read the output of the mud. On the one hand it allows you to create an output window in which the output of the mud is updated and also offers keyboard shortcuts to read the output line by line.
If necessary I can pass a link here of these plugins.
I already found them from another source but it might help for Nick in the other person that we’re trying to figure out how it works to be able to get a better understanding of it
I am still contemplating how this might work. I think I have a
reasonably workable idea.
If you press some key (let’s call it the replay key) then the
program re-speaks the most recent line, and also “bookmarks”
it.
If you press the key again it interrupts the speaking (if any) of
the previous line and goes back one line from the bookmark and speaks
that line.
Keeps doing the above until you hear the line you are interested
in. Each time it is relative to the bookmarked line, so there is no
confusion about how many lines to go back.
Newly arrived lines are buffered and not spoken while you are
doing this.
After some condition is met (eg. pressing a “done” key, or 5
seconds elapsing) we consider that you have finished reviewing previous
lines. At this point, it then speaks all the buffered lines, so you
don’t miss what was coming in while you were reviewing old
text.
Here I leave the plugins, in case they can contribute something.
The .dll and the. bp you have to paste them in the root of mushclient, is what the plugin communicates with the readers. The rest are normal plugins.
I think watching this work, maybe you could do something or even add them to the plugins that come with mushclient.
In MushReader there are some messages translated into Spanish, but they could be put back in English. Sorry but I don't have the original copy where everything is in English.
Link: https://www.dropbox.com/s/rjqjodkl1oxa50u/Plugs.zip?dl=1
Greetings and I hope it is useful.
Yes I think that this would work fine but there’s got to be a way to be able to spell the output lines or go through them word by word actually there’s got to be a way to do both or else you’re not really helping because yes it’s important to have a way to read the output lines with the screen reader so that parts good but there’s a lot of important things that we miss with a screen reader when reading through lines of output that it really would be helpful to be able to spell the output lines out or read them word by word
I should point out, if I haven't already, that the client has tab-completion. So if there is a word like Mister Mxyzptlk and you aren't sure how it is spelt you type the first couple of letters and hit tab, and then it completes the word based on the most recent lines from the MUD.
Nick, I think the number of control options you're going to have to reproduce to adequately mimic the functionality of the notepad's movable cursor is too high. Would it not be simpler to write lines to the bottom of the notepad and remove very old lines from the top of it? That way you get to lean on the functionality that already exists between the movable cursor as well as system-level control options for the screen reader like whether to read whole words or letter by letter, the ability to select portions of text to be pasted into other programs, and so on.
I would suggest that if you’re curious to read more about how a screen reader works I would encourage you to go read the documentation for jaws that should be able to give you a good enough idea how screen readers work and then you should be able to apply it to the program itself meaning mush
The plug-in is really simple and the way it works at least for me but in terms of the structure of it and how it was made I don’t know anything about that stuff so I can’t help you but it would be great if this stuff could be built-in too mush or there could be a download link with all of these plug-ins put together with mush
Quote: I would encourage you to go read the documentation for jaws
Oof. Not to be rude, but I don't think that anybody wants to dig through hundreds of pages of documentation for an extremely intricate product unless they actually need to use the software daily. I think it's much more important for us to recognize the breadth of what actions you want to do that aren't currently supported.
As I understand it, those are:
read back previous whole lines
read back individual words from previous lines
read back individual characters from previous lines
page-up/down to different sections of lines
search for words within the body of text to move the selection cursor to a different unknown location where those words occur
copy arbitrary amounts of text to the clipboard including whole lines and partial lines
The notepad natively supports all of those things automatically. From a technical standpoint, the only things obviously missing is the ability to remove lines from the start of the notepad while keeping the cursor in place. Right now you'd have to re-write the entire notepad every time you want to update it, and I'm pretty sure that drops the cursor to the end.
Yes the only reason I suggested that is because Nick seemed to be having trouble imagining how a screen reader worked so the best way that I could tell him was to go read the documentation so that he could get a better picture of how things worked and better be able to determine how to make mush work better with a screen reader without any plug-ins which I am assuming that’s why he’s trying to ask lots of questions about it
Which I understand the questions are great I just don’t do well explaining them through physically writing things down in text
1. It optionally sends the incoming text to a notepad as it appears.
2. It offers keys to mimic screen reader commands to read the output, because the output window doesn't have any accessibility support implemented in it, and reading with the screen reader scraping has some disadvantages.
However, that only lets you read by lines. I could implement word reading, but character reading is a bit more complex (because screen reader APIs don't have a function to speak individual characters, for example punctuation or spaces).
Personally I don't use the notepad, because:
1. It slows down new text output. I'm not sure why; maybe AppendToNotepad() is slow.
2. Pressing control tab is awkward. I could probably re-bind tab to switch to the notepad and come up with a different key for completion, but I couldn't bind tab in that notepad to switch me back. I just realized alt control space will switch me back, so I might be able to do this with an autohotkey script.
3. It stops collecting output after a while.
Screen readers try to screen scrape the output window and let you read it (e.g. with the JAWS cursor or NVDA object navigation), however you have to keep up with the scroll if you read it that way.
Tab completion is useful, except it stops at the first entry it sees. So if there's a word that's hard to spell but I know the first few letters of it, I have to hope that nothing else came after it which starts with those letters, because pressing tab again won't give me the previous one.