Date   

FW: RFC: source code maintenance concerns and others

 

Dear NVDA community,

 

If you are willing or know someone who can help out, please invite people to help out. Thanks.

 

From: joseph.lee22590@... <joseph.lee22590@...>
Sent: Sunday, April 1, 2018 9:26 PM
To: 'nvda-devel@...' <nvda-devel@...>
Subject: RFC: source code maintenance concerns and others

 

Hi all,

 

After reading a conversation on Gitter where Doug Lee pointed out a function in winUser module that was broken (confirmed by Jamie), and after going through other modules in NVDA source code (both Python and C++ files), I figured it is time to bring other source code maintenance concerns to the wider community (wider than the NVDA community, in fact). Some of these include white space inconsistencies, duplicate classes, inconsistent copyright headers, import concerns (especially _winreg versus winreg and others) and so on.

 

To gather comments from not just NVDA community, but from outside as well, a meta-issue has been created to go over some of these concerns:

https://github.com/nvaccess/nvda/issues/8139

 

An important request: you should comment on this issue or offer to assist in this matter if and only if you satisfy ALL of the requirements below:

 

  1. Understand what a screen reader is from a technical level or at a competent level where you can explain how it works to different audiences.
  2. You have contributed NVDA source code edits at least once, or reviewed the source code for research purposes. This excludes documentation edits, translations, website contributions and other things outside of NVDA Core source code changes.
  3. You have genuine concerns about the state of the NVDA Core source code.
  4. You are willing to research and improve the source code to address various concerns or raise issues not raised on the issue linked above.
  5. You are willing to reach out to people outside of NVDA community (computer science professors, researchers, students, Python experts, software development gurus and others, both sighted and blind) in hopes of recruiting them to help us with this work.
  6. Skilled in at least two programming languages (C++ and Python preferred).
  7. Be an effective communicator as this project will involve a lot of contributors.

 

Those in the NVDA community must meet ALL requirements above. Those outside the community who are willing to help out and lend their expertise/advice/funding/recruitment skills should satisfy at least requirements 3, 4, 5, and 6. Also, outside folks who have knowledge of or have experience in principles and practices of software development (especially maintaining a large software system) are more than welcome to join this effort.

 

As for what I will do: as the initiator of this proposal, I will reach out to several software engineers who might show interest in this effort. Although I might not be able to lead this effort up front (due to other commitments, especially because I’ll be competing in two national speech tournaments in April 2018), I will try my best to offer help and leadership in various capacities.

 

Comments from the whole community are appreciated.

Cheers,

Joseph


Re: Performing OCR on a Downloaded Image?

Robert Mendoza
 

Sam,Not sure if the OCR will work with photos?Up to where it recognize image.



Robert Mendoza
On 4/2/2018 11:06 AM, Sam Taylor wrote:

Photosworked fine for me. 
Cheers 
Sam 


On 2 Apr 2018, at 12:43, Kenny <kwashingtonbox@...> wrote:

Oh! I have to open the image up first? What program is best to open images up in for OCR to work best on it? Do I just select Paint or Photos or something else?


On 4/1/2018 7:23 PM, Sam Taylor wrote:

Hi Kenny,

when the image is in focus, press NVDA+R.

You can then navigate the result with your arrow keys.

Thanks

Sam


On 2/04/2018 08:03, Kenny wrote:

    Hello,


Does NVDA 2018.1.1 have an option or add-on available that would OCR a .jpg, .png or .gif file and display the results in a window I can browse/read using the arrow keys?


A lot of webmasters are starting to place help text in images, instead of placing it directly on the web page. I need a way of reading this text.


If NVDA doesn't provide any way of doing this, does Windows Narrator?   




Re: Performing OCR on a Downloaded Image?

Sam Taylor
 

Photosworked fine for me. 
Cheers 
Sam 


On 2 Apr 2018, at 12:43, Kenny <kwashingtonbox@...> wrote:

Oh! I have to open the image up first? What program is best to open images up in for OCR to work best on it? Do I just select Paint or Photos or something else?


On 4/1/2018 7:23 PM, Sam Taylor wrote:

Hi Kenny,

when the image is in focus, press NVDA+R.

You can then navigate the result with your arrow keys.

Thanks

Sam


On 2/04/2018 08:03, Kenny wrote:

    Hello,


Does NVDA 2018.1.1 have an option or add-on available that would OCR a .jpg, .png or .gif file and display the results in a window I can browse/read using the arrow keys?


A lot of webmasters are starting to place help text in images, instead of placing it directly on the web page. I need a way of reading this text.


If NVDA doesn't provide any way of doing this, does Windows Narrator?   



Re: Performing OCR on a Downloaded Image?

Kenny <kwashingtonbox@...>
 

Oh! I have to open the image up first? What program is best to open images up in for OCR to work best on it? Do I just select Paint or Photos or something else?


On 4/1/2018 7:23 PM, Sam Taylor wrote:

Hi Kenny,

when the image is in focus, press NVDA+R.

You can then navigate the result with your arrow keys.

Thanks

Sam


On 2/04/2018 08:03, Kenny wrote:

    Hello,


Does NVDA 2018.1.1 have an option or add-on available that would OCR a .jpg, .png or .gif file and display the results in a window I can browse/read using the arrow keys?


A lot of webmasters are starting to place help text in images, instead of placing it directly on the web page. I need a way of reading this text.


If NVDA doesn't provide any way of doing this, does Windows Narrator?   



Re: Voice Dream Reader equivalent on PC?

Sam Taylor
 

Hi Quentin,

You can do this with QRead which supports PDF, EPUB, DOCX and TXT. No Audio file support though. It's my go-to for quick reading of word docs and PDFs if I don't need all formatting preserved. Its tabbed interface supports multiple documents and the software remembers your position.

Cheers

Sam



On 2/04/2018 11:54, Quentin Christensen wrote:
Hi everyone,

I had an inquiry from someone who is familiar with Voice Dream Reader on iOS, and wondered whether there was a similar, accessible program on the PC?  Particularly of interest are features like being able to open it and quickly pick up where a particular title was previously left.

Kind regards

Quentin.

--
Quentin Christensen
Training and Support Manager

Official NVDA Training modules and expert certification now available: http://www.nvaccess.org/shop/

Facebook: http://www.facebook.com/NVAccess 
Twitter: @NVAccess 


Voice Dream Reader equivalent on PC?

Quentin Christensen
 

Hi everyone,

I had an inquiry from someone who is familiar with Voice Dream Reader on iOS, and wondered whether there was a similar, accessible program on the PC?  Particularly of interest are features like being able to open it and quickly pick up where a particular title was previously left.

Kind regards

Quentin.

--
Quentin Christensen
Training and Support Manager

Official NVDA Training modules and expert certification now available: http://www.nvaccess.org/shop/

Facebook: http://www.facebook.com/NVAccess 
Twitter: @NVAccess 


Re: Maths?

David Moore
 

Hi all!

I tutor Calculus to sighted people, so for me, this book would be such a great help.

Please let me know when the book is ready and how to get it.

Here is my email to give this info to me off list if you want.

Jesusloves1966@...

Thank you so much!

David Moore

Sent from Mail for Windows 10

 

From: Michael
Sent: Sunday, April 1, 2018 3:36 PM
To: nvda@nvda.groups.io
Subject: Re: [nvda] Maths?

 

Damien,

My  book is being reviewed at the moment. As soon as it is accepted, I will

announce when and where it is released. The title is "Real Analysis For

Blind Students". Real Analysis is the sub-branch of mathematics where

calculus resides. Actually, it is a subbranch of the analysis branch - the

other subbranch being complex analysis. The book is intended for blind

students whose declared major is mathematics.

A disclaimer is in order. Every character in the book can be found on a

standard English keyboard. There is no integral sign on a standard keyboard.

I want the student to be able to write equations as well as read them. It is

easier and faster to type "INT:" rather than hunting up the code for an

integral sign. With a few exceptions like this one, the notation in the book

conforms to that in a print (or electronic) text. A mathematics professor

should consider the deviation from the standard very minor.  If you want to

insert an integral sign into an e-mail for instance (or any other document),

remember its special code and create a regular expression so that NVDA will

recognize it.

The modifications specified in the appendix only cover what is in the book

and not any article on the internet.

Add your own regular expressions to those I describe to cover cases I

neglected.

An equal sign stands between two expressions which are the same.  I can make

a similar statement  using a different relation such as greater than or less

than.An equation or inequality is between two expressions.

 

 

> -----Original Message-----

> From: nvda@nvda.groups.io [mailto:nvda@nvda.groups.io] On Behalf Of Damien

> Garwood

> Sent: Sunday, April 01, 2018 11:44 AM

> To: nvda@nvda.groups.io

> Subject: Re: [nvda] Maths?

> Hi,

> That book actually sounds quite interesting. What branch of maths does it

> cover, and what level would you expect your audience to be at? I've never

> quite been a maths buff in my schooldays and, as with a lot of other

> things,

> now I'm learning (or trying to learn) at my own pace, I'm finding I

> understand a lot more. I'd still say I was only at a basic level though.

> Currently getting my head around scientific notation.

> However, I digress. Back to my particular problems.

> Problem 2 would seem to be that it is in MathML, in which case a message

> would be helpful for those, like me until about ten minutes ago, who don't

> have Mathplayer installed.

> Problem 3 seems to be to do with font changes (apparently there is a font

> called superscript which is used to denote exponents which I never knew

> about, hence the 102 instead of 10^2). Of course this is going to cause

> problems for people like me who have font announcement turned off. But the

> thing is, other than that, why else would you need to know when/if the

> font

> of something changed? If fonts are going to be used to represent numbers

> and

> mathematical operations then surely they should be announced

> automatically?

> I don't know enough about fonts and formatting to know how this kind of

> thing works.

> As for MathPlayer, has anyone had any luck with it? There may be a

> navigation commands document but I just can't get my head around it,

> especially since it talks about expressions and equations (Aren't they the

> same thing?), not to mention making the content sound much more advanced

> than is really necessary. Then, there also doesn't seem to be a way to

> copy,

> or I guess the more accurate word would be convert, the mathematical

> content

> into plaintext, for pasting into a text document. The joys of incompatible

> formatting...

> Cheers.

> Damien.

> -----Original Message-----

> From: Michael

> Sent: Sunday, April 01, 2018 3:00 PM

> To: nvda@nvda.groups.io

> Subject: Re: [nvda] Maths?

> Damien,

> The material below is from the appendix to a calculus book for blind

> students I have written. Its position in the market place has not yet been

> decided.

> I hope it helps you.

> Appendix 2 How To Modify The Speech Dictionary In NVDA

> NVDA is a screen reading program produced by NV Access(R). It speaks the

> information about various parts of the active window in response to

> keystrokes pressed by the user. If the keystroke is not an NVDA command,

> NVDA merely echoes the keystroke. But, if it is an NVDA command keystroke

