Keep Learning

伪程序员记录点滴

Octopress代码高亮

现在博客已经基本搭建完毕,下面对从jekyll bootstrap搬迁到做一个基本介绍。首先是代码高亮部分,下面的文章主要来自于Octopress关于代码高亮部分。文章主要是对上面的内容进行一个简单的翻译,以及简单介绍从jekyll bootstrap上面的代码移动到Octopress上面做一个简单的介绍。

共享代码片段

在博客上共享代码片段应该是简单的,并且代码应该具有简单的高亮功能。Octopress也具有这种功能,在jekyll上,其使用的是pygment来实现代码高亮的功能,Octopress实现的更好。在Octopress上面有下面几种选择:

  • 使用Solarized高亮主题来实现(该方法未尝试,实际上不知道怎么弄,只是凭借个人的猜测)。
  • 使用Gist的代码内嵌。
  • 从自己的文件系统中插入代码片段,该代码具有下载链接。
  • 简单的内嵌代码块带有<div class='bogus-wrapper'><notextile><figure><figcaption>和可选的下载链接。
  • Pygments caching(似乎还是使用Pygnment来实现代码高亮)。
  • 通过javascript脚本使得代码具有行号。

Octopress添加标签

前因

由于之前参考中文的搜索,结果都不理想,推翻重来,直接使用google使用octopress tag关键词搜索到的第一个返回结果来修改,下面记录如下。

显示所有的便签列表

修改source/_layouts/post.html文件,使它们include一个名字为tags.html的新文件。

VIM用户手册27笔记

VIM的查找命令与模式,这章节和正则表达式相关,可以重点查阅下。

大小写忽略

ignorecase 忽视大小写
smartcase 若只有小写,可匹配大小写;若含有大写,则严格匹配
特定模式中的大小写可以使用\C来严格匹配,\c可以用来通用匹配,不区分大小写

无折返查找

:set nowrapscan简单的说就是在查找到文件结束处后不再返回文件开始处重新查找。

Octopress尝试记录

本文主要是参考Octopress的官方网址进行操作,之前使用了google搜索了若干参考,但是操作之后出现了错误,推翻重来之后,写下这篇记录,方便自己以后使用。
首先介绍下自己的环境Arch,由于之前已经使用了github的个人博客,但是之前使用的是jekyll的方式,自己不会调整那些主题,感觉有些不方便,上网找了下,发现似乎Octopress相对来说比较简单,于是在这种情况下尝试使用Octopress。至于在github上创建个人博客主页,在这里不做说明,在Octopress环境下,自己相当不清楚。

汇编语言学习

本书主要记录的在学习王爽编著的《汇编语言》中的一些记录。

第二章 寄存器(CPU原理)

8086中内存地址的访问是由基地址加上偏移地址组成的物理地址,而这个基地址主要是由段寄存器提供的,在8086中有4个段寄存器,分别是CS,DS,SS和ES。
CS为代码段寄存器,IP为指令指针寄存器,在8086机中,任意时刻,CPU将CS:IP指向的内容当做指令执行。
8086CPU的工作过程如下所示:

  1. 从CS:IP指向的内存单元读取指令,读取的指令进入指令缓冲器;
  2. IP=IP+所读取的指令长度,从而指向下一条指令;
  3. 执行指令,转到步骤1,重复这个过程。

VIM正则表达式学习

VIM正则表达式

之前粗略的看了正则表达式的一些内容,但是在VIM中一直用的很少,刚才无意间看到了使用VIM对词进行大小写转换,中间出现了一些正则表达式的内容,从网上找了些内容,觉得可以留下来做个笔记,供以后自己参考。
文章的主要内容参考该博客

VIM使用正则表达式改变大小写

VIM使用正则表达式改变字符大小写

转载自vim_wiki
在VIM中使用正则表达式来改变单词的大小写是已经很简单的事情。
只需要简单的将\U或者\L放在想要更改的回溯引用的前面,将\E放置在回溯引用的后面,VIM就会将回溯应用中的大小写进行相应的转换。使用\u和\l(这时不需要在最后使用\E)将会仅仅改变回溯引用中的第一个字符。

回溯引用是正则表达式中的一部分,用来表明匹配前面的一个部分。最常用的回溯表达式有&,\1,\2,\3,...,\9。  

Git小项目基本操作

Git个人电脑操作

Git版本控制有三个区域,分别是工作目录、暂存区和git目录。 Git的本地操作

平时的工作都在工作目录中完成,在修改完代码之后,需要将修改的代码加入到暂存区,这个通过git add操作完成。当需要将暂存区域里的代码提交进入git工作目录时,需要使用git commit来完成。

上面描述的两个命令git addgit commit是在本地目录工作中用到的主要命令。当需要删除文件时,使用的是git rm命令。

在使用git commit将本地工作的内容提交到git工作目录之后,本地代码的修改工作便已经完成。

Git基本使用

git log branch_a..branch_b
显示branch_b有而branch_a没有的历史。
git log branch_b..branch_a
显示branch_a有而branch_b没有的历史。

git log origin/master..HEAD
查看将会把什么推送到远端的master分支

git show HEAD
git show HEAD^
git show HEAD~
^符号显示的是祖先,2显示的是第二父提交

~显示的是父提交,~2显示的是父提交的父提交

git log reA..reB
git log ^reA reB
git log reB --not reA
上述三个命令等价,均是指包含reB而不包含reA