CodeTalk icon indicating copy to clipboard operation
CodeTalk copied to clipboard

VS Code support?

Open isidorn opened this issue 5 years ago • 19 comments

Hi VS Code dev here 👋

Are there plans to try to make code talk a vs code extension? We have quite some screen reader users that use VS Code and this extension might be helpful.

Let me know what you think isidor

isidorn avatar Jun 10 '20 19:06 isidorn

Hi Isidor,

Thanks for your interest in CodeTalk. We did consider implementing VS code at the onset, but at the time the language server posed us some challenges. That might not be the case now.

We do not have plans to implement this in near future. That said, the API defined in CodeTalk should be generic enough. If you are interested in taking a shot at the implementation, please do so and raise a PR. I am more than happy to review the code and integrate it. Am also happy to get into a call to discuss if you have ideas around this.

Thanks, Suresh

suiyengar avatar Jun 10 '20 19:06 suiyengar

Hi Suresh,

Thanks for providing details. Unfortunetly I will not have the time to implement it, but we should open this up for community PRs, there might be a community member interested in implementing it.

Thanks isidor

isidorn avatar Jun 10 '20 19:06 isidorn

Sounds good, can you please take a lead on that and open it to the community? I am not sure how to do that. It can be posed as a challenge problem to the VS Code community.

Thanks, Suresh

suiyengar avatar Jun 10 '20 19:06 suiyengar

Sure. I have created this issue in our VS Code repository https://github.com/microsoft/vscode/issues/99784 We'll see if it sparks interest.

isidorn avatar Jun 10 '20 19:06 isidorn

Hi isidor and Suresh,

isidor, thank you for reaching out, and opening this up to the community. I am Venkatesh, and I have worked on this project. I have done some preliminary investigation on adding VSCode support a couple of weeks ago, and would like to take a stab at it next week (June 17). It is great that you reached out, I was going to start working on this and get in touch with you with VSCode specific questions. I will add preliminary investigation to the github issue if that is okay. Can this be assigned to me once I do that? Of course, I would love to work with somebody from the community and the VSCode team if there is interest.

Best regards, Venkatesh Potluri PhD Student, University of Washington

On 6/10/20, Isidor Nikolic [email protected] wrote:

Sure. I have created this issue in our VS Code repository https://github.com/microsoft/vscode/issues/99784 We'll see if it sparks interest.

-- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/microsoft/CodeTalk/issues/11#issuecomment-642226079

venkateshpotluri avatar Jun 11 '20 05:06 venkateshpotluri

@venkateshpotluri sounds great. Yes please add the preliminary investigation to the github issue. I am not an admin in this repository so I can not assign this issue to you, but maybe @suiyengar can do that. For any questions on the VS Code side of things feel free to ping me here. Thanks!

isidorn avatar Jun 11 '20 08:06 isidorn

Sounds good. Looking forward to your post Venkatesh. Thanks for your help Isidor.

suiyengar avatar Jun 11 '20 19:06 suiyengar

Hi @isidorn

My colleague @graphitical and I (both first time contributors to VSCode) have started some work on this and needed some advice. We were planning to implement support for CodeTalk through an extension as opposed to directly integrating it into the IDE. Do you think this is a good approach? this too would be opensourced for the community to work on. Is there a chance that the VSCode team takes this and helps maintain this effort eventually?

Also, we are getting started with understanding the necessary APIs to get the Abstract Syntax Trees of active files, and display it in a tree view. Is there a generic API that VSCode provides to get the AST for an active file if the user has the corresponding language support extension installed? We found this extension to do something similar for Typescript but wanted to know if you could point us to a more generic API or approach we could use to get the AST. To display the tree, we plan to use the Tree View API.

Thank you for offering to help.

venkateshpotluri avatar Jun 17 '20 19:06 venkateshpotluri

@venkateshpotluri great! Yes, this should be tackled through an extension, that is a good approach. VS Code is quite small actually so we usualy do not maintain VS Code extensions since there are thousands. So we would not be able to maintain this extension. However we do not break our VS Code api, so if the extension is made to work in theory there would be no maintanance work required.

