SyntaxError в плагине octopress image_tag при создании блога

Я использую octopress для своего технического блога. Я обновил свои коды октопресса из официального репозитория октопресса, и я получаю такую ​​​​ошибку, когда запускаю rake generate:

 |1.9.3-p194| home in ~/Documents/work/git/muratcorlu.github.com
± |source ✓| → rake generate
## Generating Site with Jekyll
directory source/stylesheets/ 
   create source/stylesheets/screen.css 
Configuration from /Users/muratcorlu/Documents/work/git/muratcorlu.github.com/_config.yml
/Users/muratcorlu/Documents/work/git/muratcorlu.github.com/plugins/category_generator.rb:109: warning: regexp has invalid interval
/Users/muratcorlu/Documents/work/git/muratcorlu.github.com/plugins/category_generator.rb:109: warning: regexp has `}' without escape
/Users/muratcorlu/Documents/work/git/muratcorlu.github.com/plugins/category_generator.rb:146: warning: regexp has invalid interval
/Users/muratcorlu/Documents/work/git/muratcorlu.github.com/plugins/category_generator.rb:146: warning: regexp has `}' without escape
/Library/Ruby/Gems/1.8/gems/jekyll-0.11.2/bin/../lib/jekyll/site.rb:76:in `require': /Users/muratcorlu/Documents/work/git/muratcorlu.github.com/plugins/image_tag.rb:27: undefined (?...) sequence: /(?<class>\S.*\s+)?(?<src>(?:https?:\/\/|\/|\S+\/)\S+)(?:\s+(?<width>\d+))?(?:\s+(?<height>\d+))?(?<title>\s+.+)?/ (SyntaxError)
/Users/muratcorlu/Documents/work/git/muratcorlu.github.com/plugins/image_tag.rb:29: undefined (?...) sequence: /(?:"|')(?<title>[^"']+)?(?:"|')\s+(?:"|')(?<alt>[^"']+)?(?:"|')/
    from /Library/Ruby/Gems/1.8/gems/jekyll-0.11.2/bin/../lib/jekyll/site.rb:76:in `setup'
    from /Library/Ruby/Gems/1.8/gems/jekyll-0.11.2/bin/../lib/jekyll/site.rb:75:in `each'
    from /Library/Ruby/Gems/1.8/gems/jekyll-0.11.2/bin/../lib/jekyll/site.rb:75:in `setup'
    from /Library/Ruby/Gems/1.8/gems/jekyll-0.11.2/bin/../lib/jekyll/site.rb:30:in `initialize'
    from /Library/Ruby/Gems/1.8/gems/jekyll-0.11.2/bin/jekyll:224:in `new'
    from /Library/Ruby/Gems/1.8/gems/jekyll-0.11.2/bin/jekyll:224
    from /usr/bin/jekyll:23:in `load'
    from /usr/bin/jekyll:23

В чем проблема?


person Murat Çorlu    schedule 19.11.2012    source источник
comment
вы сравнивали с этой строкой? (отсутствует «i») github.com/imathis/octopress/ блоб/мастер/плагины/   -  person gokmen    schedule 20.11.2012
comment
Да, они точно такие же. Мой код также находится на github: github.com /muratcorlu/muratcorlu.github.com/blob/source/plugins/   -  person Murat Çorlu    schedule 20.11.2012
comment
Так что же происходит, когда вы отменяете слияние из Octopress of tip? В основном я спрашиваю, эта ошибка возникла до слияния? или вы писали новый пост и началась ошибка? Спрашиваю, потому что я столкнулся с несколькими ошибками с наконечником, и обычно возвращаюсь - жду отчета об ошибке или снова сливаю через месяц.   -  person eduncan911    schedule 03.08.2014


Ответы (1)


Сначала я попробовал RegEx в irb:

$ irb
irb(main):001:0> /(?:"|')(?<title>[^"']+)?(?:"|')\s+(?:"|')(?<alt>[^"']+)?(?:"|')/
=> /(?:"|')(?<title>[^"']+)?(?:"|')\s+(?:"|')(?<alt>[^"']+)?(?:"|')/
irb(main):002:0> 

У меня не было ошибки, но потом я узнал, что моя версия ruby ​​по умолчанию на сервере — 1.8.7.

Я выбрал ruby-1.9.3-p551 от rvm и сделал его активным.

Я сделал следующее:

rvm use ruby-1.9.3-p551
bundle install
bundle exec rake generate

Это решило ошибку для меня.

person tuxdna    schedule 15.12.2014