> such as NVDA-key + t, NVDA tells the user something about the active

> window.

> In the case of NVDA-Key + t, NVDA announces the title of the active

> window.

> NVDA commands take the form of the NVDA-key followed by a letter. The

> INSERT

> key is by default the NVDA-key. However, NVDA allows the user to change

> the

> NVDA-key to the CapsLock key if desired.

> The user can control how NVDA announces a string of characters.  If the

> user

> wants NVDA to speak a particular string of characters a certain way, he or

> she can make an entry in its speech dictionary for that particular string

> of

> characters. After this entry is saved into the speech dictionary, whenever

> that particular string of characters is encountered, NVDA speaks it

> according to the entry just made in the speech dictionary.

> For example, NVDA ordinarily speaks the word tortilla with an "L" sound

> rather than a "y" sound.  To force NVDA to pronounce it with the "y"

> sound,

> there must be an entry in the speech dictionary to instruct NVDA to speak

> the string of characters "torteeya" as desired.

> To make such an entry do the following.

> STEP 1: Put focus on the main NVDA menu with the keystroke  NVDA-key + n.

> The user can arrow down through a list of submenus.  Or, press the letter

> "p" to go to the preferences menu. The first menu under "Preferences" is

> 'General'. The user may arrow down the the Speech Dictionary or type 'd"

> and

> NVDA will jump into the

> default speech dictionary, There are three entries. They are respectively

> "Default",

> "voice", and "temporary".  I suggest putting my changes into the default

> dictionary.

> But before entering the default dictionnary, a word about the other two

> choices is in order.

> The user can arrow once to the voice dictionary which is  the dictionary

> belonging

> to the synthesizer currently running. For instance, if the Microsoft

> Speech

> Platform synthesizer is running, arrowing to the Voice Dictionary opens

> the

> dictionary whose entries govern the speech under that synthesizer. The

> entries in this

> dictionary apply to the Microsoft Speech Platform session and not to any

> other synthesizer that has been installed. Whatever synthesizer is

> running,

> the entries in the default speech dictionary apply.

> The tempory dictionary is like the voice dictionary, but it is erased when

> you exit the NVDA session.

> Entering the default dictionary. A list of entries will appear.  The user

> may add a new entry or arrow down to an entry he or she wishes to change.

> To

> add a new entry Tab once. To change an entry, arrow down the the entry in

> question and tab twice. Or to remove the entry in question, tab three

> times.

> But the object of this appendix is to add entries in support of the

> calculus

> book.

> So, tab only once to add an entry. Focus will be on the "Add" button.

> Press

> the ENTER key to activate it. NVDA says "add a dictionary entry dialogue,

> pattern edit". Focus is now in an edit box. The string of characters to be

> entered here is the string of characters as they appear in the text, that

> is, the actual character string encountered by the reading cursor.  As an

> example, type in the word tortilla. Press the TAB key ".  again, and the

> focus will be in another edit box. NVDA will say "replacement pattern

> edit".

> The replacement string to be typed will force NVDA to pronounce the word

> tortilla with a 'y' sound rather than an 'l' sound. That pattern is

> "tortee

> ya".

> Tab again to put focus in a comment edit box. Tabbing again puts focus on

> a

> check box called "Case sensitive". Its default value is "not checked". To

> make the replacement happen only when tortilla is upper case (either its

> first letter or all of them), press the space bar to check it.

> Tabbing again puts focus on a combo box whose entries are respectively

> "anywhere, "forward", and "regular expression".   The "anywhere" choice

> means that the pattern being replaced may appear either by itself or

> anywhere in a longer string of

> non-blank characters. The "forward" choice means that the pattern being

> replaced must appear at the very front of a longer string of characters.

> Of

> course, it may appear by itself and not part of a longer string of

> characters.  If the "forward" choice is picked, and the pattern being

> replaced appears following  one or more non-blank characters, NVDA will

> not

> speak using the replacement pattern.

> Regular expressions are required to address certain situations where more

> flexibility is needed,  and they will be discussed later. For now, suffice

> it

> to say, that in the case of a regular expression, the pattern to be

> replaced

> and the replacement pattern will contain special characters that will

> cause a more suffisticated replacement to take place.

> Now, the user is ready to implement the  changes specified below.

> However, since NVDA supports regular expressions, some of them will not be

> entered into the NVDA speech dictionary.

> The speech dictionary dialog may ask you if the Actual Pattern  should be

> case

> sensitive.  If you check "no", then any characters in the Actual Pattern

> string

> may be either upper or lower case. If however, you check "yes", then the

> characters in the Actual Pattern string must exactly match the case of the

> characters encountered in the text before the Replacement Pattern will be

> triggorred.

> The changes listed below do not need case sensitivity unless otherwise

> stated.

> SECTION0.1 Modifications For Chapter 1 Number Systems

> Chapter 1 discusses number systems which uses * for multiplication, / for

> division, + for addition, and - for subtraction.

> One change for chapter 1 is that for section headings, "SECTION".

> Actual Pattern="SECTION", Replacement Pattern="section"

> The other change is that Subscripts in this book are indicated by the

> suffix underscore plus an integer. An example is x_0 for x sub zero.

> Actual Pattern=_", Replacement Pattern="sub"

> Some readers may wish to hear x^2 read as x squared rather than x raised

> to

> exponent 2 and also x^3 read as x cubed. .  If the reader is willing to

> treat these two cases as special cases, the preferred reading can be

> supported as follows. Use two carot symbols instead of one, and preceed

> the

> carots with a space. Without that space, the variable name may not be

> spoken

> clearly. For example, write x cubed as x ^^3.

> This will require the user to make the following changes to the speech

> dictionary.

> Add the following entry.

> Actual Pattern ^^2 and Replacement Pattern squared.

> The change for x cubed is similar.

> SECTION0.2 Modifications for Chapter 2 Functions

> Chapter 2 discusses functions of one and of two variables. I introduce

> notation for exponents, denominators, and absolute value.

> Below is a list of changes I propose to make to the speech dictionary for

> chapter 2.

> It would be nice if the characters "f(x)" is spoken as

> "f of x". But, we also want "g(t)" to be read as "g of t".

> IN other words, we want the function name to be any character upper or

> lower

> case and to have a subscript.  We also want flexibility in the number of

> independent variables and also flexibility of  variable names.

> Three regular expressions  working together accomplish this goal.

> Regular expression recognizing the function name and opening parenthesis.:

> Actual Pattern:

> "([a-zA-Z])\("

> Replacement Pattern:

> "\1           of    open parenthesis                "

> Regular expression recognizing all arguments which are followed by a

> comma:

> Actual Pattern:

> "*([a-zA-Z]?)(\_?\d*)([/\.]?\d*) *([-]|[+]?) *([a-zA-

> Z]?)(\_?\d*)([/\.]?\d*)

> *[\,]{1}"

> Replacement Pattern:

> "\1 \2 \3 \4 \5 \6 \7    , "

> Regular expression recognizing an argument not followed by a comma:

> Actual Pattern:

> "*([a-zA-Z]*)(\_?\d*)([/\.]?\d*) *([-]|[+]?) *([a-zA-

> Z]?)(\_?\d*)([/\.]?\d*)

> *\)"

> Replacement Pattern:

> "\1 \2 \3 \4 \5\6 \7     close parenthesis     "

> H(x0)  will be read as "h of x". The function name (f, g, h, or any other

> letter)

> does not matter.

> The following changes do not involve regular expressions.

> actualPattern=:R->R, Replacement Pattern= maps R into R

> Actual Pattern="+/-", Replacement Pattern="plus or minus"

> Actual Pattern="<=", Replacement Pattern="less than or equal to"

> Actual Pattern=">=", Replacement Pattern="greater than or equal to"

> ActualPattern=!, Replacement Pattern=factorial

> ActualPattern=_, Replacement Pattern=sub

> Actual Pattern="(/", Replacement Pattern="open parenthesis begin

> denominator"

> Actual Pattern="/)", Replacement Pattern="end of denominator close

> parenthesis"

> Actual Pattern="(^", Replacement Pattern="open parenthesis begin exponent"

> Actual Pattern="^)", Replacement Pattern="end of exponent close

> parenthesis"

> Actual Pattern="(|", Replacement Pattern="open parenthesis begin absolute

> value"

> Actual Pattern="|)", Replacement Pattern="end of absolute value close

> parenthesis"

> Actual Pattern="}/", Replacement Pattern="open brace begin denominator"

> Actual Pattern="/}", Replacement Pattern="end of denominator close brace"

> Actual Pattern="{^", Replacement Pattern="open brace begin exponent"

> Actual Pattern="^}", Replacement Pattern="end of exponent close brace"

> Actual Pattern="{|", Replacement Pattern="open brace begin absolute value"

> Actual Pattern="|}", Replacement Pattern="end of absolute value close

> brace"

> Actual Pattern="[/", Replacement Pattern="open bracket begin denominator"

> Actual Pattern="/]", Replacement Pattern="end of denominator close

> bracket"

> Actual Pattern="[^", Replacement Pattern="open bracket begin exponent"

> Actual Pattern="^]", Replacement Pattern="end of exponent close bracket"

> Actual Pattern="[|", Replacement Pattern="open bracket begin absolute

> value"

> Actual Pattern="|]", Replacement Pattern="end of absolute value close

> bracket"

> NOTE: In the text, I only use parentheses to specify begin and end of

> exponents, denominators, and absolute value. It is up to you whether to

> use

> braces and brackets as well. But, if you do decide to use braces and

> brackets

> n addition to parentheses, I strongly suggest

> that  the Replacement Pattern mentions the brace or bracket   . unless you

> do,

> the speech will not help you keep track of opening and closing braces and

> brackets. If documents you send to your professor do not have an equal

> number

> of opening and closing braces/brackets/parentheses, he  or she will think

> you are confused and maybe lower your grade.

> SECTION0.3Modifications For Chapters 3, 4, and 5

> The chapter on limits only needs two changes to the speech dictionary. No

> changes are needed for chapters 4 and 5.

> Actual Pattern="lim:", Replacement Pattern="limit as"

> Actual Pattern="->", Replacement Pattern="approaches"

> SECTION0.4Modifications For Chapters 6, 7, and 8

> Regular expression for what variable a derivative is taken with respect

> to:

> Actual Pattern:

> "(\/)d([a-zA-Z])(\))"

> Replacement Pattern:

> "with respect to           \2"