I believe you might want to have a Language Server, more details about it here https://code.visualstudio.com/api/language-extensions/language-server-extension-guide You can also look into what that extension you pointed to does.

Tree View API makes perfect sense for displaying the tree.

isidorn avatar Jun 18 '20 09:06 isidorn

Thanks @isidorn

I'm humbly helping out @venkateshpotluri on this, but I'm enthusiastic about learning and getting it done!

Our current plan is to generalize the approach of the Typescript AST extension. In it, the Typescript language interface is hardcoded so obviously we'd like to change that and make our extension be applicable to any language that VS Code has available.

One first question: Can our project share a repo with the original CodeTalk VisualStudios 2017 extension or does it need its own space for the extension marketplace to install it properly?

Thanks!

Daniel

graphitical avatar Jun 18 '20 19:06 graphitical

Thanks Daniel for helping out Venkatesh on this, really appreciate it. I started the CodeTalk project with an ambitious plan of releasing it for every popular IDE out there. Glad that you are taking this forward. I have some traction on the Eclipse side as well for an initial version.

I would like both the versions to be the in the same repo. Maybe you can fork it out a new branch?

If its not too much to ask, if you are planning to release CodeTalk as a VS code extension, can you also release the original CodeTalk as a Visual Studio extension at the same time.

Thanks, Suresh

suiyengar avatar Jun 18 '20 19:06 suiyengar

Hi Suresh,

Our original CodeTalk extension needs to be updated for VS2019 as the VS2019 update caused some APIs to break. I can investigate more on what exactly needs to be updated for Code Talk to be VS2019 compatible once we make some progress with the VSCode extension if that is okay.

venkateshpotluri avatar Jun 18 '20 20:06 venkateshpotluri

Sounds good Venkatesh.

suiyengar avatar Jun 18 '20 20:06 suiyengar

@graphitical I think it should be possible to share a repo. When creating your extension using vsce you can use the .vscodeignore file to ignore the part of the extension that is intended for Visual Studio. More details here https://code.visualstudio.com/api/working-with-extensions/publishing-extension#.vscodeignore

isidorn avatar Jun 22 '20 07:06 isidorn

@isidorn I am trying to replicate the AST explorer repository I pointed to in my earlier comment. This view will eventually become the CodeTalk file summary view. I however notice that the screen reader (NVDA) does not announce the level (for nodes with or without children) and the collapsed/expanded state of nodes( with children) in the tree views that I create. Is there any additional implementation needed for the screen readers to announce this information? I notice this happens in other tree views like the file explorer (control+shift+e) when a folder is open in a workspace. I tried looking at the node dependencies view in the tree view samples, and notice that the screen reader does not announce level and expanded/collapsed information there as well, similar to my implementation. what will I need to do to have level and collapsed/expanded information announced by the screen reader?

venkateshpotluri avatar Jun 25 '20 18:06 venkateshpotluri

@venkateshpotluri the level and the expanded / collapsed state should be read by NVDA. And I just tried this with VS Code explorer with latest vscode insiders and it works just fine for me.

So if it does not work it is a bug on the vscode side which we would like to fix. Can you check if VS Code insiders works for you? Thanks

isidorn avatar Jun 26 '20 08:06 isidorn

Hi @venkateshpotluri and @isidorn I'd like to help / contribute - as a blind user of vscode I have personal interests in this extension.

What would be the best way for me to help?

dstpierre avatar Jan 28 '21 16:01 dstpierre

@dstpierre thanks for offering help. @venkateshpotluri would know best how to help on the CodeTalk extension

As for VS Code, I can ask you to join or accessibility community on Gitter https://gitter.im/Microsoft/vscode-a11y or just let us know using GitHub issues if something is not working in VS Code as you would expect. We really appreciate feedback. Thanks and have a nice day

isidorn avatar Jan 28 '21 16:01 isidorn

Has anyone thought of copyrighting or trademarking 'CodeTalk'? see https://codetalk.io ...

kds215 avatar Nov 29 '23 20:11 kds215