Por que Ruby não reconhece o Haml sob o ubuntu64 enquanto usa jekyll static generator?

1

Eu tenho tentado, sem sucesso, executar o fork do henrik do jekyll gerador de blogs estáticos no Ubuntu 64-bit. Eu simplesmente não consigo descobrir isso e eu tentei um monte de coisas diferentes. Originalmente eu postei isso no stackoverflow, mas esse é provavelmente o melhor lugar para isso.

As estatísticas básicas da minha máquina: Ubuntu 9.04, 64 bits, ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux], rubygems 1.3.1.

Quando tento criar o site, é isso que acontece:

$ jekyll --pygments  
Configuration from ./_config.yml  
Using Sass for CSS generation  
You must have the haml gem installed first  
Using rdiscount for Markdown  
Building site: . -> ./_site  
/home/chris/.gem/gems/henrik-jekyll-0.5.2/bin/../lib/jekyll/core_ext.rb:27:in  'method_missing': undefined method 'header' for #,  page=#  
..... cut .....  
(NoMethodError)
  from (haml):9:in 'render'
  from /home/chris/.gem/gems/haml-2.2.3/lib/haml/engine.rb:167:in 'render'  
  from /home/chris/.gem/gems/haml-2.2.3/lib/haml/engine.rb:167:in 'instance_eval'  
  from /home/chris/.gem/gems/haml-2.2.3/lib/haml/engine.rb:167:in 'render'  
  from /home/chris/.gem/gems/henrik-jekyll-0.5.2/bin/../lib/jekyll/convertible.rb:72:in 'render_haml_in_context'  
  from /home/chris/.gem/gems/henrik-jekyll-0.5.2/bin/../lib/jekyll/convertible.rb:105:in 'do_layout'  
  from /home/chris/.gem/gems/henrik-jekyll-0.5.2/bin/../lib/jekyll/post.rb:226:in 'render'  
  from /home/chris/.gem/gems/henrik-jekyll-0.5.2/bin/../lib/jekyll/site.rb:172:in 'read_posts'  
  from /home/chris/.gem/gems/henrik-jekyll-0.5.2/bin/../lib/jekyll/site.rb:171:in 'each'  
  from /home/chris/.gem/gems/henrik-jekyll-0.5.2/bin/../lib/jekyll/site.rb:171:in 'read_posts'  
  from /home/chris/.gem/gems/henrik-jekyll-0.5.2/bin/../lib/jekyll/site.rb:210:in 'transform_pages'  
  from /home/chris/.gem/gems/henrik-jekyll-0.5.2/bin/../lib/jekyll/site.rb:126:in 'process'  
  from /home/chris/.gem/gems/henrik-jekyll-0.5.2/bin/jekyll:135  
  from /home/chris/.gem/bin/jekyll:19:in 'load'  
  from /home/chris/.gem/bin/jekyll:19

Eu adicionei espaços à esquerda do ClosedStruct para permitir uma melhor visibilidade - desculpe que a minha formatação html / inline não seja perfeita. Eu também recorto um texto do meio que é apenas um dado.

$ gem list

*** LOCAL GEMS ***

actionmailer (2.3.4)
actionpack (2.3.4)
activerecord (2.3.4)
activeresource (2.3.4)
activesupport (2.3.4)
classifier (1.3.1)
directory_watcher (1.2.0)
haml (2.2.3)
haml-edge (2.3.27)
henrik-jekyll (0.5.2)
liquid (2.0.0)
maruku (0.6.0)
open4 (0.9.6)
rack (1.0.0)
rails (2.3.4)
rake (0.8.7)
rdiscount (1.3.5)
RedCloth (4.2.2)
stemmer (1.0.1)
syntax (1.0.0)

Algumas exibições para verificação de caminho:

$ echo $PATH
/home/chris/.gem/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

$ which haml  
/home/chris/.gem/bin/haml  
$ which jekyll  
/home/chris/.gem/bin/jekyll  
    
por Dennis Williamson 12.09.2009 / 01:10

1 resposta

1

Você está chamando algo em seu modelo chamado "cabeçalho" que não corresponde a um método disponível. Corrija seu modelo e tudo ficará bem.

    
por 12.09.2009 / 07:54