> Actual Pattern= (d0

> Replacement Pattern="Open parenthesis  ze rowth derivative"

> Actual Pattern="(d1"

> Replacement Pattern="Open parenthesis first derivative"

> Actual Pattern= "(d2"

> Replacement Pattern=" Open parenthesis second derivative"

> Actual Pattern= "(d3"

> Replacement Pattern="Open parenthesis third derivative"

> Ordinary derivative whose differentiation level is specified by an

> integer:

> Fourth derivative:

> Actual Pattern:

> "(d4"

> Replacement Pattern:

> "open parenthesis fourth derivative"

> Eighth derivative:

> Actual Pattern:

> "(d8"

> Replacement Pattern:

> "Open parenthesis eighthth derivative "

> The first, second, third, fourth, and eighth derivatives are entries that

> are

> not regular expressions. They are more understandable when not handled by

> a

> regular expression.

> However, the fifth, sixth, seventh, and ninth derivatives are all handled

> by

> a

> regular expression. Their replacement patterns are very understandable.

> Regular expression recognizing fifth, sixth, seventh, and ninth

> derivatives:

> Actual Pattern:

> "(\()d([5679])"

> Replacement Pattern:

> "open parenthesis               \2   th    derivative"

> Ordinary derivatives whose  differentiation level is specified by an index

> variable:

> This regular expression comes into play in a future chapter, but it fits

> here.

> Actual Pattern:

> "(\()d([a-zA-Z])([-]|[+]?)([1-9]?)"

> Replacement Pattern:

> "open parenthesis       \2      th        \3    \4          derivative"

> SECTION0.5 Modifications For Chapter 9, Rieman Integration

> This chapter introduces notations for summation and for integrals.

> I leave it to the reader whether or not to make this group case sensitive.

> I

> mean demanding that the characters "int" should be upper case to prevent

> collisions in the text.

> Actual Pattern="INT:", Replacement Pattern="integral"

> Actual Pattern="INT:{", Replacement Pattern="integral lower bound"

> Actual Pattern="}{", Replacement Pattern="and upper bound"

> Actual Pattern="}:", Replacement Pattern="of the integrand"

> Actual Pattern="INT{}", Replacement Pattern="indefinite integral"

> Actual Pattern="INT{}:", Replacement Pattern="indefinite integral of the

> integrand"

> Actual Pattern="INT:{}", Replacement Pattern="integral"

> I found myself entering the above integral notations using brackets

> instead

> of braces, so I recommend including the following just to make the

> entering

> text more forgiving.

> Actual pattern="INT [", replacement pattern="integral lower bound"

> actual pattern ="][", replacement pattern ="and upper bound"

> actual pattern ="]:", replacement pattern ="of the integrand"

> actual pattern ="INT[]", replacement pattern ="indefinite integral"

> actual pattern ="INT[]:", replacement pattern ="indefinite integral of the

> integrand"

> Your professor might prefer the representation of an upper bound used in

> latex which is "\to".

> Actual Pattern="\to", Replacement Pattern="and upper bound"

> Actual Pattern="INTI:", Replacement Pattern="inner integral"

> Actual Pattern="INTM:", Replacement Pattern="middle integral"

> Actual Pattern="INTO:", Replacement Pattern="outer integral"

> SECTION0.6 Modifications for Chapter 12 Vectors

> actual pattern={||x+y||},

> Replacement Pattern=open brace begin norm x+y end norm close brace

> Actual pattern=DET2, Replacement Pattern=second order determinant

> Actual pattern=DET3, Replacement Pattern=third order determinant

> Actual pattern=(.), Replacement Pattern=dot product

> Actual pattern=(*), Replacement Pattern=cross product

> SECTION0.7 Modifications For Chapter 13

> Partial derivative whose differentiation level is specified by an integer:

> Fourth partial derivative:

> Actual Pattern:

> "(pd4"

> Replacement Pattern:

> "open parenthesis fourth partial derivative"

> Eighth partial derivative:

> Actual Pattern:

> "(pd8"

> Replacement Pattern:

> "open parenthesis eighth partial derivative"

> Regular expression recognizing fifth, sixth, seventh, and ninth partial

> derivatives:

> Actual Pattern:

> "(\()pd([5679] )"

> Replacement Pattern:

> "open parenthesis       \2     th partial derivative

> Partial derivative whose differentation level is specified by an index

> variable:

> Actual Pattern:

> "(\()pd([a-zA-Z])([-]|[+]?)([1-9]?)"

> Replacement Pattern:

> open parenthesis       \2      th        \3    \4          partial

> derivative

> SECTION0.8 Modifications For Chapters 14, 15, 16, and 17

> actualWord=:R->Rn Replacement Pattern=maps R into R n

> actualWord=:R2->R2 Replacement Pattern=maps R2 into R2

> actualWord=:R3->R3 Replacement Pattern=maps R3 into R3

> actualWord=:Rn->Rn Replacement Pattern=maps R n into R n

> actualWord=:R2->R Replacement Pattern=maps R2 into R

> actualWord=:R3->R Replacement Pattern=maps R3 into R

> actualWord=:RN->R Replacement Pattern=maps RN into R

> This group is case sensitive.

> Actual Pattern="DINT::", Replacement Pattern="double integral"

> Actual Pattern="LINT::", Replacement Pattern="line integral over curve"

> Actual Pattern="SINT::", Replacement Pattern="surface integral"

> Actual Pattern="TINT::", Replacement Pattern="triple integral"

> There is a set of notations for derivatives for which I made no entries

> into

> the speech dictionary. It is not uncommon to represent a derivative by

> following the function name with an apostrophe. For example, f'(x)

> represents the first  derivative of f(x). Likewise, f''(x) is the second

> derivative of f(x). You may occasionally encounter three apostrophes for

> third derivative such as for example f'''(x). However, it is unlikely that

> the student will ever see more than three apostrophes for differentiation.

> In fact, the use of apostrophe for differentiation is more prevalent in

> differential equations books than in a calculus text.

> So, if the student hears y' or y'', he or she should understand that

> differentiation is being represented. Just get used to it.

> Testing regular expressions involving carrot and parenthesis exposed a

> problem in two of the seven synthesizers I exercised. Those two are

> Microsoft Speech Platform and Microsoft SAPI5. The other five synthesizers

> passed the test.

> I tested regular expressions for beginning and ending exponential

> expressions.

> My syntax for these exponential expressions is that  the expressions are

> bracketed between (^ and ^).

> Regular expression to recognize beginning of exponential expression:

> Actual Pattern:

> [\(][\^]

> Replacement Pattern:

> Begin exponent

> Regular expression to recognize end  of exponential expression:

> Actual Pattern:

> [\^][\)]

> Replacement Pattern:

> end of exponent

> The regular expression for the end of an exponential expression fails to

> recognize the end.

> The regular expression for the beginning exponential expression works as

> expected.

> The two regular expressions are very similar. Why does one work and not

> the

> other?

> Here are some test cases:

>   (^ ^)

> (^w+3^)

> I then wrote a regular expression to recognize the pair "()", and NVDA

> sees

> the closing parenthesis but not the opening one. Puzzling!

> The following synthesizers execute these regular expressions correctly.

> Eloquence,

> ESpeak NG,

> Soft Voice,

> Speech Player ESpeak,

> SVox Pico Synthesizer,

> The following synthesizers did not execute these regular expressions

> correctly.

> Microsoft Speech API Version 5,

> Microsoft Speech Platform

> For these last two synthesizers, I input the regular expressions into

> their

> Voice Dictionaries.

> (^ w + 3^)

> Begin exponent is recognized but not the end of exponent.

> This is not a fix but what I did to expose the problem.

> NOTE: The number of spaces specified in the replacement patterns for

> regular

> expressions should not be ignored. Some parts of the replacement string

> may

> be spoken so quickly, that you, the listener, may hear them as a

> nonintelligible blip.

> C Michael R. Cross

> > -----Original Message-----

> > From: nvda@nvda.groups.io [mailto:nvda@nvda.groups.io] On Behalf Of

> Damien

> > Garwood

> > Sent: Sunday, April 01, 2018 8:29 AM

> > To: nvda@nvda.groups.io

> > Subject: Re: [nvda] Maths?

> >

> > Hi,

> > You can find extensive examples of problem 3 at:

> > https://en.wikipedia.org/wiki/Scientific_notation

> > Problem 2 can be seen at:

> https://en.wikipedia.org/wiki/Normalized_number

> > Can't find one containing problem 1 off the top of my head, though like

> I

> > said, problem 2 is becoming more common now.

> > Cheers.

> > Damien.

> > -----Original Message-----

> > From: Antony Stone

> > Sent: Sunday, April 01, 2018 2:23 PM

> > To: nvda@nvda.groups.io

> > Subject: Re: [nvda] Maths?

> >

> > Please point us at an example of such an article so we can see for

> > ourselves

> > what it seems to contain.

> >

> > Otherwise we're just guessing, based on your guesses, about what might

> be

> > going on.

> >

> > Antony.

> >

> > On Sunday 01 April 2018 at 14:31:53, Damien Garwood wrote:

> >

> > > Hi,

> > > Not sure whether it's NVDA, or me.

> > > When I attempt to read articles that explain mathematical operations,

> > > explanations of scientific notation being a great example, I generally

> > > experience one or more of the following:

> > >

> > > 1. Graphics which, I assume would seem to have some sort of formula in

> > it,

> > > but using strange symbols like | and _ where I might expect to see

> > > operators

> > > like +, -, * or /. Though I'm not seeing these as often as I used to

> > now.

> > >

> > > 2. Spaces, sometimes contained in lists, without anything in them, and

> > > with

> > > text following it which attempts to explain something which just

> doesn't

> > > seem to exist. This seems to have replaced the "graphical formula"

> > > strategy.

> > >

> > > 3. A formula written out in plaintext, but with some of the operators

> > > missing, making NVDA announce it as a big number (mainly happens when

> > > dealing with exponentiation), for example 102 instead of 10^2.

> > >

> > > Is there something I should be doing differently here?

> > >

> > > I would have thought reading maths would be like reading anything

> > > else...How

> > > wrong I am. Cheers. Damien.

> >

> > --

> > Most people have more than the average number of legs.

> >

> >                                                    Please reply to the

> > list;

> >                                                          please *don't*

> CC

> > me.

> >

> >

> >

> >

> >

>

 

 

 

 

 


Re: getting the professional version of station playlist studio registered

Tony Ballou
 

Hi,


Here's an update on station playlist.  All systems go,  got it
registered successfully.  It was a matter of where you typed information
on the registration form.  unfortunately NVDA doesn't read the
information associated with any of the edit fields and things were in a
state of trial and err.  However, today through emails with Ross, we
were able to solve things and get it up and running.


Tony

On 3/31/2018 9:26 AM, Tony Ballou wrote:
Hi Joseph,


I got the standard version. Believe me I did my research before making
the buy. I don't need to have all of the bells and whistles for what I'm
going to be doing with the program.  I'm mainly going to be doing D J
type stuff.


Tony


On 3/31/2018 2:06 AM, Joseph Lee wrote:
Hi,
Wait, before we continue with this: are you a broadcaster intending to use SPL Studio, or did you buy it because people told you about it? If you are NOT a broadcaster, then please contact StationPlaylist developer (Ross Levis, who is not a member of this list)for chance for a refund, because SPL Studio Pro costs 250 dollars or so. If however, you are indeed a broadcaster, then you need to put in the station name in a plain text format.
An important reminder: just because I or other add-on authors are asking for feedback should not be a reason to purchase expensive software unless you really have to. This is why I did say in the original message I sent a few days ago that I'm seeking feedback from SPL users. At this point, I'm half-tempted to never again ask for feedback on the SPL add-on from this list because someone might purchase an expensive software without being educated as to what it is and its purpose, or for that matter, if one is actually not broadcasting or plan not to use this software as a broadcaster. But given that we have broadcasters on this list who do use this software and the add-on for it, and because not all of them are part of the NVDA-SPL list, I'll ask for wider feedback from time to time but with an important change: I will accept feedback only from broadcasters and other users who are actual users of StationPlaylist Studio, or is interested in using it for broadcasting purposes.
For future reference, the subscription info for NVDA-SPL list is:
nvda-spl+subscribe@nvda-spl.groups.io
Another thing to note: StationPlaylist Studio add-on follows continuous delivery model - same principle as Windows 10 App Essentials add-on. As such, you'll see tons of messages about snapshots (two snapshot levels) on the NVDA-SPL list. Most snapshots are stable, but occasionally an alpha-level build may not work all the way or is filled with experimental features.
Cheers,
Joseph


-----Original Message-----
From: nvda@nvda.groups.io <nvda@nvda.groups.io> On Behalf Of Tony Ballou
Sent: Friday, March 30, 2018 10:50 PM
To: nvda@nvda.groups.io
Subject: [nvda] getting the professional version of station playlist studio registered

Hi folks,


I purchased station playlist studio and I can't seem to get it registered I know that you type in the serial number, and the 20 digit code, but I have having trouble with the station name. No matter what i type in there I get an error something about an invalid value and to press escape to which sends me back to the registration screen from that point that invalid value error message comes up every time I tab around the screen. .What should the proper syntax be for the station name? Hopefully one of you listers can help me sort this out. Tony









looks like april fools jokes are up a notch

 

Hi.

Looks like some  software companies are doing april fools jokes.

applian just posted a message about a replay robot which was basically telling you to check for upgrades, but still.

Prosound which I got some stuff  from included a soundpack costing 666666 dollars for free for a week called block chain.

It is what it says, 10 blocks and chain sounds.


Re: windows live mial 2015

Richard Kuzma
 

Hello,

I download the version from your link and it says it is windows live essentials 2012 version when I install it.

Is there anything newer?

Thanks

Rich

 

 

From: nvda@nvda.groups.io [mailto:nvda@nvda.groups.io] On Behalf Of Gene
Sent: Saturday, March 31, 2018 7:43 PM
To: nvda@nvda.groups.io
Subject: Re: [nvda] windows live mial 2015

 

Here is a link to the 15.x version:

Gene

----- Original Message -----

From: Gene

Sent: Saturday, March 31, 2018 7:01 AM

Subject: Re: [nvda] windows live mial 2015

 

I just checked on my Windows 7 machine, which is running a ribbon version.  It is one of the build 2015 series and that build is a ribbon version.  There are different versions in a build.  If you want the 2015 version I have a link for, I can send the link.  But let's be sure if you want a menu or ribbon version, as I said.

 

Gene

----- Original Message -----

Sent: Friday, March 30, 2018 6:56 PM

Subject: [nvda] windows live mial 2015

 

Wondering if anyone has a copy of windows live mail 2015.

I was just told by Microsoft that is was in existence but no longer supported and therefor not available for download from them.

Thyanks so much.

Rich

 


Re: Performing OCR on a Downloaded Image?

Sam Taylor
 

Hi Kenny,

when the image is in focus, press NVDA+R.

You can then navigate the result with your arrow keys.

Thanks

Sam


On 2/04/2018 08:03, Kenny wrote:

    Hello,


Does NVDA 2018.1.1 have an option or add-on available that would OCR a .jpg, .png or .gif file and display the results in a window I can browse/read using the arrow keys?


A lot of webmasters are starting to place help text in images, instead of placing it directly on the web page. I need a way of reading this text.


If NVDA doesn't provide any way of doing this, does Windows Narrator?   


Re: Still says too much

Chris Bezant <chrisbezant999@...>
 

Thanks Chris, that did the trick on the numeric keypad. I didn't associate what I was hearing with command keys.
Access still says Edit Box before telling me its contents so any help there would be appreciated.


Performing OCR on a Downloaded Image?

Kenny <kwashingtonbox@...>
 

    Hello,


Does NVDA 2018.1.1 have an option or add-on available that would OCR a .jpg, .png or .gif file and display the results in a window I can browse/read using the arrow keys?


A lot of webmasters are starting to place help text in images, instead of placing it directly on the web page. I need a way of reading this text.


If NVDA doesn't provide any way of doing this, does Windows Narrator?   


Re: nvda my add-ons have disappeared

brandon
 

I fixed the issue I just had to reinstall 20184.14.1

On Apr 1, 2018, at 12:30 PM, Sarah k Alawami <marrie12@gmail.com> wrote:

I've not heard of this as of yet. Did you try running froma portable copy to make sure tha theeadd ons were actually gone? Looks like somethingn corrupted, which if that is the case is not good. Thoughts?

Take care all and have a happy Sunday.

On Apr 1, 2018, at 12:19 PM, brandon <breedto@gmail.com> wrote:

Greetings all,

While I was upgrading to nvda 2018.1.1 I got an error that nvda was loaded on a previous system and was asked to unload it. I found this odd so I retryed and it seemed to work. Then i got a notification from windows saying that I had to install an update manually so I did. When windows loaded back up I found that nvda was not running and I had to open it up manually coming to realize that all my addons and speech settings were all gone. Is there anyway of fixing this or am I just out of luck.
Brandon



Re: nvda my add-ons have disappeared

Sarah k Alawami
 

I've not heard of this as of yet. Did you try running froma portable copy to make sure tha theeadd ons were actually gone? Looks like somethingn corrupted, which if that is the case is not good. Thoughts?

Take care all and have a happy Sunday.

On Apr 1, 2018, at 12:19 PM, brandon <breedto@gmail.com> wrote:

Greetings all,

While I was upgrading to nvda 2018.1.1 I got an error that nvda was loaded on a previous system and was asked to unload it. I found this odd so I retryed and it seemed to work. Then i got a notification from windows saying that I had to install an update manually so I did. When windows loaded back up I found that nvda was not running and I had to open it up manually coming to realize that all my addons and speech settings were all gone. Is there anyway of fixing this or am I just out of luck.
Brandon




Re: Maths?

Michael
 

Damien,
My book is being reviewed at the moment. As soon as it is accepted, I will
announce when and where it is released. The title is "Real Analysis For
Blind Students". Real Analysis is the sub-branch of mathematics where
calculus resides. Actually, it is a subbranch of the analysis branch - the
other subbranch being complex analysis. The book is intended for blind
students whose declared major is mathematics.
A disclaimer is in order. Every character in the book can be found on a
standard English keyboard. There is no integral sign on a standard keyboard.
I want the student to be able to write equations as well as read them. It is
easier and faster to type "INT:" rather than hunting up the code for an
integral sign. With a few exceptions like this one, the notation in the book
conforms to that in a print (or electronic) text. A mathematics professor
should consider the deviation from the standard very minor. If you want to
insert an integral sign into an e-mail for instance (or any other document),
remember its special code and create a regular expression so that NVDA will
recognize it.
The modifications specified in the appendix only cover what is in the book
and not any article on the internet.
Add your own regular expressions to those I describe to cover cases I
neglected.
An equal sign stands between two expressions which are the same. I can make
a similar statement using a different relation such as greater than or less
than.An equation or inequality is between two expressions.

-----Original Message-----
From: nvda@nvda.groups.io [mailto:nvda@nvda.groups.io] On Behalf Of Damien
Garwood
Sent: Sunday, April 01, 2018 11:44 AM
To: nvda@nvda.groups.io
Subject: Re: [nvda] Maths?

Hi,
That book actually sounds quite interesting. What branch of maths does it
cover, and what level would you expect your audience to be at? I've never
quite been a maths buff in my schooldays and, as with a lot of other
things,
now I'm learning (or trying to learn) at my own pace, I'm finding I
understand a lot more. I'd still say I was only at a basic level though.
Currently getting my head around scientific notation.
However, I digress. Back to my particular problems.
Problem 2 would seem to be that it is in MathML, in which case a message
would be helpful for those, like me until about ten minutes ago, who don't
have Mathplayer installed.
Problem 3 seems to be to do with font changes (apparently there is a font
called superscript which is used to denote exponents which I never knew
about, hence the 102 instead of 10^2). Of course this is going to cause
problems for people like me who have font announcement turned off. But the
thing is, other than that, why else would you need to know when/if the
font
of something changed? If fonts are going to be used to represent numbers
and
mathematical operations then surely they should be announced
automatically?
I don't know enough about fonts and formatting to know how this kind of
thing works.
As for MathPlayer, has anyone had any luck with it? There may be a
navigation commands document but I just can't get my head around it,
especially since it talks about expressions and equations (Aren't they the
same thing?), not to mention making the content sound much more advanced
than is really necessary. Then, there also doesn't seem to be a way to
copy,
or I guess the more accurate word would be convert, the mathematical
content
into plaintext, for pasting into a text document. The joys of incompatible
formatting...
Cheers.
Damien.
-----Original Message-----
From: Michael
Sent: Sunday, April 01, 2018 3:00 PM
To: nvda@nvda.groups.io
Subject: Re: [nvda] Maths?

Damien,
The material below is from the appendix to a calculus book for blind
students I have written. Its position in the market place has not yet been
decided.
I hope it helps you.
Appendix 2 How To Modify The Speech Dictionary In NVDA

NVDA is a screen reading program produced by NV Access(R). It speaks the
information about various parts of the active window in response to
keystrokes pressed by the user. If the keystroke is not an NVDA command,
NVDA merely echoes the keystroke. But, if it is an NVDA command keystroke
such as NVDA-key + t, NVDA tells the user something about the active
window.
In the case of NVDA-Key + t, NVDA announces the title of the active
window.
NVDA commands take the form of the NVDA-key followed by a letter. The
INSERT
key is by default the NVDA-key. However, NVDA allows the user to change
the
NVDA-key to the CapsLock key if desired.
The user can control how NVDA announces a string of characters. If the
user
wants NVDA to speak a particular string of characters a certain way, he or
she can make an entry in its speech dictionary for that particular string
of
characters. After this entry is saved into the speech dictionary, whenever
that particular string of characters is encountered, NVDA speaks it
according to the entry just made in the speech dictionary.
For example, NVDA ordinarily speaks the word tortilla with an "L" sound
rather than a "y" sound. To force NVDA to pronounce it with the "y"
sound,
there must be an entry in the speech dictionary to instruct NVDA to speak
the string of characters "torteeya" as desired.
To make such an entry do the following.
STEP 1: Put focus on the main NVDA menu with the keystroke NVDA-key + n.
The user can arrow down through a list of submenus. Or, press the letter
"p" to go to the preferences menu. The first menu under "Preferences" is
'General'. The user may arrow down the the Speech Dictionary or type 'd"
and
NVDA will jump into the
default speech dictionary, There are three entries. They are respectively
"Default",
"voice", and "temporary". I suggest putting my changes into the default
dictionary.
But before entering the default dictionnary, a word about the other two
choices is in order.
The user can arrow once to the voice dictionary which is the dictionary
belonging
to the synthesizer currently running. For instance, if the Microsoft
Speech
Platform synthesizer is running, arrowing to the Voice Dictionary opens
the
dictionary whose entries govern the speech under that synthesizer. The
entries in this
dictionary apply to the Microsoft Speech Platform session and not to any
other synthesizer that has been installed. Whatever synthesizer is
running,
the entries in the default speech dictionary apply.
The tempory dictionary is like the voice dictionary, but it is erased when
you exit the NVDA session.
Entering the default dictionary. A list of entries will appear. The user
may add a new entry or arrow down to an entry he or she wishes to change.
To
add a new entry Tab once. To change an entry, arrow down the the entry in
question and tab twice. Or to remove the entry in question, tab three
times.
But the object of this appendix is to add entries in support of the
calculus
book.
So, tab only once to add an entry. Focus will be on the "Add" button.
Press
the ENTER key to activate it. NVDA says "add a dictionary entry dialogue,
pattern edit". Focus is now in an edit box. The string of characters to be
entered here is the string of characters as they appear in the text, that
is, the actual character string encountered by the reading cursor. As an
example, type in the word tortilla. Press the TAB key ". again, and the
focus will be in another edit box. NVDA will say "replacement pattern
edit".
The replacement string to be typed will force NVDA to pronounce the word
tortilla with a 'y' sound rather than an 'l' sound. That pattern is
"tortee
ya".
Tab again to put focus in a comment edit box. Tabbing again puts focus on
a
check box called "Case sensitive". Its default value is "not checked". To
make the replacement happen only when tortilla is upper case (either its
first letter or all of them), press the space bar to check it.
Tabbing again puts focus on a combo box whose entries are respectively
"anywhere, "forward", and "regular expression". The "anywhere" choice
means that the pattern being replaced may appear either by itself or
anywhere in a longer string of
non-blank characters. The "forward" choice means that the pattern being
replaced must appear at the very front of a longer string of characters.
Of
course, it may appear by itself and not part of a longer string of
characters. If the "forward" choice is picked, and the pattern being
replaced appears following one or more non-blank characters, NVDA will
not
speak using the replacement pattern.

Regular expressions are required to address certain situations where more
flexibility is needed, and they will be discussed later. For now, suffice
it
to say, that in the case of a regular expression, the pattern to be
replaced

and the replacement pattern will contain special characters that will
cause a more suffisticated replacement to take place.
Now, the user is ready to implement the changes specified below.
However, since NVDA supports regular expressions, some of them will not be
entered into the NVDA speech dictionary.
The speech dictionary dialog may ask you if the Actual Pattern should be
case
sensitive. If you check "no", then any characters in the Actual Pattern
string
may be either upper or lower case. If however, you check "yes", then the
characters in the Actual Pattern string must exactly match the case of the
characters encountered in the text before the Replacement Pattern will be
triggorred.
The changes listed below do not need case sensitivity unless otherwise
stated.


SECTION0.1 Modifications For Chapter 1 Number Systems

Chapter 1 discusses number systems which uses * for multiplication, / for
division, + for addition, and - for subtraction.
One change for chapter 1 is that for section headings, "SECTION".
Actual Pattern="SECTION", Replacement Pattern="section"
The other change is that Subscripts in this book are indicated by the
suffix underscore plus an integer. An example is x_0 for x sub zero.
Actual Pattern=_", Replacement Pattern="sub"
Some readers may wish to hear x^2 read as x squared rather than x raised
to
exponent 2 and also x^3 read as x cubed. . If the reader is willing to
treat these two cases as special cases, the preferred reading can be
supported as follows. Use two carot symbols instead of one, and preceed
the
carots with a space. Without that space, the variable name may not be
spoken
clearly. For example, write x cubed as x ^^3.
This will require the user to make the following changes to the speech
dictionary.
Add the following entry.
Actual Pattern ^^2 and Replacement Pattern squared.
The change for x cubed is similar.

SECTION0.2 Modifications for Chapter 2 Functions
Chapter 2 discusses functions of one and of two variables. I introduce
notation for exponents, denominators, and absolute value.
Below is a list of changes I propose to make to the speech dictionary for
chapter 2.
It would be nice if the characters "f(x)" is spoken as
"f of x". But, we also want "g(t)" to be read as "g of t".
IN other words, we want the function name to be any character upper or
lower

case and to have a subscript. We also want flexibility in the number of
independent variables and also flexibility of variable names.
Three regular expressions working together accomplish this goal.

Regular expression recognizing the function name and opening parenthesis.:
Actual Pattern:
"([a-zA-Z])\("
Replacement Pattern:
"\1 of open parenthesis "

Regular expression recognizing all arguments which are followed by a
comma:
Actual Pattern:
"*([a-zA-Z]?)(\_?\d*)([/\.]?\d*) *([-]|[+]?) *([a-zA-
Z]?)(\_?\d*)([/\.]?\d*)
*[\,]{1}"
Replacement Pattern:
"\1 \2 \3 \4 \5 \6 \7 , "

Regular expression recognizing an argument not followed by a comma:
Actual Pattern:
"*([a-zA-Z]*)(\_?\d*)([/\.]?\d*) *([-]|[+]?) *([a-zA-
Z]?)(\_?\d*)([/\.]?\d*)
*\)"
Replacement Pattern:
"\1 \2 \3 \4 \5\6 \7 close parenthesis "


H(x0) will be read as "h of x". The function name (f, g, h, or any other
letter)
does not matter.
The following changes do not involve regular expressions.


actualPattern=:R->R, Replacement Pattern= maps R into R

Actual Pattern="+/-", Replacement Pattern="plus or minus"
Actual Pattern="<=", Replacement Pattern="less than or equal to"
Actual Pattern=">=", Replacement Pattern="greater than or equal to"
ActualPattern=!, Replacement Pattern=factorial
ActualPattern=_, Replacement Pattern=sub

Actual Pattern="(/", Replacement Pattern="open parenthesis begin
denominator"
Actual Pattern="/)", Replacement Pattern="end of denominator close
parenthesis"
Actual Pattern="(^", Replacement Pattern="open parenthesis begin exponent"
Actual Pattern="^)", Replacement Pattern="end of exponent close
parenthesis"
Actual Pattern="(|", Replacement Pattern="open parenthesis begin absolute
value"
Actual Pattern="|)", Replacement Pattern="end of absolute value close
parenthesis"

Actual Pattern="}/", Replacement Pattern="open brace begin denominator"
Actual Pattern="/}", Replacement Pattern="end of denominator close brace"
Actual Pattern="{^", Replacement Pattern="open brace begin exponent"
Actual Pattern="^}", Replacement Pattern="end of exponent close brace"
Actual Pattern="{|", Replacement Pattern="open brace begin absolute value"
Actual Pattern="|}", Replacement Pattern="end of absolute value close
brace"

Actual Pattern="[/", Replacement Pattern="open bracket begin denominator"
Actual Pattern="/]", Replacement Pattern="end of denominator close
bracket"
Actual Pattern="[^", Replacement Pattern="open bracket begin exponent"
Actual Pattern="^]", Replacement Pattern="end of exponent close bracket"
Actual Pattern="[|", Replacement Pattern="open bracket begin absolute
value"
Actual Pattern="|]", Replacement Pattern="end of absolute value close
bracket"

NOTE: In the text, I only use parentheses to specify begin and end of
exponents, denominators, and absolute value. It is up to you whether to
use
braces and brackets as well. But, if you do decide to use braces and
brackets
n addition to parentheses, I strongly suggest
that the Replacement Pattern mentions the brace or bracket . unless you
do,
the speech will not help you keep track of opening and closing braces and
brackets. If documents you send to your professor do not have an equal
number
of opening and closing braces/brackets/parentheses, he or she will think
you are confused and maybe lower your grade.

SECTION0.3Modifications For Chapters 3, 4, and 5
The chapter on limits only needs two changes to the speech dictionary. No
changes are needed for chapters 4 and 5.

Actual Pattern="lim:", Replacement Pattern="limit as"
Actual Pattern="->", Replacement Pattern="approaches"

SECTION0.4Modifications For Chapters 6, 7, and 8

Regular expression for what variable a derivative is taken with respect
to:
Actual Pattern:
"(\/)d([a-zA-Z])(\))"
Replacement Pattern:
"with respect to \2"

Actual Pattern= (d0
Replacement Pattern="Open parenthesis ze rowth derivative"

Actual Pattern="(d1"
Replacement Pattern="Open parenthesis first derivative"

Actual Pattern= "(d2"
Replacement Pattern=" Open parenthesis second derivative"

Actual Pattern= "(d3"
Replacement Pattern="Open parenthesis third derivative"
Ordinary derivative whose differentiation level is specified by an
integer:
Fourth derivative:
Actual Pattern:
"(d4"
Replacement Pattern:
"open parenthesis fourth derivative"

Eighth derivative:
Actual Pattern:
"(d8"
Replacement Pattern:
"Open parenthesis eighthth derivative "

The first, second, third, fourth, and eighth derivatives are entries that
are
not regular expressions. They are more understandable when not handled by
a
regular expression.
However, the fifth, sixth, seventh, and ninth derivatives are all handled
by
a
regular expression. Their replacement patterns are very understandable.
Regular expression recognizing fifth, sixth, seventh, and ninth
derivatives:
Actual Pattern:
"(\()d([5679])"
Replacement Pattern:
"open parenthesis \2 th derivative"

Ordinary derivatives whose differentiation level is specified by an index
variable:
This regular expression comes into play in a future chapter, but it fits
here.
Actual Pattern:
"(\()d([a-zA-Z])([-]|[+]?)([1-9]?)"
Replacement Pattern:
"open parenthesis \2 th \3 \4 derivative"


SECTION0.5 Modifications For Chapter 9, Rieman Integration
This chapter introduces notations for summation and for integrals.
I leave it to the reader whether or not to make this group case sensitive.
I
mean demanding that the characters "int" should be upper case to prevent
collisions in the text.


Actual Pattern="INT:", Replacement Pattern="integral"

Actual Pattern="INT:{", Replacement Pattern="integral lower bound"

Actual Pattern="}{", Replacement Pattern="and upper bound"

Actual Pattern="}:", Replacement Pattern="of the integrand"

Actual Pattern="INT{}", Replacement Pattern="indefinite integral"

Actual Pattern="INT{}:", Replacement Pattern="indefinite integral of the
integrand"

Actual Pattern="INT:{}", Replacement Pattern="integral"

I found myself entering the above integral notations using brackets
instead
of braces, so I recommend including the following just to make the
entering
text more forgiving.
Actual pattern="INT [", replacement pattern="integral lower bound"
actual pattern ="][", replacement pattern ="and upper bound"
actual pattern ="]:", replacement pattern ="of the integrand"
actual pattern ="INT[]", replacement pattern ="indefinite integral"
actual pattern ="INT[]:", replacement pattern ="indefinite integral of the
integrand"

Your professor might prefer the representation of an upper bound used in
latex which is "\to".
Actual Pattern="\to", Replacement Pattern="and upper bound"

Actual Pattern="INTI:", Replacement Pattern="inner integral"

Actual Pattern="INTM:", Replacement Pattern="middle integral"

Actual Pattern="INTO:", Replacement Pattern="outer integral"

SECTION0.6 Modifications for Chapter 12 Vectors

actual pattern={||x+y||},
Replacement Pattern=open brace begin norm x+y end norm close brace

Actual pattern=DET2, Replacement Pattern=second order determinant

Actual pattern=DET3, Replacement Pattern=third order determinant

Actual pattern=(.), Replacement Pattern=dot product

Actual pattern=(*), Replacement Pattern=cross product

SECTION0.7 Modifications For Chapter 13

Partial derivative whose differentiation level is specified by an integer:
Fourth partial derivative:
Actual Pattern:
"(pd4"
Replacement Pattern:
"open parenthesis fourth partial derivative"

Eighth partial derivative:
Actual Pattern:
"(pd8"
Replacement Pattern:
"open parenthesis eighth partial derivative"

Regular expression recognizing fifth, sixth, seventh, and ninth partial
derivatives:
Actual Pattern:
"(\()pd([5679] )"
Replacement Pattern:
"open parenthesis \2 th partial derivative

Partial derivative whose differentation level is specified by an index
variable:
Actual Pattern:
"(\()pd([a-zA-Z])([-]|[+]?)([1-9]?)"
Replacement Pattern:
open parenthesis \2 th \3 \4 partial
derivative


SECTION0.8 Modifications For Chapters 14, 15, 16, and 17

actualWord=:R->Rn Replacement Pattern=maps R into R n

actualWord=:R2->R2 Replacement Pattern=maps R2 into R2

actualWord=:R3->R3 Replacement Pattern=maps R3 into R3

actualWord=:Rn->Rn Replacement Pattern=maps R n into R n

actualWord=:R2->R Replacement Pattern=maps R2 into R

actualWord=:R3->R Replacement Pattern=maps R3 into R

actualWord=:RN->R Replacement Pattern=maps RN into R


This group is case sensitive.

Actual Pattern="DINT::", Replacement Pattern="double integral"

Actual Pattern="LINT::", Replacement Pattern="line integral over curve"

Actual Pattern="SINT::", Replacement Pattern="surface integral"

Actual Pattern="TINT::", Replacement Pattern="triple integral"

There is a set of notations for derivatives for which I made no entries
into
the speech dictionary. It is not uncommon to represent a derivative by
following the function name with an apostrophe. For example, f'(x)
represents the first derivative of f(x). Likewise, f''(x) is the second
derivative of f(x). You may occasionally encounter three apostrophes for
third derivative such as for example f'''(x). However, it is unlikely that
the student will ever see more than three apostrophes for differentiation.
In fact, the use of apostrophe for differentiation is more prevalent in
differential equations books than in a calculus text.
So, if the student hears y' or y'', he or she should understand that
differentiation is being represented. Just get used to it.
Testing regular expressions involving carrot and parenthesis exposed a
problem in two of the seven synthesizers I exercised. Those two are
Microsoft Speech Platform and Microsoft SAPI5. The other five synthesizers
passed the test.
I tested regular expressions for beginning and ending exponential
expressions.
My syntax for these exponential expressions is that the expressions are
bracketed between (^ and ^).

Regular expression to recognize beginning of exponential expression:
Actual Pattern:
[\(][\^]
Replacement Pattern:
Begin exponent


Regular expression to recognize end of exponential expression:
Actual Pattern:
[\^][\)]
Replacement Pattern:
end of exponent

The regular expression for the end of an exponential expression fails to
recognize the end.
The regular expression for the beginning exponential expression works as
expected.
The two regular expressions are very similar. Why does one work and not
the
other?
Here are some test cases:
(^ ^)
(^w+3^)
I then wrote a regular expression to recognize the pair "()", and NVDA
sees
the closing parenthesis but not the opening one. Puzzling!

The following synthesizers execute these regular expressions correctly.
Eloquence,
ESpeak NG,
Soft Voice,
Speech Player ESpeak,
SVox Pico Synthesizer,
The following synthesizers did not execute these regular expressions
correctly.
Microsoft Speech API Version 5,
Microsoft Speech Platform
For these last two synthesizers, I input the regular expressions into
their
Voice Dictionaries.

(^ w + 3^)
Begin exponent is recognized but not the end of exponent.

This is not a fix but what I did to expose the problem.
NOTE: The number of spaces specified in the replacement patterns for
regular
expressions should not be ignored. Some parts of the replacement string
may
be spoken so quickly, that you, the listener, may hear them as a
nonintelligible blip.
C Michael R. Cross


-----Original Message-----
From: nvda@nvda.groups.io [mailto:nvda@nvda.groups.io] On Behalf Of
Damien
Garwood
Sent: Sunday, April 01, 2018 8:29 AM
To: nvda@nvda.groups.io
Subject: Re: [nvda] Maths?

Hi,
You can find extensive examples of problem 3 at:
https://en.wikipedia.org/wiki/Scientific_notation
Problem 2 can be seen at:
https://en.wikipedia.org/wiki/Normalized_number
Can't find one containing problem 1 off the top of my head, though like
I
said, problem 2 is becoming more common now.
Cheers.
Damien.
-----Original Message-----
From: Antony Stone
Sent: Sunday, April 01, 2018 2:23 PM
To: nvda@nvda.groups.io
Subject: Re: [nvda] Maths?

Please point us at an example of such an article so we can see for
ourselves
what it seems to contain.

Otherwise we're just guessing, based on your guesses, about what might
be
going on.

Antony.

On Sunday 01 April 2018 at 14:31:53, Damien Garwood wrote:

Hi,
Not sure whether it's NVDA, or me.
When I attempt to read articles that explain mathematical operations,
explanations of scientific notation being a great example, I generally
experience one or more of the following:

1. Graphics which, I assume would seem to have some sort of formula in
it,
but using strange symbols like | and _ where I might expect to see
operators
like +, -, * or /. Though I'm not seeing these as often as I used to
now.

2. Spaces, sometimes contained in lists, without anything in them, and
with
text following it which attempts to explain something which just
doesn't
seem to exist. This seems to have replaced the "graphical formula"
strategy.

3. A formula written out in plaintext, but with some of the operators
missing, making NVDA announce it as a big number (mainly happens when
dealing with exponentiation), for example 102 instead of 10^2.

Is there something I should be doing differently here?

I would have thought reading maths would be like reading anything
else...How
wrong I am. Cheers. Damien.
--
Most people have more than the average number of legs.

Please reply to the
list;
please *don't*
CC
me.










nvda my add-ons have disappeared

brandon
 

Greetings all,

While I was upgrading to nvda 2018.1.1 I got an error that nvda was loaded on a previous system and was asked to unload it. I found this odd so I retryed and it seemed to work. Then i got a notification from windows  saying that I had to install an update manually so I did. When windows loaded back up I found that nvda was not running and I had to open it up manually coming to realize that all my addons and speech settings were all gone. Is there anyway of fixing this or am I just out of luck.
Brandon


Re: Maths?

Damien Garwood <damien@...>
 

Hi,
That book actually sounds quite interesting. What branch of maths does it cover, and what level would you expect your audience to be at? I've never quite been a maths buff in my schooldays and, as with a lot of other things, now I'm learning (or trying to learn) at my own pace, I'm finding I understand a lot more. I'd still say I was only at a basic level though. Currently getting my head around scientific notation.
However, I digress. Back to my particular problems.
Problem 2 would seem to be that it is in MathML, in which case a message would be helpful for those, like me until about ten minutes ago, who don't have Mathplayer installed.
Problem 3 seems to be to do with font changes (apparently there is a font called superscript which is used to denote exponents which I never knew about, hence the 102 instead of 10^2). Of course this is going to cause problems for people like me who have font announcement turned off. But the thing is, other than that, why else would you need to know when/if the font of something changed? If fonts are going to be used to represent numbers and mathematical operations then surely they should be announced automatically? I don't know enough about fonts and formatting to know how this kind of thing works.
As for MathPlayer, has anyone had any luck with it? There may be a navigation commands document but I just can't get my head around it, especially since it talks about expressions and equations (Aren't they the same thing?), not to mention making the content sound much more advanced than is really necessary. Then, there also doesn't seem to be a way to copy, or I guess the more accurate word would be convert, the mathematical content into plaintext, for pasting into a text document. The joys of incompatible formatting...
Cheers.
Damien.

