World: r3wp
[Core] Discuss core issues
older newer | first last |
PeterWood 14-May-2006 [4363] | This may help http://www.rebol.org/cgi-bin/cgiwrap/rebol/ml-display-message.r?m=rmlVVYS Found via the ML Topic Index under format/numbers with commas |
Henrik 14-May-2006 [4364x4] | great! thanks |
quite a bit of code there. hopefully my suggestion for EXTRACT for REBOL3 will be accepted :-) that would make this a whole lot simpler | |
oh, works only on integers :-( | |
graham, I looked at printf and it seems to require a DLL interface? | |
PeterWood 14-May-2006 [4368] | I don't think that printf will insert comma separators from looking at the man page. |
Gabriele 14-May-2006 [4369x4] | I have this: |
>> form-decimal 10 0 == "10" >> form-decimal 10 2 == "10,00" >> form-decimal 100000 2 == "100'000,00" >> form-decimal 100000 0 == "100'000" | |
very old... result is rebol loadable | |
not sure code is readable... but if you want to play with it anyway... | |
Henrik 14-May-2006 [4373x2] | that looks good |
as long as it's readable to rebol :-) | |
Graham 14-May-2006 [4375x2] | $ echo "1234567890" | perl -pe '1 while s/(.*)(\d)(\d\d\d)/$1$2,$3/' 1,234,567,890 |
http://www.sunmanagers.org/pipermail/summaries/2002-December/002817.html and there's an awk script on the same page | |
PeterWood 14-May-2006 [4377x2] | Try this thread, which includes a version of Gabriele's form-decimal http://www.rebol.org/cgi-bin/cgiwrap/rebol/ml-display-thread.r?m=rmlLTLK |
All the versions are quite long though. | |
Henrik 14-May-2006 [4379] | gabriele's solution works fine here :-) |
PeterWood 14-May-2006 [4380] | Did you notice the ; ***WARNING*** positive numbers only. |
Gabriele 14-May-2006 [4381x7] | the version i sent him is the older, more generic one, which uses italian rules for formatting (, to separate decimals, ' to separate groups of 3 digits) |
graham, the above regexp can be written in parse as: | |
digits: charset "1234567890" reverse rewrite reverse "1234567890" [[x: 4 digits] [(copy/part x 3) "," (pick x 4) | |
using my rewrite function | |
sorry, should be: digits: charset "1234567890" reverse rewrite reverse "1234567890" [[x: 4 digits] [(copy/part x 3) "," (pick x 4)]] | |
>> digits: charset "1234567890" reverse rewrite reverse "1234567890" [[x: 4 digits] [(copy/part x 3) "," (pick x 4)]] == "1,234,567,890" | |
i wouldn't suggest doing it this way though ;) | |
Graham 14-May-2006 [4388x2] | to-comma: func [ n [number!] /local tx result ][ tx: reverse form n result: copy "" while [ not tail? tx ][ repend result [ part: copy/part tx 3] tx: skip tx 3 if all [ not tail? tx 3 = length? part ][ append result "," ] ] reverse result ] |
no decimals ... | |
Gabriele 14-May-2006 [4390] | don't forget that if you use comma to group digits, you can't load it back in rebol anymore. |
Graham 14-May-2006 [4391x3] | Rebol uses ' as a separator |
to-comma: func [ n [number!] /local tx result parts left right ][ one-comma: func [ tx /local result ][ result: copy "" while [ not tail? tx ][ repend result [ part: copy/part tx 3] tx: skip tx 3 if all [ not tail? tx 3 = length? part ][ append result "," ] ] result ] parts: parse tx: form n "." left: reverse one-comma reverse parts/1 either found? parts/2 [ right: one-comma parts/2 rejoin [ left "." right ] ][ left ] ] handles decimal points as well. | |
>> to-comma 1 == "1" >> to-comma 1234 == "1,234" >> to-comma .1 == "0.1" >> to-comma .1234 == "0.123,4" >> to-comma 1234.1234 == "1,234.123,4" | |
Joe 15-May-2006 [4394x3] | I have trouble sending a BCC email with the new send function. Can anybody verify ? (I am using authenticated smtp) |
h: make system/standard/email [ BCC: [copy-:-domain-:-com]] | |
send/header [to-:-email-:-com] msg h | |
Anton 15-May-2006 [4397x2] | Vaguely I think it should be: reduce ['bcc [copy-:-domain-:-com]] |
no sorry, let me try... | |
Graham 15-May-2006 [4399] | don't think send supports cc |
Anton 15-May-2006 [4400] | Yes, that's right, SEND is BCC by default. Note the /show refinement: /show "Show all recipients in the TO field" That means by default they are not shown. |
Joe 15-May-2006 [4401x4] | looking at send source, /show just clears the header to field, so it works when you send to multiple recipients and each one doesn't see who else received the email. When a message is sent to a single recipient the client shows the message is directed to you anyway. The trouble is this is not bcc |
In this case, each message is individually addressed with only the recipient's email name appearing in the To field (similar to BCC addressing). | |
http://www.rebol.com/docs/core23/rebolcore-13.html- section 9.2 | |
Sorry, the above to posts refer to the Core 2.3 docs. I have trouble with the "similar to bcc" If someone can provide some hints on how I should handle BCC then I will modify send source. To me this is a bug (i submitted to RAMBO) and I don't see what's the point of having BCC field in the standard header if this field is ignored | |
Graham 15-May-2006 [4405x3] | if you want bcc, just send the mail again addressed to the bcc recipient. |
I think those fields are telling the email client how to send them. It is up to you to implement them. | |
I can't think of any reason why an email client should ever receive an email with a bcc field. | |
Joe 15-May-2006 [4408x5] | Graham, I tried that but you get the same email than before with a different recipient but no BCC. I want to use BCC for some archiving project so I want to preserve the original To field like in real Bcc messages |
Graham, I am not in the corporate world, but when I was Bcc was one of the hottest features, so many people used it to copy managers without the recipients being aware. I did like that use but it was widely accepted method to keep people in the loop | |
I did like --> I meant I didn't like | |
A semi-solution to this problem has been posted in RAMBO http://www.rebol.net/cgi-bin/rambo.r?id=4103& | |
This is a hack because the message shows the original headers so it's not true bcc but it partly solves my problem thanks | |
older newer | first last |