为什么我要使用一个20年前的IBM老键盘

发表在 心得体会 | 3条评论

几天前,我在网上发了一张图片,想炫耀了一下我的新MacBook Pro笔记本强悍的多屏功能。没人感兴趣。但图上的那个老键盘却得到了不少人的评论。很多人问:为什么我会使用一个老的掉牙的键盘?

少说也有10年了,那时我去参加一个计算机博览会,这种博览会通常会展示一些你以前从未听说的很酷的硬件或一些非常新奇的东西。在这个地方我却发现有个人在卖大量的老的二手键盘。我想买一些经典IBM配件也许是件很酷的事,所以就买了一个。

不久,我当时拥有的3台PC机上自带便宜的键盘开始显得有些脏。于是我就换上了这个IBM Model M键盘,你知道这个键盘有什么特别之处吗?

使用Model M时的动静。

首先是它的声音。它的按键声音很大,用它打字时让我感觉很有成就感,像是在完成很了不起的事情。当然,这键盘不适合在公共办公室里或会议场所使用。这个 Model M 键盘的声音如此大的原因是因为它使用了弹簧扣的机械结构,每个键帽里都有一个弹簧,当你按键时就会扣住。弹簧扣的结构给了这种键盘一种很特别的手感:按键时会有很大的反弹力,但当你按到一定程度,它的反弹力突然变小,按键迅速陷下去。而这个变化发生时正是按键生效的时候,所以,你不需要把一个字母按到底就能清楚的知道可以了。

这种键盘做的非常结实,大部分的键帽都很容易拆下来清洗。

而且,它还可以让你调整按键布局。例如,我互换了键盘上Caps键,、alt键和控制键,然后在Mac机上将Caps lock键设为控制键,原控制键(现在的alt键)成了alt/option键,原来的alt键(现在的控制键)成了command键。这种键盘布局尽可能的接近苹果机键盘的样子。

系统设置里键盘面板的”Modifier keys”设置

别忘了IBM中B的意思,回到1980年代,当键盘刚刚被发明出来时,那时的PC机只能发出一两声嘟嘟声,Model M 键盘上没有任何的多媒体键。然而,这个问题很容易通过Sizzling Keys来解决,这是一个小应用,能够让你设定控制iTunes的按键。(我很奇怪为什么苹果的自定义快捷键不能实现这个)

1992年代 Model M计算机的确在当时相当先进,因为它提供了一个PS/2连接器,而不是那种老式的AT连接器。使用PS/2-to-USB转换器可以很好解决我的使用问题。

很惊奇这个2kg(4.4磅)的旗舰键盘只需要100毫安的USB接口供电。

我还弄到了两个苹果蓝牙键盘:先前的是一个老的白色的,后来的一个就是现在的银色的。白色的相当糟糕,甚至比不上那些最便宜的PC机键盘。银色的确相当不错,而且占地面积很小。

而这个Model M键盘比起我用过的所有其它键盘都满意,打字更准确。在我家里的办公桌上,它的尺寸,体重,声音跟其它的都不一样,这个Model M键盘总是放在正前面,正中央。

我想我的手指也应该同步跨入新的千禧年,我应该为它们买一个最新式的Unicomp键盘——有媒体键和USB转换器。但说一千道一万,我感觉这称心的Model M键盘,如果不是十几年的话,至少还可以用七八年。而且,我真的喜欢它的米黄色。

