f



Browser plugin for Tcl 8.6

Hi,

Has anyone had success with compiling the browser plugin for Tcl8.6? The binaries on http://www.tcl.tk/software/plugin/ work fine with Mozilla, but are based on outdated 8.4.
I tried to compile the latest (also somewhat ancient) CVS head on Mac OSX, but didn't get far. The "tclkit as dll mechanism" seems to be a little bit tricky...


-- 
EL
0
EL
9/5/2015 6:25:42 PM
comp.lang.tcl 23428 articles. 2 followers. Post Follow

7 Replies
495 Views

Similar Articles

[PageSpeed] 13

Am 05.09.15 um 20:25 schrieb EL:
> Has anyone had success with compiling the browser plugin for Tcl8.6?
> The binaries on http://www.tcl.tk/software/plugin/ work fine with
> Mozilla, but are based on outdated 8.4. I tried to compile the latest
> (also somewhat ancient) CVS head on Mac OSX, but didn't get far. The
> "tclkit as dll mechanism" seems to be a little bit tricky...

I don't know if it is of any help, but Roy Keene compiles a tclkit into 
a single DLL: http://kitcreator.rkeene.org/fossil/wiki?name=KitDLL

Nowadays plugins are a bit outdated; you will have trouble to find users 
who will install a binary plugin. Fortunately, both browsers and 
machines got much stronger, and now you can translate the Tcl source 
into javascript via emscripten.

https://github.com/aidanhs/emtcl

I'm unsure if this includes Tk, but in principle it should be possible - 
emscripten has demos with QT working on a HTML5 <canvas>

	Christian




0
Christian
9/5/2015 6:57:16 PM
Am Samstag, 5. September 2015 20:57:19 UTC+2 schrieb Christian Gollwitzer:

> I don't know if it is of any help, but Roy Keene compiles a tclkit into=
=20
> a single DLL: http://kitcreator.rkeene.org/fossil/wiki?name=3DKitDLL

There are basekit dll's resp. dylib's etc. also part of ActiveTcl.. That sh=
ould be the same. But I havent't found out yet if it is really of any help =
or can be utilized to compile the plugin.

> Nowadays plugins are a bit outdated; you will have trouble to find users=
=20
> who will install a binary plugin.=20

I am sure that they aren't as outdated as everybody claims. I am watching t=
he alternate technologies (most promising NaCL wit NaTcl), but there is not=
hing as functionally complete, stable and at the same time performant as a =
browser plugin. I am also not very interrested in learning Java Script thou=
gh, mainly because it would mean to rewrite loads of code that I have alrea=
dy.

Sure, it would eventually be complicated to distribute tclet's to consumers=
 through the WWW, at least when there is no possibility to sign the tclet's=
 with certificates. But there is a very interresting niche in enterprise ap=
plications that are distributed through the intranet or VPN to remote compa=
ny sites. That is also where I see the potential use of the plugin for me..=
.. could be much easier, compared to Java applets or the other stuff like si=
lverlight etc.

--=20
EL
0
EL
9/5/2015 7:54:33 PM
On Saturday, 5 September 2015 19:25:45 UTC+1, EL  wrote:
> Hi,
> 
> Has anyone had success with compiling the browser plugin for Tcl8.6? The binaries on http://www.tcl.tk/software/plugin/ work fine with Mozilla, but are based on outdated 8.4.
> I tried to compile the latest (also somewhat ancient) CVS head on Mac OSX, but didn't get far. The "tclkit as dll mechanism" seems to be a little bit tricky...
> 
> 
> -- 
> EL

I came across http://wiki.tcl.tk/41658 on the Tcl Wiki a few days ago. No idea what it's like, I haven't used it, but may be of interest.
0
Mike
9/5/2015 8:41:47 PM
Am Samstag, 5. September 2015 22:41:50 UTC+2 schrieb Mike Griffiths:

