Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.001 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'context': 0.05; 'builtin': 0.07; 'contributor': 0.07; 'developer.': 0.07; 'subject:editor': 0.07; 'executes': 0.09; 'subject:Writing': 0.09; 'tasks,': 0.09; 'translations': 0.09; 'python': 0.11; 'subject:python': 0.14; 'suggest': 0.15; 'apps': 0.15; 'message-----': 0.15; 'output': 0.15; "'cause": 0.16; 'avail': 0.16; 'builtins.': 0.16; 'docstring': 0.16; 'instantiate': 0.16; 'python-based': 0.16; 'readers,': 0.16; 'skip:[ 60': 0.16; 'developer': 0.16; 'exists': 0.18; 'tend': 0.18; 'gui': 0.18; 'programmer': 0.18; 'project,': 0.18; 'all,': 0.20; 'background.': 0.20; 'first,': 0.20; '(the': 0.22; 'class,': 0.22; 'parsing': 0.22; 'variables.': 0.22; 'to:2**1': 0.22; '2015': 0.23; 'module': 0.23; 'cheers,': 0.24; 'header:In-Reply-To:1': 0.24; 'developers': 0.24; 'mostly': 0.27; 'tired': 0.27; '(such': 0.27; "doesn't": 0.28; "i'm": 0.29; 'regular': 0.29; 'function:': 0.29; 'inspect': 0.29; 'italy.': 0.29; 'second,': 0.29; 'source': 0.31; 'url:mailman': 0.31; "i'd": 0.31; 'option': 0.31; 'code': 0.31; 'run': 0.32; "can't": 0.32; 'gets': 0.32; 'screen': 0.32; 'post': 0.32; 'info': 0.33; 'url:python': 0.33; 'problem': 0.33; 'accessible': 0.33; 'idle': 0.33; 'editor': 0.34; 'me?': 0.34; 'thanks!': 0.34; 'running': 0.34; 'message.': 0.34; 'received:google.com': 0.34; 'skip:- 10': 0.34; 'sent:': 0.35; 'message-id:@gmail.com': 0.35; 'url:listinfo': 0.35; 'to:addr:python-list': 0.35; 'next': 0.35; 'c++': 0.35; 'displays': 0.35; 'list': 0.35; 'but': 0.36; 'text': 0.36; 'url:org': 0.36; 'project': 0.36; 'there': 0.36; 'possible': 0.36; 'visual': 0.36; 'subject:': 0.36; 'at:': 0.37; 'so,': 0.37; 'email addr:python.org': 0.37; 'display': 0.37; 'operating': 0.37; 'subject:: ': 0.37; 'charset:us-ascii': 0.37; 'list.': 0.37; 'systems,': 0.38; 'say': 0.38; 'to:addr:python.org': 0.39; 'some': 0.40; 'press': 0.61; 'success': 0.61; 'more': 0.62; 'july': 0.63; 'p.s.': 0.63; 'making': 0.64; 'our': 0.64; 'techniques': 0.65; 'python-list': 0.66; 'readers': 0.66; 'email name:python-list': 0.67; 'repeat': 0.67; 'receive': 0.71; '2012.': 0.72; 'locals': 0.84; 'myself)': 0.84; 'spoke': 0.91; 'time)': 0.91 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:references:in-reply-to:subject:date:message-id:mime-version :content-type:content-transfer-encoding:thread-index :content-language; bh=1e+UDgm5PXwqT2wQ66JVCMCRtVpPlj6Ig14CKfUzTl4=; b=UbylY9VYvFq97ThSaPc4k/DmGm6D/659/y+5gevcRLFuQwGWP6c5AMBDvWg5pw0B9U 1+yUr4WcV1SMy2k71K47o5XoTagmu8n3pCQRXqHbMdoG1M4XBHxu64zc5E0o0durM6bs IMCojqr+KBYoCVl4XUAu2MjCmOXjczyD+NR2imb+81m+ucX4TZfCZbwqmbEJODftCFsM pstr/DsZFt+s8kwddEDNlSF3ZVk4enBdSuhYdoALuPJeh+TIMOVCTDrIyXBjzDX8n2B4 sgLI71nCyTiDbRqIio+ZfgzeN3e/iObpPWIYb7495j9yCFI+XnQIbFZb7lQwx+T2o9aX beiQ== X-Received: by 10.182.94.168 with SMTP id dd8mr16933393obb.31.1436172173472; Mon, 06 Jul 2015 01:42:53 -0700 (PDT) From: "Joseph Lee" To: "'germano carella'" , References: <5598FF28.9000300@gmail.com> In-Reply-To: <5598FF28.9000300@gmail.com> Subject: RE: Writing a python editor for blind developers Date: Mon, 6 Jul 2015 01:42:47 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Outlook 15.0 Thread-Index: AQH6XSefaSjTWWHBrwiZnqKy7FOJL5161QrA Content-Language: en-us X-Mailman-Approved-At: Mon, 06 Jul 2015 10:45:17 +0200 X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.20+ Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 57 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1436172317 news.xs4all.nl 2885 [2001:888:2000:d::a6]:54359 X-Complaints-To: abuse@xs4all.nl X-Received-Bytes: 7514 X-Received-Body-CRC: 1891026224 Path: csiph.com!usenet.pasdenom.info!news.stben.net!border1.nntp.ams1.giganews.com!nntp.giganews.com!bcyclone04.am1.xlned.com!bcyclone04.am1.xlned.com!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Xref: csiph.com comp.lang.python:93523 Hi Germano and others, First, sorry for this abrupt post without an intro (I'll write a more proper intro next time) and a possible repeat message. Second, as a blind developer and a regular contributor to a Python-based screen reader, I can say that many of us (blind devs) use IDE's nor Python-specific editors. For our Python tasks, we use a regular text editor such as Notepad++, and some had success with Visual Studio Python plug-in and/or Eclipse. Some people were looking at making IDLE itself accessible to no avail (the way IDLE displays its output is such that it makes it hard for screen readers to use their display parsing techniques to tell a programmer what's on screen). This gets more interesting when blind Pythoneers (such as myself) write GUI apps such as those using WXPython (NonVisual Desktop Access, or NVDA, the Python-based screen reader is a WXPython app) and PyQT (apps powered by QT 5 is accessible). There exists a list like this for blind Pythoneers at: http://www.freelists.org/list/pythonvis For more info on NVDA, go to: http://www.nvaccess.org P.S. A very short intro: I'm Joseph, a blind Pythoneer and regular code and translations contributor to NonVisual Desktop Access (NVDA) screen reader project. I have studied computer science (no degree) and have been speaking Python for about three years and spoke C++ prior to joining NVDA project in 2012. In NVDA project, I tend to work mostly on supporting new operating systems, translations, braille display input/output and touchscreen support. Cheers, Josep -----Original Message----- From: Python-list [mailto:python-list-bounces+joseph.lee22590=gmail.com@python.org] On Behalf Of germano carella Sent: Sunday, July 5, 2015 2:56 AM To: python-list@python.org Subject: Writing a python editor for blind developers Hi to all, I'm new of this list. I'm Germano from Italy. I'm 39 and I'm a blind developer. I'm writing a python editor accessible to screen readers, with autocompletion support. So, when I write something, a context menu displays all option I can use. To do this, I'm using inspect module and pkgutil, and parsing docstring of builtin functions 'cause inspect.getargspec doesn't work with builtins. Now, when I instantiate a class, for example, I'd like to receive option on methods when I write name. ... I tired to use code.InteractiveConsole running in background. In this way, I can run source code every time I press enter and code.InteractiveConsole executes it in background. The problem is when I'm writing a function: InteractiveConsole executes it, but doesn't update her locals since I finish to write the function; so I can't retrieve local variables. There is an other way can you suggest me? Thanks! Germano -- https://mail.python.org/mailman/listinfo/python-list