在 Windows 上安装

Requirements Permalink

  • Ruby version 2.4.0 or above, including all development headers (ruby version can be checked by running ruby -v)
  • RubyGems (which you can check by running gem -v)
  • GCC and Make (in case your system doesn’t have them installed, which you can check by running gcc -v,g++ -v and make -v in your system’s command line interface)

GCC 的安装

关于 Jekyll

Jekyll 是使用 Ruby 实现的。

Gems

一个 gem 就是可以包含在 Ruby 项目中的代码。gem 可以实现类似以下功能:

  1. 转换一个 Ruby 对象为 JSON
  2. 分页功能
  3. 与 GitHub 的 APIs 通信

Jekyll 自身和 Jekyll 的插件包括 jekyll-feed,jekyll-seo-tag 和 jekyll-archives 都是 gem。

Gemfile

一个 Gemfile 包含了一个站点需要的 gem 列表。示例:


source "https://rubygems.org" gem "jekyll" group :jekyll_plugins do
gem "jekyll-feed"
gem "jekyll-seo-tag"
end

Bundler

Bundler 用来安装包含在 Gemfile 中的 gems。

# 安装 Bundler
gem install bundler # 初始化 Gemfile
bundle init # 安装 gems
bundle install # 编译站点
bundle exec jekyll serve

关于 Liquid

Liquid 是一个模板语言,主要包含三个部分:objects、tags 和 filters。

Objects

Objects 告诉模板在什么地方输出内容。使用 {{ }} 表示。

示例:

{{ page.title }}

Tags

Tags 用来创建和控制模板的流程。使用 {% %} 表示。

示例:

{% if page.show_sidebar %}
<div class="sidebar">
sidebar content
</div>
{% endif %}

Filters

Filters 用来修改输出格式。

示例:

{{ "hi" | capitalize }}

关于 Front Matter

Front Matter 是 YAML 的片段,在文件顶部使用两个 --- 行包裹。通常用来设置页面的变量。

示例:

---
my_number: 5
---

Front Matter 变量在 Linquid 作为 page 的属性

{{ page.my_number }}

其他 Jekyll 脚本

# 创建 Blog
jekyll new myblog

Jekyll 摘要的更多相关文章

  1. 使用Jekyll官方的ReadMore摘要功能

    今天才发现,Jekyll官方就支持ReadMore摘要功能,记录一下. 我之前的方法,在index.html中 {{ post.content ||split:'<!-- more --> ...

  2. Github+Jekyll —— 创建个人免费博客(二)Ruby+Jekyll部署

    摘要: 本文中我将介绍一下如何在github上搭建个人Blog(博客),也顺便让我们掌握一下github Pages功能,另外还涉及到Jekyll技术. ======================= ...

  3. Github+Jekyll —— 创建个人免费博客(一)从零开始

    摘要: 本文中我将介绍一下如何在github上搭建个人Blog(博客),也顺便让我们掌握一下github Pages功能,另外还涉及到Jekyll技术. ======================= ...

  4. 【五】将博客从jekyll迁移到了hexo

    本系列有五篇:分别是  [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面  [二]jekyll 的使用 :主要是jekyll的配置  [三]Markdo ...

  5. 用jekyll制作高大上的网站(二)——实际应用

    最近公司要制作个文档库,直接就可以将jekyll应用到实际中. 模版使用了Jekyll Clean,这么模版相对内部简单一点,学习成本不会很大,而复杂的Minimal Mistakes就当作参考. 模 ...

  6. 将博客从jekyll迁移到了hexo

    关于hexo和jekyll hexo和jekyll一样都是个静态网站生成工具,hexo是一个台湾小伙使用nodejs开发的,jekyll则是用ruby开发,github内置了jekyll,可以直接将j ...

  7. 从Wordpress迁移到Jekyll

    http://pinkyjie.com/2013/10/24/migrate-from-wordpress-to-jekyll/ 上周末闲着没事干突然想把博客从Wordpress迁移到Github p ...

  8. 搭建一个免费的,无限流量的Blog----github Pages和Jekyll入门

    喜欢写Blog的人,会经历三个阶段. 第一阶段,刚接触Blog,觉得很新鲜,试着选择一个免费空间来写. 第二阶段,发现免费空间限制太多,就自己购买域名和空间,搭建独立博客. 第三阶段,觉得独立博客的管 ...

  9. jekyll博客安装

    摘要: 一直用Mac,换了新公司使用的电脑是windows,网上粗略的看了一下Jekyll的安装.简略的实现了一遍 首先安装Ruby "Ruby安装文件下载地址" 下载对应版本,我 ...

随机推荐

  1. 第3章 JDK并发包(一)

    3.1 多线程的团队协作:同步控制 3.1.1 synchronized的功能扩展:重入锁 重入锁可以完全替代synchronized关键字. 重入锁使用java.util.concurrent.lo ...

  2. String、StringBuffer和StringBuilder总结

    String String类是不可变(final)的,对String类的任何改变,都是返回一个新的String类对象. StringBuffer 当对字符串进行修改的时候,需要使用 StringBuf ...

  3. MySQL性能优化---索引

    一.什么是索引 索引用来快速地寻找那些具有特定值的记录,所有MySQL索引都以B-树的形式保存.如果没有索引,执行查询时MySQL必须从第一个记录开始扫描整个表的所有记录,直至找到符合要求的记录.表里 ...

  4. Python趣味入门02: 妥妥地安装配置Python(Windows版)

    < 上一篇:Python趣味入门01:你真的了解Python么? 本篇内容手把手教您如何去网上下载安装Python的运行环境,本文写于2020年Python稳定的版本是3.8,Windows流行 ...

  5. 一文彻底搞懂 TCP三次握手、四次挥手过程及原理

    原创文章出自公众号:「码农富哥」,欢迎收藏和关注,如转载请注明出处! TCP 协议简述 TCP 提供面向有连接的通信传输,面向有连接是指在传送数据之前必须先建立连接,数据传送完成后要释放连接. 无论哪 ...

  6. React中setState注意事项

    setState是一个异步函数,异步获取数据 学习react在使用ref和setState操作DOM时会遇到的问题: ref获取ul结点元素 错误写法:得到的ul长度总是上一次输入后的长度 结果: 正 ...

  7. Git安装与配置,以及pycharm提交代码到github

    1.下载git,安装 下载好后直接下一步到底,安装成功(选择组件页面,可以勾选上控制台窗口字体选项,如下图) 2.配置Git信息 1.打开窗口中,输入:git --version 查看已安装的git版 ...

  8. 有哪些「看似复杂,实则简单」的 PS 技巧?

    Mac版ps2019哪里有?本次主要以组合键为主,PS中隐藏功能都是通过这些“组合技”启动的,据统计熟练地使用一系列组合技会让你的效率提升30%(纯属虚构).其中一些比较难理解的我都制作了GIF动态图 ...

  9. LoaderTest加载测试用例的方法总结

    加载用例,可以用suite.addTest(测试类名("测试函数名"))实现,也可用过suit.addTest(loader.Loader....)实现,一下针对Loader的三个 ...

  10. C#实现把String字符串转化为SQL语句中的In后接的参数

    实现把String字符串转化为In后可用参数代码: public string StringToList(string aa) { string bb1 = "("; if (!s ...