搭建开发环境-Mac

概述

上一篇搭建开发环境-WSL+Ubuntu 记录了WSL 和Ubuntu 下开发环境的搭建。这一篇就说下Mac开发环境的搭建。
就像很多人误以为Mini 是专为女孩子设计的高颜值车,其实是一辆极其hardcore 的拉力车一样。
很多人都被Mac 那高颜值蒙蔽了,其实这是一台生产力满满的生产工具。
生产力镇楼

那既然作为生产工具,我们自然也要好好的配置一下了。

Setep

1. 安装常用软件

  • vscode
  • idea
  • pycharm
  • postMan
  • anaconda

2. Homebrew

Linux 下有yum, apt-get 等, 对应到Mac, 就是Homebrew了。
说到这里,就不得不提那个著名的段子,Homebrew 的作者Max Howell 面试Google被拒了。

Max Howell 在 Google 面试,但 Google 拒绝了他,给出的答复是:“虽然我们 90%的工程师都用你写的软件,但抱歉我们不能聘用你,因为你无法在白板上写出翻转二叉树。” 

一键安装脚本如下

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

连接在此
brew.sh

国内换Giteee

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

常用命令

/// 安装
brew install FORMULA|CASK.../// 搜索
brew search TEXT|/REGEX//// 卸载包
brew uninstall FORMULA|CASK.../// 查看安装列表
brew list [FORMULA|CASK...]/// 查看包信息
brew info [FORMULA|CASK...]/// 查看哪些包可以更新
brew outdated /// 更新指定包(安装新包,但旧包依旧保留)
brew upgrade [FORMULA|CASK...]/// 更新Homebrew
brew update                  /// 清理旧版本和缓存
brew cleanup       					# 清理所有包的旧版本
brew cleanup [FORMULA ...]  # 清理指定包的旧版本
brew cleanup -n             # 查看可清理的旧版本包,不执行实际操作/// 锁定不想更新的包(因为update会一次更新所有的包的,当我们想忽略的时候可以使用这个命令)
brew pin [FORMULA ...]      # 锁定某个包
brew unpin [FORMULA ...]    # 取消锁定/// 软件服务管理
brew services list  								# 查看使用brew安装的服务列表
brew services run formula|--all  		# 启动服务(仅启动不注册)
brew services start formula|--all  	# 启动服务,并注册
brew services stop formula|--all   	# 停止服务,并取消注册
brew services restart formula|--all # 重启服务,并注册

2. 安装iTerm2

iterm2 个人用的最顺手的Mac OS 上的终端工具。

brew install iTerm2

设置为默认终端工具

改个主题iTerm2-Color-Schemes
操作方法和主题预览详见以上github。个人还是喜欢默认的。

一些小设置

  • 光标选择:iTerms2提供了三种光标可供选择:_、|、[],打开iTerm2,打开Preferences配置界面,Profiles -> text-> cursor,选择自己想要的光标即可。
  • 窗口设置:打开Preferences配置界面,Profiles -> Window,根据自己的需求设置窗口透明度、背景图片、行列数以及风格等。
  • 置终端历史行数: 打开Preferences配置界面,Profiles -> Terminal,根须需求进行修改,如果想不限制行数可以勾选Unlimited scrollback

3. 安装 oh-my-zsh

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
chsh -s /bin/zsh # set oh my zsh theme
##vi .zshrc
##ZSH_THEME="afowler"
## 更多主题参见 https://github.com/ohmyzsh/ohmyzsh/wiki/Themes## plugins 自动补全和加亮
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
## 更多插件,查看 https://github.com/ohmyzsh/ohmyzsh/wiki/Plugins## plugin 配置
#vi .zshrc
#plugins=(git
#zsh-autosuggestions
#zsh-syntax-highlighting
#)

4. autojump

brew install autojump#编辑配置文件
vim ~/.zshrc#在最后一行增加下面的代码
[ -f /usr/local/etc/profile.d/autojump.sh ] && . /usr/local/etc/profile.d/autojump.sh#退出编辑后执行使配置生效
source ~/.zshrc 

5. 触摸板小技巧

