🌓

王子猷的故事

王子猷作桓车骑骑兵参军。桓问曰:「卿何署?」答曰:「不知何署,时见牵马来,似是马曹。」桓又问:「官有几马?」答曰:「不问马,何由知其数!」又问:「马比死多少?」答曰:「未知生,焉知死!」

《世说新语·简傲》

阅读全文

大于等于号和小于等于号的字型

前言

大于等于号和小于等于号对应的Unicode符号是(GREATER-THAN OR EQUAL TO)和(LESS-THAN OR EQUAL TO) 最近对这两个符号有一些困惑 先总结出来

SLANTED?

先科普一下:

在字体里面slanted表示倾斜 但它和italic不一样 前者只是倾斜 而后者不仅倾斜 风格也变了 一般来说 无衬线字体(好比是中文的黑体 具体看维基百科的相关词条)如果有斜体算是slanted 衬线字体(好比是中文的宋体楷体 维基词条)一般是italic 大多数情况下这种区分没有什么意义 只有数学相关的字体才会有slanted

我最近发现 原来大于等于号和小于等于号除了我熟悉的两个外 还有下面的两个

(GREATER-THAN OR SLANTED EQUAL TO)和(LESS-THAN OR SLANTED EQUAL TO)

它们的区别是什么呢?从字体角度讲 最明显的区别就是字型的不同

阅读全文

Emacs里用正则表达式匹配中文

这是个非常好用的功能 也是其他正则表达式里面不具备或不能优雅实现的(比如有些地方用[\u4e00-\u9fa5]来匹配中文 你觉得你能记住么)

但就这个方便的功能我也记不住 而且手册也看不大懂

正确写法:

Emacs里正则匹配中文的写法是\cc

手册里面是这么说的

‘\cC’
matches any character that belongs to the category C. For example,
‘\cc’ matches Chinese characters, ‘\cg’ matches Greek characters,
etc. For the description of the known categories, type ‘M-x
describe-categories RET’.

‘\CC’
matches any character that does not belong to category C.

15.7 Backslash in Regular Expressions

阅读全文

Emacs实现按一下按两下功能不同的写法

有人问 如何在Emacs里实现按一下按两下执行的功能不一样呢 当时我没电脑所以没有写 今天有时间 写一下

其实很简单 如果上一个命令和这一个命令是一样的 那么就是按两下了 不过还不够好 因为后面都认为是按两下 所以其实是「按一下」和「按多下」 例子是下面的样子

1
2
3
4
5
6
7
(defun my-repeat ()
"Repeat function demo."
(interactive (if (equal last-command this-command)
(insert "摁了两下\n")
(insert "摁了一下\n"))))

(local-set-key [f9] (quote my-repeat))

阅读全文

Emacs在保存文件时进行diff

Emacs保存文件的快捷键是C-x C-s 对应的函数是save-buffer 功能就是保存 比较单纯

但其实还有一个save-some-buffers 绑定在C-x s 会保存修改过的文件 因为需要确认是否保存 我用的不多 但它有个好处 就是可以在保存文件前diff 这样会很安全 我印象中Debian在修改配置的时候会用diff让用户确认修改的内容 都是为了安全罢

阅读全文

实用排版技术

楔子

有一天查资料,偶然发现的这个网站,更确切的说是一本网页形式的书,书名是Practical Typography,网址是这个:

http://practicaltypography.com/

内容很多,相关的学习心得陆续整理到这里。

阅读全文

软换行

https://www.cs.tut.fi/~jkorpela/shy.html

Update:

原来这个网站里面还有不少好东西 可以慢慢看看

阅读全文

升级到了GCC的5.x版

$ gcc --version
gcc.exe (Rev3, Built by MSYS2 project) 5.2.0

提升挺大的 经过我的粗略测试 编译出的Emacs在整数运算上有大约7%的提升 不错哦

阅读全文

Git真厉害!重构了一下Emacs的配置更好的跨平台

一些零碎的东西记录一下

  • Git好厉害
    如果只是自己用 感觉不出来 换个环境 想要同步 才知道Git的好

阅读全文

用grep从一亿个QQ号里提取6位QQ号

生成测试文件

用Python生成 不过效率好渣啊

1
2
3
4
5
6
import random as rm;
n = 100000000
for i in xrange(n):
r1 = rm.uniform(0, 1000000000);
r2 = rm.uniform(0, 1000000000);
print('%d\t%x' %(r1, r2));

运行 结果保存到一个文本文件

1
python a.py > a.txt

grep

1
time grep -E "^[0-9]{6}\s+.*$" ./a.txt > res.txt

在我这里的结果是

阅读全文