> I came across http://wiki.tcl.tk/41658 on the Tcl Wiki a few days ago. No idea what it's like, I 
> haven't used it, but may be of interest.

I have seen this as well. It builds on js-ctypes, a library that obviously enables calls from Javascript to c/c++ code, in DLL' and the like.
Funny to see how a certain fraction / lobby claims how "insecure" Plugins are, while on the other side nobody seems to care about calling out to a DLL via ctypes from Javascript :D

-- 
EL
0
EL
9/5/2015 9:31:38 PM
Am Samstag, 5. September 2015 21:54:35 UTC+2 schrieb EL:

> > I don't know if it is of any help, but Roy Keene compiles a tclkit into=
=20
> > a single DLL: http://kitcreator.rkeene.org/fossil/wiki?name=3DKitDLL
>=20
> There are basekit dll's resp. dylib's etc. also part of ActiveTcl.. That=
=20
> should be the same. But I havent't found out yet if it is really of any=
=20
> help or can be utilized to compile the plugin.


Ah, I did some fiddling around and managed to get 8.6 working as plugin:

It is possible to build a "tclplugin.dll" from current Tcl8.6 using the scr=
ipt tools/buildkit.tcl in the tclplugin sources. It uses the kitdll that co=
mes with ActiveTcl and puts Tk and some other things in. This tclplugin.dll=
 can then be copied to the place of the tclplugin.dll that comes with the p=
recompiled browser plugin (e.g. for windows). Then it is loaded instead of =
the 8.4 plugin.

It is possible then to run the plugin examples with the new Tcl8.6 plugin, =
even the tetris game works!
http://tcl.tk/software/plugin/applets.html

However I get strange errors from Firefox when the plugin loads a Tk window=
: "in SetWindow: unknown attribute windowGeometry" and then "Unable to get =
information of window '...' Attach to this window may have unpredictable re=
sults if it is not a valid container". When Ok is clicked both times, the e=
rrors vanish and the Tk windows appear in the web site.
If this can be fixed, I think the plugin works just fine with recent Tcl ve=
rsions :) (at least as long as the npapi interface is supported by browser =
vendors).


--=20
EL
0
EL
9/6/2015 4:36:40 PM
On 9/5/2015 11:25 AM, EL wrote:
> Hi,
>
> Has anyone had success with compiling the browser plugin for Tcl8.6? The binaries on http://www.tcl.tk/software/plugin/ work fine with Mozilla, but are based on outdated 8.4.
> I tried to compile the latest (also somewhat ancient) CVS head on Mac OSX, but didn't get far. The "tclkit as dll mechanism" seems to be a little bit tricky...
>
>

I see that you have solved your stated problem, but wanted to be sure 
that you are aware of another way of writing web applications in Tcl, 
and that is Aejaks. One of its big advantages is that it is server-side 
only, so that the user has nothing to install or worry about. The 
downsides are that the server must be running Java, the GUI stuff is 
similar to Tk in spirit but not identical (making complete rewrites 
necessary), and some of the more modern Tcl features are missing from JTcl.

I have written an on-line voting system using Aejaks, and have found its 
development and maintenance to be a very pleasant experience. I am still 
amazed that writing a web application can be almost as easy as writing a 
native one.

Gerry Snyder
0
Gerry
9/9/2015 5:37:20 PM
Am Mittwoch, 9. September 2015 19:37:25 UTC+2 schrieb Gerry Snyder:
> I see that you have solved your stated problem,=20

Well its not really solved. Tcl 8.6 seems to introduce some incomatibilitie=
s regarding safe interpreters and window handling, thats why the error mess=
ages. This needs to be fixed.
Fortunately most of the code is Tcl :). Most of the work is done via the pl=
ugin3.1 package, while the C code just handles initialization and Tk window=
 integration in the web page. Both sides would need some reshape though. Th=
