恰好前几天买了个新笔记本, 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, 大概我们就实现共产主义了。

notes/Set up development environment on windows的更多相关文章

  1. How to enable C development in a Windows 10 development environment VM

    To enable C development in a Windows 10 development environment VM, follow these steps: Start VS in ...

  2. 1.3 PROGRAM DEVELOPMENT ENVIRONMENT

    1.3 PROGRAM DEVELOPMENT ENVIRONMENT 1.4 WIN32 EXECUTEABLE FILE FORMAT We should also know that compl ...

  3. The Google Test and Development Environment (持续更新)

    最近Google Testing Blog上开始连载The Google Test and Development Environment(Google的测试和开发环境),因为blogspot被墙,我 ...

  4. How to set up Dynamics CRM 2011 development environment

    Recently I have been starting to learn Microsoft Dynamics CRM 2011 about implement plugin and workfl ...

  5. Create A .NET Core Development Environment Using Visual Studio Code

    https://www.c-sharpcorner.com/article/create-a-net-core-development-environment-using-visual-studio- ...

  6. Setting up a EDK II build environment on Windows and Linux:搭建Windows和Linux开发环境[2.2]

    Setting up a EDK II build environment on Windows and Linux:搭建Windows和Linux开发环境[2.2] 2015-07   北京海淀区  ...

  7. Programming in Go (Golang) – Setting up a Mac OS X Development Environment

    http://www.distilnetworks.com/setup-go-golang-ide-for-mac-os-x/#.V1Byrf50yM8 Programming in Go (Gola ...

  8. storm环境搭建(前言)—— 翻译 Setting Up a Development Environment

    Setting Up a Development Environment 搭建storm开发环境所需步骤: Download a Storm release , unpack it, and put ...

  9. Storm(1) - Setting Up Development Environment

    Setting up your development environment 1. download j2se 6 SDK from http://www.oracle.com/technetwor ...

随机推荐

  1. python tcp socket 多线程

    不多说,直接上代码 client.py #!/usr/bin/python import socket,sys,string host="localhost" port=8000 ...

  2. 多线程学习之BlockingQueue

    前言: 在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题.通过这些高效并且线程安全的队列 类,为我们快速搭建高质量的多线程程序带来极大的 ...

  3. PHP 16: MySql的数据库访问

    原文:PHP 16: MySql的数据库访问 本章介绍PHP访问MySql的方法.如果你对MySQL不是很清晰,可以参看PHP 17: MySQL的简单介绍.对于数据库的操作,无非就是以下几个点: 如 ...

  4. 快速构建Windows 8风格应用2-创建调试应用

    原文:快速构建Windows 8风格应用2-创建调试应用 本篇博文主要介绍的是创建应用时可以选择哪些模版,生成默认的Windows 8风格应用解决方案中含哪些文件,最后是如何调试Windows 8风格 ...

  5. 开源的.Net ORM微型框架SuperHelper

    SuperHelper——灵活通用的.开源的.Net ORM微型框架 SuperHelper是博主利用业余时间编写的一个ORM微型框架,除了可以提高开发效率,与其它ORM框架相比,博主更加喜欢Supe ...

  6. Spring之SpringMVC(源码)启动初始化过程分析

    1.说明 SpringMVC作为Spring提供的MVC实现,可以实现与Spring的天然无缝联合,因为具有很广泛的用途.具体的关于SpringMVC的处理流程逻辑我在这里就不在赘述了.还是来通过源码 ...

  7. 使用rem设计移动端自适应页面三(转载)

    使用rem 然后根据媒体查询实现自适应.跟使用JS来自适应也是同个道理,不过是js更精确一点.使用媒体查询: html { font-size: 62.5% } @media only screen ...

  8. 反射导出excel案例

    1.代码案例: protected void btnExportExcel_Click(object sender, EventArgs e) { SetSearchValue(); Dictiona ...

  9. uva 10054 The Necklace(欧拉回路)

    The Necklace  My little sister had a beautiful necklace made of colorful beads. Two successive beads ...

  10. 使用UpdatePanel控件

    使用UpdatePanel控件(二) UpdatePanel可以用来创建丰富的局部更新Web应用程序,它是ASP.NET 2.0 AJAX Extensions中很重要的一个控件,其强大之处在于不用编 ...