Date   

Re: NVDA For VS Code update.

Luke Davis
 

Pawel Urbanski wrote:

Putting the add-on on the community site at last, could be a good
idea. I will do some searching and reading what are the steps
https://addons.nvda-project.org/requirements

Luke


Re: Ideas to store add-on state.

Luke Davis
 

Pawel Urbanski wrote:

Thanks alot for that tip. I was thinking about GlobalVars but for some
reason made a lazy assumption that it is a dictionary of useful
values. It looks like it can be used in a more clever way.
globalVars (lower case g) is literally just a module. It has some variables of its own that NVDA itself uses for various things, but it is little more than a namespace that you can import and set things on.

Technically you could do that with anything, from one of NVDA's modules, to a Python core library, to an empty module of your own. But in NVDA contexts it is pretty much always imported, so makes an easily recognized storage platform to avoid using globals in your own module (which is another way you could handle this, although I wouldn't recommend that).

Luke


Re: Ideas to store add-on state.

Pawel Urbanski
 

Thanks alot for that tip. I was thinking about GlobalVars but for some
reason made a lazy assumption that it is a dictionary of useful
values. It looks like it can be used in a more clever way.
I have some ideas to implement in a very near future so it will be a
good occasion to test the waters.

On 6/25/22, Luke Davis <luke@...> wrote:
Pawel Urbanski wrote:

Unfortunately Pylance of VS Code kept throwing errors about missing
type when parsing the expression of:
self.appModule.InstanceVariableName
After glancing at your code briefly [1], it seems that what you are trying
to do
isn't to save runtime state data for an App Module, so much as you are
trying to
access the state of an App Module from an associated overlay class. Do I
understand that correctly?

I am no expert on overlay classes, nor how they are supposed to communicate

state, but I think a better way to do this might be by way of some global
namespace.
Fortunately, NVDA provides one of those, called globalVars.

You import globalVars in each of your modules, and then can set state upon
it,
and read state from it.

import globalVars
class AppModule(appModuleHandler.AppModule):
def __init__(self, *args, **kwargs):
# ...
globalVars.vscode = {}
globalVars.vscode["name"] = "myName"
# Or, if you don't need to bother with a dict
globalVars.vscodeName = "myName"

Then, in your other class, you can simply do:

if globalVars.vscodeName == "whatever":

There may be a more elegant way to reach outside the class scope to get at
the
AppModule's state variables from an overlay that also doesn't generate a
compiler error, but this is one that should definitely work and is easy to
read.

[1]:
https://github.com/accessifix/nvda-for-vs-code/releases/download/2022.1.0/nvda-for-vs-code-2022.1.0.nvda-addon

Luke







Re: NVDA For VS Code update.

Pawel Urbanski
 

Putting the add-on on the community site at last, could be a good
idea. I will do some searching and reading what are the steps
involved.

On 6/24/22, Luke Davis <luke@...> wrote:
Are you going to release this on the community site, and do you need help
with
that?

Luke

Pawel Urbanski wrote:

Hi Everyone,
While nobody was interested to pick up developing the add-on, I
updated it to be compatible with new NVDA and and introduced some API
changes.
I do code things from time to time, so still have the need for this
add-on. The changes are not very signifficant, but I hope that for
those of you who use VS Code it is welcome news.
If time and life allow to do so, I hope to add some more features and
fixes - mainly about ergonomics and convenience.

You can find the updated add-on over here:
https://github.com/accessifix/nvda-for-vs-code/releases/tag/2022.1.0

Enjoy, happy hacking,
Pawel





Re: Ideas to store add-on state.

Luke Davis
 

Pawel Urbanski wrote:

Unfortunately Pylance of VS Code kept throwing errors about missing
type when parsing the expression of:
self.appModule.InstanceVariableName
After glancing at your code briefly [1], it seems that what you are trying to do
isn't to save runtime state data for an App Module, so much as you are trying to
access the state of an App Module from an associated overlay class. Do I
understand that correctly?

I am no expert on overlay classes, nor how they are supposed to communicate
state, but I think a better way to do this might be by way of some global
namespace.
Fortunately, NVDA provides one of those, called globalVars.

You import globalVars in each of your modules, and then can set state upon it,
and read state from it.

import globalVars
class AppModule(appModuleHandler.AppModule):
def __init__(self, *args, **kwargs):
# ...
globalVars.vscode = {}
globalVars.vscode["name"] = "myName"
# Or, if you don't need to bother with a dict
globalVars.vscodeName = "myName"

Then, in your other class, you can simply do:

if globalVars.vscodeName == "whatever":