e plugin3.1 package simulates OO through namespaces, that could be reengine=
ered nowadays using TclOO. And the C side could nowadays be done with the F=
irebreath abstraction layer, to have it cross platform and supported in a v=
ariety of browsers without headaches.

And it's not too big also. Maybe a good spare time project ;)

> but wanted to be sure=20
> that you are aware of another way of writing web applications in Tcl,=20
> and that is Aejaks. One of its big advantages is that it is server-side=
=20
> only, so that the user has nothing to install or worry about.=20

Yes, I know about Aejaks and I believe its a good framework. But it's not q=
uite the same as integrating a Tcl interpreter and Tk windows into the brow=
ser on client side. There are tasks that cannot be achieved with pure HTML/=
JavaScript or server applications, mainly when it comes to access of local =
resources on the users PC, where HTML and JavaScript don't have access. Thi=
s can mostly be solved by integrating small companion components into the f=
at-client-HTML/JS-Browser app, and a browser plugin is just perfect for tha=
t.
When I surf around a little bit and read about the alternatives to browser =
plugins to achieve such goals... it's somewhat frustrating and funny. I thi=
nk browser plugins will continue to survive for quite some time, it's just =
a question of "how".

--=20
EL
0
EL
9/9/2015 8:16:31 PM
Reply:

Similar Artilces:

Question on migration from TCL 8.3 to TCL 8.6
Hi All, I am working on a EDA tool which is built on TCL 8.3 platform. I need to upgrade the platform to TCL 8.6. Is it proper to move directly from 8.3 to 8.6 version? Or should I upgrade to TCL 8.5 as TCL 8.6 is still beta version. Please suggest me precautions. Please point me to documentation/User guide related to this. Thanks for help, Divyesh On Thursday, 30 January 2014 04:47:57 UTC, Divyesh Patel wrote: > Is it proper to move directly from 8.3 to 8.6 version? Or should I upgrade to TCL 8.5 as TCL 8.6 is still beta version. > Tcl 8.6.1 is now the current ...

Bug789040 came back in Tcl 8.4.6 and Tcl 8.5.
Dear All, Bug 789040 caused exec error in Windows 9x and was fixed in 10/04/03. But it came back in Tcl 8.4.6 and Tcl 8.5. Tcl Windows 9x users should be alerted to the possible failure of exec in the current Tcl 8.4.6 and 8.5 releases due to this bug. Chengye Mao http://www.geocities.com/~chengye Chengye Mao wrote: > Bug 789040 caused exec error in Windows 9x and was fixed in 10/04/03. > But it came back in Tcl 8.4.6 and Tcl 8.5. Tcl Windows 9x users > should be alerted to the possible failure of exec in the current Tcl > 8.4.6 and 8.5 releases due to this bug. Have you i...

ANNOUNCE: freeWrap 8.6 released (supports TCL/TK 8.6.0)
This message announces the availability of freeWrap version 6.6. FreeWrap 6.6 is based on TCL/TK 8.6.0 freeWrap is a program that allows creation of stand-alone TCL/TK executables without needing a compiler. Versions are free and available for the Windows and Linux operating systems. Instructions and source code for building freeWrap are also available. The following additional variation of freeWrap is also available for download: freewrapTCLSH a console-only application which includes only TCL. Please visit the freeWrap home page: http://freewrap....

Binary reader speed comparison
I have a fairly simple binary reader proc that exhibits massive speed differences between Tcl 8.5.8 and Tcl8.6b1.1. Here's the proc: proc readFormatted {filename} { set fd [ open $filename r ] fconfigure $fd -encoding binary -translation binary binary scan [ read $fd 2 ] cc type nextlen if {$type != 75} { return -error "File is not in the expected format" } while {![append buffer [read $fd $nextlen] ; eof $fd]} { binary scan [read $fd 2] cc lastlen nextlen # convert to unsigned value set nextlen ...