为什么我要使用一个20年前的IBM老键盘的更多相关文章

  1. low-code 与 20 年前的 Dreamweaver 有什么区别?

    一.low-code 是什么? A low-code development platform (LCDP) is software that provides a development envir ...

  2. 20个优秀的 JavaScript 键盘事件处理库

    键盘事件是 Web 开发中最常用的事件之一,通过对键盘事件的捕获和处理可以提高网站的易用性和交互体验.下面,我们向大家介绍收集的20款优秀的 JavaScript 键盘事件处理库,帮助开发人员轻松处理 ...

  3. 20个优秀的JavaScript 键盘事件处理库

    键盘事件是 Web 开发中最常用的事件之一,通过对键盘事件的捕获和处理可以提高网站的易用性和交互体验.下面,我们向大家介绍收集的20款优秀的 JavaScript 键盘事件处理库,帮助开发人员轻松处理 ...

  4. 大一C语言学习笔记(11)---编程篇--写一个程序,可以获取从键盘上输入的的三个数,并能够判断是否可以以这三个数字作为边长来构成一个三角形,如果可以的话,输出此三角形的周长及面积,要求 0 bug;

    考核内容: 写一个程序,可以获取从键盘上输入的的三个数,并能够判断是否可以以这三个数字作为边长来构成一个三角形,如果可以的话,输出此三角形的周长及面积: 答案: #include<stdio.h ...

  5. 一个1年前的T-SQL问题

    还记得年前的一个SQL问题,当时对SQL刚接触,因此绕开了它.用了别的办法.昨天看SQL突然想起了这个问题.百思不得其解,然后去SQL Server技术交流群,也请教了,大神高文佳,何志勇提示我因为先 ...

  6. Android OpenGL ES(十一)绘制一个20面体 .

    前面介绍了OpenGL ES所有能够绘制的基本图形,点,线段和三角形.其它所有复杂的2D或3D图形都是由这些基本图形构成. 本例介绍如何使用三角形构造一个正20面体.一个正20面体,有12个顶点,20 ...

  7. 管理与技术未必不可兼得,一个20年IT老兵的码农生涯

    作者|康德胜 我是一个喜欢写代码但几乎不太有机会写代码的CTO,也是一个看得懂财务报表.通过所有CFA(金融特许分析师)考试并获得FRM(金融风险经理)认证的拿到金融MBA的CTO,如果我有幸被称作码 ...

  8. .NET成人礼 | 还记得20年前一起拖过的控件吗?

    本文是MVP Ediwang写的回忆一个80后的拖控件的感悟,与君共勉: 每一代人都有记忆里的味道.煤球炉.黑白电视机是属于父母的记忆.而“拖控件”式编程,启蒙了无数像我这样的80后(嗯,89也算80 ...

  9. IntelliJ IDEA 20 岁了!20 年前的第 1 版曝光…

    IntelliJ IDEA 最近发布了 20 周年庆典: https://www.jetbrains.com/lp/intellijidea-20-anniversary/ IntelliJ IDEA ...

随机推荐

  1. 实现zbar扫描二维码的时候就把照片存储出来的办法

    业务场景       当实现二维码扫描的时候(用的扫码库是zbar),有时候需要悄悄的整个扫描的照片存储下来,(charles有部分变态业务就是这样)就是说给扫描的图片照个全景照片. 那么代码如何实现 ...

  2. gtest代码库浅析

    代码库工程概述 IDE:Visual Studio 2010 sln路径:gtest\msvc\gtest.sln 用IDE打开上面的sln,可以看到以下四个工程,算不上复杂.展开之后更是感觉这几个工 ...

  3. ruby迭代起基础

    “循环”会用在程序中的各种地方.而在循环的地方善用“迭代器”,则是熟练进行Ruby程序设计的重要关键. 不过,迭代器确实有比较抽象的地方,语法也有点怪异(尤其是yield的用法),光是依靠文字说明.看 ...

  4. python队列join

    如果要让一个任务队列按照顺序进行,则必须使用join,代码如下: ''' Created on Dec 23, 2013 @author: long ''' import threading from ...

  5. J - Borg Maze - poj 3026(BFS+prim)

    在一个迷宫里面需要把一些字母.也就是 ‘A’ 和 ‘B’连接起来,求出来最短的连接方式需要多长,也就是最小生成树,地图需要预处理一下,用BFS先求出来两点间的最短距离, *************** ...

  6. NGUI 动态字体边缘模糊,毛边的问题解决办法

    NGUI支持生成动态字体,将ttf格式的字体文件拖入工程,用NGUIFontMaker制作即可,但是制作完之后会发现字体有毛边,边缘模糊. 这时选中你生成的字体预设,在该预设的UIFont脚本上更改P ...

  7. 5 Java学习之 泛型

    1. 基本概念          泛型是Java SE 1.5的新特性,泛型的本质是 参数化类型 ,也就是说所操作的 数据类型 被指定为一个参数.这种参数类型可以用在类.接口和方法的创建中,分别称为 ...

  8. codevs 2451 互不侵犯(状丫dp)

    /* 好神奇好神奇...表示自己要学的还很多 注意到n<=9 不是搜索就是状丫 搜索+剪枝 70分 枚举放或者不放 这里用状丫 f[i][j][k] 表示前i行 放了j个国王 i行的状态是k的方 ...

  9. java -jar start.jar和nohup java -jar xxx.jar > test.log &的区别

    nohup用在什么地方? KD3EE49RD38

  10. 返回List的分页方法

    cs代码  /// <summary>         /// 处理分页检索存储过程(SQL2005)         /// </summary>         /// & ...