-----Original Message-----
From: Michael
Sent: Sunday, April 01, 2018 3:00 PM
To: nvda@nvda.groups.io
Subject: Re: [nvda] Maths?

Damien,
The material below is from the appendix to a calculus book for blind
students I have written. Its position in the market place has not yet been
decided.
I hope it helps you.
Appendix 2 How To Modify The Speech Dictionary In NVDA

NVDA is a screen reading program produced by NV Access(R). It speaks the
information about various parts of the active window in response to
keystrokes pressed by the user. If the keystroke is not an NVDA command,
NVDA merely echoes the keystroke. But, if it is an NVDA command keystroke
such as NVDA-key + t, NVDA tells the user something about the active window.
In the case of NVDA-Key + t, NVDA announces the title of the active window.
NVDA commands take the form of the NVDA-key followed by a letter. The INSERT
key is by default the NVDA-key. However, NVDA allows the user to change the
NVDA-key to the CapsLock key if desired.
The user can control how NVDA announces a string of characters. If the user
wants NVDA to speak a particular string of characters a certain way, he or
she can make an entry in its speech dictionary for that particular string of
characters. After this entry is saved into the speech dictionary, whenever
that particular string of characters is encountered, NVDA speaks it
according to the entry just made in the speech dictionary.
For example, NVDA ordinarily speaks the word tortilla with an "L" sound
rather than a "y" sound. To force NVDA to pronounce it with the "y" sound,
there must be an entry in the speech dictionary to instruct NVDA to speak
the string of characters "torteeya" as desired.
To make such an entry do the following.
STEP 1: Put focus on the main NVDA menu with the keystroke NVDA-key + n.
The user can arrow down through a list of submenus. Or, press the letter
"p" to go to the preferences menu. The first menu under "Preferences" is
'General'. The user may arrow down the the Speech Dictionary or type 'd" and
NVDA will jump into the
default speech dictionary, There are three entries. They are respectively
"Default",
"voice", and "temporary". I suggest putting my changes into the default
dictionary.
But before entering the default dictionnary, a word about the other two
choices is in order.
The user can arrow once to the voice dictionary which is the dictionary
belonging
to the synthesizer currently running. For instance, if the Microsoft Speech
Platform synthesizer is running, arrowing to the Voice Dictionary opens the
dictionary whose entries govern the speech under that synthesizer. The
entries in this
dictionary apply to the Microsoft Speech Platform session and not to any
other synthesizer that has been installed. Whatever synthesizer is running,
the entries in the default speech dictionary apply.
The tempory dictionary is like the voice dictionary, but it is erased when
you exit the NVDA session.
Entering the default dictionary. A list of entries will appear. The user
may add a new entry or arrow down to an entry he or she wishes to change. To
add a new entry Tab once. To change an entry, arrow down the the entry in
question and tab twice. Or to remove the entry in question, tab three times.
But the object of this appendix is to add entries in support of the calculus
book.
So, tab only once to add an entry. Focus will be on the "Add" button. Press
the ENTER key to activate it. NVDA says "add a dictionary entry dialogue,
pattern edit". Focus is now in an edit box. The string of characters to be
entered here is the string of characters as they appear in the text, that
is, the actual character string encountered by the reading cursor. As an
example, type in the word tortilla. Press the TAB key ". again, and the
focus will be in another edit box. NVDA will say "replacement pattern edit".
The replacement string to be typed will force NVDA to pronounce the word
tortilla with a 'y' sound rather than an 'l' sound. That pattern is "tortee
ya".
Tab again to put focus in a comment edit box. Tabbing again puts focus on a
check box called "Case sensitive". Its default value is "not checked". To
make the replacement happen only when tortilla is upper case (either its
first letter or all of them), press the space bar to check it.
Tabbing again puts focus on a combo box whose entries are respectively
"anywhere, "forward", and "regular expression". The "anywhere" choice
means that the pattern being replaced may appear either by itself or
anywhere in a longer string of
non-blank characters. The "forward" choice means that the pattern being
replaced must appear at the very front of a longer string of characters. Of
course, it may appear by itself and not part of a longer string of
characters. If the "forward" choice is picked, and the pattern being
replaced appears following one or more non-blank characters, NVDA will not
speak using the replacement pattern.

