`
suqing
  • 浏览: 186792 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

Jekyll

 
阅读更多

Jekyll 静态网站生成器。这里有个QuickStart

 

Ruby环境安装

$ gem install jekyll

 

默认基于Liquid

语法       :输出标记 & 标签标记

输出标记:由两个大括号分隔 {{ }}

标签标记:由大括号 百分号分隔 {% %}

注意       :Angular框架中使用了相同的标记{{}},也就是Angular表达式并没有做为原始文本到Jekyll生成的静态模板,因为在Jekyll编译的时候{{ }}里面的内容会被Liquid编译。

我不想改变Angular的语法,所以想找找看有没有一个简单的方法改变Liquid表达符号。但没找到。 

所幸Angular可以,这段代码放在angular.js后面。

 

var myapp;
myApp = angular.module('myApp', []);

myApp.config([
  '$interpolateProvider', function($interpolateProvider) {
    return $interpolateProvider.startSymbol('{(').endSymbol(')}');
  }
]);

 

@myApp = angular.module('myApp', [])

@myApp.config ['$interpolateProvider', ($interpolateProvider)->
  $interpolateProvider.startSymbol('{(').endSymbol(')}')
]

 这样我们就能用{()}标记Angular表达式,而不被Liquid执行。

 

配置Markdown渲染引擎Rdiscount

$ gem install rdiscount

 

配置文件 _config.yml

markdown   :  rdiscount 。选取的是Rdiscount作为 Markdown标记语言的转换引擎。

pygments    :  true 。语法高亮。一般技术博客都要贴一些代码,执行jekyll的时候会通过 {% highlight %} 标签自动生成代码高亮的样式。

permalink    :  none 。博客链接格式。none格式输出比较简洁 /:categories/:title.html。关于这个参数的文档 http://jekyllrb.com/docs/permalinks/。

encoding     :  utf-8 。编码,中文网站需要设置成utf-8,不然会出现乱码。

destination  :  ./_yourweb 。指定生成的静态网页的文件夹位置。默认是_site。

exclude       :  jekyll 。编译时将忽略这些文件

port             : 1105 。注意避免本机上的常用端口,比如:8080、 3000

还可以定义一些参数,供Grunt.js中使用,比如:site: grunt.file.readYAML('_config.yml')

 

# Dependencies
markdown:         rdiscount
pygments:         true

# Permalinks http://jekyllrb.com/docs/permalinks/.  
permalink:        none

# Global Configuration
encoding: 		  utf-8

# Server
destination:      ./_yourweb
exclude: 		  ['less', 'Gruntfile.js', 'package.json', 'css', 'images', 'js', 'node_modules', 'validation-report.json', 'validation-status.json']
port:             1105

# Custom vars
current_version:  0.1.0
repo:             https://github.com/nickname/yourweb

download_dist:    https://github.com/nickname/yourweb/releases/download/v0.1.0/yourweb-0.1.0-dist.zip
blog:             https://www.yourblog.com/yourweb

cdn_js:          https://yourcdn/yourweb/css/yourweb.min.js
cdn_css:          https://yourcdn/yourweb/css/yourweb.min.css
static_source:    http://yourcdn/yourweb/

 

详细参照配置参数文档:http://jekyllrb.com/docs/configuration/

 

语法高亮pygments

我是在Windows下配置的。

  1. 这里下载 Windows 下的 Python 安装包,我下的版本是基于Python2.7.6(装过3.3版本,不能正确编译),双击安装。环境变量 Path添加 C:\Python27,在命令行中运行

     python -V
    

    输出 Python 2.7.6表明安装成功。

  2. 然后使用 easy_install 来安装 Pygments,easy_install 是 Python 里的一个模块安装工具,类似 nodejs 的 npm 和 ruby 的 gem,先在这里(页面最底部)下载setuptools-2.1.tar.gz (md5),解压后,在cmd下执行 python ez_setup.py,即可自动安装setuptools。目前没有直接的exe安装版本。

    并把路径 C:\Python27\Scripts 添加到环境变量 Path。

  3. 在命令行中运行

     easy_install Pygments
    

    待执行完毕就装好了 Pygments。

  4. 然后我们要在 Jekyll 的配置文件 _config.yml 中设置打开 Pygments

     pygments: true
    
  5. 在 Pygments demo 上根据不同语言找到自己喜欢的高亮方案,比如 friendly,然后进到我们的网站目录,运行

     pygmentize -S friendly -f html > css/pygments-friendly.css
    

    并把生成的样式文件加到我们的网页中。 如果提示找不到指定路径,先建好对应的文件夹就可以了。

  6. 需要语法高亮的代码片段要放在标签对 <% highlight language %> 和 <% endhighlight %> 之间。

  7. cmd下运行 gem install pygments.rb --version "=0.5.0" 
  8. 可在对应文件夹下的命令行执行: jekyll serve 或者通过Grunt任务 grunt-jekyll 再watch一下相当好用,

    jekyll: {
          docs: {}
        },
        watch:{
          recess: {
            files: 'less/*.less',
            tasks: ['recess']
          },
          jekyll: {
            files: ['_includes/**/*.html', '_layouts/**/*.html', '*.html'],
            tasks: ['jekyll']
          },
          controller: {
            files: 'js/controller/*.js',
            tasks: ['clean:controller', 'concat:controller', 'uglify:controller']
          }
        }
     

     

 

静态网站的好处是显而易见的(zz): 

  • 预生成
  • 快速访问 : 静态HTML页面的载入速度理所当然地更快——因为它
  • 弱服务器需求 : 无需在服务器端执行任何代码,大大地减轻了服务器的压力
  • 高安全性 : 静态页面有着与生俱来的安全性。不像WordPress或者其他任何动态的框架,静态站点本身并不存在安全漏洞的问题。
  • 版本控制 :你无需通过WordPress来维护一整个复杂的数据库——静态站点的内容完全仅由文件系统中独立的目录和文件构成,这意味着你不但可以使用Shell、grep、sed、awk这些传统的Unix工具对它们执行操作和维护,更可以使用 Git 这样的分布式版本控制系统来管理它们,并且享受版本控制所带来的一切好处,如同维护任何软件项目的源代码库一样。你甚至可以重新生成以前任意时间点的整个网站! 
  • 简单部署:一旦静态网站生成以后,任何Web服务器都能够轻易地部署静态站点,而无须在服务器端安装配置其他任何多余的东西。你所需要做的仅仅是通过git、rsync甚至ftp简单地上传文件到你的托管服务器。相比之下,WordPress博客的维护显得复杂得多,你可能需要在你的开发服务器和托管服务器上安装、配置一整套LAMP+WordPress平台,并经常性地升级版本和维护。这是个繁重的技术活。
  • 文本编辑器和自由格式书写:也许你不这么认为,但是作为一个hacker而言,在浏览器中一个300x300的文本区里码字写博客并非一件很酷的事情——如果你使用Jekyll这样的静态网站生成器,你就可以用你喜欢的任何文本编辑器(vi、emacs……),用你习惯的标记语言以书写文本文件的方式来直接写博客文章(就好像你平常写代码一样),避免了使用那些简陋和功能有限的Web界面。

 

一个Quick Start: http://net.tutsplus.com/tutorials/other/building-static-sites-with-jekyll/

Scafford:http://jekyllbootstrap.com/usage/jekyll-quick-start.html

 

  • 大小: 10.2 KB
分享到:
评论

相关推荐

    Jekyll 博客管理工具

    **Jekyll博客管理工具详解** Jekyll是一款静态网站生成器,尤其适合个人博客的搭建与管理。它基于Ruby语言,采用Markdown格式编写内容,并通过 Liquid 模板引擎将内容、布局和样式表结合,生成静态HTML页面。由于...

    jekyll图形管理界面插件jekyll-admin.zip

    jekyll-admin 是一个 jekyll 插件,为用户提供了传统 CMS(内容管理系统)风格的图形化界面来创作内容和管理 jekyll 网站。该项目分为两部分。基于 Ruby 的 HTTP API 处理 jekyll 和文件系统的操作部分,以及在这个 ...

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

    在“用jekyll制作高大上的网站(二)——实际应用”这个主题中,我们将深入探讨如何利用Jekyll的实际操作来构建一个专业且引人注目的在线平台。 首先,你需要了解Jekyll的基本结构。一个标准的Jekyll项目通常包含...

    jekyll简洁博客主题

    **Jekyll简介** Jekyll是一款静态站点生成器,它将文本格式的内容转换成静态的HTML和CSS文件,常用于创建个人博客或者项目文档网站。这个主题名为“jekyll简洁博客主题”,显然是一款专为Jekyll设计的简洁风格的...

    jekylladmin是一个jekyll插件为用户提供了传统CMS风格的来创作内容和管理jekyll网站

    通常,这涉及到将`jekyll-jekyll-admin-f9b269a`这个压缩包解压后,将其内容放入你的Jekyll站点的 `_plugins` 目录。然后,运行 `jekyll serve`,访问默认的管理端口(通常是 `http://localhost:4000/admin`)就可以...

    Atom-jekyll-atom,在atom中使用jekyll的工具和片段的集合.zip

    Atom-jekyll-atom是专为在Atom文本编辑器中高效使用Jekyll搭建和管理静态博客的集成工具和代码片段集合。这个压缩包包含了名为“jekyll-atom-master”的项目文件,意味着用户可以在这个强大的文本编辑器中获得优化的...

    简单和响应式的Jekyll主题帮助中心

    **Jekyll简介** Jekyll是一款静态站点生成器,它能够将文本格式的内容转换成静态的HTML和CSS文件,便于在Web服务器上发布。这个“简单和响应式的Jekyll主题帮助中心”是为创建一个易于使用、对用户友好的在线帮助...

    Ruby-AwesomeJekyll一组很棒的Jekyll工具插件主题指南

    **Ruby与Jekyll简介** Ruby 是一种面向对象的、动态类型的编程语言,以其简洁和高效而受到开发者喜爱。它在Web开发领域中的一个重要应用就是Jekyll,一个静态站点生成器。Jekyll 将文本格式化的内容(如Markdown或...

    Jekyll Writer

    **Jekyll Writer** 是一款专为Jekyll博客搭建者设计的本地化Markdown语法编辑器,尤其适用于Windows 32位(win32-ia32)平台。它为用户提供了高效且便捷的方式来编写和预览Markdown文档,是Jekyll用户进行内容创作的...

    Node.js-JekyllNow让你在几分钟内构建Jekyll博客而不用接触命令行

    JekyllNow是一个开源项目,由Barry Clark创建,它使得创建基于Jekyll的博客变得极其简单。Jekyll是一款静态站点生成器,通常需要通过命令行操作来搭建和管理。然而,JekyllNow消除了这个门槛,允许用户无需任何...

    jekyll gem

    **Jekyll Gem 知识点详解** Jekyll 是一个静态站点生成器,它将文本格式的内容转换成静态HTML页面,广泛用于个人博客和项目文档的构建。Ruby 是Jekyll 的编程语言基础,所以理解Ruby环境至关重要。在描述中提到的`...

    jekyllminimaltheme的中文简体化一款极简风格的jekyll主题

    Jekyll Minimal Theme 是一个专为 Jekyll 框架设计的简洁主题,它的中文简体化版本被命名为 "jekyll-minimal-theme-zh-cmn-hans-master",旨在提供一个轻量级且易用的博客或网站构建解决方案。Jekyll 本身是一个静态...

    一个现代静态简历模板和主题由Jekyll和GitHub页面提供支持

    标题中的“一个现代静态简历模板和主题由Jekyll和GitHub页面提供支持”表明这是一个基于Jekyll框架构建的静态网站模板,特别设计用于创建个人简历。Jekyll是一个静态站点生成器,它将文本格式的文件(如Markdown或...

    前端项目-simple-jekyll-search.zip

    **标题解析:** "前端项目-simple-jekyll-search.zip" 指的是一个关于前端开发的项目,该项目专注于为Jekyll站点提供一个简单的搜索功能。关键词“simple-jekyll-search”表明这个项目是针对Jekyll博客平台的一个轻...

    windows安装jekyll所需软件 ruby DevKit python pip

    Windows上安装Jekyll所需软件包含ruby 、DevKit、python、pip 目录 Jekyll介绍 安装Ruby 安装DevKit 安装Jekyll 安装Python 安装pip 运行Jekyll 博文参考...

    Go-Gojekyll是Jekyll静态站点生成器的Go克隆

    Gojekyll是一个基于Go语言实现的静态站点生成器,它是对原生的Jekyll工具的一种克隆。Jekyll,由Ruby编写,是GitHub上广泛使用的静态网站生成框架,尤其受到博客作者和技术文档制作者的喜爱。Gojekyll的出现,旨在为...

    Daktilo是一个Jekyll主题一个最小的设计灵感来自打字机

    2. **安装 Jekyll**:确保你的系统已经安装了 Ruby 和 RubyGems,然后使用 `gem install jekyll` 安装 Jekyll。 3. **配置**:根据你的需求修改 `_config.yml` 文件中的设置。 4. **运行**:在命令行中进入项目目录...

    jekyll-demo

    **Jekyll 概述** Jekyll 是一个静态站点生成器,由GitHub的创始人Tom Preston-Werner开发。它将文本格式的文件(如Markdown和Textile)转换为静态HTML和CSS,用于构建博客、个人网站或其他不需要服务器端动态脚本的...

    Jekyll.Documentation

    **Jekyll 概述** Jekyll 是一个静态站点生成器,由GitHub的开发者Tom Preston-Werner创建。它基于Ruby语言,允许用户通过简单的文本格式(如Markdown)来编写内容,并将其转换为静态HTML和CSS网站。Jekyll的核心...

    awesome-jekyll-editors, 一群优秀的Jekyll编辑.zip

    awesome-jekyll-editors, 一群优秀的Jekyll编辑 Awesome系列 @ 行星 Jekyll出色的Jekyll编辑器一群优秀的Jekyll编辑 捐赠欢迎。 有什么遗漏发送请求请求。 谢谢。"视觉"编辑器n 工具开源★565管理 ( github: 散文 ★...

Global site tag (gtag.js) - Google Analytics