Tcl 8.6, ActiveTcl 8.6 & linux Fedora 16 (64 bit)...
Hi all, Just a quick note about installing ActiveTcl 8.6 under Fedora 16, 64 bit. Downloading ActiveTcl 8.6 and trying to run the installer, fails. The reason is that libXss.so, is missing from the system, and Tk seems to need this. The problem can be "resolved" by installing the package "libXScrnSaver". But there is no such package for Fedora 16, and (thankfully) the package gets installed from Fedora 15. Maybe this is a "sign" that libXss.so will disappear in the (near?) future... George PS: Also the mysql TDBC driver crashes, as the shared library has ...

Tcl OO mixins and inheritence behaviour change from version 8.6.2 to version 8.6.3
Hi, it seems that implementation of object oriented functionality in tcl8.6.3 changed in a away that breaks my existing code. My test code looks like this: oo::class create MixinClass { method helloWorld {args} { puts "[self class]" catch { next } } } oo::class create BaseClass { mixin MixinClass method helloWorld {args} { puts "[self class]" catch { next } } } oo::class create TargetClass { superclass BaseClass method helloWorld {args} { puts "[self class]" catch { next } } }...

can you run e commerce site using just tcl 8.6.2 and a pure tcl webserver?
and have decent performance? ...

regsub in tcl 8.5 and 8.6
parse this row set a "123(qwe)" in tcl 8.6 # regsub -all "\\(.*" $a "" 123qwe) in tcl 8.5 # regsub -all "\\(.*" $a "" 123 What to do ? Thank you for the report. Confirmed with 8.5.16 and 8.6.2 Aparently, 8.6 is not as greedy as 8.5. I don't know if this is a bug or a feature. Could you please register a bug report at: core.tcl.tk/tcl -> Login as anonymous -> New ticket The most important people don't read clt but read bug reports... Thank you, Harald 0L/QvtC90LXQtNC10LvRjNC90LjQuiwgOCDRgdC10L3RgtG...

TCL is not thread safer in TCL 8.3 or 8.4... Any plans to fix this?
It is a shame that I can't upgrade one of my applications due to this problem, though the memory leaks also intorduced in 8.3 and 8.4 are problem as well. :( I have a process that spawn a configurable number of thread with a TCL intrepeter in each one. The interps are isolated and do not communicate or share anything withe each other. Each thread is a rule processor that is handed TCL scripts based on what events occurs within a multi process enviroment rnaing across the whole itnerprize... Works great with TCL 8.2, not a single problem... But with TCL 8.3 and TCL 8.4 we get quite a f...

Tcl 8.6
Hi folks! Funny question, but when Tcl 8.6 will finally released? On 5/10/11 9:24 AM, Alexander Nusov wrote: > Hi folks! > > Funny question, but when Tcl 8.6 will finally released? Tcl release are kind of like hush puppies -- they come out when they are done. -- +------------------------------------------------------------------------+ | Gerald W. Lester, President, KNG Consulting LLC | | Email: Gerald.Lester@kng-consulting.net | +------------------------------------------------------------------------+ On May 10, 10:24=A0am...

Compatibility issues of Tcl/Tk 8.6 with windows 8...
Hi all, I am facing a strange compatibility issue between tcl/tk 8.6 and the windows 8 (at least the 64 bit version) operating system. The problem as observed from the user point of view is a general "sluggishness", the application is slow and painful to use. Timing various actions, I have found that there are unexplained delays from 1,5 to 3 seconds inserted between successive tcl commands, most around calling tcloo methods from outside the object. For example, I have a tcloo class, which builds some part of a GUI. From inside a method, I create a button: tt...

Incr Tcl /Tk for Tcl 8.4
Hi, I am trying to download incr Tcl and incr Tk for Tcl/Tk 8.4.19. I looked at: http://sourceforge.net/projects/incrtcl/files/%5BIncr%20Tcl_Tk%5D-source/3.4.1/ But only itcl seems to be there. And the CVS doesn't have the 3.4.1 tag. Do you know where I can get incr Tk and hopefully a corresponding iwidgets? Thanks, Andres On 5 Okt., 11:16, Andres Garcia <tclc...@gmail.com> wrote: > Hi, > > I am trying to download incr Tcl and incr Tk for Tcl/Tk 8.4.19. > > I looked at: > > http://sourceforge.net/projects/incrtcl/files/%5BIncr%20Tcl_Tk%5D-sou... > > ...