Regular expressions are required to address certain situations where more
flexibility is needed, and they will be discussed later. For now, suffice
it
to say, that in the case of a regular expression, the pattern to be replaced

and the replacement pattern will contain special characters that will
cause a more suffisticated replacement to take place.
Now, the user is ready to implement the changes specified below.
However, since NVDA supports regular expressions, some of them will not be
entered into the NVDA speech dictionary.
The speech dictionary dialog may ask you if the Actual Pattern should be
case
sensitive. If you check "no", then any characters in the Actual Pattern
string
may be either upper or lower case. If however, you check "yes", then the
characters in the Actual Pattern string must exactly match the case of the
characters encountered in the text before the Replacement Pattern will be
triggorred.
The changes listed below do not need case sensitivity unless otherwise
stated.


SECTION0.1 Modifications For Chapter 1 Number Systems

Chapter 1 discusses number systems which uses * for multiplication, / for
division, + for addition, and - for subtraction.
One change for chapter 1 is that for section headings, "SECTION".
Actual Pattern="SECTION", Replacement Pattern="section"
The other change is that Subscripts in this book are indicated by the
suffix underscore plus an integer. An example is x_0 for x sub zero.
Actual Pattern=_", Replacement Pattern="sub"
Some readers may wish to hear x^2 read as x squared rather than x raised to
exponent 2 and also x^3 read as x cubed. . If the reader is willing to
treat these two cases as special cases, the preferred reading can be
supported as follows. Use two carot symbols instead of one, and preceed the
carots with a space. Without that space, the variable name may not be spoken
clearly. For example, write x cubed as x ^^3.
This will require the user to make the following changes to the speech
dictionary.
Add the following entry.
Actual Pattern ^^2 and Replacement Pattern squared.
The change for x cubed is similar.

