Windows高效开发环境配置(一)
更多精彩内容,欢迎关注公众号:逻魔代码
前言
用了多年的 MacOS 做开发,一系列诸如 Alfred、Item2、Oh-my-zsh 之类的工具,大大地提升了工作的效率和使用舒适度。新工作不给配 Mac 电脑,自己带电脑每天背着实在麻烦,就花时间研究了下如何在 Windows 上配置一个高效的开发环境,将以系列文章的形式分享出来,希望可以对使用 Windows 开发的大家有些帮助!
在 MacOS 上,iTerm2 + Oh-My-Zsh 是高效生产力工具组合,其终端命令行提示功能极其便携,尤其是 zsh-autosuggestions 命令行自动填充功能等插件。
那么在 Windows 系统中是否可以配置 Zsh 终端并安装其插件呢?
当然可以!
我们先看最终的效果:

要达成此目的,有两种实现方案:
- WSL + ohmyzsh
- Git Bash + zsh
相比于这两种方案而言:
- 第一种方案 WSL 直接安装 Linux 子系统,优点是支持 Linux 生态;缺点是开发时一般在主机系统,而 Linux 子系统和主机系统之间的通过网络共享文件,相对不便。
- 第二种方案 Git Bash 优点是不用切入 Linux 子系统可直接使用 Zsh,方便;缺点则是不完全支持 Linux 命令。
那么我们选择哪种方案呢?
小孩子才做选择,大人则全都要!
WSL 提供 Linux 生态,搭建一些服务之类的;而 Git Bash + zsh 则用于日常开发,完全不冲突!Perfect ~!
就本文而言,我们先配置 Git Bash + zsh 的方案,其他方案,且听下回分解。
更多精彩内容,欢迎关注公众号:逻魔代码
安装 Git Bash
从官网下载 Git for Windows ,其包含 Git Bash、Git GUI、Shell Integration 三个部分,安装完成后, bash shell 和 git 都有了,这也是我选择它的原因。
安装过程也很简单,唯一需要注意的就是,要把如下图所示的两个选项勾选上,其他默认即可,依次下一步。

安装完成后,打开 Git Bash,即可使用大部分常用的 bash 命令。
安装配置 Zsh
- 进入 MSYS2 Packages ,点击下载 zsh 压缩包:

- 使用 7zip 解压,复制 etc、usr 两个文件夹到 Git 安装目录中,如图:

- 打开 Git Bash,执行命令
zsh,出现如下图所示,即表示 zsh 安装成功

- 重要! 根据向导对 zsh 进行初始化配置,主要是 tab 补全和命令历史配置。若是因为某个原因,不小心关闭或跳过了配置向导且不再出现了,可以使用如下命令再次打开配置向导:
autoload -U zsh-newuser-install
zsh-newuser-install -f
具体配置不再详细说明,若需要帮助,请联系笔者。
- 配置 zsh 为 Git Bash 的默认 shell 。在
~/.bashrc(用户主目录)中添加如下内容:
# Enable zsh
if [ -t 1 ]; then
exec zsh
fi
若安装 Git Bash 时,完全按照上文说明,则在用户根目录下,有一个 .bashrc 文件,否则请自行创建。
安装 oh-my-zsh
按照上面的步骤,我们的 Git Bash 已经和 Unix Zsh Shell 没什么区别了,接下来直接执行 oh-my-zsh 安装脚本即可:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
安装插件
安装如下几个插件,提高开发效率,详细安装方法,请点击链接进入页面查看。
- zsh-completions
- zsh-syntax-highlighting
- zsh-autosuggestions
- 提示:如果自动提示插件遇到光标闪动之类的奇怪问题,这可能是 v0.7.0 引起的问题,切换到 v0.6.4 版本即可。
cd ~/.oh-my-zsh/plugins/zsh-autosuggestions
git checkout tags/v0.6.4 -b v0.6.4-branch
Windows Terminal
强烈建议安装!
Windows Terminal 是微软官方出品的新一代终端集成工具,安装之后,可以直接以 Tab 页的形式管理 CMD、PowerShell、Git Bash等。其美观性和功能性,都远远胜出 Windows 内置的 CMD 和 PowerShell。直接从应用商店安装即可,以后更新更方便。