There may be a more elegant way to reach outside the class scope to get at the
AppModule's state variables from an overlay that also doesn't generate a
compiler error, but this is one that should definitely work and is easy to read.

[1]:
https://github.com/accessifix/nvda-for-vs-code/releases/download/2022.1.0/nvda-for-vs-code-2022.1.0.nvda-addon

Luke


Re: NVDA For VS Code update.

Luke Davis
 

Are you going to release this on the community site, and do you need help with that?

Luke

Pawel Urbanski wrote:

Hi Everyone,
While nobody was interested to pick up developing the add-on, I
updated it to be compatible with new NVDA and and introduced some API
changes.
I do code things from time to time, so still have the need for this
add-on. The changes are not very signifficant, but I hope that for
those of you who use VS Code it is welcome news.
If time and life allow to do so, I hope to add some more features and
fixes - mainly about ergonomics and convenience.

You can find the updated add-on over here:
https://github.com/accessifix/nvda-for-vs-code/releases/tag/2022.1.0

Enjoy, happy hacking,
Pawel


Re: Ideas to store add-on state.

Luke Davis
 

Pawel Urbanski wrote:

Unfortunately Pylance of VS Code kept throwing errors about missing
type when parsing the expression of:
self.appModule.InstanceVariableName
That does not seem to be what James suggested. Why do you think it's proper?
Specifically, wherefore the ".appModule" part of that construct?

I haven't looked at your code to see exactly how you're using that, but when assigning instance variables from within class methods for that instance you would not use ".appModule" as part of the construct.

James Scholes wrote:
self._someStateFlag = False
self._someOtherStateFlag = 14
# or
self._state = {'flag1': False, 'flag2': 14}

Luke


Re: Ideas to store add-on state.

Pawel Urbanski
 

Thank you for the suggestion. I decided to go the 'appModule' instance
route. This time, I did it properly with the super method and
inheritance and so on.
Unfortunately Pylance of VS Code kept throwing errors about missing
type when parsing the expression of:
self.appModule.InstanceVariableName
I guess it is due to different capitalization and the fact that
'appModule' with a small 'a' is a runtime property of classes in the
add-on runtime.

All in all, things are working well and I even managed to remove that
code part but still use instance variables for other cases.

I posted about the updated VS Code add-on. Thank you once again.

Best,
Pawel

On 6/21/22, James Scholes <james@...> wrote:
If you have state that only needs to be utilised during the add-on's
runtime, and not persisted, I would just store it on the AppModule or
GlobalPlugin instance:

class AppModule(appModuleHandler.AppModule):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self._someStateFlag = False
self._someOtherStateFlag = 14
# or
self._state = {'flag1': False, 'flag2': 14}

Is there a reason why this wouldn't be sufficient?

Regards,

James Scholes

On 21/06/2022 at 11:20, Pawel Urbanski wrote:
Dear Everyone,
Since I still occasionally use Visual Studio Code and nobody followed
up with my request to take over the development, I am working on
updating the add-on.
I am looking for hints and inspiration on how to best keep add-on
state. It does not need to be saved but needs to work when the
application is running. I use it to store some add-on flags and state.
Is there anything in NVDA api like this or maybe you cane up with a
working way to share global state. There is the configuration class
but I don't know if it can be made local to the add-on running
instance in the scope of the AppModule class - please treat this
example as explanatory not in terms of working code.

Thank you for any hints...
Pawel









NVDA For VS Code update.

Pawel Urbanski
 

Hi Everyone,
While nobody was interested to pick up developing the add-on, I
updated it to be compatible with new NVDA and and introduced some API
changes.
I do code things from time to time, so still have the need for this
add-on. The changes are not very signifficant, but I hope that for
those of you who use VS Code it is welcome news.
If time and life allow to do so, I hope to add some more features and
fixes - mainly about ergonomics and convenience.

You can find the updated add-on over here:
https://github.com/accessifix/nvda-for-vs-code/releases/tag/2022.1.0

Enjoy, happy hacking,
Pawel


decTalk bundle NVDA addon

Josh Kennedy <joshknnd1982@...>
 

hi
I am trying to find the developer of the decTalk bundle NVDA addon if that developer is on this list would you please email me privately at:

joshknnd1982@...

that is:

joshknnd1982 at,  gmail.com

thanks


Pb to get end position of text under UIA

bering.p
 

Paul.
Hi,
I would like your help because I feel a bit lost with TextInfo object.
I'm trying to get the last position of each line of a text in a text document (open in notepad or word for example).
I get the result well when it's an IAccessible object which is under the cursor but not when it's an UIA object.
Here is my code for IA:
focus = api.getFocusObject()
info = focus.makeTextInfo(textInfos.POSITION_CARET)
info.expand(textInfos.UNIT_LINE)
endPos = info.bookmark.endOffset
print("pos: %s"%endPos)