'lrange' differences in tcl 8.4 and 8.6
Hi, lrange works differently in tcl versions 8.4 and 8.6, if the output has only #. % info patch 8.4.13 % % set test {a "#"} a "#" % set testme [lrange $test 1 end] # % info patch 8.6.1 % set test2 {a "#"} a "#" % set testme [lrange $test2 1 end] {#} Is this an intentional change ? Most of our regression scripts are failing after upgrade to 8.6.1, as the regular expressions don't match, as lrange was earlier returning #, but after upgrade {#} Regards, Lucky Lucky Y <ylucki@gmail.com> wrote: > Hi, >...

tcl 8.6.4
Hi, Using 8.3.0, compiled on AIX 6.1 with no problems. It compiles with the xlc= compiler. But when I try to build tcl 8.6.4, I notice some changes. Configure uses xl= c_r rather than xlc. But the difference that causes a problem is setting TC= L_LIBRARY snd TCL_PACKAGE_PATH.tclUnixInit.c is the only file that uses the= se extra variables in make and I get the following errors. xlcwrapper_r -c -DNDEBUG -O -DBUILD_tcl -I"." -I/tmp/xxxxxx/tcl8.6.4/un= ix -I/tmp/xxxxxx/tcl8.6.4/generic -I/tmp/xxxxxx/tcl8.6.4/libtommath -DPACK= AGE_NAME=3D\"tcl\" -DPACKAGE_TARN...

Web resources about - Browser plugin for Tcl 8.6 - comp.lang.tcl

Blind Browser
Nifty idea from Charlie Deets: a browser for web designers working on retina displays, to test how sites look on non-retina displays.

Nokia Browser for Symbian - Wikipedia, the free encyclopedia
Copy paste support is poor. If you have a device with no Control-key or Pen-key, you can not copy paste in most web forms. With older Nokia models, ...

Mozilla Cofounder Brendan Eich Unveils Ad-Blocking Browser - Digital - AdAge
Brendan Eich shaped much of what has become the modern web experience. He created the JavaScript programming language that publishers have used ...

Facebook Tests New Web Browser for Flagship Mobile Apps
Facebook appears to be testing a new Web browser for its flagship mobile applications . BBC journalist Henry Wilmer shared the image below in ...

Link Bubble renamed to Brave: the browser that pays you for the ads you see
... come and that startup has been revealed as Brave Software. What we didn't know last year was that Link Bubble was to be the DNA for a new browser ...

Google’s Chrome browser is about to a huge speed boost
As of the end of 2015, data from market research company Net Applications showed that Google's Chrome browser is used on 32.33% of desktop and ...

The former CEO of Mozilla is launching a web browser that blocks all ads by default
Brendan Eich is making a comeback. He's the creator of JavaScript and one of the founders of Mozilla, the organisation behind the Firefox browser, ...

Former Mozilla CEO Brendan Eich launches ad-blocking web browser Brave - Business Insider Deutschland ...
"We need to clean the swimming pool. Chlorinate the pool. Only by doing that can we build a better ad model for publishers as well as users." ...

Brave browser promises faster Web by banishing intrusive ads
The new browser, a brainchild of ex-Mozilla CEO Brendan Eich, is also designed to reform online privacy and help prevent the extinction of free, ...

Brave is the name, ad-blocking the game of new browser
Brendan Eich, co-founder of Mozilla and for an 11-day stint, its CEO, yesterday announced a new browser called "Brave," that blocks outside online ...

Resources last updated: 1/25/2016 6:41:05 AM