notes/Set up development environment on windows

时间:2021-11-07 11:06:39

恰好前几天买了个新笔记本, 15存 sony vaio, 终于从mac回到了windows。 不过作为(曾经的)*nix追随者, 没有bash真是寸步难行, 幸好windows8.x有了super search, 否则的话在一对按钮里点来点去还真没辙……

 

  • Dvorak layout

首先就是dvorak的设定, mac上倒是可以很简单的从preference-language里设置, windows下没有给非英文输入法提供简单的配置方式。不过倒不像我用windows之前想的不可能。

windows提供了各种layout, 但不知为什么却一直不拿到外面来, 对于ms自带的中文输入法, 打开注册表(regedit)找到:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000804

将layout file改为kbddv.dll即可。 其他语言类似。

实际上, 对我来说, 只要有了dvorak的原生支持, 到底用哪个系统差别没那么大……

 

  • Switch esc/capslock and alt/ctrl

我一直对windows的快捷键十分不满, 为什么要用alt+f4作为关闭, 为什么不是ctrl+q, 因为用惯了mac, 感觉上拇指按功能键比小指舒服得多, 因此还是交换一下比较舒服。

方法也有, 我在用SharpKeys, 也是通过修改注册表, 不需要常驻, 对有强迫症的人来说是好消息。

 

  • Bash/Conemu

至少我没有bash就没法干活, cygwin可能是为数不多的选择, mingw官方只有32bit版, 64bit的mingw和cygwin是整合的。 装好之后可以看一下bash的版本, 我曾经遇到过bash是3.x的情况。版本比较低的时候可以自行编译(详细参考gnu bash的相关网页)。 可能最常见的问题是pwd.h missing, 似乎是特定版本的cygwin里没有这个头文件, 我曾经在某些版本下变异时没有这个问题。

同时, 装好之后会发现cygwin自带的命令行模拟器不太好用。 既不漂亮也没太多功能, 我强烈建议使用conemu代替它。 conemu的设置很全, 对utf8也非常友好, 在startup里面配置启动命令行后可以快速打开bash/powershell/cmd(虽然我不用后两个)。值得一试。

至于剩下的, vim配置一类, 大概每个人喜好不同, 也没法多说。 值得注意的一个问题是.vimrc里如果有大量按键映射(超过20个?)时, 回导致操作时按键有lag。 因此希望在vim里使用qwert时全部映射也不是个好办法。

 

  • CodeWriter/Sublimetxt

codewriter是为数不多的metro风格的代码编辑器, 可惜支持的语言较少, 也没有vim mode。 只有偶尔看代码时可以用到, 大概跟我在mac下买的textastic似乎一个用途。 sublime的表现倒是很好, 只是不知会不会有metro版。 现在st3已经对公众开放了, metro也没提上日程。

 

  • coff and elf

这个是目前我最不爽的地方。 很多编译器没法选择目标代码的格式, 而cygwin下的ld似乎没法处理obj文件, 这对于一直用ld和gcc的人来说非常痛苦。 虽说有不少迂回方法(比如使用给予llvm的编译器), 对于有强迫症的人来说还是加入新的编译选项比较靠谱。(mach-o虽然也是独此一家, 但毕竟ld支持)

顺便, 我压根不会用ms自家的linker, 也不会用dmLib, 什么时候世界上能够只有elf, 大概我们就实现共产主义了。