在github pages网站下用jekyll制作博客教程。
在我动手用jekyll部署我的博客之前,一直使用godaddy上面的wordpress主页来部署我的博客kresnik.co。WordPress当然有很多的优点,在我看来我用WordPress主要是为了。
方便清晰的文件结构
可以随意选用的各种模板和插件
相对便宜的部署价格
因为这些优点,所以我想我还会在WordPress官网上继续保留我的免费博客。
既然这样,看官想必想问为什么要换成jekyll来重新部署博客?我简单的总结了一下:
流行又简洁的MarkDown写作语法。
轻量级的网站结构,不再有动态网站的沉重。
方便的和github pages结合,不仅免费,而且方便。
所以对比与WordPress的沉重,jekyll让你回归到创作本身,当然如果你喜欢折腾,jekyll也绝对不会让你失望。推荐下面几个站点亮一下。
rusty shutter
Rasmus Andersson。
安装流程
要用github pages,首先要在github中建立一个基于你的用户名的repository: 比如说我,就要建立名为kresnikwang.github.io的repo。在以前的github版本中还需要在后台开启pages的功能,现在系统检测到这样的repo名称之后,会在setting中自动开启GitHub Pages的功能,如下图: 这样之后你就可以把这个repo克隆到本地随意进行修改了,在这个里面上传的网页就是你的网站的内容了,可以上传一个index.html试一试,这就是你的网站主页了。 关于GiuHub的使用,可以看几个比较好的入门教程:GitHub。
之后我们就要在本地部署jekyll,jekyll的原理很简单。这是一个已经合成好的静态html网站结构,你用这个结构在username,http://github.io文件夹里面粘帖好所有文件。再把更新完的本地repo推送到GitHub的master branch里面,你的网站就更新建设完毕了。 首先你需要ruby来使用本地jekyll。Mac和Linux可以用Terminal配合yum或者brew这样的包管理器很方便的安装ruby。Windows下更是方便,可以直接中集成好的Ruby installer来进行安装,文章里的就是传送门。
安装完ruby,之后就是要安装RubyGems,gem是一个ruby的包管理系统,可以用gem很方便的在本地安装ruby应用。
安装方法
//在RubyGems官网上下载压缩包,解压到你的本地任意位置。
//在Terminal中
cd yourpath to RubyGems //你解压的位置。
ruby setup.rb
有了gem之后安装jekyll就很容易了,其实用过nodejs和npm的同学应该很熟悉这样的包安装,真是这个世界手残脑残们的救星。。。。。(楼主不自觉的摸了摸自己快残了的手) 安装jekyll,有了gem,直接在Terminal里面输入以下代码:
$ gem install jekyll 。
好了,现在你的电脑已经准备完毕了。如果你是想自己捣鼓,可以根据这样的目录结构在你的http://username.github.io文件夹下建立以下目录结构:
├── _config.yml。
├── _drafts
| ├── begin-with-the-crazy-ideas.textile。
| └── on-simplicity-in-technology.markdown。
├── _includes
| ├── footer.html。
| └── header.html。
├── _layouts
| ├── default.html。
| └── post.html。
├── _posts
| ├── 2007-10-29-why-every-programmer-should-play-nethack.textile。
| └── 2009-04-26-barcamp-boston-4-roundup.textile。
├── _site
└── index.html
你可以一个个依次建立起来,然后在自己编写一个你想要的博客。
如果你只是个普通用户,只是想要一个模板然后开始写自己的博客。那就很容易了,有几个可以简单开始的模板。
poole/poole · GitHub极简风格的模板。
Jekyll Themes jekyll的模板网站,可以找到各式各样你喜欢的模板。
下载完了模板,可以吧里面的内容解压到你自己的网站目录底下。这时候你可以测试一下:
$ cd you website path //cd到你的网站目录下。
$ jekyll serve
//一个开发服务器将会运行在 http://localhost:4000/。
//你就能在本地服务器看到你用模板搭建的网站了。
这时候可以看一下jekyll的设置,让你把模板变成你自己个性化的内容。在网站根目录下面找到_config.yml,这里会有几个比较关键的设置: 里面的permalink 就是你博客文章的目录结构,可以用pretty来简单的设置成日期+文章标题.html,也可以用自己喜欢的结构来设置。 记得把encoding 设置成utf-8,这样有利于中英文双语的写作和阅读。
到这里你就可以开始写博客了,所有的文章直接放在_posts文件夹下面,格式就是我们之前提到的markdown文件,默认的格式是.md和.markdown文件。每篇文章的开始处需要使用yml格式来写明这篇文章的简单介绍,格式如下:
---
author: kresnikwang。
comments: true。
date: 2015-04-28 17:42:32+00:00。
layout: post。
title: PHP, Angular JS Development|My Export Quote|农产品出口工具开发。
categories:。
- Works
- Tech
tags:
- bootstrap。
- javascript。
- php
- AngularJS。
---
layout就是post,让jekyll知道你这是一篇post,很直观。需要注意的是里面的date,必须按照yml的语法来写,否则就会出现编译错误。可以只用YYYY-MM-DD来显示日期,也可以像我一样在后面加上 HH:MM:SS+00:00 来表示更具体的时间。
到此为止可以开始尽情的写博客了,用GitHub软件同步到你的repository里面,网站上面就可以进行正常的显示了。如果说要添加一下有用的extra功能的话,评论和相关文章这两个功能比较多人会关注。 评论我们可以用Disqus国内应该也有类似的网站,到Disqus注册一个账号,选择添加评论区域到自己的网页,你将会的得到类似的代码:
<!-- Add Disqus comments. -->。
<div id="disqus_thread"></div>。
<script type="text/javascript">。
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */。
var disqus_shortname = '<USERNAME>'; // required: replace example with your forum shortname。
var disqus_identifier = "/works/tech/2016/06/07/%E5%9C%A8github%20pages%E7%BD%91%E7%AB%99%E4%B8%8B%E7%94%A8jekyll%E5%88%B6%E4%BD%9C%E5%8D%9A%E5%AE%A2%E6%95%99%E7%A8%8B.html";。
/* * * DON'T EDIT BELOW THIS LINE * * */。
(function() {。
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;。
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';。
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);。
})();
</script>。
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>。
<a href="http://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>。
根据不同的模板,把代码添加到_post/post.html或者_include/post.html里你的文章底下,那当这篇文章被访问时,下方就会有评论区了。
相关文章的功能也比较好做,jekyll本来就集成了site.related_posts的功能,自动会寻找相关内容的文章,在你的post代码下面融入以下代码:
<aside class="related">。
<h2>Related Posts</h2>。
<ul class="related-posts">。
<li>
<h3>。
<a href="http://kresnikwang.github.io///journey/2015/06/05/kresnik.co-%E5%8D%9A%E5%AE%A2%E6%90%AC%E5%AE%B6%E5%91%8A%E7%A4%BA.html">。
kresnik.co博客搬家告示。
<small><time datetime="2015-06-05T00:00:00+00:00">05 Jun 2015</time></small>。
</a>。
</h3>。
</li>。
<li>
<h3>。
<a href="http://kresnikwang.github.io///tech/2015/06/02/javascript-include-html-page-by-jquery.html">。
Javascript Include Html Page By Jquery。
<small><time datetime="2015-06-02T18:45:42+00:00">02 Jun 2015</time></small>。
</a>。
</h3>。
</li>。
<li>
<h3>。
<a href="http://kresnikwang.github.io///tech/2015/05/31/Github-use-http-instead-of-git.html">。
Github设置,强制使用"https://" 来代替 "git://"。
<small><time datetime="2015-05-31T05:03:36+00:00">31 May 2015</time></small>。
</a>。
</h3>。
</li>。
</ul>
</aside>
你每篇文章下面就会有三个相关文章的链接了。
这篇教程就到这里,有机会我想再写写liquid语法制作jekyll模板的内容和从wordpress导入文章到jekyll来的方法。喜欢能有些用处,感谢。
附上出处链接:https://www.zhihu.com/question/23934523。
本文在Windows7下测试成功。
安装和设置Git
下载Git for
Windows,采用默认安装,安装完成后就可以在本地使用Git了。
但要将内容放到Github上,必须先在Github网站上注册个账户,然后在本机使用Git创建SSH Key。操作如下:
在Git Bash上输入命令:。
ssh-keygen -C "username@email.com" -t rsa。
Note: “username@email.com”需要更换成你在Github上注册的Email地址或者是Username。
这样会在用户目录(C:\Users\用户名)下产生一个.ssh文件夹,里面为对应的SSH 。
Keys,其中id_rsa.pub是Github需要的SSH公钥文件。
到c:\Users\用户名\.ssh\目录找到id_rsa.pub(可能位置不一定对,但是确认是以.pub结尾的文件),并用记事本打开复制全部内容。
Note:建议私钥公钥的名称最好写成"id_rsa",这样连接Github的时候会找这个文件,如果文件名已定,之后改名也行。
在github网站选择“Account Settings”>>“SSH Public Keys”>>“Add another 。
public key”,将刚才复制的内容粘贴到key文本框内。
这样就可以直接使用Git和GitHub了。
Note:建议在Git Bash中输入“ssh -v git@github.com”测试能够正常连接github。
安装Ruby环境
下载RubyInstaller和DevKit。
因为Octopress需要的Ruby版本为1.9.2,所以选rubyinstaller-1.9.2-p290.exe,DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe。
先安装RubyInstaller,然后解压缩DevKit(路径中不能有中文)。
在“Start Command Prompt with Ruby”命令行中进入DevKit解压缩的目录,然后运行以下命令:。
ruby dk.rb init。
ruby dk.rb install。
gem install rdiscount --platform=ruby。
如果安装成功,就可以使用一些Ruby的工具了,也为后面搭建博客提供了基础环境。
安装Octopress
先通过Git从Github上克隆一份Octopress(在Git Bash上输入命令)
git clone git://github.com/imathis/octopress.git octopress。
然后安装一些依赖的工具(后面都是在Start Command Prompt with Ruby中输入)
cd octopress
ruby --version # Should report Ruby 1.9.2。
gem install bundler。
bundle install 。
安装Octopress默认的Theme。
rake install
配置Octopress
将octopress的文件夹下的_config.yml的编码改成UTF-8:
保存(或另存为)时选择编码格式为UTF-8。
修改_config.yml,批改url、title、subtitle、author等等。
到Ruby的安装目次\lib\ruby\gems\1.9.1\gems\jekyll-0.11.2\lib\jekyll\找到convertible.rb这个文件,批改self.content 。
= File.read(File.join(base, name))为self.content = File.read(File.join(base,
name), :encoding => "utf-8")。
写博文
最简单的方式:复制octopress\source\_posts下某个文件,例如2012-07-30-the-first-post.markdown,修改文件名和文件中的内容。
或者,命令行中输入rake
new_post["title"],会创建一个新的Post,新文件在source/_post下,文件名如下面的格式:2012-07-31-title.markdown。该文件可以直接打开修改。
写文章时,可以使用Markdown和Octopress 。
Plugins等工具对内容进行格式排版。
预览效果
在修改设置或者写完文章后,想看看具体效果,可以通过如下命令来完成:。
rake generate
rake preview
将博客部署到Github上
在预览的效果符合自己的预期后,就可以通过如下命令将内容部署到Github上了。
如果是第一次部署,需要在Github上创建一个username.github.com的repository。
在github网站选择“Create a New Repo”,如图。
填写对应的内容即可
note:Repository 。
name填写username.github.com,username一定要和github的username一致,建好的博客代表的是你这个github账户的主页即page。
配置octopress与github的连接:
进入Octopress目录:
rake setup_github_pages。
按照提示填入你的github项目网址,比如:
git@github.com:Username/yourname.github.com.git。
note:可以按照上面的修改,也可以在github的项目页中找地址。
分发到github上:
rake deploy
第一次运行时,会询问是否建立对github的授权,输入:yes。然后将站点更新的内容推送到github上。
补充一点:
最后的但并不是最重要的,我们需要将修改的日志同步到github上,因此下面的3个命令也是必须的。
git status
git add .
git commit -m 'your message'。
git push origin source。
大功告成!
GitHub是一个面向开源及私有软件项目的托管平台。
因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。2022年4月13日起,GitHub开始封锁受美国制裁公司的俄罗斯开发者账户。
2014年1月23日,联合创始人汤姆·普雷斯顿-维尔纳(TomPreston-Werner)从另一位联合创始人克里斯·万斯特拉斯(ChrisWanstrath)手中接过总裁职位,后者也将接过普雷斯顿-维尔纳留下的CEO位置。
平台简介:
GitHub于2008年4月10日正式上线,除了Git代码仓库托管及基本的Web管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。
目前,其注册用户已经超过350万,托管版本数量也是非常之多,其中不乏知名开源项目RubyonRails、jQuery、python等。2018年6月4日,微软宣布,通过75亿美元的股票交易收购代码托管平台GitHub。
一、 GitHub是一个源代码的在线托管平台,提供了版本控制和协同工作功能。
二、GitHub使用步骤:
步骤一、创建一个知识库
在GitHub里,知识库总是用来组织某一个特定的项目。知识库可以包含文件夹,文件,图片,音频,视频,数据表或数据集--任何你的项目需要的文件都可以。
步骤二、创建一个分支
分支是同时对一个知识库或者说项目进行工作进行版本区分的方式。
默认的情况每一个知识库都会有一个master分支,这是所在项目的主分支,可以理解为项目的生产环境或正式环境。
步骤三、修改并提交
目前就在 readme-edits 分支里,这是 master的一个拷贝。接下来来进行一些修改。
在GitHub要把修改和提交叫作commits。每一次的commit 都需要一个commit message,用来说明这次修改的目的。Commit。
messages保存了所有修改的日志,这样别人可以看出来这个项目作了哪些修改和为什么要做这些修改。
步骤四、创建一个合并请求
合并请求是GitHub进行团队协作的核心,当创建一个合并请求的时候,所做的就是提议将修改合并到别的分支中去。合并请求时会显示两个分支的不同之处,通过绿色和红色来标识新增或删除。
步骤五、合并请求
在这最后一步我们要做的就是把你修改过的分支readme-edits合并到master分支中去。
点击 Merge pull request按钮。
点击Confirm merge。
点击 Delete branch 按钮来删除已经不需要的分支。
语言无关类
操作系统
鸟哥的Linux私房菜 (简体)。
Linux 系统高级编程
The Linux Command Line (中英文版)。
Linux 设备驱动 (第三版)。
深入分析Linux内核源码
UNIX TOOLBOX
Docker中文指南
Docker —— 从入门到实践。
FreeRADIUS新手入门
Mac 开发配置手册
FreeBSD 使用手册
Linux 命令行(中文版)
智能系统
一步步搭建物联网系统
web服务器
Nginx开发从入门到精通 (淘宝团队出品)。
版本控制
Git教程 (本文由 @廖雪峰 创作,如果觉得本教程对您有帮助,可以去 iTunes 购买)
git – 简易指南
猴子都能懂的GIT入门
Git 参考手册
Pro Git
Git Magic
GotGitHub
Git Community Book 中文版。
Mercurial 使用教程
HgInit (中文版)
沉浸式学 Git
Git-Cheat-Sheet (感谢 @flyhigher139 翻译了中文版)
GitHub秘籍
NoSQL
NoSQL数据库笔谈 (PDF)。
Redis 设计与实现
Redis 命令参考
带有详细注释的 Redis 3.0 代码。
带有详细注释的 Redis 2.6 代码。
The Little MongoDB Book。
The Little Redis Book。
Neo4j 简体中文手册 v1.8。
Neo4j .rb 中文资源
MySQL
MySQL索引背后的数据结构及算法原理。
项目相关
持续集成(第二版) (译言网)。
让开发自动化系列专栏
追求代码质量
selenium 中文文档
Joel谈软件
约耳谈软体(Joel on Software)。
Web
关于浏览器和网络的 20 项须知。
前端知识体系
浏览器开发工具的秘密
Chrome 开发者工具中文手册。
Chrome扩展开发文档
Grunt中文文档
移动Web前端知识库
正则表达式30分钟入门教程
前端开发体系建设日记
移动前端开发收藏夹
JSON风格指南
HTTP 接口设计指北
前端资源分享(一)
前端资源分享(二)
前端代码规范 及 最佳实践
w3school教程整理
大数据
大数据/数据挖掘/推荐系统/机器学习相关资源。
编程艺术
程序员编程艺术
每个程序员都应该了解的内存知识(译)【第一部分】
取悦的工序:如何理解游戏 (豆瓣阅读,免费书籍)。
其他
OpenWrt智能、自动、透明翻墙路由器教程。
语言相关类 AWK
awk程序设计语言
C/C++
C++ 并发编程指南 (@傅海平ICT)。
Linux C编程一站式学习 (宋劲杉, 北京亚嵌教育研究中心)。
CGDB中文手册
100个gdb小技巧
100个gcc小技巧
ZMQ 指南
How to Think Like a Computer Scientist (中英文版)。
跟我一起写Makefile(PDF)。
GNU make中文手册
GNU make 指南
Google C++ 风格指南。
C/C++ Primer (by @andycai)。
简单易懂的C魔法
Cmake 实践 (PDF版)。
C++ FAQ LITE(中文版)。
C++ Primer 5th Answers。
CSS/HTML
学习CSS布局
通用 CSS 笔记、建议与指导。
CSS参考手册
Emmet 文档
前端代码规范 (腾讯alloyteam团队)。
Dart
Dart 语言导览
Fortran
Fortran77和90/95编程入门。
Java
实时 Java 系列
Apache Shiro 用户指南。
使用 Eclipse 和 Java SE 6 创建独立 Web Services 应用程序。
第 1 部分: Web Services 服务端应用程序。
第 2 部分: Web 服务客户端应用程序。
JavaServer Faces 1.2 入门。
第 1 部分: 构建基本应用程序。
第 2 部分: JSF 生命周期、转换、检验和阶段监听器。
用 Eclipse Europa 进行 Web 开发。
第 1 部分: Eclipse Java EE。
第 2 部分: PHP 开发工具。
第 3 部分: Ruby Development Toolkit 和 RadRails。
使用 JavaServer Faces 构建 Apache Geronimo 应用程序。
第 1 部分: 使用 Eclipse 和 Apache MyFaces Core 构建基本的应用程序。
第 2 部分: 在 JavaServer Faces 中使用 Tomahawk。
第 3 部分: 使用 ajax4jsf 添加 Ajax 功能。
第 4 部分: 使用 Apache Trinidad 组件扩展 JSF。
第 5 部分: 将 JSF 应用程序与 Spring 集成。
Apache Geronimo 和 Spring 框架。
第 1 部分: 开发方法学
第 2 部分: 构建第一个应用程序。
第 3 部分: 集成 DAO 与 ORM。
第 4 部分: 混合使用 Spring AOP 和 Spring Web Flow。
第 5 部分: Spring MVC。
第 6 部分: Spring MVC:使用 Web 视图技术。
终极 mashup —— Web 服务和语义 Web。
第 1 部分: 使用与组合 Web 服务。
第 2 部分: 管理 Mashup 数据缓存。
第 3 部分: 理解 RDF 和 RDFs。
第 4 部分: 创建本体
第 5 部分: 切换 Web 服务。
Jersey 2.x 用户指南。
MyBatis中文文档
JavaScript
Google JavaScript 代码风格指南。
Airbnb JavaScript 规范。
JavaScript 标准参考教程(alpha)
Javascript编程指南 (源码)。
javascript 的 12 个怪癖。
JavaScript 秘密花园。
JavaScript核心概念及实践 (PDF) (此书已由人民邮电出版社出版发行,但作者依然免费提供PDF版本,希望开发者们去购买,支持作者)。
《JavaScript 模式》翻译,此书中文版有售,但是纸质书翻译的还没有这个版本翻译的好。
命名函数表达式探秘 (注:原文由为之漫笔翻译,原始地址无法打开,所以此处地址为我博客上的备份)。
学用 JavaScript 设计模式 (开源中国)。
深入理解JavaScript系列。
ECMAScript 6 入门 (作者:阮一峰)。
jQuery
jQuery 解构
简单易懂的JQuery魔法
How to write jQuery plugin。
Node.js
Node入门
七天学会NodeJS
Nodejs Wiki Book (繁体中文)。
express.js 中文文档。
koa 中文文档
使用 Express + MongoDB 搭建多人博客。
Express框架
nodejs文档
Node.js 包教不包会
Learn You The Node.js For Much Win! (中文版)。
Node debug 三法三例。
underscore.js
Underscore.js中文文档。
backbone.js
backbone.js入门教程 (PDF)。
Backbone.js入门教程第二版。
Developing Backbone.js Applications(中文版)。
AngularJS
AngularJS最佳实践和风格指南。
AngularJS中译本
AngularJS入门教程
构建自己的AngularJS
在Windows环境下用Yeoman构建AngularJS项目。
zepto 简明中文手册
Sea.js
Hello Sea.js
CoffeeScript
CoffeeScript Cookbook。
The Little Book on CoffeeScript中文版。
ExtJS
Ext4.1.0 中文文档
Chrome扩展及应用开发
JavaScript入门教程
PHP
PHP调试技术手册(PDF)
XDebug 2中文手册(译) (CHM)。
PHP之道
PHP 最佳实践
PHP安全最佳实践
深入理解PHP内核
PHP扩展开发及内核应用
CodeIgniter 用户指南。
Laravel4 中文文档
Laravel 入门
Symfony2中文文档 (未译完)。
Phalcon中文文档(翻译进行中)
YiiBook几本Yii框架的在线教程。
简单易懂的PHP魔法
swoole文档及入门教程
iOS
iOS开发60分钟入门
iOS7人机界面指南
Google Objective-C Style Guide 中文版。
iPhone 6 屏幕揭秘
Apple Watch开发初探。
马上着手开发 iOS 应用程序。
网易斯坦福大学公开课:iOS 7应用开发字幕文件。
Android
Android Design(中文版)。
Google Android官方培训课程中文版。
Android学习之路
Python
小白的Python教程
简明Python教程
零基础学Python
Python 2.7 官方教程中文版。
Python 3.3 官方教程中文版。
深入 Python 3
PEP8 Python代码风格规范。
Google Python 风格指南 中文版。
Python入门教程 (PDF)。
Python的神奇方法指南
笨办法学 Python (PDF版下载)
Django 文档中文版
Django 最佳实践
The Django Book 中文版。
web.py 0.3 新手指南。
Web.py Cookbook 简体中文版。
Dive Into Python 中文版。
Bottle 文档中文版 (需翻墙)。
Flask 文档中文版
Jinja2 文档中文版
Werkzeug 文档中文版
Flask之旅
Introduction to Tornado 中文翻译。
Python自然语言处理中文版 (感谢陈涛同学的翻译,也谢谢 @shwley 联系了作者)
Python 绘图库 matplotlib 官方指南中文翻译。
Scrapy 0.25 文档
ThinkPython
Ruby
Ruby 风格指南
Rails 风格指南
笨方法学 Ruby
Ruby on Rails 指南。
Ruby on Rails 实战圣经。
Ruby on Rails Tutorial 原书第 2 版 (本书网页版免费提供,电子版以 PDF、EPub 和 Mobi 格式提供购买,仅售 9.9 美元)。
编写Ruby的C拓展
Ruby 源码解读
Shell
Shell脚本编程30分钟入门。
Go
Go编程基础
Go入门指南
学习Go语言 (PDF)
Go Web 编程 (此书已经出版,希望开发者们去购买,支持作者的创作)。
Go实战开发 (当我收录此项目时,作者已经写完第三章,如果读完前面章节觉得有帮助,可以给作者捐赠,以鼓励作者的继续创作)。
Network programming with Go 中文翻译版本。
Groovy
实战 Groovy 系列
LaTeX
一份其实很短的 LaTeX 入门文档。
一份不太简短的 LATEX 2ε 介绍 (PDF版)
LISP
ANSI Common Lisp 中文翻译版。
Lua
Lua编程入门
Haskell
Real World Haskell 中文版。
R语言忍者秘笈
Scala
Scala课堂 (Twitter的Scala中文教程)。
Effective Scala(Twitter的Scala最佳实践的中文翻译)。
Scala指南
Swift
The Swift Programming Language 中文版。
Perl
Modern Perl 中文版。
Perl 程序员应该知道的事
Prolog
笨办法学Prolog
Vim中文文档
Vimscript
笨方法学Vimscript 中译本。
Vim中文文档
读书笔记及其它 读书笔记
编译原理(紫龙书)中文第2版习题答案。
把《编程珠玑》读薄
Effective C++读书笔记。
Golang 学习笔记、Python 学习笔记、C 学习笔记 (PDF)。
Jsoup 学习笔记
学习笔记: Vim、Python、memcached。
图灵开放书翻译计划–C++、Python、Java等。
蒂姆·奥莱利随笔 (由译言网翻译,电子版免费)
Octave 入门 (PDF版)
SICP 解题集
精彩博客集合
正则表达式简明参考