Mac 最爱的就是这个触摸板了,丝滑顺畅,各种手势配合,那叫一个行云流水。
主要手法有:

  • 触控板查词功能:当我们在浏览网页或者文档的时候,如果遇到了生词,只要把光标移到这个生词,用力按下触控板,就会弹出词典。
  • 触控板滚动功能:双指在触控板上上下滑动为上下滚动,双指在触控板上左右滑动为左右滑动。
  • 触控板翻页功能:正浏览网页的时候,如果需要回到上一页,只需要用双指,在触控板上向右滑动,就可以回到上一页,向左滑动就可以翻到下一页。和上一步的区别,是上一步是直线,这里画弧线。
  • 触控板缩放功能:Mac上的缩放功能跟在手机上的操作方式一样的,以查看照片为例,我们只需要把光标移动到需要放大的部分,在触控板上用双指捏合,就可以实现缩放的功能。
  • 触控板旋转功能:如果你正在查看照片,想要旋转照片,该怎么操作呢?操作的方式跟在手机上一样,只需要用双指在触控板上旋转就可以了。
  • 三指拖移:最帅技巧,切屏全靠它。
  • 锁屏:一般设在右下角,和水果忍者一般,直接一滑。
    其余可以参见 一口气了解Mac触控板的使用小技巧,是时候扔掉鼠标了!

6. Docker

$ sudo hdiutil attach Docker.dmg
$ sudo /Volumes/Docker/Docker.app/Contents/MacOS/install
$ sudo hdiutil detach /Volumes/Docker

小结

对我目前而言,配好iTerms,brew 和VSCode,基本就能用了。相比WSL 还是省事不少。

REF

  • Mac已到手?从零开始,八步打造一个高效舒适的开发环境

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/54525.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于swing的旅游管理系统java jsp旅行团信息mysql源代码

本项目为前几天收费帮学妹做的一个项目,Java EE JSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。 一、项目描述 基于swing的旅游管理系统 系统有1权限:管…

flask获取请求对象的get和post参数

