2012-04-14 22 views
6

estoy tratando de utilizar Octopress (un motor de blogs en la parte superior de Jekyll) en mi nuevo Macbook, y me sale este error cuando corro bundle exec jekyll --server:equivocado argumento de tipo cadena (Array esperado)

(ruta más corta)

/path/to/markdown.rb:118:in `to_html': wrong argument type String (expected Array) (TypeError) 
from /path/to/markdown.rb:118:in `convert' 
... 

(ruta completa)

/usr/local/rvm/gems/ruby-1.9.2-p290/gems/jekyll-0.11.0/lib/jekyll/converters/markdown.rb:118:in `to_html': wrong argument type String (expected Array) (TypeError) 
from /usr/local/rvm/gems/ruby-1.9.2-p290/gems/jekyll-0.11.0/lib/jekyll/converters/markdown.rb:118:in `convert' 
... 

en cuanto a la línea 118, que veo:

RDiscount.new(content, *@rdiscount_extensions).to_html 

Si reemplazo esta línea con una cadena como "hola", el servidor comienza bien. Pero si lo reemplazo con algo como RDiscount.new("hello").to_html, obtengo el mismo error. Sin embargo, ejecutar irb y ejecutar RDiscount.new("hello").to_html funciona bien.

¿Alguna idea de qué pasa? Puedo iniciar el servidor en otra computadora que tengo, pero no estoy seguro de cómo averiguar cuál es la diferencia entre lo que las dos computadoras están haciendo (¿una versión diferente de alguna biblioteca en alguna parte?).

+0

Muy extraño. Tal vez intente cambiar a [kramdown] (http://kramdown.rubyforge.org/) en lugar de RDiscount? – Phrogz

Respuesta

3

Solo un pensamiento, pero ha intentado actualizar su gemset? La versión más reciente de jekyll es 0.11.2 y usa maruku por defecto en lugar de RDiscount.

https://github.com/mojombo/jekyll/wiki/Install

+0

Sí, he intentado actualizar mis gemas (IIRC, cambié manualmente a RDiscount en lugar de Maruku debido al soporte de LaTeX, siguiendo algunas instrucciones de LaTeX de jekyll <-> que seguí en algún lugar). – grautur

1

primero que haría es comprobar todas las versiones. ruby -v, gem -v, gem list -d sinatra, gem list -d octopress. etc. y busca diferencias.

0

Estaba teniendo este error también. Lo resolví creando un nuevo gemset RVM y volviendo a ejecutar la instalación del paquete.

Ver también https://github.com/rtomayko/rdiscount/issues/66

$ rvm gemset create gaga 
'gaga' gemset created (/Users/chaffee/.rvm/gems/[email protected]). 
$ rvm use @gaga 
Using /Users/chaffee/.rvm/gems/ruby-1.9.3-p125 with gemset gaga 
$ bundle install 
... 
Installing rdiscount (1.6.8) with native extensions 
... 
$ irb 
>> require 'rdiscount' 
=> true 
>> RDiscount.new("hello").to_html 
=> "<p>hello</p>\n" 
Cuestiones relacionadas