更多精彩内容,欢迎关注公众号:逻魔代码
至此,本文配置全部完成!
Windows高效开发环境配置(一)的更多相关文章
- windows phone7开发环境配置错误
遇到下面这样一个问题:在配置windows phoe7开发环境的时候出现如下错误,以及相应的解决方案,希望对大家有所帮助. 装完环境后出现下面错误: [caption id="attachm ...
- QT creator+OpenCV2.4.2+MinGW 在windows下开发环境配置
由于项目开发的原因,需要配置QT creator+OpenCV2.4.2+MinGW开发环境,现对配置方法做如下总结: 1. 下载必备软件 QT SDK for Open Source C++ de ...
- wxWidgets 在 Windows 下开发环境配置
本文基于 CodeBlocks (16.01) 和 wxWidgets (3.0.2) 搭建 Windows 环境下 GUI 开发环境. 1. CodeBlocks 官网,下载最新版安装包 code ...
- Python在Windows下开发环境配置汇总
最近比较关注学习Python方面的资料和课程,由于Python本身基本都是在Linux下开发,本人windows用习惯了初用Linux各种别扭啊. 下面将我在配置Windows环境下的禁言写出来,与大 ...
- (OpenCV) VS2013 + opencv-2.4.10.exe + Windows 10 开发环境配置
主要配置2点: - Windows 环境变量. - VC++ 配置. STEP BY STEP: 1. 双击 ”opencv-2.4.10.exe“,解压到本地文件夹 “C:\ ". 2. ...
- Windows FFMPEG开发环境配置
1.去FFMPEG网站上下载Dev版本的库,里面有我们需要的头文件和lib文件,然后下载Shared版本的库,里面有我们需要的dll文件 http://ffmpeg.zeranoe.com/build ...
- AndroidStudio开发环境配置-Windows
Android Studio开发环境配置-Windows 最近突发奇想,开始研究Android开发.开始时使用Eclipse作为开发IDE,结果各种不好使,首先下载和安装SDK,以及不同版本的Imag ...
- windows下的Nodejs及npm的安装、常用命令,Nodejs开发环境配置
http://www.cnblogs.com/webstorm/p/5744942.html ***************************************** 第一步:下载Nodej ...
- 【Objective-C】Windows下Objective-C开发环境配置
[Objective-C]Windows下Objective-C开发环境配置 ftp://ftpmain.gnustep.org/pub/gnustep/binaries/windows/ 最近打 ...
随机推荐
- 云厂商 RDS MySQL 怎么选
1. 摘要 为了让大家更好的了解各云厂商在RDS MySQL数据库功能上的差异,也为给准备上云的同学做个参考,本文将对阿里云.腾讯云.华为云和AWS 的 RDS MySQL数据库进行对比说明. 从一个 ...
- mybatis plus 更新字段的时候设置为 null 后不生效
mybatis plus 将属性设置为 null 值会被忽略,最终生成的 sql 中不会有 set field = null(可能是某些情况) mybatis-plus 更新字段的时候设置为 null ...
- Fluent-Validator 业务校验器
Fluent-Validator 业务校验器 背景 在互联网行业中,基于Java开发的业务类系统,不管是服务端还是客户端,业务逻辑代码的更新往往是非常频繁的,这源于功能的快速迭代特性.在一般公司内部, ...
- leetcode 3. Longest Substring Without Repeating Characters 无重复字符的最长子串
一.题目大意 https://leetcode.cn/problems/longest-substring-without-repeating-characters/ 给定一个字符串 s ,请你找出其 ...
- [漏洞复现] [Vulhub靶机] Tomcat7+ 弱口令 && 后台getshell漏洞
免责声明:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责. 0x00 背景知识 war文件 0x01 漏洞介绍 影响范围:Tomcat 8.0版本 漏洞类型:弱口令 漏洞成因:在tomc ...
- 文件操作(Java)
学习内容:文件操作 1.输入流:InputStream类是字节输入流的抽象类,常用的一些方法有: raed()方法:从输入流中读取数据的下一个字节 reset()方法:将输入指针返回到当 ...
- 分布式机器学习:逻辑回归的并行化实现(PySpark)
1. 梯度计算式导出 我们在博客<统计学习:逻辑回归与交叉熵损失(Pytorch实现)>中提到,设\(w\)为权值(最后一维为偏置),样本总数为\(N\),\(\{(x_i, y_i)\} ...
- Tomcat启动失败:java.lang.NoSuchMethodError: org.apache.tomcat.util.res.StringManager.getManager(Ljava/lang/Class;)Lorg/apache/tomcat/util/res/StringManager
项目开发中发现服务器上Tomcat启动失败 开始定位 第一步:打开tomcat日志catalina.log: 2017-07-25 17:02:43,799 [Catalina-startStop-1 ...
- 工具分享:清理 Markdown 中没有引用的图片
前言: 之前,我写笔记的工具一直都是 notion,而且没有写博客的习惯.但是一是由于 notion 的服务器在国外,有时候很不稳定:二是由于 notion 的分享很不方便,把笔记分享给别人点开链接之 ...
- python常用标准库(os系统模块、shutil文件操作模块)
常用的标准库 系统模块 import os 系统模块用于对系统进行操作. 常用方法 os模块的常用方法有数十种之多,本文中只选出最常用的几种,其余的还有权限操作.文件的删除创建等详细资料可以参考官方文 ...