SECTION0.2 Modifications for Chapter 2 Functions
Chapter 2 discusses functions of one and of two variables. I introduce
notation for exponents, denominators, and absolute value.
Below is a list of changes I propose to make to the speech dictionary for
chapter 2.
It would be nice if the characters "f(x)" is spoken as
"f of x". But, we also want "g(t)" to be read as "g of t".
IN other words, we want the function name to be any character upper or lower

case and to have a subscript. We also want flexibility in the number of
independent variables and also flexibility of variable names.
Three regular expressions working together accomplish this goal.

Regular expression recognizing the function name and opening parenthesis.:
Actual Pattern:
"([a-zA-Z])\("
Replacement Pattern:
"\1 of open parenthesis "

Regular expression recognizing all arguments which are followed by a comma:
Actual Pattern:
"*([a-zA-Z]?)(\_?\d*)([/\.]?\d*) *([-]|[+]?) *([a-zA-Z]?)(\_?\d*)([/\.]?\d*)
*[\,]{1}"
Replacement Pattern:
"\1 \2 \3 \4 \5 \6 \7 , "

Regular expression recognizing an argument not followed by a comma:
Actual Pattern:
"*([a-zA-Z]*)(\_?\d*)([/\.]?\d*) *([-]|[+]?) *([a-zA-Z]?)(\_?\d*)([/\.]?\d*)
*\)"
Replacement Pattern:
"\1 \2 \3 \4 \5\6 \7 close parenthesis "


