Re: [Lazarus] WebAssembly

2016-11-11 Thread Michael Schnell via Lazarus

On 11.11.2016 02:26, Mattias Gaertner via Lazarus wrote:

So it is not yet clear when it will be ready and
how the end product will work on the various browsers.

Mozilla promises "March 2017". Any information on other brands ?

I only found "Microsoft says it is close to shipping the browser preview 
of WebAssembly on Microsoft Edge and ChakraCore" -> 
https://mspoweruser.com/microsoft-edge-get-webassembly-browser-preview-soon/


-Michael
--
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] WebAssembly

2016-11-11 Thread Michael Schnell via Lazarus

On 11.11.2016 01:33, Lars via Lazarus wrote:

Maybe best to start from scratch.
Regarding the Lazarus paradigm "write once, compile and run everywhere", 
IMHO not a good idea.


-Michael
--
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Help System with Chromium Embedded component

2016-11-11 Thread Graeme Geldenhuys via Lazarus
On 2016-11-11 00:53, Lars via Lazarus wrote:
> I do appreciate simple documentation without eye
> candy crap.

:)  Just take a look at Apple's OSX built-in help (not the online
content). It is minimalist and mostly text - with a hint of good
typography. It works! Microsoft Windows 7 does very similar to Apple -
simple and elegant.

You don't need some Telly Tubbies color scheme in your help contents
(just because HTML allows for it) - it just distracts from the help
itself. I've seen many such [terrible] CHM or HTML help in my days.

Regards,
  Graeme

-- 
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp
-- 
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Help System with Chromium Embedded component

2016-11-11 Thread Graeme Geldenhuys via Lazarus
On 2016-11-11 00:47, Lars via Lazarus wrote:
> But, could one compile fpc code to javaapplet jvm bytecode?

FPC 3.x can compile to Java Bytecode, but I've never actually tried it
myself.

Regards,
  Graeme

-- 
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Help System with Chromium Embedded component

2016-11-11 Thread Graeme Geldenhuys via Lazarus
On 2016-11-11 01:11, Lars via Lazarus wrote:
> port alternative to port 80 which may be blocked by firewall. That I would
> want to avoid, as it's just another hassle.

You can always use any other port >1024 for that. I've implemented a
commercial application that works mostly online, but we wanted a offline
version too. So I built a local mini webserver inside the main
application. The application launched your default web browser with a
URL and port number which the main application served. It worked
beautifully.

But for help, firing up Chrome of Firefox is just too damn slow, and
eats way to much memory. Also you will have to implement your own search
(which will be slow over HTML files), table of contents and index pages.
Then what about other useful features like bookmarking a help topic,
inline annotations (user defined notes added to a help topic at runtime).

As for communications with a external [dedicated] help viewer. fpGUI's
Docview does that via IPC, Microsoft's WinHelp I think could do it too,
OS/2 VIEW help viewer did lots of 2-way communications with applications.

Regards,
  Graeme

-- 
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp
-- 
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Help System with Chromium Embedded component

2016-11-11 Thread wkitty42--- via Lazarus

On 11/10/2016 08:11 PM, Lars via Lazarus wrote:

The best reason to have some local (whatever how limited) widget is
for IDE popups of helptext instead of an external browser.


External browser requires alt-tabbing away from the ide which is a pain. A
external browser cannot be communicated with once you open the html file.
with a local widget, you can communicate with that widget. With an
external browser, once you've loaded the page there is no way to
communicate. An an external browser doesn't offer a search system if it's
a static html file served off line.  So then you end up with people just
using google and online help and stack exchange, instead of reading
documentation.


what's wrong with something like LHelp and using IPC to tell it where to load 
the next help from that the user has asked for??


from these cheap seats i have way over here, it seems like you are over 
engineering this...


--
 NOTE: No off-list assistance is given without prior approval.
   *Please keep mailing list traffic on the list* unless
   private contact is specifically requested and granted.
--
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] WebAssembly

2016-11-11 Thread Lars via Lazarus
On Fri, November 11, 2016 2:23 am, Michael Schnell via Lazarus wrote:
> On 11.11.2016 01:33, Lars via Lazarus wrote:
>
>> Maybe best to start from scratch.
>>
> Regarding the Lazarus paradigm "write once, compile and run everywhere",
> IMHO not a good idea.

The issue is you are working in a sandbox. Lazarus is designed to take
control of the computer using all the dangerous things without any
sandbox, such as being able to delete and write to pretty much any file
you want that has the correct permissions in place. A sandbox is much more
specialized to develop for, because you may only be able to access certain
directory with limited files

So you could modify lazarus to work with this sandbox restriction, but,
might be easier to design from scratch. ...

I understand the desire to just take existing LCL app and port it to the
web browser, but that's a pipe dream, because browsers will be in
sandboxes that just don't work like client applications on Ms Windows,
BSD/Linux.

Another option is just to use a separate widget set and see how that
works, such as fpGUI widget. But I guess that means you can't as easily
take an existing app and port it.
-- 
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Help System with Chromium Embedded component