With UIA, I get an "endOffset" attribute error.
How to get the result under UIA?
Thanks for your help.
Best regards.
Paul.


Re: Text Analyzer #addonrequest

J.G
 

Hello,

yes, the global plugin extention (GPE) has many functions, but user can turn off all of them, which he or she doesn't need.
so quick solution could be instalation of GPE and exclusion of features, which you don't need from this addon.

best regards,
Jožef


Re: Text Analyzer #addonrequest

 

Dear Mr. Abrantes,

Thank you for your response.

I was not aware that this feature was available as part of the NVDA global commands extension add-on because this add-on is not listed in the repository and is thus hard to find without a Google search. Additionally, this add-on has quite a large set of functions which I am not looking for. I am simply interested in a "text analyzer" add-on which would be accepted by the NVDA add-ons community, which is why I sent my original e-mail.

Hope this helps.

Sincerely,

Noah


Re: Ideas to store add-on state.

James Scholes
 

If you have state that only needs to be utilised during the add-on's runtime, and not persisted, I would just store it on the AppModule or GlobalPlugin instance:

class AppModule(appModuleHandler.AppModule):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self._someStateFlag = False
self._someOtherStateFlag = 14
# or
self._state = {'flag1': False, 'flag2': 14}

Is there a reason why this wouldn't be sufficient?

Regards,

James Scholes

On 21/06/2022 at 11:20, Pawel Urbanski wrote:
Dear Everyone,
Since I still occasionally use Visual Studio Code and nobody followed
up with my request to take over the development, I am working on
updating the add-on.
I am looking for hints and inspiration on how to best keep add-on
state. It does not need to be saved but needs to work when the
application is running. I use it to store some add-on flags and state.
Is there anything in NVDA api like this or maybe you cane up with a
working way to share global state. There is the configuration class
but I don't know if it can be made local to the add-on running
instance in the scope of the AppModule class - please treat this
example as explanatory not in terms of working code.

Thank you for any hints...
Pawel





Ideas to store add-on state.

Pawel Urbanski
 

Dear Everyone,
Since I still occasionally use Visual Studio Code and nobody followed
up with my request to take over the development, I am working on
updating the add-on.
I am looking for hints and inspiration on how to best keep add-on
state. It does not need to be saved but needs to work when the
application is running. I use it to store some add-on flags and state.
Is there anything in NVDA api like this or maybe you cane up with a
working way to share global state. There is the configuration class
but I don't know if it can be made local to the add-on running
instance in the scope of the AppModule class - please treat this
example as explanatory not in terms of working code.

Thank you for any hints...
Pawel


Re: Text Analyzer #addonrequest

Brian's Mail list account
 

Do you have a direct link?
Brian

--
bglists@...
Sent via blueyonder.(Virgin media)
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.

----- Original Message -----
From: "Noah Carver" <noahcarver494@...>
To: <nvda-addons@nvda-addons.groups.io>
Sent: Monday, June 20, 2022 4:28 PM
Subject: [nvda-addons] Text Analyzer #addonrequest


Dear List,

A particular feature which I have found quite useful in JAWS is the Text Analyzer, which checks for various errors including extra spaces, unmatched opening and closing symbols, font changes, ETC. and notifies the user so that they may fix the mistake. This feature would be immensely helpful for NVDA users, and I am therefore requesting an add-on which adds this functionality. The documentation describing the text analyzer is pasted below, fully describing how the functionality operates, its configuration options, ETC.

If any developer would be interested in creating this add-on, it would not only be appreciated by me, but also by many NVDA users who write often. Thank you for your time and interest.

Sincerely,

Noah

--Documentation starts here--




*******************
Text Analyzer Group
*******************



When editing a document using speech only, inconsistencies such as
unmatched parentheses, unintentional format changes, extra whitespace, and
stray or unspaced punctuation can often be missed. Text Analyzer is a tool
that notifies you of these errors in your document by using a spoken
message or WAV file. You can configure JAWS to announce discrepancies by
count, by description, or by sound while proofreading the document by
line, sentence, paragraph, or Say All command. Braille users will benefit
from this since a sound can be emitted before the user has time to read
the entire line looking for errors.



------------------------
Turning On Text Analyzer
------------------------



Text Analyzer is off by default. To turn it on, do one of the following:



