Ubuntu 14.04 | 默认 ruby 1.9.1 | Jekyll 0.11.2
Jekyll 不尊重我在 _config.yml 中的许多设置。我猜这是因为当前的 Jekyll (gem) 版本是 2.3.0,但我可能错了。
被忽略的具体设置是:
- 分页
- 目的地
这两个问题都会影响 Jekyll 创建的 URL。有没有办法:
- 安全地将 Jekyll 更新到当前版本(不破坏 Ubuntu)?
- 强制 Jekyll 识别我的设置?
答案1
如你所见,Debian/Ubuntu 中的一些应用程序往往非常老旧,对于 Ruby,我们通常倾向于避免使用系统包。有一些非常强大的 Ruby 管理器,例如右心室(推荐给初学者)和萊本它会在您的主目录中创建一个独立的 Ruby 安装,这样您就可以控制所有内容并保持最新状态。
但是,如果你只想使用 Jekyll,那么 Ruby 的打包版本也适用于你,你只需通过以下方式安装最新版本的 Jekyll:RubyGems使用补充gem
命令(ruby
包的一部分)。
首先,您需要 Ruby 的开发文件(ruby-dev
包),因为 Jekyll 的一些依赖项需要编译。此外,最新版本的 Jekyll 需要一些 JavaScript 解释器(例如nodejs
):
sudo apt-get install ruby-dev nodejs
现在你有两个选择。你可以全局安装 Jekyll,也可以在你的主目录中本地安装。
全局安装更简单,因为你几乎不需要配置任何东西。只需卸载软件包jekyll
并jekyll
使用 sudo 安装 gem:
sudo apt-get remove jekyll
sudo gem install jekyll
这会将 Ruby 依赖项安装到 中/var/lib/gems/1.9.1
并将jekyll
可执行文件安装到 中/usr/local/bin/jekyll
。然后只需运行以下命令即可验证 Jekyll 的版本:
jekyll --version
全局安装可能看起来很可怕,但它不会导致任何问题,特别是当你只需要 Jekyll 并且不进行任何繁重的 Ruby 开发时。
本地安装在您的主目录中可以通过几种方式完成,在这里我将jekyll
可执行文件放入~/bin
目录中 - 它应该会自动添加到您的$PATH
.
gem install --user-install --bindir ~/bin jekyll
使用--user-install
选项,宝石将被安装到~/.gem/ruby/1.9.1
/
--bindir
告诉可执行文件应该放在哪里。如果~/bin
尚不存在,gem 可能会抱怨:
WARNING: You don't have /home/<user>/bin in your PATH,
gem executables will not run.
您可能只需要重新加载终端或注销。
您还可以将这些选项添加到.gemrc
文件中,以便在运行时始终使用它们gem
:
gem: --user-install --bindir ~/bin
请注意,如果你想使用 Jekyll 的其他插件和/或希望将 Jekyll 用于 GitHub 页面,你还应该考虑使用 Bundler 来管理你的依赖项,如中所述这篇 GitHub 文章。