Hi Michael, I'm glad you donn't find a flaw in the reasoning about the calculation of cursorPos. The code does have to check that outputPos is not NULL . Otherwise, if it ever is, there would be a segmentation fault or a totally errroneous value of cursorPos. John On Tue, Jan 29, 2013 at 07:27:41PM +0000, Michael Whapples wrote: > I agree about the original question on how to get cursorPos, just > thinking about it I cannot find a case why it might not hold. > > As for always needing to give space for outputPos, would anyone use > cursorPos and not want outputPos? I am thinking that cursorPos would > only be used by screen readers and they would probably want outputPos > for routing keys. > > Have I missed a use where this might not be the case and cursorPos would > be read but outputPos would not be needed? > > Michael Whapples > On 29/01/2013 17:16, John J. Boyer wrote: > >It's an interesting idea. However, it would require that space should > >always be provided for the outputPos array. A possible solution would be > >to use this technique if outputPos is not NULL, but if it is fall back > >on the existing code. > > > >John > > > >On Tue, Jan 29, 2013 at 04:16:34PM +0100, Bert Frees wrote: > >>Hi Jamie, > >> > >>AFAICS your reasoning is correct. But I may be overlooking something too. > >> > >>Bert > >> > >> > >>On 01/29/2013 04:06 PM, James Teh wrote: > >>>outputPos maps input positions to output positions. At the beginning > >>>of the call, cursorPos is the cursor position in the input. Therefore, > >>>unless I'm missing something, the output cursorPos should just be > >>>outputPos[cursorPos]. Is there a reason this isn't the case? This > >>>would simplify the code a great deal and thereby eliminate existing bugs. > >>> > >>>Jamie > >>> > >>>On 30/01/2013 1:03 AM, John J. Boyer wrote: > >>>>I don't understand this question. outputPos is an array. cursorPos is a > >>>>single value. What would be the ideal value of cursorPos? There may be > >>>>differing opinions on this. > >>>> > >>>>John > >>>> > >>>>On Tue, Jan 29, 2013 at 05:53:28PM +1000, James Teh wrote: > >>>>>Hi all, especially John, > >>>>> > >>>>>Currently, there are still some bugs in the calculation of the output > >>>>>cursor position in lou_translate. I can detail these in a separate > >>>>>email > >>>>>if necessary. However, I'm wondering whether it is simpler to just set > >>>>>cursorPos based on outputPos just before returning the translation, > >>>>>rather than having separate code for it. Is there any reason cursorPos > >>>>>is currently determined separately from outputPos? To put it another > >>>>>way, is there any reason that cursorPos should ever be different to > >>>>>outputPos[inputCursorPos], where inputCursorPos is the value of > >>>>>cursorPos when the function was called? > >>>>> > >>>>>Thanks, > >>>>>Jamie > >>>>> > >>>>>-- > >>>>>James Teh > >>>>>Director, NV Access Limited > >>>>>Email: jamie@xxxxxxxxxxxx > >>>>>Web site: http://www.nvaccess.org/ > >>>>>Phone: +61 7 5667 8372 > >>>>>For a description of the software, to download it and links to > >>>>>project pages go to http://www.abilitiessoft.com > >>For a description of the software, to download it and links to > >>project pages go to http://www.abilitiessoft.com > > For a description of the software, to download it and links to > project pages go to http://www.abilitiessoft.com -- John J. Boyer, Executive Director GodTouches Digital Ministry, Inc. http://www.godtouches.org Madison, Wisconsin, USA Peace, Love, Service For a description of the software, to download it and links to project pages go to http://www.abilitiessoft.com