# S3strano

**URL:** <https://www.ruby-forum.com/t/s3strano/107240>\
**Category:** IT\
**Created:** [June 19, 2007, 3:06pm UTC](https://www.ruby-forum.com/t/s3strano/107240 "2007-06-19T15:06:47Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![esox\_ch](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/4da419/32.png) [@esox\_ch](https://www.ruby-forum.com/u/esox_ch)\
**Post date:** [June 19, 2007, 3:06pm UTC](https://www.ruby-forum.com/t/s3strano/107240/1 "2007-06-19T15:06:47Z")

</div>

mmm ho fatto la stessa cosa con s3 e ho un paio di problemini

1. non accetta pagine in utf-8 ma solo in ansi (se arrivano in utf-8 si  
incazza con i tre caratterini che precedono il contenuto del documento)
2. se uso il require anziché wiki.run mi da stack level too deep

S3HELLOWORLD.RB  
require ‘s3strano’

wiki = QbS3.new ‘[http://s3.amazonaws.com/Jeko](http://s3.amazonaws.com/Jeko)’

require\_first\_from wiki

wiki.run ‘helloworld’ #funziona  
#wiki.run ‘helloworldUTF8’ #non funziona  
#require ‘helloworld’ #non funziona

S3STRANO.RB  
#!/usr/bin/env ruby

#s3strano.rb

require ‘open-uri’

class QbS3  
def initialize base\_url=nil  
@base\_url = base\_url || ‘[http://127.0.0.1:3000](http://127.0.0.1:3000)’  
end

```
def run page
    eval get_as_code(page)
end

```

private

```
def get_as_code page
    get page
end

def get page
     load "#{@base_url}/#{page}.rb"
end

def load url
    (open url).read
end

```

end

def override\_require &new\_require  
alias original\_require require  
$new\_require = new\_require

```
def require filename
    $new_require.call filename
end

```

end

def require\_first\_from wiki

override\_require do |required\_resource|  
begin #local-lookup  
original\_require required\_resource  
rescue LoadError #wiki-lookup  
wiki.run required\_resource  
end  
end  
end

#end of s3strano.rb

---

<div class="post-metadata">

**Author:** ![esox\_ch](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/4da419/32.png) [@esox\_ch](https://www.ruby-forum.com/u/esox_ch)\
**Post date:** [June 19, 2007, 6:26pm UTC](https://www.ruby-forum.com/t/s3strano/107240/2 "2007-06-19T18:26:13Z")

</div>

Sono un fagiano: avevo un file che si chaimava hellowrold parchggiato  
nella directory, e il require faceva casini. Mi scordo sempre questa  
regola… Non chiamare mai i file come le librerie che vai ad includere  
… Grunt…

Il problema dell’utf-8 non è risolto

jeko

---

<div class="post-metadata">

**Author:** ![esox\_ch](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/4da419/32.png) [@esox\_ch](https://www.ruby-forum.com/u/esox_ch)\
**Post date:** [June 19, 2007, 6:40pm UTC](https://www.ruby-forum.com/t/s3strano/107240/3 "2007-06-19T18:40:15Z")

</div>

On 6/19/07, Stefano G. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Sono un fagiano: avevo un file che si chaimava hellowrold parchggiato  
> nella directory, e il require faceva casini. Mi scordo sempre questa  
> regola… Non chiamare mai i file come le librerie che vai ad includere …  
> Grunt…
> 
> Il problema dell’utf-8 non è risolto

non riesci a filtrarlo quel testo?

nel frattempo ho sviluppato un paio di idee folli che non vedo l’ora di  
infilare in una versione ad hoc di qb.

pensa a un paio di pagine wiki che rappresentino controllers e template  
e un  
pò di routing fatto bene… ti ritrovi con delle apps web costruite da  
dentro  
il wiki!

---

<div class="post-metadata">

**Author:** ![esox\_ch](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/4da419/32.png) [@esox\_ch](https://www.ruby-forum.com/u/esox_ch)\
**Post date:** [June 19, 2007, 7:15pm UTC](https://www.ruby-forum.com/t/s3strano/107240/4 "2007-06-19T19:15:21Z")

</div>

beh si Ã¨ abbastanza facile filtrarli, sono tre caratterini… ma poi  
tutto il resto? devo vedere come escono i caratteri accentati ecc…  
vabbÃ¨ poi ci provo

per la tua idea: Ã¨ sufficientemente folle da sembrare proprio una buona  
idea 🙂 e a dire il vero non deve essere neanche impossibile, magari  
fatta come plugin rails…

j.

* * *

Da: removed\_email\_address@domain.invalid per conto di chiaro scuro  
Inviato: mar 19/06/2007 18.39  
A: ruby-it  
Oggetto: Re: [ruby-it] s3strano

On 6/19/07, Stefano G. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Sono un fagiano: avevo un file che si chaimava hellowrold parchggiato  
> nella directory, e il require faceva casini. Mi scordo sempre questa  
> regola… Non chiamare mai i file come le librerie che vai ad includere …  
> Grunt…
> 
> Il problema dell’utf-8 non Ã¨ risolto

non riesci a filtrarlo quel testo?

nel frattempo ho sviluppato un paio di idee folli che non vedo l’ora di  
infilare in una versione ad hoc di qb.

pensa a un paio di pagine wiki che rappresentino controllers e template  
e un  
pÃ² di routing fatto bene… ti ritrovi con delle apps web costruite da  
dentro  
il wiki!

---

<div class="post-metadata">

**Author:** ![esox\_ch](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/4da419/32.png) [@esox\_ch](https://www.ruby-forum.com/u/esox_ch)\
**Post date:** [June 19, 2007, 7:40pm UTC](https://www.ruby-forum.com/t/s3strano/107240/5 "2007-06-19T19:40:24Z")

</div>

Il giorno mar, 19/06/2007 alle 18.39 +0200, chiaro scuro ha scritto:

> nel frattempo ho sviluppato un paio di idee folli che non vedo l’ora di  
> infilare in una versione ad hoc di qb.
> 
> pensa a un paio di pagine wiki che rappresentino controllers e template e un  
> pÃ² di routing fatto bene… ti ritrovi con delle apps web costruite da dentro  
> il wiki!

Buttaci dentro un IDE con interfaccia web e ottieni Seaside+Pier(\*) 😉

Giovanni

\*: non proprio, ma quasi.
