近代科技:IRC
IRC (Internet Relay Chat) 是 90 年代提出的互联网协议。 用户可以连接到 IRC 上与其他用户进行即时通讯。多个用户可以在一个频道(类似聊天室的概念)交流,也可以进行两用户间的一对一交流。 协议很简陋,只能传输文本内容。即便如此,这个协议体现了早期互联网标准化和开放的特点:任何人可以根据标准,制作自己的实现;不同的实现可以互联互通。
和IRC有关的更多信息可以参考 http://www.irchelp.org/。
继续阅读 →IRC (Internet Relay Chat) 是 90 年代提出的互联网协议。 用户可以连接到 IRC 上与其他用户进行即时通讯。多个用户可以在一个频道(类似聊天室的概念)交流,也可以进行两用户间的一对一交流。 协议很简陋,只能传输文本内容。即便如此,这个协议体现了早期互联网标准化和开放的特点:任何人可以根据标准,制作自己的实现;不同的实现可以互联互通。
和IRC有关的更多信息可以参考 http://www.irchelp.org/。
继续阅读 →严复在一篇文章中提到这样一句话:
華風之弊, 八字盡之: 始於作偽, 終於無恥。
话说得很重, 但有时也是非常准确的。
查询这句话的出处时, 又看见了他写的《論世變之亟》。 其中有一些句子至今仍值得思考。
继续阅读 →在不具备自动双面打印功能的硬件/软件上, 可以通过先打印偶数页、 然后将纸张放回, 再打印奇数页的方法实现手动双面打印。 在一些打印机上, 需要将放回的纸张调转方向; 这可以通过打印偶数页时调转页面方向来避免。
在使用 CUPS 的机器上, 可以使用以下脚本实现此功能:
#!/bin/bash
# Usage: ./duplex.sh [options] <file>
lp -o page-set=even -o orientation-requested=6 -o outputorder=reverse "$@"
printf "Put the paper in tray and hit Enter"; read
lp -o page-set=odd "$@"
继续阅读 →dc
是 UNIX 系统上的计算器 (desk calculator) 程序。
它采用逆波兰表达式 (RPN) 语法, 和平常使用的算术表达式稍有不同。
如: 1 2 + 3 *
表示 (1+2)*3。
RPN 的好处是不用输入括号, 且熟练掌握后效率很高;
缺点是难以上手。
dc
的计算能力不仅限于此。
实际上, 它是一个图灵完备的语言, 并且据说是第一个被移植到 UNIX 系统上的语言。
由于可以定义并调用宏, 它具备了分支和循环的能力, 因此可以写出各种各样的程序。
本文要讨论的不是人的睡眠而是计算机的睡眠 (suspend) 操作。
我的 Gentoo 系统上有一个困扰了我很长一段时间的问题: 当计算机从睡眠状态中恢复时, 我的无线网络连接往往会失效。 这时, 我需要手动重置无线网络服务:
/etc/init.d/net.wlp4s0 restart
究其原因, 是 DHCP 客户端未能在唤醒时重新申请新的 lease, 路由表也没有被更新。
看 /etc/wpa_supplicant/wpa_cli.sh
, 这个脚本在无线网络连接/断开时会被触发,
但是并不会触发 DHCP 客户端重新获取 lease。
所以一个简单的解决方案是在这里加上 DHCP 的操作。 查看 udhcpc 的帮助,
SIGUSR2 和 SIGUSR1 分别可以用于释放和重新申请 lease:
问题一: 设 \(X_i\) (\(i=1,2,\dots,N\)) 为相互独立的离散随机变量, 取值为整数, 且服从 \([0,M)\) 上的均匀分布。 求 \(\Pr(X_1<X_2<\dots<X_N)\)。
解
继续阅读 →今天我进一步完善了我自制的 IBus 输入法。主要有两方面的改进:
<engines>
项目,不需要重新编译程序。IBusProperty
来指示输入法的中/英文状态。2018-6-9 更新: 文中部分过时信息已用删除线划去。
之前几天重新配置了我的 Gentoo 桌面环境。很遗憾的是官方源中的 Gnome 在不用 systemd 的情况下是无法顺利安装的,我暂时不打算更换整个 init 系统,所以我先装了 Xfce 凑合。(除了功能稍显单薄,Xfce 的各方面我都很喜欢,可能是因为它是我用过的第一个 Linux 桌面环境。)
rui@localhost ~ $ uname -a
Linux localhost 4.14.8-gentoo-r1 #6 SMP Mon Dec 25 16:54:41 EST 2017 x86_64 Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz GenuineIntel GNU/Linux
继续阅读 →