Can't get runtk to work?

Started by gcanyon, October 24, 2006, 07:00:35 AM

Previous topic - Next topic

gcanyon

#15
Quote from: "HPW"By the way: Whats the size of a minimal runrev-app for windows standalone? Is it small like newLISP? ;-)


Not so small. I don't know what the actual memory use is, but on disk the minimum is about 3MB I believe.



Revolution doesn't compile conditionally. There's one engine file, and everything is in it.  So everything gets built into a standalone.



That said, you can easily build a standalone that will load and execute raw Revolution stack files. Under those circumstances you can have the user install the engine once, and just load stack files for each "app" you want to run. Stack files start at about 8KB I think -- very small.

HPW

#16
QuoteThere's one engine file, and everything is in it. So everything gets built into a standalone.


In the meantime I got more info.

So 'everything' does not get automaticly into the standalone.

I have read more stuff about externals in runrev.

Thinking about a calling-wrapper for newLISP let me think about embedding such a wrapper. Here is the discussion with the runrev developers:



http://forums.runrev.com/phpBB2/viewtopic.php?t=465">http://forums.runrev.com/phpBB2/viewtopic.php?t=465
Hans-Peter

cormullion

#17
Quote from: "gcanyon"I zapped gremlins. (is there a similar command in TextMate?)


Hi and welcome back geoff. My TextMate free trial finished so i can't find one for you. However, this simple newLISP script is a skeleton for a simple roll-your-own Zap Gremlins alternative that emerged recently:


#!/usr/bin/newlisp

(set 'file (open ((main-args) 2) "read"))

(define (in-range? n low high)
  (and (<= n high) (>= n low))) ; can't get angle brackets to work when posting code to this forum!!!!

(while (read-line file)
(dolist (c (explode (current-line)))
 (if
  (or
    (in-range? (char c) 32 128)  ; ascii
    (in-range? (char c) 9 10)   ; tab newline
    (in-range? (char c) 12 13)   ; f r
    (= (char c) (int "xbb"))   ; right double angles
    (= (char c) (int "x25ca"))  ; diamond
    (= (char c) (int "x2022"))  ; bullet
    (= (char c) (int "x201c"))  ; open double quotes
    (= (char c) (int "x201d"))  ; close double quotes
  )
  (print c)))
(println) ; because read-line swallows line endings
)
(exit)


This allows the user to customize which non-ASCII characters get zapped and which don't. So as it stands this allows certain odd Unicode characters through but eliminates others. Adjust to taste.





I'm not an expert, but I think that there are two related issues: Unicode and HTML. My web browser (Safari) sees a non-breaking space character (0xA0 -> UC2A0) in HTML posted on this forum (and other sites) and preserves it when I copy/paste - I can't see it but it often prevents newLISP code from running in an editor. On this forum, the nbsp's are inserted by the forum code, and the newsfeeds have them as well, generated by the same code, I suppose. The newLISP manual doesn't use nbsp's much but they do creep into code occasionally. So if copy/pasted code doesn't run and you think it should, check for odd characters first!