2016-11-11 Thread Lars via Lazarus
On Fri, November 11, 2016 3:54 am, Graeme Geldenhuys via Lazarus wrote:
> On 2016-11-11 00:53, Lars via Lazarus wrote:
>
>> I do appreciate simple documentation without eye
>> candy crap.
>
> :)  Just take a look at Apple's OSX built-in help (not the online
> content). It is minimalist and mostly text - with a hint of good
> typography. It works! Microsoft Windows 7 does very similar to Apple -
> simple and elegant.

I've always liked the website delphibasics .co .uk (or whatever the
address is).

Would the current help systems be even capable of looking like that?  Must
be just a few div boxes.  Really simple, interesting color shades. No
fancy garbage, just simple boxes of text.
-- 
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Help System with Chromium Embedded component

2016-11-11 Thread Lars via Lazarus
On Fri, November 11, 2016 4:03 am, Graeme Geldenhuys via Lazarus wrote:
> On 2016-11-11 01:11, Lars via Lazarus wrote:
>
>> port alternative to port 80 which may be blocked by firewall. That I
>> would want to avoid, as it's just another hassle.
>
> You can always use any other port >1024 for that.

No issues with default firewalls?  Last thing I want, is a customer having
to futz around with router firewall, windows firewall, etc.


> But for help, firing up Chrome of Firefox is just too damn slow, and
> eats way to much memory. Also you will have to implement your own search
> (which will be slow over HTML files), table of contents and index pages.

But isn't that what iota full text search is for, to preindex all the
search stuff so no time is spent grepping through html files

The issue with Iota I found was that it was written in an old fpc style
where some things are not proper code, but compiled at that state of fpc
development.  iota, if you don't know, is a full text search indexing
library for fpc.  Discussed briefly on the fpc mailing lists eons ago.

> Then what about other useful features like bookmarking a help topic,
> inline annotations (user defined notes added to a help topic at runtime).
>

User defined notes, were not available in chm files were they? I thought
chm/hlp file were just dumb, fixed help files with no bells an whistles.
i.e. total commander style help.

With a chrome embedded browser object, you can use the DOM to manipulate
the document. That's basically how chrome plugins work in the browser
where you can modify the html page and add widgets to someone else's site,
on your client side. If you wanted to add notes to html help you could use
the DOM to do it and store those extra notes in a database, or something. 
I'd be interested in how many people do this: add notes to their help,
inline.  We know that people add notes at the end of the documentation,
like the php manual where people add comments to the bottom of the page. I
didn't realize there were help systems were you could inline some notes?


> As for communications with a external [dedicated] help viewer. fpGUI's
> Docview does that via IPC, Microsoft's WinHelp I think could do it too,
> OS/2 VIEW help viewer did lots of 2-way communications with applications.
>
>

Which is an interesting question: why hasn't firefox allowed IPC from
external apps. Could be a security vulnerability. Maybe just one of those
interesting features that could be, should be, would be, but no one has
thought of implementing.  If firefox had IPC you could navigate to an
anchor from an external exe.

Also an interesting question is why hasn't adobe got something like this
so that adobe files could be used as help files: scroll to a certain part
of the pdf file programmatically using IPC, or maybe using an adobe
embedded object.  I find pdf files just a little too slow, though, and not
as responsive, due to them being like a resource intensive graphic. So I
suppose pdf files ruin the zippy feeling of a fast help system.
-- 
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Help System with Chromium Embedded component

2016-11-11 Thread Graeme Geldenhuys via Lazarus
On 2016-11-11 22:46, Lars via Lazarus wrote:
> Would the current help systems be even capable of looking like that?  Must
> be just a few div boxes.  Really simple, interesting color shades. No
> fancy garbage, just simple boxes of text.

I don't know how much CSS the HTML component in LHelp supports. But if
you look at the source of that website, they actually use HTML tables to
do most of the layouting.

Looking at the following page...

   http://delphibasics.co.uk/RTL.asp?Name=CurrencyString


Also Free Pascal's fpdoc already generates all that same information:
  * summary line (name, one line description and unit name)
  * declaration
  * Description
  * extra notes
  * example code
  * See also (related commands)

The fpdoc linear output writers (LaTeX, INF etc) formats the above
information quite neatly. Then again, I thought we were talking about
application help which could take on a whole different layout compared
to technical API documentation.

As for the color they used. Yes, they are nice pastel colors, but they
don't really add much value. If the headers were more prominent (larger
and nicer font), then the colored boxes probably wouldn't be needed.

By using colour like that, you are also limiting your audience - eg:
what about colour blind people? Just take a look at this web page and
see what different color vision deficiency can do to the same image.

  http://www.color-blindness.com/coblis-color-blindness-simulator/


Regards,
  Graeme

-- 
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp
-- 
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Help System with Chromium Embedded component

2016-11-11 Thread Lars via Lazarus
On Fri, November 11, 2016 4:37 am, wkitty42--- via Lazarus wrote:
> what's wrong with something like LHelp and using IPC to tell it where to
> load the next help from that the user has asked for??
>

I'll have to experiment with LHelp, thanks