H(x0) will be read as "h of x". The function name (f, g, h, or any other
letter)
does not matter.
The following changes do not involve regular expressions.


actualPattern=:R->R, Replacement Pattern= maps R into R

Actual Pattern="+/-", Replacement Pattern="plus or minus"
Actual Pattern="<=", Replacement Pattern="less than or equal to"
Actual Pattern=">=", Replacement Pattern="greater than or equal to"
ActualPattern=!, Replacement Pattern=factorial
ActualPattern=_, Replacement Pattern=sub

Actual Pattern="(/", Replacement Pattern="open parenthesis begin
denominator"
Actual Pattern="/)", Replacement Pattern="end of denominator close
parenthesis"
Actual Pattern="(^", Replacement Pattern="open parenthesis begin exponent"
Actual Pattern="^)", Replacement Pattern="end of exponent close parenthesis"
Actual Pattern="(|", Replacement Pattern="open parenthesis begin absolute
value"
Actual Pattern="|)", Replacement Pattern="end of absolute value close
parenthesis"

Actual Pattern="}/", Replacement Pattern="open brace begin denominator"
Actual Pattern="/}", Replacement Pattern="end of denominator close brace"
Actual Pattern="{^", Replacement Pattern="open brace begin exponent"
Actual Pattern="^}", Replacement Pattern="end of exponent close brace"
Actual Pattern="{|", Replacement Pattern="open brace begin absolute value"
Actual Pattern="|}", Replacement Pattern="end of absolute value close brace"

Actual Pattern="[/", Replacement Pattern="open bracket begin denominator"
Actual Pattern="/]", Replacement Pattern="end of denominator close bracket"
Actual Pattern="[^", Replacement Pattern="open bracket begin exponent"
Actual Pattern="^]", Replacement Pattern="end of exponent close bracket"
Actual Pattern="[|", Replacement Pattern="open bracket begin absolute value"
Actual Pattern="|]", Replacement Pattern="end of absolute value close
bracket"

NOTE: In the text, I only use parentheses to specify begin and end of
exponents, denominators, and absolute value. It is up to you whether to use
braces and brackets as well. But, if you do decide to use braces and
brackets
n addition to parentheses, I strongly suggest
that the Replacement Pattern mentions the brace or bracket . unless you
do,
the speech will not help you keep track of opening and closing braces and
brackets. If documents you send to your professor do not have an equal
number
of opening and closing braces/brackets/parentheses, he or she will think
you are confused and maybe lower your grade.

SECTION0.3Modifications For Chapters 3, 4, and 5
The chapter on limits only needs two changes to the speech dictionary. No
changes are needed for chapters 4 and 5.

Actual Pattern="lim:", Replacement Pattern="limit as"
Actual Pattern="->", Replacement Pattern="approaches"

SECTION0.4Modifications For Chapters 6, 7, and 8

Regular expression for what variable a derivative is taken with respect to:
Actual Pattern:
"(\/)d([a-zA-Z])(\))"
Replacement Pattern:
"with respect to \2"