前言 get请求参数是在URL里面的,post请求参数是放在请求头里面的 get请求: index_page.route("/get") def get():var_a request.args.get("a", "jarvis")return "request:%s,params:%s,var_a:%s" %(request…

上传镜像到阿里云的ACR

1、开通阿里云ACR 2、在ACR 中创建命名空间 3、本地安装docker 4、登录到 开通ACR,需要配置访问凭证 [rootmaster ~]# docker login --username***lb registry.cn-beijing.aliyuncs.com Password: 5、给镜像打标签 [rootmaster ~]# docker images REPOSITORY …

【中危】Apache XML Graphics Batik<1.17 存在SSRF漏洞 (CVE-2022-44729)

zhi.oscs1024.com​​​​​ 漏洞类型SSRF发现时间2023-08-23漏洞等级中危MPS编号MPS-2022-63578CVE编号CVE-2022-44729漏洞影响广度极小 漏洞危害 OSCS 描述Apache XML Graphics Batik 是一个开源的、用于处理可缩放矢量图形(SVG)格式图像的工具库。 受影响版本中&#xff0…

prometheus + grafana进行服务器资源监控

在性能测试中,服务器资源是值得关注一项内容,目前,市面上已经有很多的服务器资 源监控方法和各种不同的监控工具,方便在各个项目中使用。 但是,在性能测试中,究竟哪些指标值得被关注呢? 监控有…

Jupyter Notebook 配置根目录

注:本文是在 Windows 10 上配置 Jupyter Notebook 打开的默认根目录,Linux 同。 步骤一:创建 Jupyter Notebook 配置文件 使用以下命令创建 Jupyter Notebook 配置文件(如果尚未创建): jupyter notebook …

python连接Microsoft SQL Server 数据库

python代码 Author: tkhywang 2810248865qq.com Date: 2023-08-21 11:22:24 LastEditors: tkhywang 2810248865qq.com LastEditTime: 2023-08-21 11:29:30 FilePath: \PythonProject02\Microsoft SQL Server 数据库.py Description: 这是默认设置,请设置customMade, 打开koroFi…

Spring boot(一)

Spring Boot是一个构建在Spring框架顶部的项目。它提供了一种简便,快捷的方式来设置,配置和运行基于Web的简单应用程序。 它是一个Spring模块,提供了 RAD(快速应用程序开发)功能。它用于创建独立的基于Spring的应用程序,因为它需…

第61步 深度学习图像识别:多分类建模(TensorFlow)

基于WIN10的64位系统演示 一、写在前面 截至上期,我们一直都在做二分类的任务,无论是之前的机器学习任务,还是最近更新的图像分类任务。然而,在实际工作中,我们大概率需要进行多分类任务。例如肺部胸片可不仅仅能诊断…

基于Java+SpringBoot+Vue前后端分离图书电子商务网站设计和实现

博主介绍:✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专…

css滚动条的使用

前言: css滚动条的使用。 1、使用案例1:背景不要,只展示一个滚动条 如果是默认整体,::就够用了,如果是某个元素,可以 .abc:: ,如果是scss这种的 &:: ::-webkit-scrollbar {width: 6px; } ::-webkit…

【学习FreeRTOS】第20章——FreeRTOS内存管理

1.FreeRTOS内存管理简介 在使用 FreeRTOS 创建任务、队列、信号量等对象的时,一般都提供了两种方法: 动态方法创建:自动地从FreeRTOS管理的内存堆中申请创建对象所需的内存,并且在对象删除后,可将这块内存释放回Free…

使用威胁搜寻增加网络安全

什么是威胁搜寻 威胁搜寻(也称为网络威胁搜寻)是一种主动网络安全方法,涉及主动搜索隐藏的威胁,例如组织网络或系统内的高级持续性威胁和入侵指标。威胁搜寻的主要目标是检测和隔离可能绕过网络外围防御的威胁,使管理…

怎么把pdf转换成jpg格式?

怎么把pdf转换成jpg格式?在我们日常的办公过程中,PDF文件是一个经常被使用来传输文件的格式。它能够确保我们的文件内容不会混乱,并以更加完美的方式呈现出来。然而,PDF文件也存在一些缺陷。例如,它无法直接编辑&#…

学信息系统项目管理师第4版系列02_法律法规

1. 信息安全的法律体系可分为四个层面 1.1. 一般性法律法规,如宪法、国家安全法,国家秘密法 1.2. 规范和惩罚信息网络犯罪的法律,如刑法、《全国人大常委会关于维护互联网安全的决定》等 1.3. 直接针对信息安全的特别规定,如《…

Spring AOP 的实现及原理

目录 什么是 Spring AOP ?AOP 是啥 ?Spring AOP 可以干啥 ? AOP 的组成Spring AOP 的实现Spring AOP 的实现原理 什么是 Spring AOP ? AOP 是啥 ? 我们知道 OOP 是面向对象编程, 那 AOP 又是啥呢 ? AOP(Aspect Oriented Prog…

适应高速率网络设备的-2.5G/5G/10G网络变压器/网络滤波器介绍

Hqst盈盛(华强盛)电子导读:在高速发展的互联网/物联网时代,为满足高网速的网络数据传输需求,网络设备在制造中也要选用合适的网络变压器/滤波器产品,有哪些可供选择的高速率网络变压器产品也是广大采购人员…

jvs-rules(规则引擎)更新:新增功能介绍

jvs-rules更新内容 1.复合变量新增数据补充节点,实现请求回来的数据再以入参方式请求其他数据进行数据补充(例如通过参数A,请求回数据B,再以数据B为入参,请求回数据C) 2.规则流结束节点支持新增、新建、引…

基于jeecg-boot的flowable流程跳转功能实现

更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: https://gitee.com/nbacheng/nbcio-boot 前端代码:https://gitee.com/nbacheng/nbcio-vue.git 在线演示(包括H5) : http://122.227.135.243:9888 今天我…

【Linux】权限

欢迎来到Cefler的博客😁 🕌博客主页:那个传说中的man的主页 🏠个人专栏:题目解析 🌎推荐文章:题目大解析3 目录 👉🏻shell命令解释器👉🏻Linux用户…