* Use the layered keystroke, *INSERT+SPACEBAR* , *A*. By pressing and
releasing *INSERT+SPACEBAR* , and then pressing *A* , the Text Analyzer can
be toggled on or off.
* Open Settings Center ( *INSERT+F2* ). In the Search edit box type "text
analyzer" without the quotes. Press *DOWN ARROW* to move to Text Analyzer
in the filtered results. Press *SPACEBAR* to select an alert notification.

* Use Quick Settings ( *INSERT+V* ). The process for selecting an alert
notification is the same as the Settings Center procedure described above.





----------
Keystrokes
----------



If multiple issues are identified in the document, press *ALT+WINDOWS
Key+I* to move to the next item, or *ALT+SHIFT+WINDOWS Key+I* to move to
the previous item. Note that these keystrokes can still be used even if
Text Analyzer is off.



---------------------
Text Analyzer Options
---------------------



Use the radio buttons in this group to determine the type of alert used to
indicate errors when editing or proofreading a document by line, sentence,
paragraph, or Say All command. Select Indicate with Sound to play a WAV
file when a formatting error is detected. Select Speak Count to announce
the number of inconsistencies in the current text. Select Describe
Inconsistencies for a description of the error. The default setting is
off.



---------------------------
Indicate Mismatched Symbols
---------------------------



Select this check box to enable the detection of mismatched symbols such
as parenthesis, braces, brackets, angle brackets, and quotes. If this
check box is cleared, the items in the Symbols to Check group are not
available.



----------------
Symbols to Check
----------------



Select one or more check boxes to search for mismatched parentheses,
braces, brackets, angle brackets, or quotes where the equivalent opening
or closing symbol is missing. These check boxes are only available when
the Indicate Mismatched Symbols check box is selected.



------------------------
Inconsistencies to Check
------------------------



Select one or more check boxes to identify inconsistencies with stray
punctuation, extra spaces, missing capital letters, or inverted lowercase
and uppercase text.



---------------------
Font Changes to Check
---------------------



Select one or more check boxes to identify incorrect font changes in the
current text including name, size, attributes, and colors.


Re: Text Analyzer #addonrequest

Brian's Mail list account
 

Seconded by me. It needs a bit of housekeeping and logical layering of the options into different property sheets and also the ability to turn on and off the category as a whole. It will need some thought and testing by users though, as you are never going to please everyone whichever way you choose to separate the options. Brian

--
bglists@...
Sent via blueyonder.(Virgin media)
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.

----- Original Message -----
From: "Luke Davis" <luke@...>
To: <nvda-addons@nvda-addons.groups.io>
Sent: Monday, June 20, 2022 9:41 PM
Subject: Re: [nvda-addons] Text Analyzer #addonrequest


René Linke wrote:

but that add-on you referrd, that is very huge and very detailed. It has too many features in it, I wish that add-on would be split up in different smaller
add-ons, though.
You are not alone in thinking that Global Extension has too many different
things going on in it to be practical. I don't even think of it when looking for
an add-on, because even if it may have the feature I'm looking for, it is such a
random collection of things that I don't necessarily want, with such complexity,
that understanding everything about it and how it interacts with my other
software is a time commitment I can't make.

Not to diminish the work that Paul put into it; I'm sure it is quite an
accomplishment and solves many problems for many people. But if it were split
into individual add-ons, or even category specific add-on collections, it would
help many more people who are looking for specific things.

Luke


Re: Text Analyzer #addonrequest

Brian's Mail list account
 

Does not the spellchecker spot most of these, It certainly does the lack of a space after a comma, or extra spaces, but maybe this is strict.
Brian

--
bglists@...
Sent via blueyonder.(Virgin media)
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.

----- Original Message -----
From: "Noah Carver" <noahcarver494@...>
To: <nvda-addons@nvda-addons.groups.io>
Sent: Monday, June 20, 2022 4:28 PM
Subject: [nvda-addons] Text Analyzer #addonrequest


Dear List,

A particular feature which I have found quite useful in JAWS is the Text Analyzer, which checks for various errors including extra spaces, unmatched opening and closing symbols, font changes, ETC. and notifies the user so that they may fix the mistake. This feature would be immensely helpful for NVDA users, and I am therefore requesting an add-on which adds this functionality. The documentation describing the text analyzer is pasted below, fully describing how the functionality operates, its configuration options, ETC.

If any developer would be interested in creating this add-on, it would not only be appreciated by me, but also by many NVDA users who write often. Thank you for your time and interest.

Sincerely,

Noah

--Documentation starts here--




*******************
Text Analyzer Group
*******************