Actual Pattern= (d0
Replacement Pattern="Open parenthesis ze rowth derivative"

Actual Pattern="(d1"
Replacement Pattern="Open parenthesis first derivative"

Actual Pattern= "(d2"
Replacement Pattern=" Open parenthesis second derivative"

Actual Pattern= "(d3"
Replacement Pattern="Open parenthesis third derivative"
Ordinary derivative whose differentiation level is specified by an integer:
Fourth derivative:
Actual Pattern:
"(d4"
Replacement Pattern:
"open parenthesis fourth derivative"

Eighth derivative:
Actual Pattern:
"(d8"
Replacement Pattern:
"Open parenthesis eighthth derivative "

The first, second, third, fourth, and eighth derivatives are entries that
are
not regular expressions. They are more understandable when not handled by a
regular expression.
However, the fifth, sixth, seventh, and ninth derivatives are all handled by
a
regular expression. Their replacement patterns are very understandable.
Regular expression recognizing fifth, sixth, seventh, and ninth derivatives:
Actual Pattern:
"(\()d([5679])"
Replacement Pattern:
"open parenthesis \2 th derivative"

Ordinary derivatives whose differentiation level is specified by an index
variable:
This regular expression comes into play in a future chapter, but it fits
here.
Actual Pattern:
"(\()d([a-zA-Z])([-]|[+]?)([1-9]?)"
Replacement Pattern:
"open parenthesis \2 th \3 \4 derivative"


SECTION0.5 Modifications For Chapter 9, Rieman Integration
This chapter introduces notations for summation and for integrals.
I leave it to the reader whether or not to make this group case sensitive. I
mean demanding that the characters "int" should be upper case to prevent
collisions in the text.


Actual Pattern="INT:", Replacement Pattern="integral"

Actual Pattern="INT:{", Replacement Pattern="integral lower bound"

Actual Pattern="}{", Replacement Pattern="and upper bound"

Actual Pattern="}:", Replacement Pattern="of the integrand"

Actual Pattern="INT{}", Replacement Pattern="indefinite integral"

Actual Pattern="INT{}:", Replacement Pattern="indefinite integral of the
integrand"

Actual Pattern="INT:{}", Replacement Pattern="integral"

I found myself entering the above integral notations using brackets instead
of braces, so I recommend including the following just to make the entering
text more forgiving.
Actual pattern="INT [", replacement pattern="integral lower bound"
actual pattern ="][", replacement pattern ="and upper bound"
actual pattern ="]:", replacement pattern ="of the integrand"
actual pattern ="INT[]", replacement pattern ="indefinite integral"
actual pattern ="INT[]:", replacement pattern ="indefinite integral of the
integrand"

Your professor might prefer the representation of an upper bound used in
latex which is "\to".
Actual Pattern="\to", Replacement Pattern="and upper bound"

Actual Pattern="INTI:", Replacement Pattern="inner integral"

Actual Pattern="INTM:", Replacement Pattern="middle integral"

Actual Pattern="INTO:", Replacement Pattern="outer integral"

SECTION0.6 Modifications for Chapter 12 Vectors

actual pattern={||x+y||},
Replacement Pattern=open brace begin norm x+y end norm close brace

Actual pattern=DET2, Replacement Pattern=second order determinant

Actual pattern=DET3, Replacement Pattern=third order determinant

Actual pattern=(.), Replacement Pattern=dot product

Actual pattern=(*), Replacement Pattern=cross product

SECTION0.7 Modifications For Chapter 13

Partial derivative whose differentiation level is specified by an integer:
Fourth partial derivative:
Actual Pattern:
"(pd4"
Replacement Pattern:
"open parenthesis fourth partial derivative"

Eighth partial derivative:
Actual Pattern:
"(pd8"
Replacement Pattern:
"open parenthesis eighth partial derivative"

Regular expression recognizing fifth, sixth, seventh, and ninth partial
derivatives:
Actual Pattern:
"(\()pd([5679] )"
Replacement Pattern:
"open parenthesis \2 th partial derivative

Partial derivative whose differentation level is specified by an index
variable:
Actual Pattern:
"(\()pd([a-zA-Z])([-]|[+]?)([1-9]?)"
Replacement Pattern:
open parenthesis \2 th \3 \4 partial
derivative


SECTION0.8 Modifications For Chapters 14, 15, 16, and 17

actualWord=:R->Rn Replacement Pattern=maps R into R n

actualWord=:R2->R2 Replacement Pattern=maps R2 into R2

actualWord=:R3->R3 Replacement Pattern=maps R3 into R3

actualWord=:Rn->Rn Replacement Pattern=maps R n into R n

actualWord=:R2->R Replacement Pattern=maps R2 into R

actualWord=:R3->R Replacement Pattern=maps R3 into R

actualWord=:RN->R Replacement Pattern=maps RN into R


This group is case sensitive.

Actual Pattern="DINT::", Replacement Pattern="double integral"

Actual Pattern="LINT::", Replacement Pattern="line integral over curve"

Actual Pattern="SINT::", Replacement Pattern="surface integral"

Actual Pattern="TINT::", Replacement Pattern="triple integral"

There is a set of notations for derivatives for which I made no entries into
the speech dictionary. It is not uncommon to represent a derivative by
following the function name with an apostrophe. For example, f'(x)
represents the first derivative of f(x). Likewise, f''(x) is the second
derivative of f(x). You may occasionally encounter three apostrophes for
third derivative such as for example f'''(x). However, it is unlikely that
the student will ever see more than three apostrophes for differentiation.
In fact, the use of apostrophe for differentiation is more prevalent in
differential equations books than in a calculus text.
So, if the student hears y' or y'', he or she should understand that
differentiation is being represented. Just get used to it.
Testing regular expressions involving carrot and parenthesis exposed a
problem in two of the seven synthesizers I exercised. Those two are
Microsoft Speech Platform and Microsoft SAPI5. The other five synthesizers
passed the test.
I tested regular expressions for beginning and ending exponential
expressions.
My syntax for these exponential expressions is that the expressions are
bracketed between (^ and ^).

Regular expression to recognize beginning of exponential expression:
Actual Pattern:
[\(][\^]
Replacement Pattern:
Begin exponent


Regular expression to recognize end of exponential expression:
Actual Pattern:
[\^][\)]
Replacement Pattern:
end of exponent

The regular expression for the end of an exponential expression fails to
recognize the end.
The regular expression for the beginning exponential expression works as
expected.
The two regular expressions are very similar. Why does one work and not the
other?
Here are some test cases:
(^ ^)
(^w+3^)
I then wrote a regular expression to recognize the pair "()", and NVDA sees
the closing parenthesis but not the opening one. Puzzling!

The following synthesizers execute these regular expressions correctly.
Eloquence,
ESpeak NG,
Soft Voice,
Speech Player ESpeak,
SVox Pico Synthesizer,
The following synthesizers did not execute these regular expressions
correctly.
Microsoft Speech API Version 5,
Microsoft Speech Platform
For these last two synthesizers, I input the regular expressions into their
Voice Dictionaries.

(^ w + 3^)
Begin exponent is recognized but not the end of exponent.

This is not a fix but what I did to expose the problem.
NOTE: The number of spaces specified in the replacement patterns for regular
expressions should not be ignored. Some parts of the replacement string may
be spoken so quickly, that you, the listener, may hear them as a
nonintelligible blip.
C Michael R. Cross


-----Original Message-----
From: nvda@nvda.groups.io [mailto:nvda@nvda.groups.io] On Behalf Of Damien
Garwood
Sent: Sunday, April 01, 2018 8:29 AM
To: nvda@nvda.groups.io
Subject: Re: [nvda] Maths?

Hi,
You can find extensive examples of problem 3 at:
https://en.wikipedia.org/wiki/Scientific_notation
Problem 2 can be seen at: https://en.wikipedia.org/wiki/Normalized_number
Can't find one containing problem 1 off the top of my head, though like I
said, problem 2 is becoming more common now.
Cheers.
Damien.
-----Original Message-----
From: Antony Stone
Sent: Sunday, April 01, 2018 2:23 PM
To: nvda@nvda.groups.io
Subject: Re: [nvda] Maths?

Please point us at an example of such an article so we can see for
ourselves
what it seems to contain.

Otherwise we're just guessing, based on your guesses, about what might be
going on.

Antony.

On Sunday 01 April 2018 at 14:31:53, Damien Garwood wrote:

Hi,
Not sure whether it's NVDA, or me.
When I attempt to read articles that explain mathematical operations,
explanations of scientific notation being a great example, I generally
experience one or more of the following:

1. Graphics which, I assume would seem to have some sort of formula in
it,
but using strange symbols like | and _ where I might expect to see
operators
like +, -, * or /. Though I'm not seeing these as often as I used to
now.

2. Spaces, sometimes contained in lists, without anything in them, and
with
text following it which attempts to explain something which just doesn't
seem to exist. This seems to have replaced the "graphical formula"
strategy.

3. A formula written out in plaintext, but with some of the operators
missing, making NVDA announce it as a big number (mainly happens when
dealing with exponentiation), for example 102 instead of 10^2.

Is there something I should be doing differently here?

I would have thought reading maths would be like reading anything
else...How
wrong I am. Cheers. Damien.
--
Most people have more than the average number of legs.

Please reply to the
list;
please *don't* CC
me.





Re: nvda stops reading

nick Jentz
 

The problems I am having typically happen when I close out of the windows mail program as well. I am currently on Windows 10, version 1709.

Thanks!

 

Sent from Mail for Windows 10

 

From: Brian's Mail list account via Groups.Io
Sent: Sunday, April 1, 2018 2:25 AM
To: nvda@nvda.groups.io
Subject: Re: [nvda] nvda stops reading

 

I think Genes questions should be answered by those getting the problem.

Also is it only when windows mail had  been run or any app of a similar

sort?

also, which version of the windows 10 add on are you using here?

Brian

 

bglists@...

Sent via blueyonder.

Please address personal E-mail to:-

briang1@..., putting 'Brian Gaff'

in the display name field.

----- Original Message -----

From: "Mark" <mark@...>

To: <nvda@nvda.groups.io>

Sent: Saturday, March 31, 2018 7:37 PM

Subject: Re: [nvda] nvda stops reading

 

 

Hi i have a problem where if i am in windows 10 mail and close it or ault

away from the screen then NVDA stops speaking and i have to restart it

Mark.

 

Tune in to the number one station on the web TAFN radio

http://tafn.org.uk/listen

Or for our catch up service on demand http://www.tafn.org.uk/on-demand

or for our upcoming weekly schedule

http://www.tafn.org.uk/radio

part of the accessible friends network

www.tafn.org.uk

Registered UK Charity: #1108043.

Sent from Windows 10 Mail.

 

From: nick Jentz

Sent: 31 March 2018 18:21

To: nvda@nvda.groups.io

Subject: [nvda] nvda stops reading

 

Hello,

I am having an issue with NVDA not reading what is on my screen. It will be

working normally, and then randomly will only announce key presses instead

of whatever the focus item is. Is anyone else having this issue, or have any

idea on what may be causing this?

 

Thanks for the help!

 

Sent from Mail for Windows 10

 

 

 

 

 

 

 


Re: Seeking an AddON to make MP3 Gain easier to use

Gerardo Corripio
 

Exactly yes Jaws works great for reading the results! thus with NVDA you need to use the equivalent to the Jaws cursor, or Review mode, or whatever it's called. Would an AddOn make it easier, or is it the interface or how NVDA interprets the Mp3 Gain screen?


El 01/04/2018 a las 10:13 a.m., David Griffith escribió:

I use the program all the time as I am hearing impaired and use it to boost volumes of Talking Books etc for both myself and my sister.

You can of course simply set the gain db values in the program and press control a  to select all files and then control G to apply the volume increase. Alt tabbing away and back to the program will sometimes force NVDA to announce   percentage of task completed in the title bar. , NVDA plus T  to read title does not seem to work so well. However if you want to review the results for each file I am afraid the only way I know of doing this is to use Jaws instead of NVDA.

I do not know why Jaws is able to read the file list whilst NVDA cannot.

If you do not have Jaws it might be possible to use it in 40 minute mode just for the Mp3Gain work.

David Griffith

My Blind Access and Guide dog Blog
http://dgriffithblog.wordpress.com/
My Blind hammer Blog
https://www.westhamtillidie.com/authors/blind-hammer/posts

 

From: Gerardo Corripio
Sent: 01 April 2018 03:36
To: nvda@nvda.groups.io
Subject: [nvda] Seeking an AddON to make MP3 Gain easier to use

 

Anyone who uses the MP3Gain program to regulatetregulate volumes of MP3, when will an AddOn be crated? it's a hassel to work with it! I can't find a way to look at the results of the files, to determine what to do with them! Thanks for any tips/tricks, or if an ADdON could be developped?--

Gera

Enviado desde Thunderbird

 

 

 

 


-- 
Gera
Enviado desde Thunderbird