Hello All,
I am running RPCEmu 0.8.9 with RISCOS 4.39.
My boot files are all on ADFS (hd4.hdf).
I recently experimented with a new monitor definition file, and ended up
with a display mode that caused havoc...nothing on the screen could be
read.
I was unable to find any way of booting RPCEmu into a safe screen mode, so
ended up having to replace the hd4.hdf file with one from an earlier
version of RPCEmu. Luckily there wasn't too much that was different.
Is there a way of booting RPCEmu into a safe screen mode, to allow these
sort of errors to be corrected, without having to resort to replacing the
hard disc image?
Cheers,
--
Regards,
Terry Duell
_______________________________________________
Rpcemu mailing list
Rpcemu@riscos.info
http://www.riscos.info/cgi-bin/mailman/listinfo/rpcemu
Saturday, 30 June 2012
Re: JavaScript
On 30 Jun 2012 10:57:15 +0100, Chris Young wrote:
> On Sat, 30 Jun 2012 02:13:45 +0200, Ole wrote:
>
> > This patch adds support for older spidermonkey versions (tested with
> > 1.7):
> > http://pastebin.com/XEUhYhYY
Also required, and I forgot to mention, is the inline function
JS_NewCompartmentAndGlobalObject in jsapi.h, needs to be declared
"static".
> That seems to work with 1.5, bar a crash in js_Execute() which I can
> ignore past (and don't have time to investigate atm).
This is caused by Spidermonkey expecting a result variable rather than
NULL. I've fixed it in Spidermonkey :)
Chris
> On Sat, 30 Jun 2012 02:13:45 +0200, Ole wrote:
>
> > This patch adds support for older spidermonkey versions (tested with
> > 1.7):
> > http://pastebin.com/XEUhYhYY
Also required, and I forgot to mention, is the inline function
JS_NewCompartmentAndGlobalObject in jsapi.h, needs to be declared
"static".
> That seems to work with 1.5, bar a crash in js_Execute() which I can
> ignore past (and don't have time to investigate atm).
This is caused by Spidermonkey expecting a result variable rather than
NULL. I've fixed it in Spidermonkey :)
Chris
Re: Patch: avoid repeated initialization/allocation of global object in js_newcompartment
In article <20120630121057.GC11480@kyllikki.org>,
Vincent Sanders <vince@netsurf-browser.org> wrote:
[Explanation of the js objects and their lifetimes]
Thanks for the summary. :)
> The content *must* be given a fresh global object or the content will
> not be starting from the state the previously loaded page left it!
> complete with pointers to the previous DOM tree etc.
Above, "content will not be" should be "content will be", since it needs
to start in a fresh state.
Cheers,
--
Michael Drake (tlsa) http://www.netsurf-browser.org/
Vincent Sanders <vince@netsurf-browser.org> wrote:
[Explanation of the js objects and their lifetimes]
Thanks for the summary. :)
> The content *must* be given a fresh global object or the content will
> not be starting from the state the previously loaded page left it!
> complete with pointers to the previous DOM tree etc.
Above, "content will not be" should be "content will be", since it needs
to start in a fresh state.
Cheers,
--
Michael Drake (tlsa) http://www.netsurf-browser.org/
Re: Hotlist
In message <52a7994e9acvjazz@waitrose.com>
Chris Newman <cvjazz@waitrose.com> wrote:
> In article <52a78e014ddave@triffid.co.uk>, Dave Symes <dave@triffid.co.uk>
> wrote:
> > In article <52a75401a9Stuartlists@orpheusinternet.co.uk>, lists
> > <Stuartlists@orpheusinternet.co.uk> wrote:
> > > In article <52a7433e91dave@triffid.co.uk>, Dave Symes
> > > <dave@triffid.co.uk> wrote:
> > > > > I use !Bookmaker, works fine.
>
> > > > Thank you Stuart.
>
> > > > She doesn't.
>
> > > Sorry, should have been more clear. My suggestion is to use
> > > !BookMaker.
>
> > > With !BookMaker running and boxes created, when I click "Add to
> > > hotlist", I get a list of the boxes in !BookMaker I can choose to
> > > add to.
>
> > We used to use Bookmaker a lot, but we stopped using Bookmaker
> > because it didn't interface with NetSurf.
>
> > I see it now can, but it doesn't appear to interface very well as
> > when I Add to Hotlist I don't get a choice of what directory it
> > goes in, it just puts it in the default place.
>
> Here, it puts it at the bottom of the list of folders. I then open
> the appropriate folder & drag the file up to it. Only takes a few
> seconds.
Check the preferences - General group, 'Add URLs to main book'.
If this is ticked, BookMaker will put add any new URLs at the botton of
the hotlist.
If it isn't, adding a URL will put up a menu of folders to choose from.
--
Nick Roberts tigger @ orpheusinternet.co.uk
Hanlon's Razor: Never attribute to malice that which
can be adequately explained by stupidity.
Chris Newman <cvjazz@waitrose.com> wrote:
> In article <52a78e014ddave@triffid.co.uk>, Dave Symes <dave@triffid.co.uk>
> wrote:
> > In article <52a75401a9Stuartlists@orpheusinternet.co.uk>, lists
> > <Stuartlists@orpheusinternet.co.uk> wrote:
> > > In article <52a7433e91dave@triffid.co.uk>, Dave Symes
> > > <dave@triffid.co.uk> wrote:
> > > > > I use !Bookmaker, works fine.
>
> > > > Thank you Stuart.
>
> > > > She doesn't.
>
> > > Sorry, should have been more clear. My suggestion is to use
> > > !BookMaker.
>
> > > With !BookMaker running and boxes created, when I click "Add to
> > > hotlist", I get a list of the boxes in !BookMaker I can choose to
> > > add to.
>
> > We used to use Bookmaker a lot, but we stopped using Bookmaker
> > because it didn't interface with NetSurf.
>
> > I see it now can, but it doesn't appear to interface very well as
> > when I Add to Hotlist I don't get a choice of what directory it
> > goes in, it just puts it in the default place.
>
> Here, it puts it at the bottom of the list of folders. I then open
> the appropriate folder & drag the file up to it. Only takes a few
> seconds.
Check the preferences - General group, 'Add URLs to main book'.
If this is ticked, BookMaker will put add any new URLs at the botton of
the hotlist.
If it isn't, adding a URL will put up a menu of folders to choose from.
--
Nick Roberts tigger @ orpheusinternet.co.uk
Hanlon's Razor: Never attribute to malice that which
can be adequately explained by stupidity.
Re: Patch: avoid repeated initialization/allocation of global object in js_newcompartment
On Sat, Jun 30, 2012 at 01:20:01PM +0200, Ole wrote:
> Hello,
>
> this patch tries to avoid repeated initialization of JS context,
> altough there is already one setup.
>
> Maybe an assert(JS_GetGlobalObject(cx) == NULL) would be better
> here, because js_newcompartment is not intended to be called twice
> on the same context?
>
> (fixes an failed assert in spidermonkey when reloading the page)
You have completely missed whats going on here, the code there is correct.
let me explain:
The whole browser has a single library instance known as the "runtime"
created with JS_NewRuntime().
Each browsing context, as defined by the DOM (in our case a browser
window - NOT to be confused with the javascript window object - they
are related but not the same) has a separate javascript context
created upon teh runtime with JS_NewContext()
The lifetime of this context is directly coupled to the browser
window, though I have arranged delaying the creation of the context
untill the first time a fresh javascript global is created. Creating
new contexts is a relatively expensive operation so it is worth
delaying it as long as possible.
The next component is the global object, this is the javascript
"window" object within a browser to which all the other browser
context is attached (document, console etc. etc.) it is created with
JS_NewCompartmentAndGlobalObject(). The global is created within a
context.
The global javascript object (and its container if supported) is
created afresh when a root content (the content which is caused to be
loaded by navigating to a new page in the browser window) aquires the
context from its containig browser window.
The loading content only does this once when it initialy comes across
a resource (script tag) which requires it to use the javascript engine
(as a side effect, if a page never uses javascript it will never ask
the browser window for a context and we avoid the overhead of creating
a fresh global).
The content *must* be given a fresh global object or the content will
not be starting from the state the previously loaded page left it!
complete with pointers to the previous DOM tree etc.
The spidermonky authors indicated that from the 1.8 series onwards the
global object is garbage collected when replaced and I did not need to
perform any additional housekeeping.
I suspect that previous editions may need the user to explicitly mark
the global as ready for destruction before it is replaced. This should
be put in as JS_VERSION conditional code within jsapi.h which
implements JS_NewCompartmentAndGlobalObject()
--
Regards Vincent
http://www.kyllikki.org/
> Hello,
>
> this patch tries to avoid repeated initialization of JS context,
> altough there is already one setup.
>
> Maybe an assert(JS_GetGlobalObject(cx) == NULL) would be better
> here, because js_newcompartment is not intended to be called twice
> on the same context?
>
> (fixes an failed assert in spidermonkey when reloading the page)
You have completely missed whats going on here, the code there is correct.
let me explain:
The whole browser has a single library instance known as the "runtime"
created with JS_NewRuntime().
Each browsing context, as defined by the DOM (in our case a browser
window - NOT to be confused with the javascript window object - they
are related but not the same) has a separate javascript context
created upon teh runtime with JS_NewContext()
The lifetime of this context is directly coupled to the browser
window, though I have arranged delaying the creation of the context
untill the first time a fresh javascript global is created. Creating
new contexts is a relatively expensive operation so it is worth
delaying it as long as possible.
The next component is the global object, this is the javascript
"window" object within a browser to which all the other browser
context is attached (document, console etc. etc.) it is created with
JS_NewCompartmentAndGlobalObject(). The global is created within a
context.
The global javascript object (and its container if supported) is
created afresh when a root content (the content which is caused to be
loaded by navigating to a new page in the browser window) aquires the
context from its containig browser window.
The loading content only does this once when it initialy comes across
a resource (script tag) which requires it to use the javascript engine
(as a side effect, if a page never uses javascript it will never ask
the browser window for a context and we avoid the overhead of creating
a fresh global).
The content *must* be given a fresh global object or the content will
not be starting from the state the previously loaded page left it!
complete with pointers to the previous DOM tree etc.
The spidermonky authors indicated that from the 1.8 series onwards the
global object is garbage collected when replaced and I did not need to
perform any additional housekeeping.
I suspect that previous editions may need the user to explicitly mark
the global as ready for destruction before it is replaced. This should
be put in as JS_VERSION conditional code within jsapi.h which
implements JS_NewCompartmentAndGlobalObject()
--
Regards Vincent
http://www.kyllikki.org/
Patch: avoid repeated initialization/allocation of global object in js_newcompartment
Index: javascript/jsapi.c
===================================================================
--- javascript/jsapi.c (Revision 14014)
+++ javascript/jsapi.c (Arbeitskopie)
@@ -101,6 +101,11 @@
if (cx == NULL)
goto js_newcompartment_fail;
+ window_obj = JS_GetGlobalObject(cx);
+ if(window_obj != NULL){
+ return(window_obj);
+ }
+
/* create the window object as the global */
window_obj = jsapi_new_window(cx, NULL, win_priv);
if (window_obj == NULL)
Hello,
this patch tries to avoid repeated initialization of JS context,
altough there is already one setup.
Maybe an assert(JS_GetGlobalObject(cx) == NULL) would be better here,
because js_newcompartment is not intended to be called twice on the same
context?
(fixes an failed assert in spidermonkey when reloading the page)
Greets,
Ole
===================================================================
--- javascript/jsapi.c (Revision 14014)
+++ javascript/jsapi.c (Arbeitskopie)
@@ -101,6 +101,11 @@
if (cx == NULL)
goto js_newcompartment_fail;
+ window_obj = JS_GetGlobalObject(cx);
+ if(window_obj != NULL){
+ return(window_obj);
+ }
+
/* create the window object as the global */
window_obj = jsapi_new_window(cx, NULL, win_priv);
if (window_obj == NULL)
Hello,
this patch tries to avoid repeated initialization of JS context,
altough there is already one setup.
Maybe an assert(JS_GetGlobalObject(cx) == NULL) would be better here,
because js_newcompartment is not intended to be called twice on the same
context?
(fixes an failed assert in spidermonkey when reloading the page)
Greets,
Ole
Re: Patch: desktop/textarea.c, add text fragment select on double click
On Sat, 2012-06-23 at 02:11 +0200, Ole wrote:
> >Am Freitag, den 22.06.2012, 00:33 +0200 schrieb John-Mark Bell
> > <jmb@netsurf-browser.org>:
> > The textarea_select_fragment function looks wrong to me. There seems
> > to be some confusion between character indices and byte offsets.
>
> Attached is a slightly adjusted version.
Committed as r14016.
Thanks,
J.
> >Am Freitag, den 22.06.2012, 00:33 +0200 schrieb John-Mark Bell
> > <jmb@netsurf-browser.org>:
> > The textarea_select_fragment function looks wrong to me. There seems
> > to be some confusion between character indices and byte offsets.
>
> Attached is a slightly adjusted version.
Committed as r14016.
Thanks,
J.
SVN is now readonly
All,
As preparation for the move to Git tomorrow, SVN is now read-only.
Cheers,
J.
As preparation for the move to Git tomorrow, SVN is now read-only.
Cheers,
J.
Re: JavaScript
On Sat, 30 Jun 2012 02:13:45 +0200, Ole wrote:
> This patch adds support for older spidermonkey versions (tested with
> 1.7):
> http://pastebin.com/XEUhYhYY
That seems to work with 1.5, bar a crash in js_Execute() which I can
ignore past (and don't have time to investigate atm).
> Also remember to update desktop/netsurf.c
What needs updating in desktop/netsurf.c??
Chris
> This patch adds support for older spidermonkey versions (tested with
> 1.7):
> http://pastebin.com/XEUhYhYY
That seems to work with 1.5, bar a crash in js_Execute() which I can
ignore past (and don't have time to investigate atm).
> Also remember to update desktop/netsurf.c
What needs updating in desktop/netsurf.c??
Chris
Re: JavaScript
On Sat, Jun 30, 2012 at 02:13:45AM +0200, Ole wrote:
> This patch adds support for older spidermonkey versions (tested with
> 1.7):
> http://pastebin.com/XEUhYhYY
You should probably attach it in an email rather than slap it in a paste
bin.
B.
> This patch adds support for older spidermonkey versions (tested with
> 1.7):
> http://pastebin.com/XEUhYhYY
You should probably attach it in an email rather than slap it in a paste
bin.
B.
Re: JavaScript
On Fri, 29 Jun 2012 23:16:58 +0100, Vincent Sanders wrote:
> the spidermonkey versions i have been targetting are the c API
> versions of the 1.8 series so are simply heavy rather than obease
Ah, obviously I downloaded the wrong one.
> most probably because the JSAPI native calling function spec changed
> in an incompatible way! can you tell me what JS_VERSION is on your
> version of the library? I might be able to come up with
> something...but currently I am a bit stumped how to alter the native
> calling convention at compile time without some hedious macro magic
#define JS_VERSION 150
See Ole's previous email and patches - which seem to work.
> So I guess that answers the question about which API major version to
> pick, I think 1.8 series is still the right target
Seems to be. I might have a go at a different version from the 1.8
line, see if I have more luck getting it to work.
Chris
> the spidermonkey versions i have been targetting are the c API
> versions of the 1.8 series so are simply heavy rather than obease
Ah, obviously I downloaded the wrong one.
> most probably because the JSAPI native calling function spec changed
> in an incompatible way! can you tell me what JS_VERSION is on your
> version of the library? I might be able to come up with
> something...but currently I am a bit stumped how to alter the native
> calling convention at compile time without some hedious macro magic
#define JS_VERSION 150
See Ole's previous email and patches - which seem to work.
> So I guess that answers the question about which API major version to
> pick, I think 1.8 series is still the right target
Seems to be. I might have a go at a different version from the 1.8
line, see if I have more luck getting it to work.
Chris
Friday, 29 June 2012
Re: JavaScript
Am Freitag, den 29.06.2012, 19:24 +0200 schrieb "Chris Young"
<chris.young@unsatisfactorysoftware.co.uk>:
> v1.50-2 (which is positively prehistoric, but the only working ported
> version I have) unfortunately does not work, I fudged it with some
> macros from newer Spidermonkey includes, and it is calling alert
> (warn_user()) but with no text. Not sure if it is easy to get it
> working, for such an old version it's probably not worth it. I have
> a quick port of Spidermonkey 1.85 but having issues with it crashing;
> I guess I have quite a while to fix this though.
This patch adds support for older spidermonkey versions (tested with
1.7):
http://pastebin.com/XEUhYhYY
You still have to pass the following defines to the compiler to make it
work:
-DXP_UNIX /* Really? Shouldn't it be defined by some jsapi include? */
-DPOSIX_SOURCE -D_BSD_SOURCE /* depends on your build of spidermonkey.
*/
-DJS_HAS_FILE_OBJECT=0
-DJS_VERSION=170
-DJSVERSION_LATEST=170
-DJSOPTION_JIT=0
Also remember to update desktop/netsurf.c
Greets,
Ole
<chris.young@unsatisfactorysoftware.co.uk>:
> v1.50-2 (which is positively prehistoric, but the only working ported
> version I have) unfortunately does not work, I fudged it with some
> macros from newer Spidermonkey includes, and it is calling alert
> (warn_user()) but with no text. Not sure if it is easy to get it
> working, for such an old version it's probably not worth it. I have
> a quick port of Spidermonkey 1.85 but having issues with it crashing;
> I guess I have quite a while to fix this though.
This patch adds support for older spidermonkey versions (tested with
1.7):
http://pastebin.com/XEUhYhYY
You still have to pass the following defines to the compiler to make it
work:
-DXP_UNIX /* Really? Shouldn't it be defined by some jsapi include? */
-DPOSIX_SOURCE -D_BSD_SOURCE /* depends on your build of spidermonkey.
*/
-DJS_HAS_FILE_OBJECT=0
-DJS_VERSION=170
-DJSVERSION_LATEST=170
-DJSOPTION_JIT=0
Also remember to update desktop/netsurf.c
Greets,
Ole
Re: JavaScript
On Fri, Jun 29, 2012 at 06:24:58PM +0100, Chris Young wrote:
> On Fri, 29 Jun 2012 17:28:39 +0100, Vincent Sanders wrote:
>
> > A simple javascript abstraction has been added allowing for
> > alternative javascript interpreters to be added in future. And an
> > initial implementation added for the spidermonkey interpreter/jit
> > (jsapi) this integration allows for javascript code to be correctly
> > gathered and executed from script tags.
>
> That's good to hear. Spidermonkey is perhaps a bit "heavy", partly
> due to being C++ (so the std C++ lib has to be loaded too), and
the spidermonkey versions i have been targetting are the c API
versions of the 1.8 series so are simply heavy rather than obease
> current versions are awkward to port due to the dependency on NSPR
> (although there is a Bugzilla open to remove this dependency which I'm
> keeping my eye on). Unfortunately it's probably our best option - I
> don't know of any decent lighter Javascript engines.
I tried v8 and looked at a couple of others but none are vaugely
usable in our situation and really few of the larger js libs are
usuable outside their parent browser projects.
>
> > What is now required is to add bindings to the javascript runtime for
> > all the DOM operations including the so called DOM0 objects like the
> > global window object and all the associated sub objects like
> > navigator, console etc.
>
> Would that need to be done again if somebody decides to add support
> for a different Javascript library?
alas, yes, which is why I tried to work from the web IDL, turns out
the IDL samples are incomplete and kinda assume a type system that
does not exist within javascript and fits very badly, at which point
working from them is pointless as you end up with special casing to
make the "ideal" spec fit the real world. Oh and add in the IDL is
simply missing for most of DOM0
>
> > Although there is no explicit dependency on
> > specific versions of spidermonkey I am primarily basing my efforts on
> > the 1.8.5 releases as this are the most common version found in
> > distributions.
>
> v1.50-2 (which is positively prehistoric, but the only working ported
> version I have) unfortunately does not work, I fudged it with some
> macros from newer Spidermonkey includes, and it is calling alert
> (warn_user()) but with no text. Not sure if it is easy to get it
> working, for such an old version it's probably not worth it. I have
> a quick port of Spidermonkey 1.85 but having issues with it crashing;
> I guess I have quite a while to fix this though.
most probably because the JSAPI native calling function spec changed
in an incompatible way! can you tell me what JS_VERSION is on your
version of the library? I might be able to come up with
something...but currently I am a bit stumped how to alter the native
calling convention at compile time without some hedious macro magic
>
> I'd be interested to hear which versions of Spidermonkey are ported to
> other operating systems we target (and any porting tips!)
>
> Chris
>
>
- Debian squeeze has 1.8.0
- Debian wheezy has 1.8.5
- I have dev builds using 1.8.9 but they are not really
representative of anything
- Ubuntu 11.04 has 1.8.5 in the alternate include layout (thats why
there are two pkgconfig names/paths sigh)
- Ubuntu 11.10 and later seems to be 1.8.5 in various include layouts
So I guess that answers the question about which API major version to
pick, I think 1.8 series is still the right target
--
Regards Vincent
http://www.kyllikki.org/
> On Fri, 29 Jun 2012 17:28:39 +0100, Vincent Sanders wrote:
>
> > A simple javascript abstraction has been added allowing for
> > alternative javascript interpreters to be added in future. And an
> > initial implementation added for the spidermonkey interpreter/jit
> > (jsapi) this integration allows for javascript code to be correctly
> > gathered and executed from script tags.
>
> That's good to hear. Spidermonkey is perhaps a bit "heavy", partly
> due to being C++ (so the std C++ lib has to be loaded too), and
the spidermonkey versions i have been targetting are the c API
versions of the 1.8 series so are simply heavy rather than obease
> current versions are awkward to port due to the dependency on NSPR
> (although there is a Bugzilla open to remove this dependency which I'm
> keeping my eye on). Unfortunately it's probably our best option - I
> don't know of any decent lighter Javascript engines.
I tried v8 and looked at a couple of others but none are vaugely
usable in our situation and really few of the larger js libs are
usuable outside their parent browser projects.
>
> > What is now required is to add bindings to the javascript runtime for
> > all the DOM operations including the so called DOM0 objects like the
> > global window object and all the associated sub objects like
> > navigator, console etc.
>
> Would that need to be done again if somebody decides to add support
> for a different Javascript library?
alas, yes, which is why I tried to work from the web IDL, turns out
the IDL samples are incomplete and kinda assume a type system that
does not exist within javascript and fits very badly, at which point
working from them is pointless as you end up with special casing to
make the "ideal" spec fit the real world. Oh and add in the IDL is
simply missing for most of DOM0
>
> > Although there is no explicit dependency on
> > specific versions of spidermonkey I am primarily basing my efforts on
> > the 1.8.5 releases as this are the most common version found in
> > distributions.
>
> v1.50-2 (which is positively prehistoric, but the only working ported
> version I have) unfortunately does not work, I fudged it with some
> macros from newer Spidermonkey includes, and it is calling alert
> (warn_user()) but with no text. Not sure if it is easy to get it
> working, for such an old version it's probably not worth it. I have
> a quick port of Spidermonkey 1.85 but having issues with it crashing;
> I guess I have quite a while to fix this though.
most probably because the JSAPI native calling function spec changed
in an incompatible way! can you tell me what JS_VERSION is on your
version of the library? I might be able to come up with
something...but currently I am a bit stumped how to alter the native
calling convention at compile time without some hedious macro magic
>
> I'd be interested to hear which versions of Spidermonkey are ported to
> other operating systems we target (and any porting tips!)
>
> Chris
>
>
- Debian squeeze has 1.8.0
- Debian wheezy has 1.8.5
- I have dev builds using 1.8.9 but they are not really
representative of anything
- Ubuntu 11.04 has 1.8.5 in the alternate include layout (thats why
there are two pkgconfig names/paths sigh)
- Ubuntu 11.10 and later seems to be 1.8.5 in various include layouts
So I guess that answers the question about which API major version to
pick, I think 1.8 series is still the right target
--
Regards Vincent
http://www.kyllikki.org/
Re: Hotlist
In article <52a78e014ddave@triffid.co.uk>, Dave Symes <dave@triffid.co.uk>
wrote:
> In article <52a75401a9Stuartlists@orpheusinternet.co.uk>, lists
> <Stuartlists@orpheusinternet.co.uk> wrote:
> > In article <52a7433e91dave@triffid.co.uk>, Dave Symes
> > <dave@triffid.co.uk> wrote:
> > > > I use !Bookmaker, works fine.
> > > Thank you Stuart.
> > > She doesn't.
> > Sorry, should have been more clear. My suggestion is to use !BookMaker.
> > With !BookMaker running and boxes created, when I click "Add to hotlist",
> > I get a list of the boxes in !BookMaker I can choose to add to.
> We used to use Bookmaker a lot, but we stopped using Bookmaker because it
> didn't interface with NetSurf.
> I see it now can, but it doesn't appear to interface very well as when I
> Add to Hotlist I don't get a choice of what directory it goes in, it just
> puts it in the default place.
Here, it puts it at the bottom of the list of folders. I then open the
appropriate folder & drag the file up to it. Only takes a few seconds.
Cheers,
--
Chris
wrote:
> In article <52a75401a9Stuartlists@orpheusinternet.co.uk>, lists
> <Stuartlists@orpheusinternet.co.uk> wrote:
> > In article <52a7433e91dave@triffid.co.uk>, Dave Symes
> > <dave@triffid.co.uk> wrote:
> > > > I use !Bookmaker, works fine.
> > > Thank you Stuart.
> > > She doesn't.
> > Sorry, should have been more clear. My suggestion is to use !BookMaker.
> > With !BookMaker running and boxes created, when I click "Add to hotlist",
> > I get a list of the boxes in !BookMaker I can choose to add to.
> We used to use Bookmaker a lot, but we stopped using Bookmaker because it
> didn't interface with NetSurf.
> I see it now can, but it doesn't appear to interface very well as when I
> Add to Hotlist I don't get a choice of what directory it goes in, it just
> puts it in the default place.
Here, it puts it at the bottom of the list of folders. I then open the
appropriate folder & drag the file up to it. Only takes a few seconds.
Cheers,
--
Chris
Re: Hotlist
In article <52a7909659Stuartlists@orpheusinternet.co.uk>,
lists <Stuartlists@orpheusinternet.co.uk> wrote:
> In article <52a78e014ddave@triffid.co.uk>,
> Dave Symes <dave@triffid.co.uk> wrote:
> > I see it now can, but it doesn't appear to interface very well as when
> > I Add to Hotlist I don't get a choice of what directory it goes in, it
> > just puts it in the default place.
> I do here, have you got the latest version - 2.15
Yes.
Dave
--
Dave Triffid
lists <Stuartlists@orpheusinternet.co.uk> wrote:
> In article <52a78e014ddave@triffid.co.uk>,
> Dave Symes <dave@triffid.co.uk> wrote:
> > I see it now can, but it doesn't appear to interface very well as when
> > I Add to Hotlist I don't get a choice of what directory it goes in, it
> > just puts it in the default place.
> I do here, have you got the latest version - 2.15
Yes.
Dave
--
Dave Triffid
Re: JavaScript
Am Freitag, den 29.06.2012, 19:24 +0200 schrieb "Chris Young"
<chris.young@unsatisfactorysoftware.co.uk>:
> v1.50-2 (which is positively prehistoric, but the only working ported
> version I have) unfortunately does not work, I fudged it with some
> macros from newer Spidermonkey includes, and it is calling alert
> (warn_user()) but with no text. Not sure if it is easy to get it
> working, for such an old version it's probably not worth it. I have
> a quick port of Spidermonkey 1.85 but having issues with it crashing;
> I guess I have quite a while to fix this though.
>
> I'd be interested to hear which versions of Spidermonkey are ported
> to
> other operating systems we target (and any porting tips!)
Hello,
my local working copy already works well with spidermonkey-1.7. It's
easy.
The main problem is:
1. some macros are missing. That's easy, just take the ones from
spidermonkey 1.8.5
2. more important - JSFastNative has become JSNative. Old version of
JSNative was dropped in 1.8.
That's why we need an intermediate macro for JS_FS, JS_FN.
( The newer spidermonkey JSNative prototype is the old
JSFastNative!)
I'm going to send patches this night.
It will make alert() work.
I've already send an patch for another problem which also applies to
newer spidermonkey versions.
(Altough the newer spidermonkey may detects the error and does nothing
in the wrong destruction order.)
If people do not want spidermonkey 1.7 support, please let me know
before I put more work in it.
Greets,
Ole
<chris.young@unsatisfactorysoftware.co.uk>:
> v1.50-2 (which is positively prehistoric, but the only working ported
> version I have) unfortunately does not work, I fudged it with some
> macros from newer Spidermonkey includes, and it is calling alert
> (warn_user()) but with no text. Not sure if it is easy to get it
> working, for such an old version it's probably not worth it. I have
> a quick port of Spidermonkey 1.85 but having issues with it crashing;
> I guess I have quite a while to fix this though.
>
> I'd be interested to hear which versions of Spidermonkey are ported
> to
> other operating systems we target (and any porting tips!)
Hello,
my local working copy already works well with spidermonkey-1.7. It's
easy.
The main problem is:
1. some macros are missing. That's easy, just take the ones from
spidermonkey 1.8.5
2. more important - JSFastNative has become JSNative. Old version of
JSNative was dropped in 1.8.
That's why we need an intermediate macro for JS_FS, JS_FN.
( The newer spidermonkey JSNative prototype is the old
JSFastNative!)
I'm going to send patches this night.
It will make alert() work.
I've already send an patch for another problem which also applies to
newer spidermonkey versions.
(Altough the newer spidermonkey may detects the error and does nothing
in the wrong destruction order.)
If people do not want spidermonkey 1.7 support, please let me know
before I put more work in it.
Greets,
Ole
Git push access, Still various missing users
Hi,
The following users have SSH keys registered for push access:
Daniel Silverstone
Rob Kendrick
Michael Drake
Chris Young
Vincent Sanders
Ole Loots
It's critical that you get your SSH public keys to me ASAP if you want to be
able to push on Sunday.
D.
--
Daniel Silverstone http://www.netsurf-browser.org/
PGP mail accepted and encouraged. Key Id: 3CCE BABE 206C 3B69
The following users have SSH keys registered for push access:
Daniel Silverstone
Rob Kendrick
Michael Drake
Chris Young
Vincent Sanders
Ole Loots
It's critical that you get your SSH public keys to me ASAP if you want to be
able to push on Sunday.
D.
--
Daniel Silverstone http://www.netsurf-browser.org/
PGP mail accepted and encouraged. Key Id: 3CCE BABE 206C 3B69
New build system infra
Hi,
If you've been watching the commits, you'll know that in preparation for the
switch to Git on Sunday, I have been reworking how the libraries and tools
find/use the shared build infrastructure.
I have been removing the use of svn:externals since we could not agree on a
fully acceptable way to expose them with Git.
As such, there is now a Makefile in tools/buildsystem and before you do
anything else, you should svn up in that tree and run the makefile.
That makefile will install into $PREFIX/share/netsurf-buildsystem all the
shared makefiles and test tools.
If you really don't want to do that, then you can, instead, export NSSHARED in
your environment as the full path to the tools/buildsystem checkout (i.e. the
dir containing example, makefiles, testtools, llvm, etc).
Then you can svn up in the library trees and they should continue to build as
before.
Once the Git transition is complete, the externals warts will vanish.
A variant of this information will be presented as part of the 'Getting started
with building NetSurf from source' wiki page I'll be roughing out before the
end of Sunday.
D.
--
Daniel Silverstone http://www.netsurf-browser.org/
PGP mail accepted and encouraged. Key Id: 3CCE BABE 206C 3B69
If you've been watching the commits, you'll know that in preparation for the
switch to Git on Sunday, I have been reworking how the libraries and tools
find/use the shared build infrastructure.
I have been removing the use of svn:externals since we could not agree on a
fully acceptable way to expose them with Git.
As such, there is now a Makefile in tools/buildsystem and before you do
anything else, you should svn up in that tree and run the makefile.
That makefile will install into $PREFIX/share/netsurf-buildsystem all the
shared makefiles and test tools.
If you really don't want to do that, then you can, instead, export NSSHARED in
your environment as the full path to the tools/buildsystem checkout (i.e. the
dir containing example, makefiles, testtools, llvm, etc).
Then you can svn up in the library trees and they should continue to build as
before.
Once the Git transition is complete, the externals warts will vanish.
A variant of this information will be presented as part of the 'Getting started
with building NetSurf from source' wiki page I'll be roughing out before the
end of Sunday.
D.
--
Daniel Silverstone http://www.netsurf-browser.org/
PGP mail accepted and encouraged. Key Id: 3CCE BABE 206C 3B69
Re: Hotlist
In article <52a78e014ddave@triffid.co.uk>,
Dave Symes <dave@triffid.co.uk> wrote:
> I see it now can, but it doesn't appear to interface very well as when I
> Add to Hotlist I don't get a choice of what directory it goes in, it just
> puts it in the default place.
I do here, have you got the latest version - 2.15
--
Stuart Winsor
Only plain text for emails
http://www.asciiribbon.org
Dave Symes <dave@triffid.co.uk> wrote:
> I see it now can, but it doesn't appear to interface very well as when I
> Add to Hotlist I don't get a choice of what directory it goes in, it just
> puts it in the default place.
I do here, have you got the latest version - 2.15
--
Stuart Winsor
Only plain text for emails
http://www.asciiribbon.org
Re: Hotlist
In article <52a75401a9Stuartlists@orpheusinternet.co.uk>,
lists <Stuartlists@orpheusinternet.co.uk> wrote:
> In article <52a7433e91dave@triffid.co.uk>,
> Dave Symes <dave@triffid.co.uk> wrote:
> > > I use !Bookmaker, works fine.
> > Thank you Stuart.
> > She doesn't.
> Sorry, should have been more clear. My suggestion is to use !BookMaker.
> With !BookMaker running and boxes created, when I click "Add to hotlist",
> I get a list of the boxes in !BookMaker I can choose to add to.
We used to use Bookmaker a lot, but we stopped using Bookmaker because it
didn't interface with NetSurf.
I see it now can, but it doesn't appear to interface very well as when I
Add to Hotlist I don't get a choice of what directory it goes in, it just
puts it in the default place.
Anyway, it appears She's sorted and has no intention of doing anything other.
Dave
--
Dave Triffid
lists <Stuartlists@orpheusinternet.co.uk> wrote:
> In article <52a7433e91dave@triffid.co.uk>,
> Dave Symes <dave@triffid.co.uk> wrote:
> > > I use !Bookmaker, works fine.
> > Thank you Stuart.
> > She doesn't.
> Sorry, should have been more clear. My suggestion is to use !BookMaker.
> With !BookMaker running and boxes created, when I click "Add to hotlist",
> I get a list of the boxes in !BookMaker I can choose to add to.
We used to use Bookmaker a lot, but we stopped using Bookmaker because it
didn't interface with NetSurf.
I see it now can, but it doesn't appear to interface very well as when I
Add to Hotlist I don't get a choice of what directory it goes in, it just
puts it in the default place.
Anyway, it appears She's sorted and has no intention of doing anything other.
Dave
--
Dave Triffid
Re: JavaScript
On Fri, 29 Jun 2012 17:28:39 +0100, Vincent Sanders wrote:
> A simple javascript abstraction has been added allowing for
> alternative javascript interpreters to be added in future. And an
> initial implementation added for the spidermonkey interpreter/jit
> (jsapi) this integration allows for javascript code to be correctly
> gathered and executed from script tags.
That's good to hear. Spidermonkey is perhaps a bit "heavy", partly
due to being C++ (so the std C++ lib has to be loaded too), and
current versions are awkward to port due to the dependency on NSPR
(although there is a Bugzilla open to remove this dependency which I'm
keeping my eye on). Unfortunately it's probably our best option - I
don't know of any decent lighter Javascript engines.
> What is now required is to add bindings to the javascript runtime for
> all the DOM operations including the so called DOM0 objects like the
> global window object and all the associated sub objects like
> navigator, console etc.
Would that need to be done again if somebody decides to add support
for a different Javascript library?
> Although there is no explicit dependency on
> specific versions of spidermonkey I am primarily basing my efforts on
> the 1.8.5 releases as this are the most common version found in
> distributions.
v1.50-2 (which is positively prehistoric, but the only working ported
version I have) unfortunately does not work, I fudged it with some
macros from newer Spidermonkey includes, and it is calling alert
(warn_user()) but with no text. Not sure if it is easy to get it
working, for such an old version it's probably not worth it. I have
a quick port of Spidermonkey 1.85 but having issues with it crashing;
I guess I have quite a while to fix this though.
I'd be interested to hear which versions of Spidermonkey are ported to
other operating systems we target (and any porting tips!)
Chris
> A simple javascript abstraction has been added allowing for
> alternative javascript interpreters to be added in future. And an
> initial implementation added for the spidermonkey interpreter/jit
> (jsapi) this integration allows for javascript code to be correctly
> gathered and executed from script tags.
That's good to hear. Spidermonkey is perhaps a bit "heavy", partly
due to being C++ (so the std C++ lib has to be loaded too), and
current versions are awkward to port due to the dependency on NSPR
(although there is a Bugzilla open to remove this dependency which I'm
keeping my eye on). Unfortunately it's probably our best option - I
don't know of any decent lighter Javascript engines.
> What is now required is to add bindings to the javascript runtime for
> all the DOM operations including the so called DOM0 objects like the
> global window object and all the associated sub objects like
> navigator, console etc.
Would that need to be done again if somebody decides to add support
for a different Javascript library?
> Although there is no explicit dependency on
> specific versions of spidermonkey I am primarily basing my efforts on
> the 1.8.5 releases as this are the most common version found in
> distributions.
v1.50-2 (which is positively prehistoric, but the only working ported
version I have) unfortunately does not work, I fudged it with some
macros from newer Spidermonkey includes, and it is calling alert
(warn_user()) but with no text. Not sure if it is easy to get it
working, for such an old version it's probably not worth it. I have
a quick port of Spidermonkey 1.85 but having issues with it crashing;
I guess I have quite a while to fix this though.
I'd be interested to hear which versions of Spidermonkey are ported to
other operating systems we target (and any porting tips!)
Chris
Re: [gccsdk] Nettle autobuilder patch
Alex Macfarlane Smith wrote on June 14, 2012:
>>> I notice that Frank's version is in objasm format, so theoretically
>>> could be committed into Nettle's CVS
>>> (http://nettle.cvs.sourceforge.net/viewvc/nettle/SocketWatch/ ), and
>>> then someone could write an autobuilder for that.
>>>
>>> Does that seem like a good plan to anyone? :)
>>
>> Sure :-)
>>
>> John.
>>
> Tis done -
> http://nettle.cvs.sourceforge.net/viewvc/nettle/SocketWatch/Source/
> I'm guessing it should be feasible for someone to modify the autobuilder
> to build this with the makefile now anyway :)
I've checked in the socketwatch autobuilder stuff now. If there
is someone who could build it and knows how to check its
OK, I will then rebuild it and upload it to the web.
Regards,
Alan
_______________________________________________
GCCSDK mailing list gcc@gccsdk.riscos.info
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK
>>> I notice that Frank's version is in objasm format, so theoretically
>>> could be committed into Nettle's CVS
>>> (http://nettle.cvs.sourceforge.net/viewvc/nettle/SocketWatch/ ), and
>>> then someone could write an autobuilder for that.
>>>
>>> Does that seem like a good plan to anyone? :)
>>
>> Sure :-)
>>
>> John.
>>
> Tis done -
> http://nettle.cvs.sourceforge.net/viewvc/nettle/SocketWatch/Source/
> I'm guessing it should be feasible for someone to modify the autobuilder
> to build this with the makefile now anyway :)
I've checked in the socketwatch autobuilder stuff now. If there
is someone who could build it and knows how to check its
OK, I will then rebuild it and upload it to the web.
Regards,
Alan
_______________________________________________
GCCSDK mailing list gcc@gccsdk.riscos.info
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK
JavaScript
I have been asked to write a small introduction about the work i have
been doing to integrate javascript.
The handling of <script> elements has been added, this required a
refactoring of code in desktop/browser.c to correctly handle script
elements and attempt to execute them with the correct interpreter.
The script implementation is functional but incomplete and probably
ought to be split to add a full object factory for script
interpreters. A decision on handling of <noscript> elements and how
the parser options are set to handle these.
A simple javascript abstraction has been added allowing for
alternative javascript interpreters to be added in future. And an
initial implementation added for the spidermonkey interpreter/jit
(jsapi) this integration allows for javascript code to be correctly
gathered and executed from script tags.
What is now required is to add bindings to the javascript runtime for
all the DOM operations including the so called DOM0 objects like the
global window object and all the associated sub objects like
navigator, console etc.
I initially intended to use a tool to generate these bindings either
from web IDL or from a DSL but it has become apparent that the
existing tools (such as jsapigen) are grossly inadequate and rolling
our own requires so much domain specific code that simply writing the
bindings by hand with helper functions is massively less effort.
The Makefile.defaults currently has NETSURF_USE_JS and
NETSURF_USE_MOZJS set to NO thus disabling all javascript in normal
builds, simply overriding these to AUTO in Makefile.config and ensuring
you have the mozilla spidermonkey packages installed (libmozjs-dev or
similar) should be enough to compile with javascript support
Ongoing work is now concentrating on adding bindings and completing
their implementation. Although there is no explicit dependency on
specific versions of spidermonkey I am primarily basing my efforts on
the 1.8.5 releases as this are the most common version found in
distributions.
--
Regards Vincent
http://www.kyllikki.org/
been doing to integrate javascript.
The handling of <script> elements has been added, this required a
refactoring of code in desktop/browser.c to correctly handle script
elements and attempt to execute them with the correct interpreter.
The script implementation is functional but incomplete and probably
ought to be split to add a full object factory for script
interpreters. A decision on handling of <noscript> elements and how
the parser options are set to handle these.
A simple javascript abstraction has been added allowing for
alternative javascript interpreters to be added in future. And an
initial implementation added for the spidermonkey interpreter/jit
(jsapi) this integration allows for javascript code to be correctly
gathered and executed from script tags.
What is now required is to add bindings to the javascript runtime for
all the DOM operations including the so called DOM0 objects like the
global window object and all the associated sub objects like
navigator, console etc.
I initially intended to use a tool to generate these bindings either
from web IDL or from a DSL but it has become apparent that the
existing tools (such as jsapigen) are grossly inadequate and rolling
our own requires so much domain specific code that simply writing the
bindings by hand with helper functions is massively less effort.
The Makefile.defaults currently has NETSURF_USE_JS and
NETSURF_USE_MOZJS set to NO thus disabling all javascript in normal
builds, simply overriding these to AUTO in Makefile.config and ensuring
you have the mozilla spidermonkey packages installed (libmozjs-dev or
similar) should be enough to compile with javascript support
Ongoing work is now concentrating on adding bindings and completing
their implementation. Although there is no explicit dependency on
specific versions of spidermonkey I am primarily basing my efforts on
the 1.8.5 releases as this are the most common version found in
distributions.
--
Regards Vincent
http://www.kyllikki.org/
Re: Hotlist
On 29 Jun 2012, Bryn Evans <netsurf@bryork.freeuk.com> wrote:
> In a mad moment - Dave Symes mumbled :
[snip]
> > Problem is... She can't drag anything to the bottom of the list
> > where the directory resides, it is totally unreachable, any part of
> > the icon.
>
> > By getting her to drag the directory up the list a few spaces, it
> > becomes reachable.
>
> I noticed this behaviour when the Hotlist was first introduced, and
> discovered the same workaround.
The problem appeared some time between 2.6 (21st September 2010), which
is ok, and 2.7 (7th April 2011), which is not ok (sorry that I cannot be
more precise).
It seems to be caused by the position of the pointer on the bounding box
which represents the objects being moved. The pointer is at the top left
of the box, which is higher than one line, in the Hotlist window. Thus
the pointer cannot reach the bottom line.
Previously, the objects to be dragged were represented by a transparent
icon, which didn't restrict the movement of the pointer.
Tony
> In a mad moment - Dave Symes mumbled :
[snip]
> > Problem is... She can't drag anything to the bottom of the list
> > where the directory resides, it is totally unreachable, any part of
> > the icon.
>
> > By getting her to drag the directory up the list a few spaces, it
> > becomes reachable.
>
> I noticed this behaviour when the Hotlist was first introduced, and
> discovered the same workaround.
The problem appeared some time between 2.6 (21st September 2010), which
is ok, and 2.7 (7th April 2011), which is not ok (sorry that I cannot be
more precise).
It seems to be caused by the position of the pointer on the bounding box
which represents the objects being moved. The pointer is at the top left
of the box, which is higher than one line, in the Hotlist window. Thus
the pointer cannot reach the bottom line.
Previously, the objects to be dragged were represented by a transparent
icon, which didn't restrict the movement of the pointer.
Tony
Re: Hotlist
In a mad moment - Dave Symes mumbled :
> In article <52a711c566tlsa@netsurf-browser.org>,
> Michael Drake <tlsa@netsurf-browser.org> wrote:
>> In article <52a70d2281dave@triffid.co.uk>,
>> Dave Symes <dave@triffid.co.uk> wrote:
>>> How does she take an existing Hotlist entry and put it in one of her
>>> directories?
>>>From the user guide:
[snip]
>> -- http://www.netsurf-browser.org/documentation/guide#Hotlist
> Indeed, thanks
> Problem is... She can't drag anything to the bottom of the list where the
> directory resides, it is totally unreachable, any part of the icon.
> By getting her to drag the directory up the list a few spaces, it becomes
> reachable.
I noticed this behaviour when the Hotlist was first introduced, and
discovered the same workaround.
Thinking about it, there would seem to be some advantage if the
creation of new Directories took place at the head of the list.
(ducks and dons flame proof coat)
--
|) [
|)ryn [vans mail to - BrynEvans@bryork.freeuk.com
> In article <52a711c566tlsa@netsurf-browser.org>,
> Michael Drake <tlsa@netsurf-browser.org> wrote:
>> In article <52a70d2281dave@triffid.co.uk>,
>> Dave Symes <dave@triffid.co.uk> wrote:
>>> How does she take an existing Hotlist entry and put it in one of her
>>> directories?
>>>From the user guide:
[snip]
>> -- http://www.netsurf-browser.org/documentation/guide#Hotlist
> Indeed, thanks
> Problem is... She can't drag anything to the bottom of the list where the
> directory resides, it is totally unreachable, any part of the icon.
> By getting her to drag the directory up the list a few spaces, it becomes
> reachable.
I noticed this behaviour when the Hotlist was first introduced, and
discovered the same workaround.
Thinking about it, there would seem to be some advantage if the
creation of new Directories took place at the head of the list.
(ducks and dons flame proof coat)
--
|) [
|)ryn [vans mail to - BrynEvans@bryork.freeuk.com
Re: Hotlist
In article <52a7433e91dave@triffid.co.uk>,
Dave Symes <dave@triffid.co.uk> wrote:
> > I use !Bookmaker, works fine.
> Thank you Stuart.
> She doesn't.
Sorry, should have been more clear. My suggestion is to use !BookMaker.
With !BookMaker running and boxes created, when I click "Add to hotlist",
I get a list of the boxes in !BookMaker I can choose to add to.
--
Stuart Winsor
Only plain text for emails
http://www.asciiribbon.org
Dave Symes <dave@triffid.co.uk> wrote:
> > I use !Bookmaker, works fine.
> Thank you Stuart.
> She doesn't.
Sorry, should have been more clear. My suggestion is to use !BookMaker.
With !BookMaker running and boxes created, when I click "Add to hotlist",
I get a list of the boxes in !BookMaker I can choose to add to.
--
Stuart Winsor
Only plain text for emails
http://www.asciiribbon.org
Thursday, 28 June 2012
Re: Hotlist
In article <52a716f93aStuartlists@orpheusinternet.co.uk>,
lists <Stuartlists@orpheusinternet.co.uk> wrote:
> In article <52a70d2281dave@triffid.co.uk>,
> Dave Symes <dave@triffid.co.uk> wrote:
> > She uses NetSurf a lot and would like to sort out the mess that is her
> > Hotlist, so she's created a couple of directories in the list but can't
> > get anything to go into those directories.
> I use !Bookmaker, works fine.
Thank you Stuart.
She doesn't.
Dave
--
Dave Triffid
lists <Stuartlists@orpheusinternet.co.uk> wrote:
> In article <52a70d2281dave@triffid.co.uk>,
> Dave Symes <dave@triffid.co.uk> wrote:
> > She uses NetSurf a lot and would like to sort out the mess that is her
> > Hotlist, so she's created a couple of directories in the list but can't
> > get anything to go into those directories.
> I use !Bookmaker, works fine.
Thank you Stuart.
She doesn't.
Dave
--
Dave Triffid
Patch: Call js_finalise after gui_quit()
Index: desktop/netsurf.c
===================================================================
--- desktop/netsurf.c (Revision 13994)
+++ desktop/netsurf.c (Arbeitskopie)
@@ -253,13 +253,14 @@
void netsurf_exit(void)
{
- js_finalise();
-
hlcache_stop();
LOG(("Closing GUI"));
gui_quit();
+ LOG(("Finalising JavaScript runtime"));
+ js_finalise();
+
LOG(("Closing search and related resources"));
search_web_cleanup();
Hello,
this patch changes the shutdown order. js_finalise() must be called
after gui_quit, otherwise, gui_quit() will try to free javascript
context belonging to a javascript runtime which is already shutdown.
(gui_quit closes / destroys all open windows, which means it also frees
the js contexts at that point).
Another approach would be to collect all available js context before
calling JS_DestroyRuntime().
Greets,
Ole
===================================================================
--- desktop/netsurf.c (Revision 13994)
+++ desktop/netsurf.c (Arbeitskopie)
@@ -253,13 +253,14 @@
void netsurf_exit(void)
{
- js_finalise();
-
hlcache_stop();
LOG(("Closing GUI"));
gui_quit();
+ LOG(("Finalising JavaScript runtime"));
+ js_finalise();
+
LOG(("Closing search and related resources"));
search_web_cleanup();
Hello,
this patch changes the shutdown order. js_finalise() must be called
after gui_quit, otherwise, gui_quit() will try to free javascript
context belonging to a javascript runtime which is already shutdown.
(gui_quit closes / destroys all open windows, which means it also frees
the js contexts at that point).
Another approach would be to collect all available js context before
calling JS_DestroyRuntime().
Greets,
Ole
Re: Hotlist
In article <52a70d2281dave@triffid.co.uk>,
Dave Symes <dave@triffid.co.uk> wrote:
> She uses NetSurf a lot and would like to sort out the mess that is her
> Hotlist, so she's created a couple of directories in the list but can't
> get anything to go into those directories.
I use !Bookmaker, works fine.
--
Stuart Winsor
Only plain text for emails
http://www.asciiribbon.org
Dave Symes <dave@triffid.co.uk> wrote:
> She uses NetSurf a lot and would like to sort out the mess that is her
> Hotlist, so she's created a couple of directories in the list but can't
> get anything to go into those directories.
I use !Bookmaker, works fine.
--
Stuart Winsor
Only plain text for emails
http://www.asciiribbon.org
Re: Hotlist
In article <52a711c566tlsa@netsurf-browser.org>,
Michael Drake <tlsa@netsurf-browser.org> wrote:
> In article <52a70d2281dave@triffid.co.uk>,
> Dave Symes <dave@triffid.co.uk> wrote:
> > How does she take an existing Hotlist entry and put it in one of her
> > directories?
> >From the user guide:
> "As with filer windows, selections can be made by dragging selection
> boxes and adjust clicking can be used to add or remove items from the
> selection. Selections can then be dragged and dropped within the
> hotlist management window to move them around. It is possible to drop
> a selection into a closed directory by releasing it over the bottom
> half of the target directory. Dropping the selection over the top half
> of a directory or address will insert the selection above that item.
> Finally, dropping a selection over the lower half of an address will
> move it below the address."
> -- http://www.netsurf-browser.org/documentation/guide#Hotlist
Indeed, thanks
Problem is... She can't drag anything to the bottom of the list where the
directory resides, it is totally unreachable, any part of the icon.
By getting her to drag the directory up the list a few spaces, it becomes
reachable.
Dave
FWIW. I've tried this on my install of NS with the same result.
Thanks
Dave
--
Dave Triffid
Michael Drake <tlsa@netsurf-browser.org> wrote:
> In article <52a70d2281dave@triffid.co.uk>,
> Dave Symes <dave@triffid.co.uk> wrote:
> > How does she take an existing Hotlist entry and put it in one of her
> > directories?
> >From the user guide:
> "As with filer windows, selections can be made by dragging selection
> boxes and adjust clicking can be used to add or remove items from the
> selection. Selections can then be dragged and dropped within the
> hotlist management window to move them around. It is possible to drop
> a selection into a closed directory by releasing it over the bottom
> half of the target directory. Dropping the selection over the top half
> of a directory or address will insert the selection above that item.
> Finally, dropping a selection over the lower half of an address will
> move it below the address."
> -- http://www.netsurf-browser.org/documentation/guide#Hotlist
Indeed, thanks
Problem is... She can't drag anything to the bottom of the list where the
directory resides, it is totally unreachable, any part of the icon.
By getting her to drag the directory up the list a few spaces, it becomes
reachable.
Dave
FWIW. I've tried this on my install of NS with the same result.
Thanks
Dave
--
Dave Triffid
Re: Hotlist
In article <62f511a752.old_coaster@old_coaster.yahoo.co.uk>,
Tony Moore <old_coaster@yahoo.co.uk> wrote:
> On 28 Jun 2012, Brian Howlett <brian.groups@brianhowlett.me.uk> wrote:
> > On 28 Jun, Dave Symes wrote:
> [snip]
> > > How does she take an existing Hotlist entry and put it in one of her
> > > directories?
> >
> > Drag 'n' drop seems to work...
> You need to drop the selection on the _lower+ half of a directory icon,
> otherwise the selection is moved to the space above the directory.
> Tony
Sorry chaps, that's not the problem.
See my last posting, but to sumarise...
She can't drag anything to the bottom of the list where the directory
resides, it is totally unreachable, any part of the icon.
By getting her to drag the directory up the list a few spaces, it becomes
reachable.
Dave
--
Dave Triffid
Tony Moore <old_coaster@yahoo.co.uk> wrote:
> On 28 Jun 2012, Brian Howlett <brian.groups@brianhowlett.me.uk> wrote:
> > On 28 Jun, Dave Symes wrote:
> [snip]
> > > How does she take an existing Hotlist entry and put it in one of her
> > > directories?
> >
> > Drag 'n' drop seems to work...
> You need to drop the selection on the _lower+ half of a directory icon,
> otherwise the selection is moved to the space above the directory.
> Tony
Sorry chaps, that's not the problem.
See my last posting, but to sumarise...
She can't drag anything to the bottom of the list where the directory
resides, it is totally unreachable, any part of the icon.
By getting her to drag the directory up the list a few spaces, it becomes
reachable.
Dave
--
Dave Triffid
Re: Hotlist
In article <b1ae0ea752.Brian@bhowlett.plus.net>,
Brian Howlett <brian.groups@brianhowlett.me.uk> wrote:
> On 28 Jun, Dave Symes wrote:
> > Fay wants to know something about the NS hotlist, so If the answer is
> > known, I appreciate the solution.
> > She uses NetSurf a lot and would like to sort out the mess that is her
> > Hotlist, so she's created a couple of directories in the list but can't
> > get anything to go into those directories.
> > No point in asking me... Which is why I'm asking here.
> > How does she take an existing Hotlist entry and put it in one of her
> > directories?
> > Thanks
> Drag 'n' drop seems to work...
It didn't for her.
Then I had a lightbulb moment.
The particular director was at the very bottom of the list, so she could
get anything she grabbed to actually drag over it... It wouldn't go down
to the bottom of the list.
So I got her to create another directory below that one and lo and behold,
she can now drag stuff into that required directory.
Of course she still can't drag anything to the newley created very bottom
directory.
This set me thinking... If she drags that bottom (Newley created
directory) up a few places, it can now be accessed.
There is something dodgy happening (Bug).
The version she is using... Dev (23 March 2012 R13571)
Dave
--
Dave Triffid
Brian Howlett <brian.groups@brianhowlett.me.uk> wrote:
> On 28 Jun, Dave Symes wrote:
> > Fay wants to know something about the NS hotlist, so If the answer is
> > known, I appreciate the solution.
> > She uses NetSurf a lot and would like to sort out the mess that is her
> > Hotlist, so she's created a couple of directories in the list but can't
> > get anything to go into those directories.
> > No point in asking me... Which is why I'm asking here.
> > How does she take an existing Hotlist entry and put it in one of her
> > directories?
> > Thanks
> Drag 'n' drop seems to work...
It didn't for her.
Then I had a lightbulb moment.
The particular director was at the very bottom of the list, so she could
get anything she grabbed to actually drag over it... It wouldn't go down
to the bottom of the list.
So I got her to create another directory below that one and lo and behold,
she can now drag stuff into that required directory.
Of course she still can't drag anything to the newley created very bottom
directory.
This set me thinking... If she drags that bottom (Newley created
directory) up a few places, it can now be accessed.
There is something dodgy happening (Bug).
The version she is using... Dev (23 March 2012 R13571)
Dave
--
Dave Triffid
Re: Hotlist
On 28 Jun 2012, Brian Howlett <brian.groups@brianhowlett.me.uk> wrote:
> On 28 Jun, Dave Symes wrote:
[snip]
> > How does she take an existing Hotlist entry and put it in one of her
> > directories?
>
> Drag 'n' drop seems to work...
You need to drop the selection on the _lower+ half of a directory icon,
otherwise the selection is moved to the space above the directory.
Tony
> On 28 Jun, Dave Symes wrote:
[snip]
> > How does she take an existing Hotlist entry and put it in one of her
> > directories?
>
> Drag 'n' drop seems to work...
You need to drop the selection on the _lower+ half of a directory icon,
otherwise the selection is moved to the space above the directory.
Tony
Re: Hotlist
In article <52a70d2281dave@triffid.co.uk>,
Dave Symes <dave@triffid.co.uk> wrote:
> How does she take an existing Hotlist entry and put it in one of her
> directories?
>From the user guide:
"As with filer windows, selections can be made by dragging selection
boxes and adjust clicking can be used to add or remove items from the
selection. Selections can then be dragged and dropped within the hotlist
management window to move them around. It is possible to drop a
selection into a closed directory by releasing it over the bottom half
of the target directory. Dropping the selection over the top half of a
directory or address will insert the selection above that item. Finally,
dropping a selection over the lower half of an address will move it
below the address."
-- http://www.netsurf-browser.org/documentation/guide#Hotlist
--
Michael Drake (tlsa) http://www.netsurf-browser.org/
Dave Symes <dave@triffid.co.uk> wrote:
> How does she take an existing Hotlist entry and put it in one of her
> directories?
>From the user guide:
"As with filer windows, selections can be made by dragging selection
boxes and adjust clicking can be used to add or remove items from the
selection. Selections can then be dragged and dropped within the hotlist
management window to move them around. It is possible to drop a
selection into a closed directory by releasing it over the bottom half
of the target directory. Dropping the selection over the top half of a
directory or address will insert the selection above that item. Finally,
dropping a selection over the lower half of an address will move it
below the address."
-- http://www.netsurf-browser.org/documentation/guide#Hotlist
--
Michael Drake (tlsa) http://www.netsurf-browser.org/
Re: Hotlist
On 28 Jun, Dave Symes wrote:
> Fay wants to know something about the NS hotlist, so If the answer is
> known, I appreciate the solution.
> She uses NetSurf a lot and would like to sort out the mess that is her
> Hotlist, so she's created a couple of directories in the list but can't
> get anything to go into those directories.
> No point in asking me... Which is why I'm asking here.
> How does she take an existing Hotlist entry and put it in one of her
> directories?
> Thanks
Drag 'n' drop seems to work...
--
Brian Howlett
----------------------------------------------
My net income doesn't cover my gross habits...
> Fay wants to know something about the NS hotlist, so If the answer is
> known, I appreciate the solution.
> She uses NetSurf a lot and would like to sort out the mess that is her
> Hotlist, so she's created a couple of directories in the list but can't
> get anything to go into those directories.
> No point in asking me... Which is why I'm asking here.
> How does she take an existing Hotlist entry and put it in one of her
> directories?
> Thanks
Drag 'n' drop seems to work...
--
Brian Howlett
----------------------------------------------
My net income doesn't cover my gross habits...
Hotlist
Fay wants to know something about the NS hotlist, so If the answer is
known, I appreciate the solution.
She uses NetSurf a lot and would like to sort out the mess that is her
Hotlist, so she's created a couple of directories in the list but can't
get anything to go into those directories.
No point in asking me... Which is why I'm asking here.
How does she take an existing Hotlist entry and put it in one of her
directories?
Thanks
Dave
--
Dave Triffid
known, I appreciate the solution.
She uses NetSurf a lot and would like to sort out the mess that is her
Hotlist, so she's created a couple of directories in the list but can't
get anything to go into those directories.
No point in asking me... Which is why I'm asking here.
How does she take an existing Hotlist entry and put it in one of her
directories?
Thanks
Dave
--
Dave Triffid
Re: [gccsdk] errors trying to build wget example
In article
<CANsTO=n2ysU1q3ufaN96JFOPzJ6qH6LQaoGWOo7L1x5M3+-rhw@mail.gmail.com>,
Manuel Alfayate <redwindwanderer@gmail.com> wrote:
> Hi all,
> I'm following the gccsdk guide but I can't compile the example wget. I'm
> getting some patching errors, I guess when building the dpkg dependency:
> This is the error I get when trying to build dpkg:
> Autobuilder: RISC OS patch:
> /home/manuel/panda/riscos/gccsdk/autobuilder/libraries/compress/libbz2-1.0/Makefile.p
> patching file Makefile
> Hunk #1 FAILED at 17.
> 1 out of 3 hunks FAILED -- saving rejects to file Makefile.rej
> Autobuilder: RISC OS patch:
> /home/manuel/panda/riscos/gccsdk/autobuilder/libraries/compress/libbz2-1.0/bzip2.c.p
> patching file bzip2.c
> Hunk #1 succeeded at 121 (offset -92 lines).
> Hunk #2 succeeded at 1141 (offset -94 lines).
> Hunk #3 succeeded at 1167 (offset -94 lines).
> Hunk #4 succeeded at 1333 (offset -94 lines).
> Hunk #5 succeeded at 1365 (offset -94 lines).
> Autobuilder: Patches failed
> Package libbz2-1.0: ***Failure***
> Dependency "libbz2-1.0" failed for dpkg
> Build for package "dpkg" failed
If you update to r5887 this should now build ok.
Chris.
_______________________________________________
GCCSDK mailing list gcc@gccsdk.riscos.info
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK
<CANsTO=n2ysU1q3ufaN96JFOPzJ6qH6LQaoGWOo7L1x5M3+-rhw@mail.gmail.com>,
Manuel Alfayate <redwindwanderer@gmail.com> wrote:
> Hi all,
> I'm following the gccsdk guide but I can't compile the example wget. I'm
> getting some patching errors, I guess when building the dpkg dependency:
> This is the error I get when trying to build dpkg:
> Autobuilder: RISC OS patch:
> /home/manuel/panda/riscos/gccsdk/autobuilder/libraries/compress/libbz2-1.0/Makefile.p
> patching file Makefile
> Hunk #1 FAILED at 17.
> 1 out of 3 hunks FAILED -- saving rejects to file Makefile.rej
> Autobuilder: RISC OS patch:
> /home/manuel/panda/riscos/gccsdk/autobuilder/libraries/compress/libbz2-1.0/bzip2.c.p
> patching file bzip2.c
> Hunk #1 succeeded at 121 (offset -92 lines).
> Hunk #2 succeeded at 1141 (offset -94 lines).
> Hunk #3 succeeded at 1167 (offset -94 lines).
> Hunk #4 succeeded at 1333 (offset -94 lines).
> Hunk #5 succeeded at 1365 (offset -94 lines).
> Autobuilder: Patches failed
> Package libbz2-1.0: ***Failure***
> Dependency "libbz2-1.0" failed for dpkg
> Build for package "dpkg" failed
If you update to r5887 this should now build ok.
Chris.
_______________________________________________
GCCSDK mailing list gcc@gccsdk.riscos.info
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK
[gccsdk] errors trying to build wget example
Hi all,
I'm following the gccsdk guide but I can't compile the example wget. I'm getting some patching errors, I guess when building the dpkg dependency: This is the error I get when trying to build dpkg:
Autobuilder: RISC OS patch: /home/manuel/panda/riscos/gccsdk/autobuilder/libraries/compress/libbz2-1.0/Makefile.p
patching file Makefile
Hunk #1 FAILED at 17.
1 out of 3 hunks FAILED -- saving rejects to file Makefile.rej
Autobuilder: RISC OS patch: /home/manuel/panda/riscos/gccsdk/autobuilder/libraries/compress/libbz2-1.0/bzip2.c.p
patching file bzip2.c
Hunk #1 succeeded at 121 (offset -92 lines).
Hunk #2 succeeded at 1141 (offset -94 lines).
Hunk #3 succeeded at 1167 (offset -94 lines).
Hunk #4 succeeded at 1333 (offset -94 lines).
Hunk #5 succeeded at 1365 (offset -94 lines).
Autobuilder: Patches failed
Package libbz2-1.0: ***Failure***
Dependency "libbz2-1.0" failed for dpkg
Build for package "dpkg" failed
And this is the error I get when I try to build wget itself:
Autobuilder: RISC OS patch: /home/manuel/panda/riscos/gccsdk/autobuilder/libraries/compress/libbz2-1.0/Makefile.p
patching file Makefile
Hunk #1 FAILED at 17.
1 out of 3 hunks FAILED -- saving rejects to file Makefile.rej
Autobuilder: RISC OS patch: /home/manuel/panda/riscos/gccsdk/autobuilder/libraries/compress/libbz2-1.0/bzip2.c.p
patching file bzip2.c
Hunk #1 succeeded at 121 (offset -92 lines).
Hunk #2 succeeded at 1141 (offset -94 lines).
Hunk #3 succeeded at 1167 (offset -94 lines).
Hunk #4 succeeded at 1333 (offset -94 lines).
Hunk #5 succeeded at 1365 (offset -94 lines).
Autobuilder: Patches failed
Package libbz2-1.0: ***Failure***
Dependency "libbz2-1.0" failed for dpkg
Dependency "dpkg" failed for wget
Build for package "wget" failed
thanks
Wednesday, 27 June 2012
Re: [gccsdk] GCCDSK cross compiler building errors
In message <CANsTO=mJXNLyW4RB2rX_=3Va-Dn1tB7dP3zhSXBAP679R2bR-g@mail.gmail.com>
Manuel Alfayate <redwindwanderer@gmail.com> wrote:
> Hi there
>
> I'm trying to build the cross compiler by following the instructions at
> http://www.riscos.info/index.php/Using_GCCSDK#Using_GCCSDK_and_Autobuilder_to_cross-compile_for_RISC_OS
>
> But, even having all the listed packaged installed, I still can't get
> ./build-world to succeed.
>
> There are some "undefined references" in the code, wich I though were
> caused by flex lib, but I installed it and I still get the same errors... I
> also installed the dev flex lib.
>
> So here's my log, included with this message. Any idea is welcome
Could it be that you don't have bison installed ?
Otherwise, if you have installed flex after having done a failed build,
I'm not sure whether it will rebuild sufficently as you're having a
linker error. So do:
$ rm buildstepsdir/cross-gcc-configure
which will rebuild the gcc cross-compiler part from scratch (but still
reuse your binutils, host native libraries, etc which you've built).
John.
--
John Tytgat, in his comfy chair at home BASS
John.Tytgat@aaug.net ARM powered, RISC OS driven
_______________________________________________
GCCSDK mailing list gcc@gccsdk.riscos.info
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK
Manuel Alfayate <redwindwanderer@gmail.com> wrote:
> Hi there
>
> I'm trying to build the cross compiler by following the instructions at
> http://www.riscos.info/index.php/Using_GCCSDK#Using_GCCSDK_and_Autobuilder_to_cross-compile_for_RISC_OS
>
> But, even having all the listed packaged installed, I still can't get
> ./build-world to succeed.
>
> There are some "undefined references" in the code, wich I though were
> caused by flex lib, but I installed it and I still get the same errors... I
> also installed the dev flex lib.
>
> So here's my log, included with this message. Any idea is welcome
Could it be that you don't have bison installed ?
Otherwise, if you have installed flex after having done a failed build,
I'm not sure whether it will rebuild sufficently as you're having a
linker error. So do:
$ rm buildstepsdir/cross-gcc-configure
which will rebuild the gcc cross-compiler part from scratch (but still
reuse your binutils, host native libraries, etc which you've built).
John.
--
John Tytgat, in his comfy chair at home BASS
John.Tytgat@aaug.net ARM powered, RISC OS driven
_______________________________________________
GCCSDK mailing list gcc@gccsdk.riscos.info
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK
[gccsdk] GCCDSK cross compiler building errors
test -d buildstepsdir || mkdir buildstepsdir
make[1]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4'
cd /home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc && PATH="/home/manuel/panda/riscos/gccsdk/gcc4/builddir/installed-buildtools-for-gcc/bin:/home/manuel/panda/riscos/gccsdk/cross/bin:/usr/lib/libfm:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" && make && make install
make[2]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc'
make[3]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libiberty'
make[5]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libiberty/testsuite'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libiberty/testsuite'
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libiberty'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/fixincludes'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/fixincludes'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/lto-plugin'
make all-am
make[5]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/lto-plugin'
make[5]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/lto-plugin'
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/lto-plugin'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/intl'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/intl'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/libiberty'
make[5]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/libiberty/testsuite'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/libiberty/testsuite'
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/libiberty'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/fixincludes'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/fixincludes'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/zlib'
true "AR_FLAGS=rc" "CC_FOR_BUILD=gcc" "CFLAGS=-g -O2" "CXXFLAGS=-g -O2" "CFLAGS_FOR_BUILD=-g -O2" "CFLAGS_FOR_TARGET=-g -O2" "INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644" "INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install -c" "LDFLAGS=" "LIBCFLAGS=-g -O2" "LIBCFLAGS_FOR_TARGET=-g -O2" "MAKE=make" "MAKEINFO=makeinfo --split-size=5000000 --split-size=5000000 " "PICFLAG=" "PICFLAG_FOR_TARGET=" "SHELL=/bin/bash" "EXPECT=expect" "RUNTEST=runtest" "RUNTESTFLAGS=" "exec_prefix=/home/manuel/panda/riscos/gccsdk/cross" "infodir=/home/manuel/panda/riscos/gccsdk/cross/share/info" "libdir=/home/manuel/panda/riscos/gccsdk/cross/lib" "prefix=/home/manuel/panda/riscos/gccsdk/cross" "tooldir=/home/manuel/panda/riscos/gccsdk/cross/arm-unknown-riscos" "AR=ar" "AS=as" "CC=gcc" "CXX=g++" "LD=ld" "LIBCFLAGS=-g -O2" "NM=nm" "PICFLAG=" "RANLIB=ranlib" "DESTDIR=" DO=all multi-do # make
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/zlib'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libcpp'
test -f config.h || (rm -f stamp-h1 && make stamp-h1)
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libcpp'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libdecnumber'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libdecnumber'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/gcc'
gcc -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wc++-compat -DHAVE_CONFIG_H -DGENERATOR_FILE -o build/gengtype \
build/gengtype.o build/errors.o build/gengtype-lex.o build/gengtype-parse.o build/gengtype-state.o build/version.o ../build-x86_64-unknown-linux-gnu/libiberty/libiberty.a
build/gengtype.o: In function `adjust_field_type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:1279: undefined reference to `lexer_line'
build/gengtype.o: In function `adjust_field_rtx_def':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:989: undefined reference to `lexer_line'
build/gengtype.o: In function `adjust_field_type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:1294: undefined reference to `lexer_line'
build/gengtype.o: In function `adjust_field_tree_exp':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:1220: undefined reference to `lexer_line'
build/gengtype.o: In function `adjust_field_rtx_def':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:1045: undefined reference to `lexer_line'
build/gengtype.o:/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:1055: more undefined references to `lexer_line' follow
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o:/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: more undefined references to `yylex' follow
build/gengtype-parse.o: In function `type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:726: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o: In function `type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:797: undefined reference to `lexer_line'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:797: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o: In function `type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:758: undefined reference to `lexer_line'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:758: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o:/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: more undefined references to `yylex' follow
build/gengtype-parse.o: In function `struct_field_seq':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:692: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o: In function `type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:782: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o:/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: more undefined references to `yylex' follow
build/gengtype-parse.o: In function `parse_file':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:951: undefined reference to `yybegin'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o: In function `parse_file':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:986: undefined reference to `lexer_toplevel_done'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:991: undefined reference to `yyend'
build/gengtype-parse.o: In function `extern_or_static':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:892: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `def_vec':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:918: undefined reference to `lexer_line'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:919: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `def_vec_alloc':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:943: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `typedef_decl':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:842: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
collect2: ld returned 1 exit status
make[4]: *** [build/gengtype] Error 1
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/gcc'
make[3]: *** [all-gcc] Error 2
make[3]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc'
make[1]: *** [cross-gcc-built] Error 2
make[1]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4'
make: *** [getenv] Error 2
Hi there
make[1]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4'
cd /home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc && PATH="/home/manuel/panda/riscos/gccsdk/gcc4/builddir/installed-buildtools-for-gcc/bin:/home/manuel/panda/riscos/gccsdk/cross/bin:/usr/lib/libfm:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" && make && make install
make[2]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc'
make[3]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libiberty'
make[5]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libiberty/testsuite'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libiberty/testsuite'
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libiberty'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/fixincludes'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/fixincludes'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/lto-plugin'
make all-am
make[5]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/lto-plugin'
make[5]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/lto-plugin'
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/lto-plugin'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/intl'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/intl'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/libiberty'
make[5]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/libiberty/testsuite'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/libiberty/testsuite'
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/libiberty'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/fixincludes'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/build-x86_64-unknown-linux-gnu/fixincludes'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/zlib'
true "AR_FLAGS=rc" "CC_FOR_BUILD=gcc" "CFLAGS=-g -O2" "CXXFLAGS=-g -O2" "CFLAGS_FOR_BUILD=-g -O2" "CFLAGS_FOR_TARGET=-g -O2" "INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644" "INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install -c" "LDFLAGS=" "LIBCFLAGS=-g -O2" "LIBCFLAGS_FOR_TARGET=-g -O2" "MAKE=make" "MAKEINFO=makeinfo --split-size=5000000 --split-size=5000000 " "PICFLAG=" "PICFLAG_FOR_TARGET=" "SHELL=/bin/bash" "EXPECT=expect" "RUNTEST=runtest" "RUNTESTFLAGS=" "exec_prefix=/home/manuel/panda/riscos/gccsdk/cross" "infodir=/home/manuel/panda/riscos/gccsdk/cross/share/info" "libdir=/home/manuel/panda/riscos/gccsdk/cross/lib" "prefix=/home/manuel/panda/riscos/gccsdk/cross" "tooldir=/home/manuel/panda/riscos/gccsdk/cross/arm-unknown-riscos" "AR=ar" "AS=as" "CC=gcc" "CXX=g++" "LD=ld" "LIBCFLAGS=-g -O2" "NM=nm" "PICFLAG=" "RANLIB=ranlib" "DESTDIR=" DO=all multi-do # make
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/zlib'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libcpp'
test -f config.h || (rm -f stamp-h1 && make stamp-h1)
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libcpp'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libdecnumber'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/libdecnumber'
make[4]: Entering directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/gcc'
gcc -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wc++-compat -DHAVE_CONFIG_H -DGENERATOR_FILE -o build/gengtype \
build/gengtype.o build/errors.o build/gengtype-lex.o build/gengtype-parse.o build/gengtype-state.o build/version.o ../build-x86_64-unknown-linux-gnu/libiberty/libiberty.a
build/gengtype.o: In function `adjust_field_type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:1279: undefined reference to `lexer_line'
build/gengtype.o: In function `adjust_field_rtx_def':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:989: undefined reference to `lexer_line'
build/gengtype.o: In function `adjust_field_type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:1294: undefined reference to `lexer_line'
build/gengtype.o: In function `adjust_field_tree_exp':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:1220: undefined reference to `lexer_line'
build/gengtype.o: In function `adjust_field_rtx_def':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:1045: undefined reference to `lexer_line'
build/gengtype.o:/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype.c:1055: more undefined references to `lexer_line' follow
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o:/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: more undefined references to `yylex' follow
build/gengtype-parse.o: In function `type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:726: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o: In function `type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:797: undefined reference to `lexer_line'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:797: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o: In function `type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:758: undefined reference to `lexer_line'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:758: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o:/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: more undefined references to `yylex' follow
build/gengtype-parse.o: In function `struct_field_seq':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:692: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o: In function `type':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:782: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o:/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: more undefined references to `yylex' follow
build/gengtype-parse.o: In function `parse_file':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:951: undefined reference to `yybegin'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
build/gengtype-parse.o: In function `parse_file':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:986: undefined reference to `lexer_toplevel_done'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:991: undefined reference to `yyend'
build/gengtype-parse.o: In function `extern_or_static':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:892: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `def_vec':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:918: undefined reference to `lexer_line'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:919: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `def_vec_alloc':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:943: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `typedef_decl':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:842: undefined reference to `lexer_line'
build/gengtype-parse.o: In function `token':
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
/home/manuel/panda/riscos/gccsdk/gcc4/srcdir/gcc/gcc/gengtype-parse.c:53: undefined reference to `yylex'
collect2: ld returned 1 exit status
make[4]: *** [build/gengtype] Error 1
make[4]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc/gcc'
make[3]: *** [all-gcc] Error 2
make[3]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4/builddir/cross-gcc'
make[1]: *** [cross-gcc-built] Error 2
make[1]: Leaving directory `/home/manuel/panda/riscos/gccsdk/gcc4'
make: *** [getenv] Error 2
Hi there
I'm trying to build the cross compiler by following the instructions at http://www.riscos.info/index.php/Using_GCCSDK#Using_GCCSDK_and_Autobuilder_to_cross-compile_for_RISC_OS
But, even having all the listed packaged installed, I still can't get ./build-world to succeed.
There are some "undefined references" in the code, wich I though were caused by flex lib, but I installed it and I still get the same errors... I also installed the dev flex lib.
So here's my log, included with this message. Any idea is welcome
[gccsdk] [Bug 240] New: fork() & prog$heap failure
http://www.riscos.info/bugzilla3/show_bug.cgi?id=240
Summary: fork() & prog$heap failure
Product: GCC/GCCSDK
Version: other
Platform: Other
OS/Version: RISC OS
Status: NEW
Severity: normal
Priority: P1
Component: C compiler
AssignedTo: John.Tytgat@aaug.net
ReportedBy: duncan_moore@ntlworld.com
Estimated Hours: 0.0
GCCSDK GCC 4.1.2 Release 2 Development 2012-05-05
SharedUnixLibrary 1.12
VRPC RISC OS 4.39
#include <unistd.h> // fork execvp _exit
#include <sys/wait.h> // wait WEXITSTATUS
#include <stdlib.h> // exit
#include <stdio.h> // printf
static int ro_system(char* const cmd[]) {
int status; // Child/Parent process return codes.
pid_t childpid=fork(); // Create additional process.
if (childpid==0) { // Child process.
status=execvp(cmd[0],cmd); // execvp() only returns on failure.
_exit(status);
}
else if (childpid>0) { // Parent process.
wait(&status); // Wait for child to exit, and store its status.
return WEXITSTATUS(status);
} else { // fork() returns -1 on failure.
printf("fork() error\n");
exit(1);
}
}
int main(int argc,char** argv) {
(void) argc;
return ro_system(++argv);
}
This program fails when test$heap is set:
*UnSet test$heap
*UnSet test$heapmax
*test gcc -dumpmachine
arm-unknown-riscos
*Set test$heap ""
*test gcc -dumpmachine
fork() error
*Set test$heapmax 1
*test gcc -dumpmachine
fork() error
Replacing fork() by vfork() gives what I would expect:
*UnSet test$heap
*UnSet test$heapmax
*test gcc -dumpmachine
arm-unknown-riscos
*Set test$heap ""
*test gcc -dumpmachine
arm-unknown-riscos
--
Configure bugmail: http://www.riscos.info/bugzilla3/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.
_______________________________________________
GCCSDK mailing list gcc@gccsdk.riscos.info
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK
Summary: fork() & prog$heap failure
Product: GCC/GCCSDK
Version: other
Platform: Other
OS/Version: RISC OS
Status: NEW
Severity: normal
Priority: P1
Component: C compiler
AssignedTo: John.Tytgat@aaug.net
ReportedBy: duncan_moore@ntlworld.com
Estimated Hours: 0.0
GCCSDK GCC 4.1.2 Release 2 Development 2012-05-05
SharedUnixLibrary 1.12
VRPC RISC OS 4.39
#include <unistd.h> // fork execvp _exit
#include <sys/wait.h> // wait WEXITSTATUS
#include <stdlib.h> // exit
#include <stdio.h> // printf
static int ro_system(char* const cmd[]) {
int status; // Child/Parent process return codes.
pid_t childpid=fork(); // Create additional process.
if (childpid==0) { // Child process.
status=execvp(cmd[0],cmd); // execvp() only returns on failure.
_exit(status);
}
else if (childpid>0) { // Parent process.
wait(&status); // Wait for child to exit, and store its status.
return WEXITSTATUS(status);
} else { // fork() returns -1 on failure.
printf("fork() error\n");
exit(1);
}
}
int main(int argc,char** argv) {
(void) argc;
return ro_system(++argv);
}
This program fails when test$heap is set:
*UnSet test$heap
*UnSet test$heapmax
*test gcc -dumpmachine
arm-unknown-riscos
*Set test$heap ""
*test gcc -dumpmachine
fork() error
*Set test$heapmax 1
*test gcc -dumpmachine
fork() error
Replacing fork() by vfork() gives what I would expect:
*UnSet test$heap
*UnSet test$heapmax
*test gcc -dumpmachine
arm-unknown-riscos
*Set test$heap ""
*test gcc -dumpmachine
arm-unknown-riscos
--
Configure bugmail: http://www.riscos.info/bugzilla3/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.
_______________________________________________
GCCSDK mailing list gcc@gccsdk.riscos.info
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK
Tuesday, 26 June 2012
How to close framebuffer Netsurf version? & How to change keyboard layout?
Hello!
I'm using the framebuffer Netsurf version 2.9 running on Debian 6.0 and I would like to know how to close the application and how to change the keyboard layout.
Nowadays the only way that I can close the application is changing to another tty and killing it from there, but if I couldn't change to another tty how could I close Netsurf?
And my second question is:
Is there an easy way to changing the keyboard layout? if no, which files I should try to change to adapt it to my keyboard layout and recompile it?
Thanks in advance, and sorry by my poor English.
Eugenio Vidal.
Monday, 25 June 2012
Re: [GeSHi-devel] new language file GNU/Octave
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iQEVAwUBT+iZcJw3120Y2Wc/AQL9cgf9FOuiY3c2YyJ9CqmpD2nxYieSZslwiZrj
+4E1JT15oknCkfLUALcdbVQlSbogOkoN7+rwpqAWJ6XJEiqnZgrtplH6O6iZUMJ+
F/PRs2cyM+HaDS7UD5WzDDneb9H6n2jEWkaogyWDmIzCzHyIjZcsoK9qyNw+s5ot
GuU4oCc79LQ0Px7OGQvsXvAr3STEDOxA4DHjpUkBmFW7zcDPcaaSCNCwbgE/9cwZ
7tZ1h2o8fdOJEy49DON+DtVhvbjlWw1KMqE5xISfXfcKD2GrmTtVqTaSKLfVgpvU
HHH7cFEhnCnmvLQS8LZVkPEj8vPzP/ssn2/uDSq6N0z6WCZZJ6reKA==
=G45x
-----END PGP SIGNATURE-----
Hi,
fixed.
Regards,
BenBE.
Am 25.06.2012 18:47, schrieb Carnë Draug:
> On 23 June 2012 22:43, Benny Baumann <BenBE1987@gmx.net> wrote:
>> Hi Carnë,
>>
>> I did quite some work for about 10 language files recently at the GPN12
>> in Kassel and also had a look at your language file there. I mostly made
>> language files compliant there and less had a deeper look into eachone's
>> highlighting, thus I'd suggest you grab a copy of the language file from
>> the SVN repository of GESHi or check out the highlighting at
>> http://qbnz.com/. If you find anything still wrong it'd be nice to get
>> some examples with those problems and a short description of what
>> exactly the correct highlighting should be.
>>
>> Best regards,
>> BenBE.
>
> Hi Ben
>
> I have have taken a look and didn't spot any problem. Thank you
> very much for you work.
>
> Just a small thing. It's a bit pedantic but we have just been informed
> by the elders that there should be no "/" between GNU and Octave, just
> a space (should be "GNU Octave" instead of "GNU/Octave"). Could you
> please make that change? This shows up on line 12 and line 44 of
> octave.php
>
> Thanks in advance,
> Carnë
>
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iQEVAwUBT+iZcJw3120Y2Wc/AQL9cgf9FOuiY3c2YyJ9CqmpD2nxYieSZslwiZrj
+4E1JT15oknCkfLUALcdbVQlSbogOkoN7+rwpqAWJ6XJEiqnZgrtplH6O6iZUMJ+
F/PRs2cyM+HaDS7UD5WzDDneb9H6n2jEWkaogyWDmIzCzHyIjZcsoK9qyNw+s5ot
GuU4oCc79LQ0Px7OGQvsXvAr3STEDOxA4DHjpUkBmFW7zcDPcaaSCNCwbgE/9cwZ
7tZ1h2o8fdOJEy49DON+DtVhvbjlWw1KMqE5xISfXfcKD2GrmTtVqTaSKLfVgpvU
HHH7cFEhnCnmvLQS8LZVkPEj8vPzP/ssn2/uDSq6N0z6WCZZJ6reKA==
=G45x
-----END PGP SIGNATURE-----
Hi,
fixed.
Regards,
BenBE.
Am 25.06.2012 18:47, schrieb Carnë Draug:
> On 23 June 2012 22:43, Benny Baumann <BenBE1987@gmx.net> wrote:
>> Hi Carnë,
>>
>> I did quite some work for about 10 language files recently at the GPN12
>> in Kassel and also had a look at your language file there. I mostly made
>> language files compliant there and less had a deeper look into eachone's
>> highlighting, thus I'd suggest you grab a copy of the language file from
>> the SVN repository of GESHi or check out the highlighting at
>> http://qbnz.com/. If you find anything still wrong it'd be nice to get
>> some examples with those problems and a short description of what
>> exactly the correct highlighting should be.
>>
>> Best regards,
>> BenBE.
>
> Hi Ben
>
> I have have taken a look and didn't spot any problem. Thank you
> very much for you work.
>
> Just a small thing. It's a bit pedantic but we have just been informed
> by the elders that there should be no "/" between GNU and Octave, just
> a space (should be "GNU Octave" instead of "GNU/Octave"). Could you
> please make that change? This shows up on line 12 and line 44 of
> octave.php
>
> Thanks in advance,
> Carnë
>
Re: [GeSHi-devel] new language file GNU/Octave
On 23 June 2012 22:43, Benny Baumann <BenBE1987@gmx.net> wrote:
> Hi Carnë,
>
> I did quite some work for about 10 language files recently at the GPN12
> in Kassel and also had a look at your language file there. I mostly made
> language files compliant there and less had a deeper look into eachone's
> highlighting, thus I'd suggest you grab a copy of the language file from
> the SVN repository of GESHi or check out the highlighting at
> http://qbnz.com/. If you find anything still wrong it'd be nice to get
> some examples with those problems and a short description of what
> exactly the correct highlighting should be.
>
> Best regards,
> BenBE.
Hi Ben
I have have taken a look and didn't spot any problem. Thank you
very much for you work.
Just a small thing. It's a bit pedantic but we have just been informed
by the elders that there should be no "/" between GNU and Octave, just
a space (should be "GNU Octave" instead of "GNU/Octave"). Could you
please make that change? This shows up on line 12 and line 44 of
octave.php
Thanks in advance,
Carnë
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
geshi-devel mailing list
geshi-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geshi-devel
> Hi Carnë,
>
> I did quite some work for about 10 language files recently at the GPN12
> in Kassel and also had a look at your language file there. I mostly made
> language files compliant there and less had a deeper look into eachone's
> highlighting, thus I'd suggest you grab a copy of the language file from
> the SVN repository of GESHi or check out the highlighting at
> http://qbnz.com/. If you find anything still wrong it'd be nice to get
> some examples with those problems and a short description of what
> exactly the correct highlighting should be.
>
> Best regards,
> BenBE.
Hi Ben
I have have taken a look and didn't spot any problem. Thank you
very much for you work.
Just a small thing. It's a bit pedantic but we have just been informed
by the elders that there should be no "/" between GNU and Octave, just
a space (should be "GNU Octave" instead of "GNU/Octave"). Could you
please make that change? This shows up on line 12 and line 44 of
octave.php
Thanks in advance,
Carnë
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
geshi-devel mailing list
geshi-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geshi-devel
Re: DuckDuckgo and NetSurf
On Fri, Jun 22, 2012 at 03:20:09PM +0530, Prakash Swaminathan wrote:
> DuckDuckGo is a general search engine with instant answers, less
> spam/clutter and real privacy.
And good results usually :-)
> It looks like we are an option in NetSurf (
> http://source.netsurf-browser.org/trunk/netsurf/!NetSurf/Resources/SearchEngines?view=markup)
> and wanted to explore a revenue share partnership,
That's a very interesting question.
> Who do you recommend we speak with to start this conversation?
For now, you can continue to talk on this list; however if you require a little
more privacy, you could contact either the Netsurf Society Committee
<committee@netsurf-browser.org> or else the treasurer directly John-Mark Bell
<treasurer@netsurf-browser.org>
Thanks for thinking about this.
Daniel
Society Secretary
--
Daniel Silverstone http://www.netsurf-browser.org/
PGP mail accepted and encouraged. Key Id: 3CCE BABE 206C 3B69
> DuckDuckGo is a general search engine with instant answers, less
> spam/clutter and real privacy.
And good results usually :-)
> It looks like we are an option in NetSurf (
> http://source.netsurf-browser.org/trunk/netsurf/!NetSurf/Resources/SearchEngines?view=markup)
> and wanted to explore a revenue share partnership,
That's a very interesting question.
> Who do you recommend we speak with to start this conversation?
For now, you can continue to talk on this list; however if you require a little
more privacy, you could contact either the Netsurf Society Committee
<committee@netsurf-browser.org> or else the treasurer directly John-Mark Bell
<treasurer@netsurf-browser.org>
Thanks for thinking about this.
Daniel
Society Secretary
--
Daniel Silverstone http://www.netsurf-browser.org/
PGP mail accepted and encouraged. Key Id: 3CCE BABE 206C 3B69
Sunday, 24 June 2012
Re: [GeSHi-devel] new language file GNU/Octave
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iQEVAwUBT+bqRJw3120Y2Wc/AQKcUgf/XUOrfQUvlhWTBfvYZ/ECMnUZEEISsnaT
ZxFOkTh9qfkI7MYY5nDcixDMhv8cznRmCEfEtV7Ool07Zam9a7Arqzv1X/w411x+
Owcb7ZAfQmOvQqS26lMFh+rh8dKYXYFFr/WClj6/PBphymPCzysgD34nsAXhGgK3
j/raWQpunj/qF4iHJGTsFH/VjDlgxLPZVpHusD3YTmnZWF7g5t372bVr34tXTYvO
DG6BpUmRbibz0yI3SZRpBTdUmkyeL/tLHtI8DjJPthXHNt3u5ykp39b8VESwH0oC
C6HlnuksuH5Hucv2K8UrrdACCU8M0dtlBPzTjMGO40vE3G9f3SxoyQ==
=L1K/
-----END PGP SIGNATURE-----
Hi,
Am 24.06.2012 07:34, schrieb Juan Pablo Carbajal:
> Hi BenBE,
>
> Thank you for your answer. We will be checking against other files asap.
> A couple of extra questions:
> - Do you know when will this file made its way to Wikimedia?
Unfortunately not. They've been behind for years, but when the next
release comes I guess they might update again. I'm not sure when they
will though.
> - Do you know who to contact in Wikipedia/media to make them aware of
> the new files?
Usually contact the authors of the SyntaxHighlight_GeSHi extension and
ask them to forward the request. They should be aware of where this
should go.
>
> Thank you.
>
> JPi
Regards,
BenBE.
>
>
> On Sat, Jun 23, 2012 at 11:43 PM, Benny Baumann <BenBE1987@gmx.net> wrote:
>> Hi Carnë,
>>
>> I did quite some work for about 10 language files recently at the GPN12
>> in Kassel and also had a look at your language file there. I mostly made
>> language files compliant there and less had a deeper look into eachone's
>> highlighting, thus I'd suggest you grab a copy of the language file from
>> the SVN repository of GESHi or check out the highlighting at
>> http://qbnz.com/. If you find anything still wrong it'd be nice to get
>> some examples with those problems and a short description of what
>> exactly the correct highlighting should be.
>>
>> Best regards,
>> BenBE.
>>
>> Am 18.06.2012 19:06, schrieb Carnë Draug:
>>> On 30 May 2012 21:22, Benny Baumann <BenBE1987@gmx.net> wrote:
>>>> Hi,
>>>>
>>>> thank you for this language file.
>>>>
>>>> Am 28.05.2012 13:20, schrieb Carnë Draug:
>>>>> On 25 May 2012 17:37, Carnë Draug <carandraug+dev@gmail.com> wrote:
>>>>>> Hi everyone
>>>>>>
>>>>>> me and Juan Carbajal have wrote a language file to highlight
>>>>>> GNU/octave source code that is attached.
>>>>>>
>>>>>> There is only one problem that we could not fix with adding URLS. We
>>>>>> have 10 different groups on KEYWORDS, 5 of them with rules for URLs.
>>>>>> The rule is the same for all of them. However, 1 of them (the very
>>>>>> first) doesn't work.
>>>>>>
>>>>>> The following code:
>>>>>> uint32
>>>>>> cell
>>>>>>
>>>>>> creates
>>>>>> function/uint32.html">uint32
>>>>>> function/cell.html">cell
>>>>>>
>>>>>> with links for
>>>>>> http://octave.sourceforge.net/octave/%3Cspan%20class=
>>>>>> http://octave.sourceforge.net/octave/%3Cspan%20class=
>>>>>>
>>>>>> The really weird thing is that keywords from the other lists, even
>>>>>> though having the same style and URL rule, work normally.
>>>>>
>>>>> Hi everyone
>>>>>
>>>>> I managed to fix the problem on the file but I think it is also a bug
>>>>> with GeSHi. The problem is that one of the keywords (function) is also
>>>>> a word on the URL. The keyword function was on the element #4. The
>>>>> only words that were giving me a problem were on element #1. When I
>>>>> swapped those two, the problem went away. Still, this sounds like a
>>>>> bug to me.
>>>> Yes and no. The problem lies a bit in how the parser works internally.
>>>> Basically it's a quite sophisticated find&replace with some minor tweaks
>>>> to give priority to some things over others. While this works for most
>>>> things it inevitably produces the issue of "rehighlighting" the
>>>> generated code. This can usually be avoided by two means:
>>>> 1. Swapping the order of things so the offending keywords don't make it
>>>> into the code before they should be actually highlighted. That's what
>>>> swapping the groups did.
>>>>
>>>> 2. Making the rules which determine where a keyword is allowed more
>>>> strict than the defaults. This does not fix the problem of the word
>>>> being there but will usually be enough to avoid the already present word
>>>> in the URL being picked up.
>>>>>
>>>>> Another problem I noticed, shows up when one of the keywords is DOT,
>>>>> whcich will also break the URLs (since the actual dots are replaced by
>>>>> <DOT> and then highlighted. Again this will only happen for the
>>>>> elements that have smaller key # than the one with the keyword DOT). I
>>>>> noticed this since octave actually has a function `dot', and before I
>>>>> made the match case sensitive, this also broke the highlighting.
>>>> GeSHi uses the order of the declared keyword indices as the order in
>>>> which to highlight things. Thus if you define keyword groups with
>>>> indices 42,1,2,3,4 it will happyly highlight group 42 first even though
>>>> it numerically is last in the order.
>>>>>
>>>>> Should I report this bug somewhere? I do not know how to code PHP,
>>>>> fixing this is beyond my abilities.
>>>> Well, that's a known problem and is a problem with the way theparser
>>>> works (see above). There's also <PIPE which is the internal keyword for
>>>> the | character ;-)
>>>>>
>>>>> Anyway, please see attached the final version of the octave.php
>>>>> language file and I hope it's acceptable for inclusion on GeSHi. It
>>>>> passes on langcheck.php file amd we tried to leave useful comments on
>>>>> the file which should hopefully make clear what each option we made.
>>>> I'll have a look atit and I guess it will be available in the repository
>>>> soon.
>>>
>>> Hi Ben
>>>
>>> any news on this? Did you had time to look into it? If there is
>>> anything I can do to make this easier, please do let me know.
>>>
>>> Thank you,
>>> Carnë
>>>
>>
>>
>
>
>
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iQEVAwUBT+bqRJw3120Y2Wc/AQKcUgf/XUOrfQUvlhWTBfvYZ/ECMnUZEEISsnaT
ZxFOkTh9qfkI7MYY5nDcixDMhv8cznRmCEfEtV7Ool07Zam9a7Arqzv1X/w411x+
Owcb7ZAfQmOvQqS26lMFh+rh8dKYXYFFr/WClj6/PBphymPCzysgD34nsAXhGgK3
j/raWQpunj/qF4iHJGTsFH/VjDlgxLPZVpHusD3YTmnZWF7g5t372bVr34tXTYvO
DG6BpUmRbibz0yI3SZRpBTdUmkyeL/tLHtI8DjJPthXHNt3u5ykp39b8VESwH0oC
C6HlnuksuH5Hucv2K8UrrdACCU8M0dtlBPzTjMGO40vE3G9f3SxoyQ==
=L1K/
-----END PGP SIGNATURE-----
Hi,
Am 24.06.2012 07:34, schrieb Juan Pablo Carbajal:
> Hi BenBE,
>
> Thank you for your answer. We will be checking against other files asap.
> A couple of extra questions:
> - Do you know when will this file made its way to Wikimedia?
Unfortunately not. They've been behind for years, but when the next
release comes I guess they might update again. I'm not sure when they
will though.
> - Do you know who to contact in Wikipedia/media to make them aware of
> the new files?
Usually contact the authors of the SyntaxHighlight_GeSHi extension and
ask them to forward the request. They should be aware of where this
should go.
>
> Thank you.
>
> JPi
Regards,
BenBE.
>
>
> On Sat, Jun 23, 2012 at 11:43 PM, Benny Baumann <BenBE1987@gmx.net> wrote:
>> Hi Carnë,
>>
>> I did quite some work for about 10 language files recently at the GPN12
>> in Kassel and also had a look at your language file there. I mostly made
>> language files compliant there and less had a deeper look into eachone's
>> highlighting, thus I'd suggest you grab a copy of the language file from
>> the SVN repository of GESHi or check out the highlighting at
>> http://qbnz.com/. If you find anything still wrong it'd be nice to get
>> some examples with those problems and a short description of what
>> exactly the correct highlighting should be.
>>
>> Best regards,
>> BenBE.
>>
>> Am 18.06.2012 19:06, schrieb Carnë Draug:
>>> On 30 May 2012 21:22, Benny Baumann <BenBE1987@gmx.net> wrote:
>>>> Hi,
>>>>
>>>> thank you for this language file.
>>>>
>>>> Am 28.05.2012 13:20, schrieb Carnë Draug:
>>>>> On 25 May 2012 17:37, Carnë Draug <carandraug+dev@gmail.com> wrote:
>>>>>> Hi everyone
>>>>>>
>>>>>> me and Juan Carbajal have wrote a language file to highlight
>>>>>> GNU/octave source code that is attached.
>>>>>>
>>>>>> There is only one problem that we could not fix with adding URLS. We
>>>>>> have 10 different groups on KEYWORDS, 5 of them with rules for URLs.
>>>>>> The rule is the same for all of them. However, 1 of them (the very
>>>>>> first) doesn't work.
>>>>>>
>>>>>> The following code:
>>>>>> uint32
>>>>>> cell
>>>>>>
>>>>>> creates
>>>>>> function/uint32.html">uint32
>>>>>> function/cell.html">cell
>>>>>>
>>>>>> with links for
>>>>>> http://octave.sourceforge.net/octave/%3Cspan%20class=
>>>>>> http://octave.sourceforge.net/octave/%3Cspan%20class=
>>>>>>
>>>>>> The really weird thing is that keywords from the other lists, even
>>>>>> though having the same style and URL rule, work normally.
>>>>>
>>>>> Hi everyone
>>>>>
>>>>> I managed to fix the problem on the file but I think it is also a bug
>>>>> with GeSHi. The problem is that one of the keywords (function) is also
>>>>> a word on the URL. The keyword function was on the element #4. The
>>>>> only words that were giving me a problem were on element #1. When I
>>>>> swapped those two, the problem went away. Still, this sounds like a
>>>>> bug to me.
>>>> Yes and no. The problem lies a bit in how the parser works internally.
>>>> Basically it's a quite sophisticated find&replace with some minor tweaks
>>>> to give priority to some things over others. While this works for most
>>>> things it inevitably produces the issue of "rehighlighting" the
>>>> generated code. This can usually be avoided by two means:
>>>> 1. Swapping the order of things so the offending keywords don't make it
>>>> into the code before they should be actually highlighted. That's what
>>>> swapping the groups did.
>>>>
>>>> 2. Making the rules which determine where a keyword is allowed more
>>>> strict than the defaults. This does not fix the problem of the word
>>>> being there but will usually be enough to avoid the already present word
>>>> in the URL being picked up.
>>>>>
>>>>> Another problem I noticed, shows up when one of the keywords is DOT,
>>>>> whcich will also break the URLs (since the actual dots are replaced by
>>>>> <DOT> and then highlighted. Again this will only happen for the
>>>>> elements that have smaller key # than the one with the keyword DOT). I
>>>>> noticed this since octave actually has a function `dot', and before I
>>>>> made the match case sensitive, this also broke the highlighting.
>>>> GeSHi uses the order of the declared keyword indices as the order in
>>>> which to highlight things. Thus if you define keyword groups with
>>>> indices 42,1,2,3,4 it will happyly highlight group 42 first even though
>>>> it numerically is last in the order.
>>>>>
>>>>> Should I report this bug somewhere? I do not know how to code PHP,
>>>>> fixing this is beyond my abilities.
>>>> Well, that's a known problem and is a problem with the way theparser
>>>> works (see above). There's also <PIPE which is the internal keyword for
>>>> the | character ;-)
>>>>>
>>>>> Anyway, please see attached the final version of the octave.php
>>>>> language file and I hope it's acceptable for inclusion on GeSHi. It
>>>>> passes on langcheck.php file amd we tried to leave useful comments on
>>>>> the file which should hopefully make clear what each option we made.
>>>> I'll have a look atit and I guess it will be available in the repository
>>>> soon.
>>>
>>> Hi Ben
>>>
>>> any news on this? Did you had time to look into it? If there is
>>> anything I can do to make this easier, please do let me know.
>>>
>>> Thank you,
>>> Carnë
>>>
>>
>>
>
>
>
Saturday, 23 June 2012
Re: [GeSHi-devel] new language file GNU/Octave
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iQEVAwUBT+Y4aJw3120Y2Wc/AQKhnQgAiecUHsEmhrZOaDdm3IUg1UoiU1brnGw8
mG21x926GVSkgAdI7nayRUbloa9v5WA5nNnlUDYtJyRuvMZuTYarVeQGjG8Xn2/5
51EbvoTjqAuO9/9NnJ0lBBIACCtBpUrAQlusw3Gbjkn1KZa3sSUs8uJ8eXqbmcTU
H8qkQ6hUk3gztM3RTf4p6Qlgr1EmR09+Z9KqzSbgynMtCLellTrqffRXLcvJKyxq
DF9NEItsh3p2LMVqRfzYM3QtxHn/CTtb7PTwcO4+urjOOOruJnJSbhdej9byWW6L
5Ah4kxg4g1fm4dTFRdOGghl0Odkpwy+BlRbRKbBEtGivzg/dhlcpSA==
=Y91n
-----END PGP SIGNATURE-----
Hi Carnë,
I did quite some work for about 10 language files recently at the GPN12
in Kassel and also had a look at your language file there. I mostly made
language files compliant there and less had a deeper look into eachone's
highlighting, thus I'd suggest you grab a copy of the language file from
the SVN repository of GESHi or check out the highlighting at
http://qbnz.com/. If you find anything still wrong it'd be nice to get
some examples with those problems and a short description of what
exactly the correct highlighting should be.
Best regards,
BenBE.
Am 18.06.2012 19:06, schrieb Carnë Draug:
> On 30 May 2012 21:22, Benny Baumann <BenBE1987@gmx.net> wrote:
>> Hi,
>>
>> thank you for this language file.
>>
>> Am 28.05.2012 13:20, schrieb Carnë Draug:
>>> On 25 May 2012 17:37, Carnë Draug <carandraug+dev@gmail.com> wrote:
>>>> Hi everyone
>>>>
>>>> me and Juan Carbajal have wrote a language file to highlight
>>>> GNU/octave source code that is attached.
>>>>
>>>> There is only one problem that we could not fix with adding URLS. We
>>>> have 10 different groups on KEYWORDS, 5 of them with rules for URLs.
>>>> The rule is the same for all of them. However, 1 of them (the very
>>>> first) doesn't work.
>>>>
>>>> The following code:
>>>> uint32
>>>> cell
>>>>
>>>> creates
>>>> function/uint32.html">uint32
>>>> function/cell.html">cell
>>>>
>>>> with links for
>>>> http://octave.sourceforge.net/octave/%3Cspan%20class=
>>>> http://octave.sourceforge.net/octave/%3Cspan%20class=
>>>>
>>>> The really weird thing is that keywords from the other lists, even
>>>> though having the same style and URL rule, work normally.
>>>
>>> Hi everyone
>>>
>>> I managed to fix the problem on the file but I think it is also a bug
>>> with GeSHi. The problem is that one of the keywords (function) is also
>>> a word on the URL. The keyword function was on the element #4. The
>>> only words that were giving me a problem were on element #1. When I
>>> swapped those two, the problem went away. Still, this sounds like a
>>> bug to me.
>> Yes and no. The problem lies a bit in how the parser works internally.
>> Basically it's a quite sophisticated find&replace with some minor tweaks
>> to give priority to some things over others. While this works for most
>> things it inevitably produces the issue of "rehighlighting" the
>> generated code. This can usually be avoided by two means:
>> 1. Swapping the order of things so the offending keywords don't make it
>> into the code before they should be actually highlighted. That's what
>> swapping the groups did.
>>
>> 2. Making the rules which determine where a keyword is allowed more
>> strict than the defaults. This does not fix the problem of the word
>> being there but will usually be enough to avoid the already present word
>> in the URL being picked up.
>>>
>>> Another problem I noticed, shows up when one of the keywords is DOT,
>>> whcich will also break the URLs (since the actual dots are replaced by
>>> <DOT> and then highlighted. Again this will only happen for the
>>> elements that have smaller key # than the one with the keyword DOT). I
>>> noticed this since octave actually has a function `dot', and before I
>>> made the match case sensitive, this also broke the highlighting.
>> GeSHi uses the order of the declared keyword indices as the order in
>> which to highlight things. Thus if you define keyword groups with
>> indices 42,1,2,3,4 it will happyly highlight group 42 first even though
>> it numerically is last in the order.
>>>
>>> Should I report this bug somewhere? I do not know how to code PHP,
>>> fixing this is beyond my abilities.
>> Well, that's a known problem and is a problem with the way theparser
>> works (see above). There's also <PIPE which is the internal keyword for
>> the | character ;-)
>>>
>>> Anyway, please see attached the final version of the octave.php
>>> language file and I hope it's acceptable for inclusion on GeSHi. It
>>> passes on langcheck.php file amd we tried to leave useful comments on
>>> the file which should hopefully make clear what each option we made.
>> I'll have a look atit and I guess it will be available in the repository
>> soon.
>
> Hi Ben
>
> any news on this? Did you had time to look into it? If there is
> anything I can do to make this easier, please do let me know.
>
> Thank you,
> Carnë
>
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iQEVAwUBT+Y4aJw3120Y2Wc/AQKhnQgAiecUHsEmhrZOaDdm3IUg1UoiU1brnGw8
mG21x926GVSkgAdI7nayRUbloa9v5WA5nNnlUDYtJyRuvMZuTYarVeQGjG8Xn2/5
51EbvoTjqAuO9/9NnJ0lBBIACCtBpUrAQlusw3Gbjkn1KZa3sSUs8uJ8eXqbmcTU
H8qkQ6hUk3gztM3RTf4p6Qlgr1EmR09+Z9KqzSbgynMtCLellTrqffRXLcvJKyxq
DF9NEItsh3p2LMVqRfzYM3QtxHn/CTtb7PTwcO4+urjOOOruJnJSbhdej9byWW6L
5Ah4kxg4g1fm4dTFRdOGghl0Odkpwy+BlRbRKbBEtGivzg/dhlcpSA==
=Y91n
-----END PGP SIGNATURE-----
Hi Carnë,
I did quite some work for about 10 language files recently at the GPN12
in Kassel and also had a look at your language file there. I mostly made
language files compliant there and less had a deeper look into eachone's
highlighting, thus I'd suggest you grab a copy of the language file from
the SVN repository of GESHi or check out the highlighting at
http://qbnz.com/. If you find anything still wrong it'd be nice to get
some examples with those problems and a short description of what
exactly the correct highlighting should be.
Best regards,
BenBE.
Am 18.06.2012 19:06, schrieb Carnë Draug:
> On 30 May 2012 21:22, Benny Baumann <BenBE1987@gmx.net> wrote:
>> Hi,
>>
>> thank you for this language file.
>>
>> Am 28.05.2012 13:20, schrieb Carnë Draug:
>>> On 25 May 2012 17:37, Carnë Draug <carandraug+dev@gmail.com> wrote:
>>>> Hi everyone
>>>>
>>>> me and Juan Carbajal have wrote a language file to highlight
>>>> GNU/octave source code that is attached.
>>>>
>>>> There is only one problem that we could not fix with adding URLS. We
>>>> have 10 different groups on KEYWORDS, 5 of them with rules for URLs.
>>>> The rule is the same for all of them. However, 1 of them (the very
>>>> first) doesn't work.
>>>>
>>>> The following code:
>>>> uint32
>>>> cell
>>>>
>>>> creates
>>>> function/uint32.html">uint32
>>>> function/cell.html">cell
>>>>
>>>> with links for
>>>> http://octave.sourceforge.net/octave/%3Cspan%20class=
>>>> http://octave.sourceforge.net/octave/%3Cspan%20class=
>>>>
>>>> The really weird thing is that keywords from the other lists, even
>>>> though having the same style and URL rule, work normally.
>>>
>>> Hi everyone
>>>
>>> I managed to fix the problem on the file but I think it is also a bug
>>> with GeSHi. The problem is that one of the keywords (function) is also
>>> a word on the URL. The keyword function was on the element #4. The
>>> only words that were giving me a problem were on element #1. When I
>>> swapped those two, the problem went away. Still, this sounds like a
>>> bug to me.
>> Yes and no. The problem lies a bit in how the parser works internally.
>> Basically it's a quite sophisticated find&replace with some minor tweaks
>> to give priority to some things over others. While this works for most
>> things it inevitably produces the issue of "rehighlighting" the
>> generated code. This can usually be avoided by two means:
>> 1. Swapping the order of things so the offending keywords don't make it
>> into the code before they should be actually highlighted. That's what
>> swapping the groups did.
>>
>> 2. Making the rules which determine where a keyword is allowed more
>> strict than the defaults. This does not fix the problem of the word
>> being there but will usually be enough to avoid the already present word
>> in the URL being picked up.
>>>
>>> Another problem I noticed, shows up when one of the keywords is DOT,
>>> whcich will also break the URLs (since the actual dots are replaced by
>>> <DOT> and then highlighted. Again this will only happen for the
>>> elements that have smaller key # than the one with the keyword DOT). I
>>> noticed this since octave actually has a function `dot', and before I
>>> made the match case sensitive, this also broke the highlighting.
>> GeSHi uses the order of the declared keyword indices as the order in
>> which to highlight things. Thus if you define keyword groups with
>> indices 42,1,2,3,4 it will happyly highlight group 42 first even though
>> it numerically is last in the order.
>>>
>>> Should I report this bug somewhere? I do not know how to code PHP,
>>> fixing this is beyond my abilities.
>> Well, that's a known problem and is a problem with the way theparser
>> works (see above). There's also <PIPE which is the internal keyword for
>> the | character ;-)
>>>
>>> Anyway, please see attached the final version of the octave.php
>>> language file and I hope it's acceptable for inclusion on GeSHi. It
>>> passes on langcheck.php file amd we tried to leave useful comments on
>>> the file which should hopefully make clear what each option we made.
>> I'll have a look atit and I guess it will be available in the repository
>> soon.
>
> Hi Ben
>
> any news on this? Did you had time to look into it? If there is
> anything I can do to make this easier, please do let me know.
>
> Thank you,
> Carnë
>
Friday, 22 June 2012
Re: Patch: desktop/textarea.c, add text fragment select on double click
Index: textarea.c
===================================================================
--- textarea.c (Revision 13970)
+++ textarea.c (Arbeitskopie)
@@ -121,6 +121,7 @@
static bool textarea_set_caret_xy(struct text_area *ta, int x, int y);
static bool textarea_scroll_visible(struct text_area *ta);
static bool textarea_select(struct text_area *ta, int c_start, int c_end);
+static bool textarea_select_fragment (struct text_area *ta);
static void textarea_normalise_text(struct text_area *ta,
unsigned int b_start, unsigned int b_len);
@@ -1335,6 +1336,12 @@
ta->vis_height);
}
}
+ else if (mouse & BROWSER_MOUSE_DOUBLE_CLICK) {
+ if (!(ta->flags & TEXTAREA_READONLY)) {
+ textarea_set_caret_xy(ta, x, y);
+ return textarea_select_fragment(ta);
+ }
+ }
else if (mouse & BROWSER_MOUSE_DRAG_1) {
ta->drag_start_char = textarea_get_xy_offset(ta, x, y);
if (!(ta->flags & TEXTAREA_READONLY))
@@ -1406,6 +1413,57 @@
/**
+ * Selects a text fragment, relative to current caret position.
+ *
+ * \param ta Text area
+ * \return true on success false otherwise
+ */
+static bool textarea_select_fragment(struct text_area * ta)
+{
+ int caret_pos, sel_start=0, sel_end=0, index;
+ size_t b_start, b_end;
+
+ /* Fragment seperators must be suitable for URLs and ordinary text */
+ static const char * sep = " /:.\r\n";
+
+ caret_pos = textarea_get_caret(ta);
+ if (caret_pos < 0) {
+ return(false);
+ }
+
+ /* Compute byte offset of caret position */
+ for (b_start = 0, index = 0; index<caret_pos;
+ b_start = utf8_next(ta->text, ta->text_len,
+ b_start),
+ index++) {
+ /* Cache the character offset of the last separator */
+ if (strchr(sep, ta->text[b_start]) != NULL) {
+ /* Add one to start to skip over separator */
+ sel_start = index+1;
+ }
+ }
+
+ /* Search for next separator, if any */
+ for (b_end = b_start; b_end < ta->text_len;
+ b_end = utf8_next(ta->text, ta->text_len,
+ b_end),
+ index++) {
+ if (strchr(sep, ta->text[b_end]) != NULL) {
+ sel_end = index;
+ break;
+ }
+ }
+
+ if (sel_start < sel_end) {
+ textarea_select(ta, sel_start, sel_end);
+ return true;
+ }
+
+ return(false);
+}
+
+
+/**
* Normalises any line endings within the text, replacing CRLF or CR with
* LF as necessary. If the textarea is single line, then all linebreaks are
* converted into spaces.
>Am Freitag, den 22.06.2012, 00:33 +0200 schrieb John-Mark Bell
> <jmb@netsurf-browser.org>:
> I don't quite understand the rationale behind the separator
> characters
> you have chosen. Could you explain them?
It's just what came to my mind when thinking about text element
separators.
Also I don't wanted to have so much characters because then strchr()
takes a
bit longer.
> The textarea_select_fragment function looks wrong to me. There seems
> to
> be some confusion between character indices and byte offsets.
Attached is a slightly adjusted version.
Greets,
Ole
===================================================================
--- textarea.c (Revision 13970)
+++ textarea.c (Arbeitskopie)
@@ -121,6 +121,7 @@
static bool textarea_set_caret_xy(struct text_area *ta, int x, int y);
static bool textarea_scroll_visible(struct text_area *ta);
static bool textarea_select(struct text_area *ta, int c_start, int c_end);
+static bool textarea_select_fragment (struct text_area *ta);
static void textarea_normalise_text(struct text_area *ta,
unsigned int b_start, unsigned int b_len);
@@ -1335,6 +1336,12 @@
ta->vis_height);
}
}
+ else if (mouse & BROWSER_MOUSE_DOUBLE_CLICK) {
+ if (!(ta->flags & TEXTAREA_READONLY)) {
+ textarea_set_caret_xy(ta, x, y);
+ return textarea_select_fragment(ta);
+ }
+ }
else if (mouse & BROWSER_MOUSE_DRAG_1) {
ta->drag_start_char = textarea_get_xy_offset(ta, x, y);
if (!(ta->flags & TEXTAREA_READONLY))
@@ -1406,6 +1413,57 @@
/**
+ * Selects a text fragment, relative to current caret position.
+ *
+ * \param ta Text area
+ * \return true on success false otherwise
+ */
+static bool textarea_select_fragment(struct text_area * ta)
+{
+ int caret_pos, sel_start=0, sel_end=0, index;
+ size_t b_start, b_end;
+
+ /* Fragment seperators must be suitable for URLs and ordinary text */
+ static const char * sep = " /:.\r\n";
+
+ caret_pos = textarea_get_caret(ta);
+ if (caret_pos < 0) {
+ return(false);
+ }
+
+ /* Compute byte offset of caret position */
+ for (b_start = 0, index = 0; index<caret_pos;
+ b_start = utf8_next(ta->text, ta->text_len,
+ b_start),
+ index++) {
+ /* Cache the character offset of the last separator */
+ if (strchr(sep, ta->text[b_start]) != NULL) {
+ /* Add one to start to skip over separator */
+ sel_start = index+1;
+ }
+ }
+
+ /* Search for next separator, if any */
+ for (b_end = b_start; b_end < ta->text_len;
+ b_end = utf8_next(ta->text, ta->text_len,
+ b_end),
+ index++) {
+ if (strchr(sep, ta->text[b_end]) != NULL) {
+ sel_end = index;
+ break;
+ }
+ }
+
+ if (sel_start < sel_end) {
+ textarea_select(ta, sel_start, sel_end);
+ return true;
+ }
+
+ return(false);
+}
+
+
+/**
* Normalises any line endings within the text, replacing CRLF or CR with
* LF as necessary. If the textarea is single line, then all linebreaks are
* converted into spaces.
>Am Freitag, den 22.06.2012, 00:33 +0200 schrieb John-Mark Bell
> <jmb@netsurf-browser.org>:
> I don't quite understand the rationale behind the separator
> characters
> you have chosen. Could you explain them?
It's just what came to my mind when thinking about text element
separators.
Also I don't wanted to have so much characters because then strchr()
takes a
bit longer.
> The textarea_select_fragment function looks wrong to me. There seems
> to
> be some confusion between character indices and byte offsets.
Attached is a slightly adjusted version.
Greets,
Ole
DuckDuckgo and NetSurf
Hello,
It looks like we are an option in NetSurf (http://source.netsurf-browser.org/trunk/netsurf/!NetSurf/Resources/SearchEngines?view=markup) and wanted to explore a revenue share partnership,
Who do you recommend we speak with to start this conversation?
Kind regards,
Prakash
--
Prakash Swaminathan https://duckduckgo.com/
Thursday, 21 June 2012
Re: Patch: desktop/textarea.c, add text fragment select on double click
On Thu, 2012-06-21 at 22:34 +0200, Ole wrote:
> Am Donnerstag, den 21.06.2012, 21:17 +0200 schrieb Ole
> <ole@monochrom.net>:
>
>
> > Attached is a patch that hopefully has no more style glitches.
> > If there is more, please let me know which style rule is broken.
I don't quite understand the rationale behind the separator characters
you have chosen. Could you explain them?
The textarea_select_fragment function looks wrong to me. There seems to
be some confusion between character indices and byte offsets.
The following should work better:
static bool textarea_select_fragment(struct text_area *ta)
{
static const char *sep = "/.\r\n";
int c_caret_pos, index;
size_t b_start, b_end;
int c_sel_start = 0, c_sel_end = ta->text_len;
/* Get character index of caret */
c_caret_pos = textarea_get_caret(ta);
if (c_caret_pos < 0) {
return false;
}
/* Compute byte offset of caret position */
for (b_start = 0, index = 0; c_caret_pos-- > 0;
b_start = utf8_next(ta->text, ta->text_len,
b_start),
index++) {
/* Cache the character offset of the last separator */
if (strchr(sep, ta->text[b_start]) != NULL) {
c_sel_start = index;
}
}
/* Search for next separator, if any */
for (b_end = b_start; b_end < ta->text_len;
b_end = utf8_next(ta->text, ta->text_len,
b_end),
index++) {
if (strchr(sep, ta->text[b_end]) != NULL) {
c_sel_end = index;
break;
}
}
/* Add one to start to skip over separator */
if (c_sel_start + 1 < c_sel_end) {
textarea_select(ta, c_sel_start + 1, c_sel_end);
return true;
}
return false;
}
J.
> Am Donnerstag, den 21.06.2012, 21:17 +0200 schrieb Ole
> <ole@monochrom.net>:
>
>
> > Attached is a patch that hopefully has no more style glitches.
> > If there is more, please let me know which style rule is broken.
I don't quite understand the rationale behind the separator characters
you have chosen. Could you explain them?
The textarea_select_fragment function looks wrong to me. There seems to
be some confusion between character indices and byte offsets.
The following should work better:
static bool textarea_select_fragment(struct text_area *ta)
{
static const char *sep = "/.\r\n";
int c_caret_pos, index;
size_t b_start, b_end;
int c_sel_start = 0, c_sel_end = ta->text_len;
/* Get character index of caret */
c_caret_pos = textarea_get_caret(ta);
if (c_caret_pos < 0) {
return false;
}
/* Compute byte offset of caret position */
for (b_start = 0, index = 0; c_caret_pos-- > 0;
b_start = utf8_next(ta->text, ta->text_len,
b_start),
index++) {
/* Cache the character offset of the last separator */
if (strchr(sep, ta->text[b_start]) != NULL) {
c_sel_start = index;
}
}
/* Search for next separator, if any */
for (b_end = b_start; b_end < ta->text_len;
b_end = utf8_next(ta->text, ta->text_len,
b_end),
index++) {
if (strchr(sep, ta->text[b_end]) != NULL) {
c_sel_end = index;
break;
}
}
/* Add one to start to skip over separator */
if (c_sel_start + 1 < c_sel_end) {
textarea_select(ta, c_sel_start + 1, c_sel_end);
return true;
}
return false;
}
J.
Re: Patch: desktop/textarea.c, add text fragment select on double click
Index: textarea.c
===================================================================
--- textarea.c (Revision 13970)
+++ textarea.c (Arbeitskopie)
@@ -121,6 +121,7 @@
static bool textarea_set_caret_xy(struct text_area *ta, int x, int y);
static bool textarea_scroll_visible(struct text_area *ta);
static bool textarea_select(struct text_area *ta, int c_start, int c_end);
+static bool textarea_select_fragment (struct text_area *ta);
static void textarea_normalise_text(struct text_area *ta,
unsigned int b_start, unsigned int b_len);
@@ -1335,6 +1336,12 @@
ta->vis_height);
}
}
+ else if ( mouse & BROWSER_MOUSE_DOUBLE_CLICK ) {
+ if ( !(ta->flags & TEXTAREA_READONLY) ){
+ textarea_set_caret_xy(ta, x, y);
+ return textarea_select_fragment(ta);
+ }
+ }
else if (mouse & BROWSER_MOUSE_DRAG_1) {
ta->drag_start_char = textarea_get_xy_offset(ta, x, y);
if (!(ta->flags & TEXTAREA_READONLY))
@@ -1406,6 +1413,47 @@
/**
+ * Selects a text fragment, relative to current caret position.
+ *
+ * \param ta Text area
+ * \return true on success false otherwise
+ */
+static bool textarea_select_fragment(struct text_area * ta)
+{
+ int c_pos, start_pos, end_pos;
+ static const char * sep = "/.\r\n";
+
+ c_pos = textarea_get_caret(ta);
+ if (c_pos < 0) {
+ return(false);
+ }
+
+ start_pos = c_pos;
+ while (start_pos > 0) {
+ if (strchr(sep, ta->text[start_pos]) != NULL) {
+ start_pos++;
+ break;
+ }
+ start_pos--;
+ }
+
+ end_pos = c_pos;
+ while (end_pos < (int)ta->text_len) {
+ if (strchr(sep, ta->text[end_pos]) != NULL) {
+ break;
+ }
+ end_pos++;
+ }
+
+ if (start_pos < end_pos) {
+ textarea_select(ta, start_pos, end_pos);
+ return(true);
+ }
+
+ return(false);
+}
+
+/**
* Normalises any line endings within the text, replacing CRLF or CR with
* LF as necessary. If the textarea is single line, then all linebreaks are
* converted into spaces.
Am Donnerstag, den 21.06.2012, 21:17 +0200 schrieb Ole
<ole@monochrom.net>:
> Attached is a patch that hopefully has no more style glitches.
> If there is more, please let me know which style rule is broken.
I'm very sorry, there were still formatting errors. The next time
that I will supply a patch to the netsurf source files, I will not
overlook the formatting errors. Thanks.
Greets,
Ole
===================================================================
--- textarea.c (Revision 13970)
+++ textarea.c (Arbeitskopie)
@@ -121,6 +121,7 @@
static bool textarea_set_caret_xy(struct text_area *ta, int x, int y);
static bool textarea_scroll_visible(struct text_area *ta);
static bool textarea_select(struct text_area *ta, int c_start, int c_end);
+static bool textarea_select_fragment (struct text_area *ta);
static void textarea_normalise_text(struct text_area *ta,
unsigned int b_start, unsigned int b_len);
@@ -1335,6 +1336,12 @@
ta->vis_height);
}
}
+ else if ( mouse & BROWSER_MOUSE_DOUBLE_CLICK ) {
+ if ( !(ta->flags & TEXTAREA_READONLY) ){
+ textarea_set_caret_xy(ta, x, y);
+ return textarea_select_fragment(ta);
+ }
+ }
else if (mouse & BROWSER_MOUSE_DRAG_1) {
ta->drag_start_char = textarea_get_xy_offset(ta, x, y);
if (!(ta->flags & TEXTAREA_READONLY))
@@ -1406,6 +1413,47 @@
/**
+ * Selects a text fragment, relative to current caret position.
+ *
+ * \param ta Text area
+ * \return true on success false otherwise
+ */
+static bool textarea_select_fragment(struct text_area * ta)
+{
+ int c_pos, start_pos, end_pos;
+ static const char * sep = "/.\r\n";
+
+ c_pos = textarea_get_caret(ta);
+ if (c_pos < 0) {
+ return(false);
+ }
+
+ start_pos = c_pos;
+ while (start_pos > 0) {
+ if (strchr(sep, ta->text[start_pos]) != NULL) {
+ start_pos++;
+ break;
+ }
+ start_pos--;
+ }
+
+ end_pos = c_pos;
+ while (end_pos < (int)ta->text_len) {
+ if (strchr(sep, ta->text[end_pos]) != NULL) {
+ break;
+ }
+ end_pos++;
+ }
+
+ if (start_pos < end_pos) {
+ textarea_select(ta, start_pos, end_pos);
+ return(true);
+ }
+
+ return(false);
+}
+
+/**
* Normalises any line endings within the text, replacing CRLF or CR with
* LF as necessary. If the textarea is single line, then all linebreaks are
* converted into spaces.
Am Donnerstag, den 21.06.2012, 21:17 +0200 schrieb Ole
<ole@monochrom.net>:
> Attached is a patch that hopefully has no more style glitches.
> If there is more, please let me know which style rule is broken.
I'm very sorry, there were still formatting errors. The next time
that I will supply a patch to the netsurf source files, I will not
overlook the formatting errors. Thanks.
Greets,
Ole
Re: Patch: desktop/textarea.c, add text fragment select on double click
Index: textarea.c
===================================================================
--- textarea.c (Revision 13970)
+++ textarea.c (Arbeitskopie)
@@ -121,6 +121,7 @@
static bool textarea_set_caret_xy(struct text_area *ta, int x, int y);
static bool textarea_scroll_visible(struct text_area *ta);
static bool textarea_select(struct text_area *ta, int c_start, int c_end);
+static bool textarea_select_fragment (struct text_area *ta);
static void textarea_normalise_text(struct text_area *ta,
unsigned int b_start, unsigned int b_len);
@@ -1335,6 +1336,12 @@
ta->vis_height);
}
}
+ else if( mouse & BROWSER_MOUSE_DOUBLE_CLICK ){
+ if ( !(ta->flags & TEXTAREA_READONLY) ){
+ textarea_set_caret_xy( ta, x, y );
+ return textarea_select_fragment( ta );
+ }
+ }
else if (mouse & BROWSER_MOUSE_DRAG_1) {
ta->drag_start_char = textarea_get_xy_offset(ta, x, y);
if (!(ta->flags & TEXTAREA_READONLY))
@@ -1406,6 +1413,47 @@
/**
+ * Selects a text fragment, relative to current caret position.
+ *
+ * \param ta Text area
+ * \return true on success false otherwise
+ */
+static bool textarea_select_fragment(struct text_area * ta)
+{
+ int c_pos, start_pos, end_pos;
+ static const char * sep = "/.\r\n";
+
+ c_pos = textarea_get_caret(ta);
+ if( c_pos < 0 ){
+ return(false);
+ }
+
+ start_pos = c_pos;
+ while (start_pos > 0 ){
+ if(strchr(sep, ta->text[start_pos]) != NULL){
+ start_pos++;
+ break;
+ }
+ start_pos--;
+ }
+
+ end_pos = c_pos;
+ while (end_pos < (int)ta->text_len){
+ if(strchr(sep, ta->text[end_pos]) != NULL){
+ break;
+ }
+ end_pos++;
+ }
+
+ if(start_pos < end_pos){
+ textarea_select(ta, start_pos, end_pos);
+ return(true);
+ }
+
+ return(false);
+}
+
+/**
* Normalises any line endings within the text, replacing CRLF or CR with
* LF as necessary. If the textarea is single line, then all linebreaks are
* converted into spaces.
Am Donnerstag, den 21.06.2012, 12:25 +0200 schrieb Rob Kendrick
<rjek@netsurf-browser.org>:
> http://www.netsurf-browser.org/developers/StyleGuide.pdf
>
> B.
Attached is a patch that hopefully has no more style glitches.
If there is more, please let me know which style rule is broken.
Greets,
Ole
===================================================================
--- textarea.c (Revision 13970)
+++ textarea.c (Arbeitskopie)
@@ -121,6 +121,7 @@
static bool textarea_set_caret_xy(struct text_area *ta, int x, int y);
static bool textarea_scroll_visible(struct text_area *ta);
static bool textarea_select(struct text_area *ta, int c_start, int c_end);
+static bool textarea_select_fragment (struct text_area *ta);
static void textarea_normalise_text(struct text_area *ta,
unsigned int b_start, unsigned int b_len);
@@ -1335,6 +1336,12 @@
ta->vis_height);
}
}
+ else if( mouse & BROWSER_MOUSE_DOUBLE_CLICK ){
+ if ( !(ta->flags & TEXTAREA_READONLY) ){
+ textarea_set_caret_xy( ta, x, y );
+ return textarea_select_fragment( ta );
+ }
+ }
else if (mouse & BROWSER_MOUSE_DRAG_1) {
ta->drag_start_char = textarea_get_xy_offset(ta, x, y);
if (!(ta->flags & TEXTAREA_READONLY))
@@ -1406,6 +1413,47 @@
/**
+ * Selects a text fragment, relative to current caret position.
+ *
+ * \param ta Text area
+ * \return true on success false otherwise
+ */
+static bool textarea_select_fragment(struct text_area * ta)
+{
+ int c_pos, start_pos, end_pos;
+ static const char * sep = "/.\r\n";
+
+ c_pos = textarea_get_caret(ta);
+ if( c_pos < 0 ){
+ return(false);
+ }
+
+ start_pos = c_pos;
+ while (start_pos > 0 ){
+ if(strchr(sep, ta->text[start_pos]) != NULL){
+ start_pos++;
+ break;
+ }
+ start_pos--;
+ }
+
+ end_pos = c_pos;
+ while (end_pos < (int)ta->text_len){
+ if(strchr(sep, ta->text[end_pos]) != NULL){
+ break;
+ }
+ end_pos++;
+ }
+
+ if(start_pos < end_pos){
+ textarea_select(ta, start_pos, end_pos);
+ return(true);
+ }
+
+ return(false);
+}
+
+/**
* Normalises any line endings within the text, replacing CRLF or CR with
* LF as necessary. If the textarea is single line, then all linebreaks are
* converted into spaces.
Am Donnerstag, den 21.06.2012, 12:25 +0200 schrieb Rob Kendrick
<rjek@netsurf-browser.org>:
> http://www.netsurf-browser.org/developers/StyleGuide.pdf
>
> B.
Attached is a patch that hopefully has no more style glitches.
If there is more, please let me know which style rule is broken.
Greets,
Ole
Subscribe to:
Posts (Atom)