When editing a document using speech only, inconsistencies such as
unmatched parentheses, unintentional format changes, extra whitespace, and
stray or unspaced punctuation can often be missed. Text Analyzer is a tool
that notifies you of these errors in your document by using a spoken
message or WAV file. You can configure JAWS to announce discrepancies by
count, by description, or by sound while proofreading the document by
line, sentence, paragraph, or Say All command. Braille users will benefit
from this since a sound can be emitted before the user has time to read
the entire line looking for errors.



------------------------
Turning On Text Analyzer
------------------------



Text Analyzer is off by default. To turn it on, do one of the following:



* Use the layered keystroke, *INSERT+SPACEBAR* , *A*. By pressing and
releasing *INSERT+SPACEBAR* , and then pressing *A* , the Text Analyzer can
be toggled on or off.
* Open Settings Center ( *INSERT+F2* ). In the Search edit box type "text
analyzer" without the quotes. Press *DOWN ARROW* to move to Text Analyzer
in the filtered results. Press *SPACEBAR* to select an alert notification.

* Use Quick Settings ( *INSERT+V* ). The process for selecting an alert
notification is the same as the Settings Center procedure described above.





----------
Keystrokes
----------



If multiple issues are identified in the document, press *ALT+WINDOWS
Key+I* to move to the next item, or *ALT+SHIFT+WINDOWS Key+I* to move to
the previous item. Note that these keystrokes can still be used even if
Text Analyzer is off.



---------------------
Text Analyzer Options
---------------------



Use the radio buttons in this group to determine the type of alert used to
indicate errors when editing or proofreading a document by line, sentence,
paragraph, or Say All command. Select Indicate with Sound to play a WAV
file when a formatting error is detected. Select Speak Count to announce
the number of inconsistencies in the current text. Select Describe
Inconsistencies for a description of the error. The default setting is
off.



---------------------------
Indicate Mismatched Symbols
---------------------------



Select this check box to enable the detection of mismatched symbols such
as parenthesis, braces, brackets, angle brackets, and quotes. If this
check box is cleared, the items in the Symbols to Check group are not
available.



----------------
Symbols to Check
----------------



Select one or more check boxes to search for mismatched parentheses,
braces, brackets, angle brackets, or quotes where the equivalent opening
or closing symbol is missing. These check boxes are only available when
the Indicate Mismatched Symbols check box is selected.



------------------------
Inconsistencies to Check
------------------------



Select one or more check boxes to identify inconsistencies with stray
punctuation, extra spaces, missing capital letters, or inverted lowercase
and uppercase text.



---------------------
Font Changes to Check
---------------------



Select one or more check boxes to identify incorrect font changes in the
current text including name, size, attributes, and colors.


Re: Dropbox tray gone inaccessible again

Brian's Mail list account
 

Well I've tried one windows 10 and two windows 7 machines and the new interface does not speak nor do the alerts even though a sighted person confirms they are still turned on. Yes have run the repair tool. I cannot see that any other add on might have changed this as they have been the same for years. If everyone else says its working then it sounds like at least three copies of dropbox or windows have a unique issue and I'd not know where to start. This sort of thing is mega annoying!

Brian

--
bglists@...
Sent via blueyonder.(Virgin media)
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.

----- Original Message -----
From: "Rui Fontes" <rui.fontes@...>
To: <nvda-addons@nvda-addons.groups.io>
Sent: Monday, June 20, 2022 12:26 PM
Subject: Re: [nvda-addons] Dropbox tray gone inaccessible again


Sorry, but which last version?


I am using:

NVDA alpha-25623,1d24f9b0

Dropbox 150.4.5000


and the copy notiffications are announced by NVDA as normally...


The last version fo the add-on only announces the presence or absence of the Dropbox icon on systray and if it is there, can allso announce the status...


Best regards,

Rui Fontes
NVDA portuguese team




Às 09:35 de 20/06/2022, Brian's Mail list account via groups.io escreveu:
Not only those but the ding and alert copied to clipboard when you copy link to clipboard no longer is indicated in the latest version and current nvda.
Brian



Re: Text Analyzer #addonrequest

Luke Davis
 

René Linke wrote:

but that add-on you referrd, that is very huge and very detailed. It has too many features in it, I wish that add-on would be split up in different smaller
add-ons, though.
You are not alone in thinking that Global Extension has too many different things going on in it to be practical. I don't even think of it when looking for an add-on, because even if it may have the feature I'm looking for, it is such a random collection of things that I don't necessarily want, with such complexity, that understanding everything about it and how it interacts with my other software is a time commitment I can't make.

Not to diminish the work that Paul put into it; I'm sure it is quite an accomplishment and solves many problems for many people. But if it were split into individual add-ons, or even category specific add-on collections, it would help many more people who are looking for specific things.

Luke

301 - 320 of 19412