[REBOL] missing scripts
I'm trying to teach myself to use the database management system in REBOL: The Official Guide, but when I try to 'do %db.navigator.r it tries to 'do two other scripts which I cannot find on the CD: %db.r and %new-object.r Does anyone know where to get these scripts? -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] browser-based apps
I know all about /View, but I have some questions about building a browser-based application: Is it possible to use a web browser as a REBOL application's graphical user interface for applications running on the local machine? I'd like to develop a cross-platform, browser-based application using Javascript and REBOL which runs on a local machine, no web server required. Is it possible to use POST and GET cgi methods with a web server application which runs on a local machine? Is it possible to make REBOL be that web server? Finally, could all of this be packaged as a runtime version binary? -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] live REBOLing
In the BeOS "community" we have an application called BeShare where we can chat and share files a la the Napster model, but BeShare understands BeOS filesystem attributes and other BeOS-native functions. The nice thing about BeShare is people in the "community" who have higher bandwidth tend to stay connected continuously and are available to answer quick questions when you need some help. BeShare also allows people to work together "live," sharing files and chatting to work on larger projects. I'd love to see something similar in the REBOL "community." Any suggestions on how we might get this going? Are there any similar applications in Windows, Linux, etc., that can accomplish something similar? (I don't use Windows unless I'm at work and so I don't get to play in Windows much.) Could a /View app be written for the same purpose? Is /Express actually the same thing I'm thinking about? Thoughts? -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: works for GET, not POST
This function doesn't work with GET on my system... retrieve-user-data: func [] [ return decode-cgi either system/options/cgi/request-method = "POST" [ data: make string! 2002 foreach line copy system/ports/input [ repend data [line newline] ] ][ either system/options/cgi/query-string [ system/options/cgi/query-string ][ "" ] ] ] My system is as follows: Apache/1.3.14 (Unix) mod_bwlimited/0.8 mod_log_bytes/0.2 PHP/4.0.4 mod_perl/1.24_01 mod_frontpage/3.0.4.3 mod_ssl/2.7.1 OpenSSL/0.9.5 on Linux The function I use works with GET, but not with POST retrieve-user-data: func [] [ return make object! decode-cgi either system/options/cgi/request-method = "POST" [ input ][ system/options/cgi/query-string ] ] I'm not the sysadmin. Suggestions? -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: What's with /MARKUP?
load/markup separates the tags from the content and places each tag or content as a string! value into a block! You can then check each element of the block to see if it is a tag? or not and remove the element if it is a tag!, leaving the content behind. -Ryan Hi, Rebols: I just had a first look at LOAD/MARKUP and was hoping that it would strip HTML out of a page. In fact, websplitter.r comes closer to being a stripper, although it still missed a few codes and spacing is a bit ackward. Since /MARKUP creates a block with the HTML still in it, what is its advantage or how is it useful? Why would we want the HTML? -- ---===///||| Donald Dalley |||\\\===--- The World of AmiBroker Support http://webhome.idirect.com/~ddalley UIN/ICQ#: 65203020 -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: A Surprise in the Mail
What's this? An encrypted message about the future of REBOL? hehe Oops! -Ryan Thanks for the great Christmas Gift. We will be thinking extra kind thoughts about you while we munch away! I'm glad you mentioned a bit about the scene on the can. I may try to grab the can after the popcorn has been devoured. I already sampled all three flavors and they are delicious! Thanks again, Cindy -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: how do I get ampm format for time?
This function should accomplish what you're looking for. time-meridian: func [ time-data [time!] ][ either time-data/hour 12 [ meridian-time: rejoin [time-data/hour ":" time-data/minute " a.m. EST"] ][ meridian-time: rejoin [time-data/hour ":" time-data/minute " p.m. EST"] ] ] USAGE: time-meridian now/time == "10:57 a.m. EST" -Ryan how do I format dates to am/pm format like: "hh:mm pm EST" is there a more succinct way to write this? time-ampm: func [ dt ] [ rejoin [ ; handle hh:mm part ( replace ( copy/part ( rejoin [ (either dt/time 10:00 [ "0" ] [ "" ]) ; hh:mm vs [h]h:mm either dt/time 12:59:59 [ mold dt/time - 12:00 ] [ mold dt/time ] ] ) 5 ) "00:" "12:" ) ; midnite-1am is special ; handle " pm EST" parts either dt/time 11:59:59 [ " pm" ] [ " am" ] " EST" ]] yes this does the job, perhaps a mold could be factored out and some parens are not needed. now the challenge is to write something that handles the exceptions with less code. this version allows coding by deletion since the two parts hh:mm vs am/pm indicator are treated separately and simply concatenated. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] works for GET, not POST
I'm using the following function, which is derived from the "Official Guide," for CGI. retrieve-user-data: func [] [ return make object! decode-cgi either system/options/cgi/request-method = "POST" [ input ][ system/options/cgi/query-string ] ] I use it as such: cgi-input: retrieve-user-data to give me an object containing the input values. My usage is working for GET operations but not for POST. What am I doing wrong? -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: script library on rebol.com vs rebol.org
Perhaps rebolforces.com would be a good place to set up a new script library, preferably with an automatic script submission/update system. On Fri, 19 Jan 2001 07:49:29 +1000 "Allen Kamp" [EMAIL PROTECTED] wrote: Until the submission script is fixed, I will volunteer to update the ORG libary manually. Send any submissions/updates with full category heading to [EMAIL PROTECTED] and put [REBOL-ORG] as the subject line. I figure a once/twice a week update is better than none. Allen, -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: Syntax file of REBOL for EditPlus
I'm using EditPlus 2.01b. I "added" the REBOL.stx file in Tools - Preferences - Files - Syntax and clicked "apply" but the syntax highlighting is not working for me. -Ryan Hi Folks, Here's a news for all those who use editplus (from www.editplus.com) for editing REBOL files, I have made a syntax file for it and it has been put at the user files section on this site (http://www.editplus.com/files.html). -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: ; semi-colons in urls
Either I didn't understand your solution or it doesn't work with REBOL/Core 2.3.0.3.1 for Windows. to-url http://ad2.doubleclick.net/jump/sonar.bebits/default;sz=468x60;ord=979 190170 == http://ad2.doubleclick.net/jump/sonar.bebits/default This cuts off everything past the semi-colon read http://ad2.doubleclick.net/jump/sonar.bebits/default%3Bsz=468x60%3Bord=9 79190170 ** User Error: URL error: http://ad2.doubleclick.net/jump/sonar.bebits/default;s z=468x60;ord=979190170. ** Where: read http://ad2.doubleclick.net/jump/sonar.bebits/default%3Bsz=468x60% 3Bord=979190170 Using the ASCII code gives a "User Error" error to-url http://ad2.doubleclick.net/jump/sonar.bebits/default%3Bsz=468x60%3Bord =979190170 == http://ad2.doubleclick.net/jump/sonar.bebits/default%3Bsz=468x60%3Bord=979190 170 some-url: to-url http://ad2.doubleclick.net/jump/sonar.bebits/default%3Bsz=46 8x60%3Bord=979190170 == http://ad2.doubleclick.net/jump/sonar.bebits/default%3Bsz=468x60%3Bord=979190 170 read some-url ** User Error: URL error: http://ad2.doubleclick.net/jump/sonar.bebits/default;s z=468x60;ord=979190170. ** Where: read some-url Cannot use 'read on the url with the ASCII code browse some-url ** Script Error: Feature not available in this REBOL. ** Where: browse some-url Cannot use 'browse on the url with the ASCII code second-url: make url! http://ad2.doubleclick.net/jump/sonar.bebits/default%3B sz=468x60%3Bord=979190170 == http://ad2.doubleclick.net/jump/sonar.bebits/default%3Bsz=468x60%3Bord=979190 170 read second-url ** User Error: URL error: http://ad2.doubleclick.net/jump/sonar.bebits/default;s z=468x60;ord=979190170. ** Where: read second-url browse second-url ** Script Error: Feature not available in this REBOL. ** Where: browse second-url I also tried 'make 'url! with the same results. -Ryan On Wed, Jan 10, 2001 at 11:33:13PM -0600, [EMAIL PROTECTED] wrote: Using 'read or 'browse on the following url brings up an error page, but dropping the same url in a browser address bar loads the page ok. Is there something about this url construction which REBOL can't handle? (I see the semi-colons may pose a problem?) http://ad2.doubleclick.net/jump/sonar.bebits/default;sz=468x60;ord=9791901 70 The semicolon introduces comments in REBOL, i.e. the scanner considers ";sz=468x60;ord=979190170" to be a comment in your script and does not include it in the URL. Workarounds: Either: to-url "http://ad2.doubleclick.net/jump/sonar.bebits/default;sz=468x60;ord=97919 0170" Or: http://ad2.doubleclick.net/jump/sonar.bebits/default%3Bsz=468x60%3Bord=97 9190170 %3B is the hex representation of the ASCII code of ";". -- Holger Kruse [EMAIL PROTECTED] -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Reb-World (was Re: reb sites - Zork! thoughts - viol)
Reb-World has been added to eGroups. Here is the information for persons who may wish to join: Group of REBOL developers creating a massively distributed, Internet- based role-playing game the likes of Zork! where the world is created by anyone and everyone. Persons help to create their little pieces of the world by uploading a valid XML file to a server. The XML file defines a specific "room" or "tile" and also the creatures, objects, actions, and dialog within each room. The Reb-World editor will use REBOL/View as the Reb-World play and editor interface. Addresses: Post message: [EMAIL PROTECTED] Subscribe: [EMAIL PROTECTED] Unsubscribe: [EMAIL PROTECTED] List owner: [EMAIL PROTECTED] URL to this page: http://www.egroups.com/group/reb-world -Ryan snip Anyway, is there enough interest in this REBOL worlds idea to start a collaborative effort to try and get it working? If so, a seperate mailing list for it (on eGroups?) seems the way to start. I'd be willing to be a part of it. Any others? /snip Count me in. I am strangely fascinated by the idea, even though I got much "better" things to do. If I am going to stay up late thinking about it anyway, I might as well add in. --Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] sending 'none to CGI
If I send the following text/html output to the user {A HREF="http://www.domain.dom/cgi-bin/script.cgi?value=} none {} and he or she clicks on the resultant link, what value will be passed to CGI? Will it be a 'none value REBOL can understand? Using the console, the results seems to be correct. print (rejoin [{A HREF="http://www.domain.dom/cgi-bin/script.cgi?value=} none {} ]) A HREF="http://www.domain.dom/cgi-bin/script.cgi?value=none -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] RUGs?
So are REBOL User Groups called RUGs? Anyways, if I'm not the only person who happens to be using REBOL between Minneapolis and Spokane, is there anyone interested in forming a user's group in my area? I'm in Fargo, North Dakota. Thanks. -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: Syntax file of REBOL for EditPlus
Hooray! I use EditPlus every single day! Hi Folks, Here's a news for all those who use editplus (from www.editplus.com) for editing REBOL files, I have made a syntax file for it and it has been put at the user files section on this site (http://www.editplus.com/files.html). If you put this file in the edit plus directory of your PC, it will appropriately color the Rebol keywords comments etc Although this does not assist in developing REBOL skills but it makes working with it fun. Hope it is useful to you all. Gunjan - Gunjan Karun Technical Presales Consultant Zycus, Mumbai, India URL: http://www.zycus.com - -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] pipe | rebol
I thought it might be useful to use a unix-like piping mechanism in REBOL, as follows: |: func [target][do target] d: 1 | e: d * 3 | f: e * e == 9 Have I got it right? Do you see any potential problems? I don't get to use a unix command-line as much as I would like. -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] [UPDATE] Standard Message Function Library
The Standard Message Function Library took a great leap forward today, moving from version 0.1.2 to version 0.2.1. Besides a few bug fixes, the library now includes the 'create-message and 'get- messages-for-display functions (see usage for these functions below.) As always, I appreciate any and all input on this effort. -Ryan You can read about the Standard Message Function Library here: http://www.dangeroustechnology.com A new usage section for the library has been added here: http://www.dangeroustechnology.com/#one3 And the code for the library is here: http://www.dangeroustechnology.com/standard-message-function-library.txt Here is a synopsis of today's changes: 0.2.1 [9-Jan-2001 "Corrected target 'word in 'write-xml-message. Added 'create-message object! functions. Corrected 'display-markup to output string! datatype instead of block! datatype. Negated use of 'message-request-data target variable in 'read-directory-messages. Added 'get-messages-for-display object! functions." "Ryan"] And, finally, here are the ussage instructions for the newly created functions 'create-messsage and 'get-messages-for-display. These are higher-level functions, depending on other library functions for execution: CREATING (AND SAVING) MESSAGES Using decoded CGI data, writes XML standard message file to directory determined by messageType. create-message/from-cgi cgi-input Using an e-mail message in the form of a REBOL e-mail object!, writes XML standard message file to 'email' directory. create-message/from-email email-message RETRIEVING MESSAGES MARKED-UP FOR DISPLAY Using decoded CGI data, create a block! of messages marked up for display using standardized cascading style sheets tags as the display markup. get-messages-for-display/all-messages-in-directory/css-output cgi-input Using decoded CGI data, create a block! of messages marked up for display using a set of HTML tags as defined in an external object! as the display markup. get-messages-for-display/all-messages-in-directory/html-output cgi-input Using decoded CGI data, mark up a specific message for display using standardized cascading style sheets tags as the display markup. get-messages-for-display/specific-message/css-output cgi-input Using decoded CGI data, mark up a specific message for display using a set of HTML tags as defined in an external object! as the display markup. get-messages-for-display/specific-message/html-output cgi-input -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] help object!/func
Is there any way to use 'help on a function which is a value in an object! datatype? Using 'help only tells me the function is a path of the object! test: make object! [ [test-function: func [][ [print "test" [] [] test/test-function test help test/test-function test/test-function is a path -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] reb sites - Zork! thoughts
I haven't downloaded a copy of /View since the first release, mainly due to the lack of current documentation. One of the fun things I discovered was the Reb Sites links. One thought comes to mind: creating a massively distributed, Internet-based role-playing game the likes of Zork! where the world is created by anyone and everyone. Persons help to create their little pieces of the world by uploading a valid XML file to a central server. The XML file defines a specific "room" or "tile" and also the creatures, objects, actions, and dialog within each room. You could even create a room Editor using the Reb interface. A /View for every PC! -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: reb sites - Zork! thoughts
Not necessarily. One of the criteria built-in to the Reb-based "room editor" would be to choose the "type" of room you are creating. Of course, even that would be on the honor system. I think the hard part of making it so distributed would be keeping the game continuity. Two different people may design adjacent rooms, one being a very futuristic space capsule while the other is some bizarre, surreal room with chairs on the walls and 3 legged people drinking soda through their fingertips. Nevertheless, REBOL would be a great platform for it. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] [UPDATE] standard-message-function-library.r
The XML-based Standard Message dialect page has been updated here... http://www.dangeroustechnology.com/ The Standard Message Function Library file has been renamed and can be viewed here... http://www.dangeroustechnology.com/standard-message-function-library.txt The routines and subroutines I outlined for the system have been updated with finished subroutines marked in red here... http://www.dangeroustechnology.com/#one2 Here is a quick overview of usage for the Standard Message Function Library in its current state: USAGE: Messages can be translated from the REBOL object! datatype to the XML- based Standard Message (and vice-versa) using a translator. To translate from object! to XML: translate-message/markup-data rebol-object To translate from XML to object!: translate-message/read-markup %filename Messages can be translated from cgi input, an e-mail message or a newsgroup message to the REBOL object! datatype using a translator. The data must first be retrieved using REBOL's built-in Internet protocols, which places the data into a cgi object! or e-mail object! To translate from cgi input to the standard message object!: decode-to-object/from-cgi cgi-object To translate from e-mail or newsgroup messages to the standard message object!: decode-to-object/from-email email-object XML files are named based on the time they are generated. To generate a file name based on time: time-in-digits now Messages are created using CGI on a web server. To decode CGI input from the web server: cgi-input: retrieve-user-data Write the XML-formatted standard message data with a file name determined by messageID and to a directory determined by messageType. write-xml-message xml-message-string Messages are requested using CGI on a web server. Read a directory of file names corresponding to a directory of XML-formatted standard messages with the directory determined by messageType. read-message-directory message-request-data Read a specific XML-formatted standard message with the directory determined by messageType and the file name determined by messageID. read-message message-request-data Read a directory of XML-formatted standard messages with the directory determined by messageType. read-directory-messages message-directory message-request-data Messages are displayed as text/html output to a browser. Markup a standard message using standardized cascading style sheets tags as the display markup. display-markup/css xml-message-string Markup a standard message using a set of HTML tags as defined in an external object! as the display markup. display-markup/html xml-message-string html-tags -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] %std_msg_func_lib.r
Dangerous Technology at http://www.dangeroustechnology.com/ has been updated. I have now posted the Standard Message Function Library file %std_msg_func_lib.r for your comments and criticism. Read it with Carl's %color-code.r here... http://www.dangeroustechnology.com/std_msg_func_lib_2.html And read about it in %reboldoc.r format here... http://www.dangeroustechnology.com/std_msg_func_lib.html There is still a big to-do list for the function library, but here is a start. I recently added five new functions to the library. -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: Evaluating a maths expression in a string?
Here is something to get you started... expression-string: "2 + 2" == "2 + 2" do load expression-string == 4 Hello, I was just thinking of adding another function to my IRC bot. A mathematical evaluation expression. The question is, if I get a string which contains a mathematical expression - how would you evaluate this and get the result? Of course some form of error? try [] would be involved in case something went wrong... -- Mat Bettinson - EuroGamer's Gaming Evangelist with a Goatee http://www.eurogamer.net | http://www.eurogamer-network.com -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] [ANN] messaging site update
I have updated my XML-REBOL Standard Message site at http://www.dangeroustechnology.com I have now listed all of the routines and subroutines needed for building a standard messaging system in REBOL. Two of the subroutines are posted and explained. Again, any and all input regarding this effort is greatly appreciated. -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: [ANN] messaging site update
I have updated my XML-REBOL Standard Message site at http://www.dangeroustechnology.com Do you think you could make your example message somewhat less dangerous/morbid? Yes, I could change that. The example message was copied right out of a news article in The London Times a few days ago. Sadly, it is a true story. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: /precise problem
OK. It appears the /precise refinement when it rolls the thousandths- of-a-second from 999 back to 0 that it does NOT return zero nor none but some other value. This appears to work until the thousandths-of-a-second value reaches either 1,000 or zero (not sure how REBOL is handling this, which is where the problem lies, I believe.) Probably goes from 999 and roll around to 0, or none. ** Script Error: Out of range or past end ** Where: time-in-digits ** Near: partial-seconds: second split-seconds while [(length? whole-seconds) 2] Probably 'whole-seconds is 'none ? 20001228143859967 20001228143859977 20001228143859987 20001228143859987 20001228143859997 ** Script Error: Out of range or past end ** Where: time-in-digits ** Near: partial-seconds: second split-seconds print split-seconds 7E-3 Please forgive my ignorance, but what does the 7E-3 notation stand for in mathematical terms? (I haven't had a math class since high school.) And why is this value showing up? The word 'split-seconds is supposed to return two items in a series, both of which are string! datatypes. My new time-in-digits function follows. It includes some error checking in an attempt to harness the /precise refinement. Thanks -Ryan time-in-digits: func [ "Convert the date and time from 'now' into a string of digits." sun-dial [date!] "The current date and time from 'now'" ][ year: to-string sun-dial/year month: to-string sun-dial/month if (length? month) 2 [insert month "0"] day: to-string sun-dial/day if (length? day) 2 [insert day "0"] current-time: sun-dial/time hour: to-string current-time/hour if (length? hour) 2 [insert hour "0"] minutes: to-string current-time/minute if (length? minutes) 2 [insert minutes "0"] seconds: to-string current-time/second seconds-rounded: make integer! current-time/second either current-time/second = seconds-rounded [ whole-seconds: seconds partial-seconds: "000" ][ split-seconds: parse/all seconds "." whole-seconds: first split-seconds partial-seconds: second split-seconds ] while [(length? whole-seconds) 2][insert whole-seconds "0"] while [(length? partial-seconds) 3][append partial-seconds "0"] rejoin [year month day hour minutes whole-seconds partial-seconds] ] -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] [ANN] time-in-digits.r 1.3.0
Hooray! I have updated my 'time-in-digits function so that it can be used with the /precise refinement for 'now. I use 'time-in-digits exhaustively, because it can be used to create sequential session IDs over time and to create sequential file names over time. Because it can now handle the /precise refinement, it is very unlikely you will create the same session ID for multiple connections to a CGI interface (which was a possibility previously since more than one person might submit to CGI within the same exact second. Now there would only be a problem if more than one person might submit to CGI within the same exact thousandth of a second.) -Ryan REBOL [ Title: "Date and time in digits" Date:28-Dec-2000 Name:'time-in-digits Version: 1.3.0 File:%time-in-digits.r Author: "Ryan C. Christiansen" Email: [EMAIL PROTECTED] Owner: "Ryan C. Christiansen" Rights: "Copyright (C) Ryan C. Christiansen 2000" Tabs:4 Language: 'English Purpose: { Convert the date and time into a string of digits. } Comment: { Use this function to create a string of digits denoting the date and time. This is useful, especially for creating sequential session IDs. If used with 'now to create a file name, the newest file will always appear at the end of a directory. } History: [ 1.0.0 [12-June-2000 "posted to rebol.com" "Ryan"] 1.3.0 [28-Dec-2000 "updated for /precise refinement" "Ryan"] ] Category: [util 2] ] time-in-digits: func [ "Convert the date and time from 'now' into a string of digits." sun-dial [date!] "The current date and time from 'now'" ][ year: to-string sun-dial/year month: to-string sun-dial/month if (length? month) 2 [insert month "0"] day: to-string sun-dial/day if (length? day) 2 [insert day "0"] current-time: sun-dial/time hour: to-string current-time/hour if (length? hour) 2 [insert hour "0"] minutes: to-string current-time/minute if (length? minutes) 2 [insert minutes "0"] seconds: to-string current-time/second seconds-rounded: make integer! current-time/second either current-time/second = seconds-rounded [ whole-seconds: seconds partial-seconds: "000" ][ either seconds-rounded = 0 [ whole-seconds: "00" time-string: make string! (reform current-time) split-time: parse/all time-string "." partial-seconds: second split-time ][ either current-time/second = 0 [ whole-seconds: "00" partial-seconds: "000" ][ split-seconds: parse/all seconds "." whole-seconds: first split-seconds partial-seconds: second split-seconds ] ] ] while [(length? whole-seconds) 2][insert whole-seconds "0"] while [(length? partial-seconds) 3][append partial-seconds "0"] rejoin [year month day hour minutes whole-seconds partial-seconds] ] This appears to work until the thousandths-of-a-second value reaches either 1,000 or zero (not sure how REBOL is handling this, which is where the problem lies, I believe.) Probably goes from 999 and roll around to 0, or none. ** Script Error: Out of range or past end ** Where: time-in-digits ** Near: partial-seconds: second split-seconds while [(length? whole-seconds) 2] Probably 'whole-seconds is 'none ? I hope that helps! Andrew Martin ICQ: 26227169 http://members.nbci.com/AndrewMartin/ -- -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] following re-direction
There is a software site where they use some sort of re-direct to send you to the correct URL for a download. For example, here is the URL which appears on the page and which the browser sends back to the server requesting the file... http://www.bebits.com/bob/4515/3KBnewsreader.zip The web server receives this URL and then re-directs the request to a different URL. In this case I happen to know the URL (because it is my software.) http://www.beosjournal.com/rebol/3KBnewsreader.zip In the console session, you can see the re-direction, but REBOL only returns the domain and not the sub-directories nor the destination file name. read http://www.bebits.com/bob/4515/3KBnewsreader.zip connecting to: www.bebits.com connecting to: www.beosjournal.com == {PK^C^D^T^@^@^@^H^@^BÜ(Õ¯ç^_... Using REBOL, how can I find out the full URL I have been re-directed to in this situation? Thanks. -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] /precise problem
I'm working on updating my time-in-digits.r script so that it can use the /precise refinement as provided in the /Core experimental. However, I am running into a bit of a problem. The thousandths-of-a-second are returned with either one, two, or three decimal places, as such... 27-Dec-2000/15:36:52.739-6:00 27-Dec-2000/15:36:52.75-6:00 27-Dec-2000/15:36:52.76-6:00 27-Dec-2000/15:36:52.77-6:00 27-Dec-2000/15:36:52.78-6:00 27-Dec-2000/15:36:52.79-6:00 27-Dec-2000/15:36:52.8-6:00 27-Dec-2000/15:36:52.81-6:00 REBOL does not consistently return three decimal places for thousandths-of-a-second (i.e. if the value is ".300" then it just returns ".3") No problem, I created a workaround where current-time: now/time/precise seconds: to-string current-time/second split-seconds: parse/all seconds "." whole-seconds: first split-seconds partial-seconds: second split-seconds while [(length? whole-seconds) 2][insert whole-seconds "0"] while [(length? partial-seconds) 3][append partial-seconds "0"] This appears to work until the thousandths-of-a-second value reaches either 1,000 or zero (not sure how REBOL is handling this, which is where the problem lies, I believe.) Here is the output of my console in using my updated time-in-digits.r script with the following usage: forever [print time-in-digits now/precise] 20001227152414930 20001227152414930 20001227152414940 20001227152414940 20001227152414950 20001227152414950 20001227152414960 20001227152414960 20001227152414970 20001227152414970 20001227152414980 20001227152414980 20001227152414990 20001227152414990 ** Script Error: Out of range or past end ** Where: time-in-digits ** Near: partial-seconds: second split-seconds while [(length? whole-seconds) 2] Any clue as to what might be going on? Is REBOL returning four decimal places when it reaches the next full second? Or is it returning a "none" value? I'm not sure how to debug this. The script follows. Thanks. -Ryan BTW: using 'help on 'now tells you the /precise refinement is returning "nanosecond precision." Wouldn't that be nine decimal places? REBOL [ Title: "Date and time in digits" Date:27-Dec-2000 Name: 'time-in-digits Version: 1.1.0 File:%time-in-digits.r Author: "Ryan C. Christiansen" Email: [EMAIL PROTECTED] Owner: "Ryan C. Christiansen" Rights: "Copyright (C) Ryan C. Christiansen 2000" Tabs:4 Language: 'English Purpose: { Convert the date and time into a string of digits. } Comment: { Use this function to create a string of digits denoting the date and time. This is useful, especially with 'now to create a reference number as to when a file, object, etc., was created. If used with 'now to create a file name, the newest file will always appear at the end of a directory. } History: [ 1.0.0 [12-June-2000 "posted to rebol.com" "Ryan"] 1.1.0 [27-Dec-2000 "updated for /precise refinement" "Ryan"] ] Category: [util 2] ] time-in-digits: func [ "Convert the date and time from 'now' into a string of digits." sun-dial [date!] "The current date and time from 'now'" ][ year: to-string sun-dial/year month: to-string sun-dial/month if (length? month) 2 [insert month "0"] day: to-string sun-dial/day if (length? day) 2 [insert day "0"] current-time: sun-dial/time hour: to-string current-time/hour if (length? hour) 2 [insert hour "0"] minutes: to-string current-time/minute if (length? minutes) 2 [insert minutes "0"] seconds: to-string current-time/second split-seconds: parse/all seconds "." whole-seconds: first split-seconds partial-seconds: second split-seconds while [(length? whole-seconds) 2][insert whole-seconds "0"] while [(length? partial-seconds) 3][append partial-seconds "0"] rejoin [year month day hour minutes whole-seconds partial-seconds] ] -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: formatting of decimal value
Use 'reform, as such... decimal-value: make decimal! 1 == 1 decimal? decimal-value == true string-value: make string! (reform decimal-value) == "1" string? string-value == true -Ryan I've looked through the wole dictionary and don't see a quick method for converting a decimal! to a string! with a specified format. I C I'd do something like: sprintf( destString, "%.2f", number); Is there something similar in REBOL or do I need a function? -- David L. Hawley D.L. Hawley and Associates1.503.274.2242 Software Engineer [EMAIL PROTECTED] -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: using nntp in rebol
Here is something strange. Using "make string!" does not create a string! datatype from pi, but "to string!" does. decimal? pi == true pie: make string! pi == "" pike: to string! pi == "3.14159265358979" David, pi is a built-in constant of type decimal! When I say to string! pi == "3.14159265358979" so, it seems pretty easy. am I missing something? -Galt -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] ** Script Error: Cannot use copy on this type port
I'm teaching myself how to write to and read from ports in REBOL. While trying to copy the data from a port, I get the following error: ** Script Error: Cannot use copy on this type port Can anyone tell me why I cannot use 'copy? I get this error when I use the tcp protocol and the open/lines or open/string refinement. I do not get this error when I use the udp protocol. Here is an example of client and server scripts that do work (if I change the first line of each script to open/lines tcp:* or to open/string tcp:* I get the error): REBOL [] client: open udp://localhost:8009 forever [ message: input insert client message wait client print copy client ] REBOL [] server: open udp://:8009 forever [ wait server receipt: copy [] receipt: copy server print receipt insert server "ACK_RESPONSE" ] -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] absolute zero
In order to prove to my IRC buddies that -20F in Fargo, North Dakota, is NOT anywhere near absolute zero, I have updated my temperature conversion object to include Kelvin conversions, as follows: convert-temp/F-K -20 == 244.2611 -20F = 244.26K REBOL [ Title: "Temperature Converter" Date:15-Dec-2000 Version: 1.0.0 File:%convert-temp.r Author: "Ryan C. Christiansen" Email: [EMAIL PROTECTED] Purpose: { Convert Temperatures to and from units in Fahrenheit, Celsius, or Kelvin. } Example: { convert-temp/F-C 212 == 100 } ] convert-temp: make object! [ F-C: func [F] [C: ((F - 32) / 9) * 5] C-F: func [C] [F: ((C * 9) / 5) + 32] C-K: func [C] [K: C + 273.15] F-K: func [F] [K: (((F - 32) / 9) * 5) + 273.15] K-C: func [K] [C: K - 273.15] K-F: func [K] [F: (((K - 273.15) * 9) / 5) + 32] ] -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] %build-lib.r
In anticipation of putting up a site with a REBOL script library, I was playing around with Carl's %build-lib.r which can be found here... http://demo.rebol.net/cgi-bin/showfile.r?file=build- lib.rkeywords=[{library}]#search-1 Do you REALIZE how sweet this script is? As long as your scripts have good REBOL headers, this script will build your script library to look exactly like the one at rebol.com. You can change the look of things, of course, but hey! Most of the work for building a new script library Web page is already done. (you also need %color-code.r as a resource file for %build-lib.r.) If you were to combine this script with one I saw posted to this list a few weeks ago (a script which defined the words and functions in the script for you) then you'd have a great resource on the Web. Anyone know where this other script is that I'm talking about? Thanks. -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: Console life a bit over-expressive? Try dir-utils
Thank you for this script. I have wanted some bash functions in the console for some time, but I was too lazy to write them up myself. Hello everyone, I have recently made available a set of filesystem navigation functions for all to enjoy. Included are such classics (that we all know and love) as: 'cd - change directory (directory argument optional :) 'ls - list directory contents (with optional pattern matching) 'dir - list sub-directories and 'wd ~= what-dir I do %dir-utils.r in my user.r file and it makes my life much easier. (I don't have to crawl out of my shell.) Find it here: http://users.bigpond.net.au/datababies/anton/rebol/dir-utils.r I have tested these functions on REBOL/Core 2.3.0.3.1 24-Jun-2000 (win2k) REBOL/View 0.10.38.3.1 28-Nov-2000 (win2k) Yours sincerely, Anton. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] script library
The rebol.com script library hasn't been updated for nearly three months. http://www.rebol.com/library/library.html The rebol.org script library also does not display any "recent" entries. http://www.rebol.org/archive.html I prefer the rebol.com script library interface myself. Perhaps someone could use the rebol.com script library builder script itself as a reference http://demo.rebol.net/cgi-bin/showfile.r?file=build-lib.rkeywords=[{library}]#search-1 and put up a site where persons can send scripts via anonymous FTP? Does this sound attractive to anyone? I could work on this myself, but I couldn't promise any timeline. -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: http referrer
If you probe the cgi object, you should be able to see all of the cgi variables as REBOL understands them in the cgi object. http_referrer should be among them. I would guess you could set this variable and pass it to the executable. Folks, I've a need to submit a form in Rebol, using the latest (excellent) cookie-client.r script. I find the response I get back demands that I use the form on their site. I imagine this would be something to do with the http referrer field? Is there some way of setting this? -- Mat Bettinson - EuroGamer's Gaming Evangelist with a Goatee http://www.eurogamer.net | http://www.eurogamer-network.com -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: Time Function
You could first convert your elapsed times into the time! datatype... test-time: make time! 777:45:03 == 777:45:03 print test-time 777:45:03 Then you will at least have a datatype! object to work with, as such... print test-time/hour 777 print test-time/minute 45 print test-time/second 3 You can then discover the number of days in decimal form... test-days: test-time/hour / 24 == 32.375 Just some stuff to think about -Ryan Greets All, Im trying to write a function that calculates time elapsed (eg compare 12/12/2000,6:30:00 to 17/01/2001,12:00:00) , ive done the basic conversion of date/time to hours/minutes/seconds elapsed, but i cant figure out how to turn say "777:45:03" back into weeks / days / hours / minutes / seconds elapsed. help anyone? etcha -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Dummies!
I finally bought myself REBOL for Dummies. It's an early Christmas gift to myself. Thank you, Ralph, for a great book! Now if only I could purchase myself some TIME to work with REBOL more... 8-) -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: Time Function
You could first convert your elapsed times into the time! datatype... test-time: make time! 777:45:03 == 777:45:03 You can then discover the number of weeks or days in decimal form... test-weeks: test-time/hour / 168 == 4.625 test-days: test-time/hour / 24 == 32.375 That's a start. -Ryan That muched ive figured out so far, but want i want to do is convert it into weeks / days / hours / minutes / seconds, something like "1 Week, 32 days, 10 Hours, 35 minutes and 23 seconds has elapsed" i cant figure out how to calcuate that offa the time value alone. -Original Message- From: Giovanni Cardona [EMAIL PROTECTED] To: [EMAIL PROTECTED] [EMAIL PROTECTED] Date: Tuesday, December 12, 2000 5:52 AM Subject: [REBOL] Re: Time Function Im not a Rebol expert (Im just learning now) but it seems that print (777:45:03 / 24:00:00) tells you the days and print (777:45:03 / (24:00:00 * 7)) tells you the weeks. I bet there's a simple line evualator for this, but I dont know :) -=*=-=*=-=*=-=*=-=*=-=*=-=*=-=*=-=*=-=*=-=*=-=*=-=*=-=*=-=*=-=*=- "Miracles happen only to those who believe in them." * Visit 'The International Order of Sea-Monkey Owners' web site * http://roads.to/seamonkey * To subscribe to our monthly news, send a blank email to: * [EMAIL PROTECTED] - Original Message - From: Aden Burnie [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, December 11, 2000 10:10 AM Subject: [REBOL] Time Function Greets All, Im trying to write a function that calculates time elapsed (eg compare 12/12/2000,6:30:00 to 17/01/2001,12:00:00) , ive done the basic conversion of date/time to hours/minutes/seconds elapsed, but i cant figure out how to turn say "777:45:03" back into weeks / days / hours / minutes / seconds elapsed. help anyone? etcha -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: REBOL/View for commercial products
I don't think you would be able to have a self-updateable /View script since /View will not even launch if it is expired. So my question is: would it be possible to *BUY* (at a reasonable price) a version of REBOL/View (without support etc.) that does not expire? I think my costumer would *REALLY* be Why not build in the ability for your program to check for updates for View, and then update itself? -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: Which PDA for Rebol?
There is a BeOS-based WebTablet being manufactured by Qubit to begin selling in January. http://www.qubit.net/products/web_tablet.html There is, of course, /Core and experimental /View binaries available for the BeOS. -Ryan Heya Kolbjørn, KB But they all have keyboards, and some of them are quite usable, I do plenty KB of html and script writing on my newton using the stylus, works fine. I've only seen those 3COM Palm things. I type loads so I need a proper keyboard and a decent web browser (Opera). That's WinCE or EPOC as far as I have seen. I really like the look of the HP Jordana 720 but ... it uses a 200MHz ARM CPU and beyond - there's no Rebol for ARM WinCE. Sigh. That said it costs a fortune so the Psion 5mx or Revo Plus look like damn good units. Oh, but there's no Rebol for EPOC32 *. :( KB Also, since rebol is multiplatform, platformindependant yada yada you can KB write things on your desktop or whatever, and copy it over to the pda for KB use. It's multiplatform except for any PDA I'm considering :( No, I intend to actually do a bit of Rebol tinkering on a PDA. * I have no doubt there will be one day though, a LOAD of future 3G Mobile/data devices are using EPOC. -- Mat Bettinson - EuroGamer's Gaming Evangelist with a Goatee http://www.eurogamer.net | http://www.eurogamer-network.com -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: YYYYMMDD date format
A while ago I wrote and posted a script to the REBOL library which converts the date and time to a digit format (I use it mainly for creating chronological session IDs.) Here is the link and the script for your reference: http://www.rebol.com/library/html/time-in-digits.html REBOL [] time-in-digits: func [ "Convert the date and time from 'now' into a string of digits." sun-dial [date!] "The current date and time from 'now'" ][ year: to-string sun-dial/year month: to-string sun-dial/month if (length? month) 2 [insert month "0"] day: to-string sun-dial/day if (length? day) 2 [insert day "0"] current-time: sun-dial/time hour: to-string current-time/hour if (length? hour) 2 [insert hour "0"] minutes: to-string current-time/minute if (length? minutes) 2 [insert minutes "0"] seconds: to-string current-time/second if (length? seconds) 2 [insert seconds "0"] rejoin [year month day hour minutes seconds] ] Hi, I was wondering how can I get the date formatted as MMDD? Carlos -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] Re: disappearing data?
Why is the translate-message/markup-data function "reusable" in the following code translate-message: make object! [ markup-data: func [ data [object!] ][ xml-tags: [ ["author" "/author"] ["subject" "/subject"] ["date" "/date"] ["content" "/content"] ["messageID" "/messageID"] ] data-object: make data [] object-data: next first data-object output: "" for x 1 (length? xml-tags) 1 [ item: reform [rejoin ["data-object" "/" (first object-data)]] made-tag: rejoin ["" (build-tag [(xml-tags/1/1)]) (do item) (build-tag [(xml-tags/1/2)])] xml-tags: next xml-tags object-data: next object-data append output made-tag output ] ] ] BUT not in the following code... translate-message: make object! [ xml-tags: [ ["author" "/author"] ["subject" "/subject"] ["date" "/date"] ["content" "/content"] ["messageID" "/messageID"] ] markup-data: func [ data [object!] ][ data-object: make data [] object-data: next first data-object output: "" for x 1 (length? xml-tags) 1 [ item: reform [rejoin ["data-object" "/" (first object-data)]] made-tag: rejoin ["" (build-tag [(xml-tags/1/1)]) (do item) (build-tag [(xml-tags/1/2)])] xml-tags: next xml-tags object-data: next object-data append output made-tag output ] ] ] -Ryan I've created an object with a function which converts data in another object into XML. But the function will only work ONCE. Why? Here is the console session... translate-message: make object! [ [ [xml-tags: [ [["author" "/author"] [["subject" "/subject"] [["date" "/date"] [["content" "/content"] [["messageID" "/messageID"] [] [ [markup-data: func [ [data [object!] [][ [data-object: make data [] [object-data: next first data-object [output: "" [for x 1 (length? xml-tags) 1 [ [item: reform [rejoin ["data-object" "/" (first o bject-data)]] [made-tag: rejoin ["" (build-tag [(xml-tags/1/1)] ) (do item) (build-tag [(xml-tags/1/2)])] [ xml-tags: next xml-tags [object-data: next object-data [ append output made-tag [output [ ] [] [] message: make object! [ [ author: "Ryan C. Christiansen" [subject: "This is the Subject of the Message" [date: 27-Oct-2000/17:27:43-5:00 [content: {This is the main body of the message} [messageID: 20001027172734 [] translate-message/markup-data message == {authorRyan C. Christiansen/authorsubjectThis is the Subject of the Message/subjectdate27-Oct-2000/17:27:43-5:00/date... translate-message/markup-data message == none -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes. -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] search directory
Following is a script I created for searching for a keyword among .html files in a single directory. If you see any glaring potential problems, I'm listening. Otherwise, it works great. -Ryan REBOL [] print "Content-Type: text/html^/" ; --- CGI INPUT ("GET" METHOD) --- cgi-input: make object! decode-cgi system/options/cgi/query-string ; --- CONFIG HELP FILE DIRECTORY VARIABLES --- url-prefix: "http://www.domain.dom/path/" directory-contents: read %./ ; --- GET LIST OF FILE NAMES WITH VALID EXTENSIONS FROM DIRECTORY --- file-list: copy [] for file-grab 1 (length? directory-contents) 1 [ file-name: first directory-contents file-ext: find/last file-name "." if file-ext = %.html [ append file-list file-name ] directory-contents: next directory-contents ] ; --- QUERY HELP FILES FOR KEYWORD --- pages-with-keyword: copy [] help-file-titles: copy [] foreach help-file file-list [ file-contents: read help-file if find file-contents cgi-input/keyword [ append pages-with-keyword help-file parse file-contents [thru TITLE copy text to /TITLE (append help-file-titles text)] ] ] ; --- OUTPUT TO BROWSER --- print { !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" HTML HEAD TITLETitle/TITLE /HEAD BODY aLink=#3399ff bgColor=#cc link=#0033cc text=#33 vLink=#99 TABLE !-- begin search form -- TR TD FONT color=#9a9a66 face="Times New Roman"STRONGSearch/STRONG/FONT TR TD form method=get action="help_search.cgi" FONT FACE="'Times New Roman',Times,serif" SIZE="-1"BSearch for :/b/fontBRBR input type=text name="keyword" input type="submit" value="search" /form !-- end search form -- TR TD FONT color=#9a9a66 face="Times New Roman"STRONGSearch Results/STRONG/FONT TR TD FONT FACE="'Times New Roman',Times,serif" SIZE="-1"BClick on a link to view information about your search word :/b/fontBRBR } for link-display 1 (length? pages-with-keyword) 1 [ page: first pages-with-keyword page-title: first help-file-titles print rejoin [{TR} {TD} {A HREF="} url-prefix page {"} page- title {/A} {BR}] pages-with-keyword: next pages-with-keyword help-file-titles: next help-file-titles ] print { /TABLE /BODY /HTML } -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
[REBOL] iPlanet web server
Has anyone experienced problems using REBOL on an iPlanet web server? (on Solaris/Sparc) Thanks. -Ryan -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.