站内搜索

本次搜索找到结果 6 条

一年前,在我花费了一个星期的时间写 editor 横评的时候,我还没想过我最终会选择 VSCode。由于我长期使用 Code,关注它的动态,所以我会常常更新这篇文章。

VSCode(下文简称 Code)是由微软坐镇苏黎世的 Eric Gamma 率领团队打造。很多人可能对外国名字不太敏感,此人曾写过一本关于“设计花纹”的书Design Patterns (豆瓣),并且曾经是 Eclipse(最热门的开源 JAVA IDE) 项目的负责人。

为追赶 AI 的浪潮,实验室最近新上了一台 GPU 服务器,里面是一块 Nvida Tesla K40m。服务器刚到时是没有系统的,于是我找了一个下午的时间给它装上了 Ubuntu 、配置了显卡驱动和 TensorFlow。以下是具体过程。

2017年的高考结束了,又一批少年们走出高中步入新的生活,从他们身上,我仿佛看到当年的自己。也是从那一年的此时到今天,我使用 Mac 作为主力机学习工作已经整整两年的时间。这期间,我使用电脑的方式被 macOS(旧 OS X)深深改变,并成为了一名资深果粉。随着时间、空间的转换,我身边使用 Mac 的朋友也越来越多。

本文将持续更新

缘起

过去一年正是我接触 Linux 的一年,这期间我从头开始配置过了许多台 Linux(主要以 Ubuntu 为主)。许多同学也来问过我配置 Ubuntu 有什么建议,但是一时也很难说清,于是一直有计划写一篇文章详细记叙一下我从头配置一台 Ubuntu 的过程。

一直想写一篇文章总结一下我折腾编辑器的一些琐事。在 macOS 下我向来习惯 shell+vim 的工作环境,倒也自在。但近来新入 windows 平台,我花费了很长的一段时间也没有找到习惯的感觉,索性转换一下思路顺带体验一下近来势头强劲、风声水起的几款编辑器。于是有此文。

由于 Kanabiner 在 macOS 的最新版本 Seirra 下失效。请考虑 Karabiner-Elements

我们都知道macOS在系统中除了传统的箭头上下左右键(Arrow)以外,还集成了一套类似于Emacs中的光标移动方式,即

  • C-f forward
  • C-b back
  • C-n next
  • C-p previous

这也是我从一开始使用Mac就习惯使用的移动方式。 然而自从Join了Vim党,我的习惯中又多了一套Vim的移动方式,即hjkl分别对应左下上右。虽说两套系统迥异(暗示着Vim党和Emacs党不可调和的矛盾),但是并没有按键冲突(说明在现实生活中也是可以 vim ~/.emacs 的嘛)。然而比较关键的是,由于快捷键冲突,macOS这一套理论在有些软件(形如Office套件,chrome浏览器的某些地方,等等)是不能用的。而且macOS里没有Vim的那一套理论。这是我长久以来的心病,也是今天写下这篇文章的原因。

希望本是无所谓有,无所谓无的。这正如地上的路;其实地上本没有路,走的人多了,也便成了路。

没有的东西我们自己hack一个不就得了 Karabiner是macOS下强大的KeyMap软件(Free software),它的界面形如这样 Karabiner 作为一个有梦想的Geek,我并不太想去研究它给好的默认选项(其实也大概看过,都是一些比较常用的设置,估计也足以满足大部分人要求),毕竟它是一个支持编程的软件 Karabiner-setting 在上面这个菜单中找到Open private.xml这个选项,点击即可打开个人设置的xml文件了 参考官方文档我们可以写出以下代码来添加我们需要的vim模式

<item>
    <name>add 3 func</name>
    <identifier>private.add_3_func</identifier>
    <autogen>__KeyToKey__ 
        KeyCode::J, ModifierFlag::CONTROL_L,
         KeyCode::CURSOR_DOWN
     </autogen>
     <autogen>__KeyToKey__ 
        KeyCode::K, ModifierFlag::CONTROL_L,
         KeyCode::CURSOR_UP
     </autogen>
     <autogen>__KeyToKey__ 
        KeyCode::H, ModifierFlag::CONTROL_L,
         KeyCode::CURSOR_LEFT
     </autogen>
     <autogen>__KeyToKey__ 
        KeyCode::L, ModifierFlag::CONTROL_L,
         KeyCode::CURSOR_RIGHT
     </autogen>
  </item>

这里我选择了左边的CONTROL键作为prefix,注意如果你要其他的前缀按键,你需要参考这里,里面如果没有的话你要自己添加以后才能使用。具体的按键叫什么,可以用它自己的工具查看: Karabiner-key 此外我还顺便设置了一下键盘连击(key repeat)的反应时间 Karabiner-delay 以前要等上1s才能连击,还是比较不爽的。 好了,接下去就看能不能习惯了

为了世界和平