> from these cheap seats i have way over here, it seems like you are over
> engineering this...
>

Anyone who pulls in a 150MB-300MB chromium embedded plugin is likely over
engineering (not to mention bloatware).

I'm critical of my own original post. Would be much better if there was a
chromium lite version that you could embed which was only 2MB or 1MB.

One plan I had was to simply port an existing html documentation system
that runs on a cgi program on a server, over to offline help, with minimal
effort. Chromium embedded seemed the way to go because you can literally
trick chromium embedded into being a cgi like device, on the client side,
without any web server.

Whether LHelp can do that, is something I'd have to research.

I have some existing projects where the help system is already in place,
on a server, and I don't much feel like writing two sets of help systems
one that works offline and one that works online, I'd rather just have one
system that works online and offline. So I figured CEF3 or CEF1 would be a
way to make already existing online documentation, work offline too.
-- 
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Help System with Chromium Embedded component

2016-11-11 Thread Lars via Lazarus
On Fri, November 11, 2016 4:23 pm, Graeme Geldenhuys via Lazarus wrote:
> On 2016-11-11 22:46, Lars via Lazarus wrote:
>
>> Would the current help systems be even capable of looking like that?
>> Must
>> be just a few div boxes.  Really simple, interesting color shades. No
>> fancy garbage, just simple boxes of text.
>
> I don't know how much CSS the HTML component in LHelp supports. But if
> you look at the source of that website, they actually use HTML tables


Holy batman, they are using tables? Wow.. I was sure it was a Div box
based website but they are using classic tables. Interesting.

> By using colour like that, you are also limiting your audience - eg:
> what about colour blind people?

Would be interesting if there was a firefox/chrome plugin that converted a
website to be all black and white to help people, or maybe grayscale.  But
good point.
-- 
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Help System with Chromium Embedded component

2016-11-11 Thread Graeme Geldenhuys via Lazarus
On 2016-11-11 23:09, Lars via Lazarus wrote:
>> You can always use any other port >1024 for that.
> 
> No issues with default firewalls?  Last thing I want, is a customer having
> to futz around with router firewall, windows firewall, etc.

It was 4 years ago, but as far as I remember, we didn't have any
firewall issues on Windows.


> But isn't that what iota full text search is for, to preindex all the
> search stuff so no time is spent grepping through html files

Yeah, but deployment is going to be a pain isn't it? I know of iota, but
I don't know how it works. I would imagine it needs to run continuously
in the background?

ps:
  I believe the is a FTS indexer as part of FCL as well. Though I think
  it was written for databases, not for HTML files.


> User defined notes, were not available in chm files were they? I thought
> chm/hlp file were just dumb, fixed help files with no bells an whistles.

Now there's an interesting question. :)

WinHelp supported both Annotations and Bookmarks, though the annotations
were not inline - it simply showed a paperclip icon or something that
you had to click to see the user defined notes, and was limited to one
note per help topic.

Window's CHM viewer only support bookmarks (they call it Favourites). So
it actually has less features than WinHelp did. :)

DocView supports inline annotations, bookmarks, full text search,
advanced search terms (eg: search for this but don't include that,
search by phrase, or fine something spelled similar to search term you
entered). Docview also allows multiple annotations per help topic. The
Bookmarks, Annotations and Advanced Search features are not part of the
INF file format, docview implements those. Full Text Search comes
standard with INF though - any word in the whole INF file is only stored
once (all others are simply pointers to the word lookup table). This is
also why INF is so compact (eg: one help file will be 3MB in INF, but
that same help content will be a 12MB CHM file)

On a side note:
  I use Docview's annotations support a lot! My Free Pascal RTL and FCL
  help is full of my own comments, code examples etc. I also use it to
  note down errors in the help (eg: spelling mistakes, grammar,
  examples) and then later when I have time, report those on Mantis as
  they are then easy to find again.


> I didn't realize there were help systems were you could inline some notes?

Take a look here:

  http://fpgui.sourceforge.net/screenshots_apps.shtml

In the first screenshot, note all the green text. They are inline
annotation examples. You can simply click them to edit them too.

The yellow text is the highlighted search terms it found in that page.
Both colors are user configurable, and so too is the font and page
background color.

In the "Search Results" list box, the numbers behind the help topics are
a search rating value. The higher the value, the more precise the search
result was (eg: the search term appeared more than once in that help topic).



Regards,
  Graeme

-- 
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp
-- 
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Help System with Chromium Embedded component

2016-11-11 Thread Graeme Geldenhuys via Lazarus
On 2016-11-11 23:39, Lars via Lazarus wrote:
> Would be interesting if there was a firefox/chrome plugin that converted a
> website to be all black and white to help people, or maybe grayscale.  But
> good point.

Opera 12.x (and earlier) had that built in. Newer versions of Opera
(based on Chrome) doesn't support that any more - and neither does
Chrome or Firefox.

Regards,
  Graeme

-- 
___
Lazarus mailing list
Lazarus@lists.lazarus-ide.org
http://lists.lazarus-ide.org/listinfo/lazarus