SimpleMacGuide_CN

简单的Mac中文指南

正在持续更新中,欢迎大家提意见和建议。目前的主要作者有:@leavelet @Sunyi618 欢迎大家一起参与写作🎉

很久之前就想写这篇文章了,但是作为老鸽子一直没有动笔。这次借信科电脑小队的契机写一篇Mac入门级的文章,想帮助更多小白同学入门Mac,也算是对自己Mac使用经历的一点总结。

本文的目标是,帮助读者能从小白,建立起对Mac和macOS的基本认识,学会常用的技能,发挥一台电脑的最大作用。最重要的是,学会通过自主解决Mac问题乃至更广泛的电脑问题的方法,不被电脑牵着鼻子走。

本文的大概思路是,先讲一些有用的通用技能,试图授大家以“渔”;然后带领大家从初等的用法开始,给大家一些能快速上手的“鱼”;最后部分类似一个可供查找的词典,可以在遇到问题或者想要提高的时候参考。

同时,Apple的macOS 使用手册是关于macOS的权威指南,欢迎大家阅读。

本文的GitHub仓库地址是 https://github.com/leavelet/SimpleMacGuide_CN/,遵循CC BY-NC 4.0协议

由于可能会很长,会更新一阵子。作者水平有限,如果发现问题请提issue或者pr,同时也欢迎大家补充内容!

leavelet,me#leavelet.io ('#'->'@')

2022年3月2日 于家园食堂三楼

如何使用搜索引擎

如何使用搜索引擎

好像绝大多数时候,帮大家解决问题其实是帮大家搜索。所以本书的开篇讲讲怎么使用搜索引擎。

其实就三步:

  1. 选择一个合格的引擎
  2. 尽量准确描述想了解的问题
  3. 筛选答案

一. 选择搜索引擎

目前推荐的搜索引擎有谷歌必应,由于Mac前几年在国内相对小众,百度上的搜索结果通常不多而且质量不高。如果有条件使用谷歌可以将谷歌作为首选,不行的话,必应国内版搜索内容的准确性也相对较高。

对于搜索引擎的广告,谷歌和必应的广告质量尚可,甚至有时候有用,但是仍要防范被误导。我们会在浏览器那一章聊聊网页去广告插件等搜索引擎加强工具。

二. 描述问题

推荐使用英文描述问题,因为各大论坛和官方支持的首选语言一般是英文。不必担心英文不够地道,搜索引擎对各种意思相近的表述有优化,只要表达出相近的意思,就可以得到想要的结果

描述问题的原则是,不要问搜索引擎问题,而是给出关键词。比如说,我想知道波黑的总统是谁,我可以这样搜索:Bosnia and Herzegovina president。搜索引擎会立刻给出答案:Incumbent Milorad Dodik Šefik Džaferović Željko Komšić since 20 November 2018

关键词的组成,大概是:提问主体(某程序或某系统等)+ 现象(崩溃 打不开)+ 限定词(如特定版本等)

对于技术问题,搜索时加上错误码或者错误信息是很好的选择,因为这些问题通常已经有人遇到并解决。特别的,Mac上的问题,在搜索时要在最后加上"mac",便于获得更精确的答案。

三. 筛选答案和高级搜索

通常来说,搜索引擎给出的结果越靠前,网站的可信度越高。可以在搜索引擎界面一次性打开多个4-5个搜索结果,从上到下查看是否能解决问题。

可信度的排名依次是

🥳官方论坛及文档
😎Stack Overflowstackexchange等带有答案投票的专业网站,或者 Reddit 等讨论性质的论坛
😀不知名的网站和个人博客
😢

内容农场

(搬运并机器翻译大量内容并集合在一起,比如小x知识网、某某百科网)

😭

蹭关键词但是没有内容的网站

(如阿里云腾讯云的某些网站,罄竹难书)

近些年内容农场和蹭关键词的网站通过欺骗在搜索引擎获得了比较高的结果位次。可以积累一些常见内容农场的名字,不去点击,或者使用ublocklisk等插件屏蔽这些网站的结果。

高级搜索,适用于寻找某些带有特定特征的网站。通常来说,引擎首页可以找到“高级搜索”选项,也可以在搜索框内使用语法进行搜索。我常用的高级搜索语法就是 site: 指定结果来源网站。

详细语法这里不赘述,可以参考这篇文章。(百度和csdn其实也不是一无是处🐶)

四. 问题链

有时候出现这种情况,就是想要得到一个问题的解决办法,查到的解决方案需要用到自己不会的技能,在学习这个技能的时候又会碰到其他内容,导致要学的内容滚雪球,问题却无法解决。

这种情况下,可以寻找能够停止学习新的方法,寻找手把手的教程内容,在确保安全性(第四章会讲)的情况下跟着教程完成解决方法。或者找技术水平较高同学的帮助。

五. 一个例子

比如前几天一位同学的Rstudio在修改设置的时候会报错,提示“permission denied"。

截图

谷歌搜索 rstudio permission denied macrstudio change settings denied都会得到近乎一样的搜索结果页,第一条是官方论坛结果,第二条是Stack Overflow结果。点击第一条,得知rstudio的偏好设置保存在~/.config,检查发现用户组没有权限修改内容,只要运行sudo chown -R <username> .config或者就可以解决问题。

(有关权限和终端运行指令的内容会在后续说到,暂时不用太担心)

搜索引擎结果

(第二条的答案是我写的)

2. 学会备份 & 勇于尝试

电脑小白怎么会玩电脑?最简单的就是多摸索。使用电脑是经验型的知识,经验丰富了,就可以解决遇到的问题。

我们这里讲一些怎么尝试前的注意点。

备份

电脑有价,数据无价

可能造成数据被误删的不仅是尝试各种操作,还有电脑泼水,硬盘损坏,勒索软件等等。美好回忆,课堂笔记,甚至毕业论文可能瞬间一去不返。我们不愿意见到这些。以防万一,我强烈建议所有人对电脑数据进行备份。

备份分两种,定时的储存型备份和实时的同步型备份。本文重点介绍Time Machine,其他的内容将简述。

当然,如果数据被误删而没有备份,也不是没有挽救的方法,可以附录中的“文件恢复”。但是文件恢复是概率性的,有很大可能无法恢复或者恢复不完整,防患于未然十分重要。

储存备份

1. Time Machine

mac上,常用的储存备份软件是Time Machine,这是电脑自带的备份软件。你需要做的是,买一个至少和电脑实际使用容量一样大(当然,越大越好)的U盘或移动硬盘,在设置—时光机器里面进行设置备份。它会自动保存每周的备份和本月的每天备份,直到占满全部空间。如果文件丢失或者电脑出了软件方面的任何问题,都可以用它来恢复。

第一次备份时,系统为了保证其他任务的流畅会限制时光机备份的速度。可以在终端里执行以下命令(后面会讲终端命令有关),命令备份全速运行。

 sudo sysctl debug.lowpri_throttle_enabled=0

由于使用增量备份,初次备份完毕后备份时间会有所短,所以可以运行

 sudo sysctl debug.lowpri_throttle_enabled=1

限制备份速度,保证电脑运行流畅。当然,如果不限速对电脑运行也没有影响,可以选择不限速。

第一次使用时,建议在“选项”中设置排除目录,排除掉不需要备份的文件夹(比如下载的电影),可以提高速度,节省空间。备份完毕后可以把硬盘弹出。时光机器设计的本意是一直处于备份状态,但是由于外接硬盘不方便,你可以每周或每月备份一次,视情况而定。如果有条件,可以搭建nas等储存终端进行备份。

2. 储存型网盘

常见的如百度网盘和goole drive,使用方法大概是把有价值的信息整理后上传到网盘,过程很简单。建议加密打包后上传,最好多点备份,避免隐私泄漏及文件损坏。

同步备份

同步备份的特点是实时,轻量,但是通常需要付费。

1. 可查看历史型备份软件

常见的有坚果云。使用方法是设置需要备份的文件夹,实时上传到云服务器备份,免费版有每月流量和空间的限制,付费版30G的有空间限制,价格为199元/年。

最近百度云也开始推自家的备份工具,笔者没有用过,欢迎小伙伴补充。

2. 不可查看历史的备份工具

最典型的有iCloud和onedrive。

iCloud是苹果内置的云同步软件,对有全家桶的同学特别友好。对于iPhone和iPad,可以数据云备份。对于mac,可以将桌面和文稿储存在iCloud中,方便远程访问。免费空间5GB,50GB 72元/年;200GB 252元/年,2TB 816元/年。

onedrive的优势是和微软体系深度绑定,订阅办公套件可以获得2TB的空间,并且可以在任何设备的Office软件中方便的打开,合作,共享。国内访问速度也说的过去。

笔者自己是家庭版订阅了2T的iCloud空间,并且使用onedrive备份Office文件和其他较大项目。iCloud实际使用450GB,onedrive实际使用量约500GB。

特别注意:这两款不是我们传统意义上理解的云盘,更好的理解其实类似于电脑的一个扩展磁盘。在本地删除文件将在云端同步删除,请谨慎操作。如果想节约本地空间,他们都有选项可以"remove download",即在本地创建一个类似快捷方式的文件,并把实际内容放在云端。

watch then do & watch while doing

做好了备份,我们可以动手啦!

上一张搜索引擎的使用,给大家介绍了如何找到解决问题的方法。这里我想说的是两种不同的使用方法。

//本来想作为单独一章的,发现内容比较少,就放在这里了

1. watch then do

先学再做。

这是一个学习型的理念。大意是先看明白解决方法和教程,知道解决问题的思路和全部步骤,然后自己实现出来。

这个理念的好处就是,可以避免这次学会了下次碰到忘记的问题,并且可以关注整体的思路,较为灵活。

2. watch while doing

跟着教程一步步来。好处就是可以不必多考虑,跟着教程执行就行。

当然缺点是,可能这次做了下次就忘了,很少有学习的效果。

警惕不可逆的操作和管理员权限的使用

先就说两点

  1. 如果你不知道一个命令要干什么,不要给他sudo

    所谓的sudo,就是管理员权限,在终端中执行时需要输入密码。只要没有sudo权限,通常很难对电脑造成不可逆伤害

  2. 不要执行** rm -rf /!!!**

    不要执行** rm -rf /!!!**

    不要执行** rm -rf /!!!**

就是说,在rm的命令行中,看到f选项,就要警惕。有的恶意文章喜欢用这种方式恶搞小白,一定要警惕!

从Windows迁移操作习惯

written by: Boreas618

通常来说,在你入手你的第一台运行着MacOS操作系统的MacBook之前,你使用的电脑运行的操作系统是由微软开发的Windows。本文档将介绍如何从Windows迁移到MacOS,如何适应MacOS的操作逻辑。

我的电脑 vs 访达

在Windows中,当你想要打开一个文件(例如课程论文.docx),你会在桌面上寻找“我的电脑”,打开D盘(或者E盘、F盘?),找到你需要的文件。

而macOS中,也有“我的电脑”,只是名字叫“访达“。点击点击屏幕下方的Dock栏(放了一整行图标的栏目)上那个蓝色笑脸图标,就可以找到它。

然而,如果你是第一次使用MacOS,有如下需要说明的:

  • 进入访达的偏好设置,

    在“边栏”中这样设置:

  • 请注意,在MacOS中不会区分C盘、D盘、E盘等盘

    MacOS的文件结构是这样的:

    在最底层,你能打开“xxx的MacBook Air”或者“xxx的MacBook Pro”(经过上面的设置后,你能在访达界面侧栏的“位置”栏目中找到它),它的子目录有网络、Macintosh HD等。

    Macintosh HD是你的硬盘(HD = Hard Disk),相当于Windows中“我的电脑”,它的子目录有系统、应用程序、用户、资源库。

    你平时最常接触到的应该就是“应用程序”和“用户”,其中:

    • 应用程序”是你安装的各种软件的所在地(如爱奇艺、网易云音乐)
    • 用户”就是你个人文件的所在地(你可以在里面存放你的作业、试卷......,但要记得做好文件整理哦)

我的桌面快捷方式都在哪?

在Windows中,当你想要打开一个软件(例如扫雷),你会不假思索地点击“开始”抑或是视窗图标,并从中寻找并打开你需要的软件。

而在MacOS中,类似的操作是:点击屏幕下方的Dock栏(放了一整行图标的栏目)的第二个图标”启动台“。在其中左右滑动,选择你想要打开的软件即可。

任务管理器 vs 活动监视器

在Windows中,当你的系统卡死时,你会打开任务管理器以强行关闭某应用。在MacOS中,你同样可以在启动台中点击“其他”文件夹(上面那张图的第4行最后一列),打开活动监视器。点击顶栏中的叉号就可以强行关闭某应用了:)

xx软件园 vs App Store

在Windows中,为了下载某软件,你百度搜索某软件的名称,然后点进“xx软件园”、“xx下载站”,如履薄冰地避开广告,下载软件。

那么在MacOS中,我们如何优雅地下载软件呢?

  • App Store

    你可以在Dock栏或者启动台中轻易地找到App Store的图标:

    然后就像你在手机或者平板上那样,任意下载你需要的软件。

  • 官网下载

    以C语言开发工具CLion为例,进入CLion官网,点击下载,选择你的平台(Intel还是Apple(M1,M1 Pro,M1 Max,M2......)?),按照相关提示安装即可。

  • 第三方软件下载平台

控制面板 vs 系统偏好设置

在Windows中,设置网络连接、电源管理等问题需要打开设置或者控制面板,而在MacOS中,类似的操作主要在系统偏好设置中完成。

MacOS 基本操作

快捷键

对于快捷键,在MacOS中,Command的功能类似于Windows下的Ctrl键。因此,Windows下的Ctrl + C复制,Ctrl + V粘贴在MacOS下就是Command + C复制,Command + V粘贴

注意: MacOS下的“剪切”操作并不是先Command+X然后 Command+V粘贴,而是先Command + C拷贝,后Command + Option+ V剪切。

对于截图,有以下三种截图模式:

  • Command + shift + 3:截取整个屏幕
  • Command + shift + 4:截取指定区域
  • Command + shift + 5:录制窗口、录制屏幕、窗口截图...

对于中英文输入法切换,你只需要单击“中/英”键即可。

对于大小写切换,你需要长按“中/英”键直至绿灯亮起。

读写U盘

由于系统原因,MacBook可能无法有效利用U盘拷东西。这个时候,你需要下载U盘读写工具来解决读写受限的问题。以下是在某第三方软件下载平台检索到的U盘读写工具。

截屏2022-07-20 下午9.26.09

基本开发环境配置(终端与brew)

这篇文章原本应该是进阶的内容,但是mac的入门文章鸽了这么多天,仍然是千头万绪至今没有写完。

实在不好意思再鸽下去,就先写了这篇,分享下从零搭建mac的开发环境的经验。

我使用自己重置系统后的电脑进行了测试,尽量保证还原从头配置的各种细节。如果有没有考虑到的部分,欢迎大家发邮件给我。(过几天搭好评论区或许就可以在评论区留言了

主要框架大概是:

  1. 命令行的优化(iTerm2安装和配置),包管理器brew的安装的配置
  2. vscode写c++的配置
  3. python部分
    1. pip的换源
    2. conda的安装和使用

重要提醒:已尽量避免墙对配置环境的影响,但是为了省心,仍然建议使用代理工具,并在无法访问时,对终端进行代理。可以参考brew部分,有教程(订阅自备)

另:文末有常见错误及解决方法,可供参考。

命令行优化

自带的命令行比较朴素,也缺少很多重要的功能。我们先安装iTerm2,并进行配置。

先上一张图:看下我简单配置完的效果。我的主要目的是简单好用,如果想要炫酷效果可以自行研究哈哈

我的iTerm2配置图

步骤:

0. 安装command line tools

在自带终端中输入 xcode-select --install即可安装。

1. iTerm2

iTerm2是终端模拟器,提供了许多个性化选项和附加功能。这里只介绍安装方法,具体的功能大家可以自己去体验。

  1. iterm2下载页下载Stable Release的最新版本,解压后拖放到应用程序文件夹。
  2. 设置颜色和字体
    1. 颜色

      iTerm2 -> Preferences -> Profiles ->Colors -> Color Presets中可以看到默认的色彩配置方案。获得推荐较多的方案是Solarized系列。但是我个人喜欢使用原有的黑色界面,比较简约。

    2. 字体

      这个github仓库下载并安装字体,后续powerlevel10k会用到。当然使用其他字体也可以,只要满足powerlevel10k的需要都可以。

      然后在iTerm2 -> Preferences -> Profiles -> Text -> Font -> MesloLGS NF可以设置字体

    3. 背景图:在设置中可以自己找到

2. brew

安装

配置环境先放一边,为了简化下面的步骤,我们先安装brew

  1. 如果网络环境良好,可以用以下命令直接安装:
 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  1. 如果网络环境不好:
    1. 先可以参考清华镜像站,Homebrew安装说明 安装
    2. 然后参考清华镜像站的这个页面 更换包镜像

上面的教程十分详细,我就不再赘述了,有问题的话可以在评论区留言(正在建)

使用

  1. 安装一个包:brew install例:

     brew install python3
    
  2. 卸载一个包:brew uninstall,例:

     brew uninstall ffmpeg
    
  3. 查看包的说明信息:brew info

  4. 查找包:brew search

此时,可以解决网络不好的问题:

brew install clash
wget -O config.yaml 你的订阅地址
clash -d .

3.zsh的配置

  1. 安装Oh My Zsh

简称omz,官方地址是 github/ohmyzsh

omz是设置zsh环境的工具,可以安装和管理各种zsh插件。安装omz的命令是,复制到iTerm2中就可以安装了。如果因为网络环境问题无法安装,请先安装brew,使用clash

 sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
  1. 安装powerlevel10k(建议代理)

    我们使用brew安装,先引入powerlevel10k的源,然后安装。

     brew tap romkatv/powerlevel10k 
     brew install romkatv/powerlevel10k/powerlevel10k
    

    然后按照安装说明,在终端中执行命令。在我的环境下,命令是这样的:

     source /opt/homebrew/opt/powerlevel10k/powerlevel10k.zsh-theme
    

    此时,再次打开iTerm2就会出现powerlevel10k的配置界面,可以自行选择

  2. 按照终端高亮插件,还是使用brew

     brew install zsh-syntax-highlighting
    

    然后安装完的说明执行,在我的环境下说明是这样的

     To activate the syntax highlighting, add the following at the end of your .zshrc:  
    
     source /opt/homebrew/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh ​ 
    
     If you receive "highlighters directory not found" error message, you may need to add the following to your .zshenv:  
      
     export ZSH_HIGHLIGHT_HIGHLIGHTERS_DIR=/opt/homebrew/share/zsh-syntax-highlighting/highlighters
    
  3. 安装自动填充插件zsh-autosuggestions,安装后可以按tab补全命令

    也是用brew(这下只要告诉名字,你应该就会安装了吧)

    不过提一句,使用这个插件会导致粘贴变慢,解决方法来自https://github.com/zsh-users/zsh-autosuggestions/issues/238,可以在.zshrc中添加如下设置

    # This speeds up pasting w/ autosuggest
    pasteinit() {
    OLD_SELF_INSERT=${${(s.:.)widgets[self-insert]}[2,3]}
    zle -N self-insert url-quote-magic # I wonder if you'd need `.url-quote-magic`?
    }
    
    pastefinish() {
    zle -N self-insert $OLD_SELF_INSERT
    }
    zstyle :bracketed-paste-magic paste-init pasteinit
    zstyle :bracketed-paste-magic paste-finish pastefinish
    

常见错误及解决方法

  1. `command not found: brew"

    安装完brew后,可以看到next steps,照做即可

  2. 找不到常见包,如Python,并在安装时看到fatal: Could not resolve HEAD to a revision错误

    运行brew doctor可以看到解决方案。一种解决方案是:

     rm -rf $(brew --repo homebrew/core)
     brew tap homebrew/core
    

这就是本文的全部内容啦,python和c++准备都放在下一期,欢迎大家催更

如何让一门语言跑起来

刚接触编程的时候,我们常推荐初学者使用Dev-c++等IDE(Integrated Development Environment:集成开发环境,是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。),将“编程”的流程简化为“输入代码->运行程序”的傻瓜式操作,以快速建立对“编程”的最基础认识。但是在macOS上,类似于Dev-c++的IDE并不多。所以我们从输入代码到程序运行的过程出发,介绍下如何在Mac上舒服地写程序。

程序编写的过程

从你的想法开始,到可执行文件,最终到一个满意的程序,有如下几个步骤。

注:python等解释型语言,只有解释器。

读者要尤其注意“编辑”与“编译”的区别,“编辑”是我们常说的“敲代码”的过程,而“编译”是编译器将代码翻译成计算机能理解的二进制01101010......的过程,“编辑”发生在“编译”之前的。理解这两个概念对于“编程”是至关重要的。

一个趁手的编译环境可以统筹这些工具,让你专心于实现自己的想法,减少工具的束缚。总的来说,我们想要IDE实现这些目标:

  1. 代码书写流畅,支持高亮和自动补全
  2. 拥有开放的插件生态和丰富的插件体系
  3. 对编译器和调试器有一定的内嵌支持

在哪写程序?

"Word是最好的程序编辑器"

当然这只是一句玩笑,word以标记语言储存文本,无法被编译器理解(如果你暂时不清楚什么是标记语言,没有关系的。往后我们可能会接触到一些类似的标记语言,到时我们便可对标记语言有一个感性的认识);而语法检查等书写自然语言时常用的工具对编写代码来说更是束缚。一个好的程序编辑器的应具有以下特点:性能高,扩展性强(可以自己安装插件来实现丰富的功能),界面美观,具有跨平台的支持。

写程序工具的主要有两种:集成开发环境(IDE),和文本编辑器(Code Editor),这两者各有侧重。IDE内包含了文本编辑器的功能,而且常常可以进行代码编译和程序调试的工作,特点是“集成而强大”。文本编辑器的主要功能就是编辑文本,拓展功能一般是通过插件体系完成的,由于其“轻量可拓展”的特性也很受欢迎。以下是我本人的使用体验,尽管参考,欢迎大家讨论。

文本编辑器:(待我去试试再补充,欢迎大家补充!)

  1. Visual Studio Code

    简称vscode。开源免费,目前市面上最受欢迎的文本编辑器。拥有丰富的插件,详细的语言支持,完善的远程功能。同时也是本文的写作工具。

  2. Sublime Text

    付费,老牌编辑器

  3. atom

IDE

  1. Visual Studio macOS不适用

    简称vs,有免费社区版。微软开发的老牌IDE,功能丰富,Windows开发常用。

  2. Jetbrains全家桶

    目前IDE界的“老大哥”,语言支持丰富,Java编程首选,对C/C++/JavaScript/Python等语言的支持也很完善。

  3. Qt Creator

    C++语言的IDE,使用Qt写Gui(图形用户界面,而不是我们一般编出来的黑洞洞的窗口)时常用。也有不少学校作为课程推荐IDE使用。

具体设置呢?

请见后续文章。

C++环境配置中包含了vscode的介绍和配置。

Python环境配置中将包含Jetbrains全家桶的下载和配置,以Pycharm为例。

Qt环境配置将介绍CMake,C++依赖,Qt creator和vscode联合配置。

C++环境配置

在阅读本文以前,我们认为你已经完成了brew和iTerm2的设置,并对如何让一门语言跑起来有所了解。

本文中我们使用vscode作为文本编辑器,使用macOS的CommandLine Tools中的clang作为编译器和自动补全后端,并介绍一些常用的vscode插件

此处特别感谢谷雨同学开发的VS Code Config Helper,方便了我们的C++环境配置。特别值得一提的是,他的c++教程也值得一读。

vscode的安装

撰写本文时,软件安装章节还未完成。于是我们提一下如何安装vscode

  1. 访问vscode官网,下载适用于macOS的最新版
  2. 在下载文件夹中找到下载到的文件,在笔者电脑上为VSCode-darwin-universal.zip
  3. 双击解压,拖动至Applications文件夹
  4. Done!

理解vscode的“工作区和文件夹”逻辑

vscode分为全局和工作区两部分组成,结构如下图所示。每次打开vscode都会新建一个窗口,叫做“工作区”。工作区中包含一个或多个文件夹,可以拥有与全局不同的设置。

如果工作区只有一个文件夹,配置会被放在该文件夹下.vscode文件夹中。如果有多文件夹,工作区配置会用一个code-workspace结尾的文件保存。

vscode结构示意图

使用VS Code Config Helper进行vscode基础配置

  1. 请点击这里下载VS Code Config Helper

    虽然v4版仍在测试阶段,但比起前代有很大的升级,笔者测试后推荐这一版本。如果遇到问题,欢迎给我发邮件。

  2. 打开dmg,将app拖动到“应用程序”文件夹,打开app。

    如果如遇到打不开的情况,请参考百科-无法打开App的可能解决方法

  3. 按软件提示,配置有关内容。、

    其中,选择一个文件夹作为工作区文件夹,所有配置都会写在该文件夹中。以后打开新窗口时“打开该文件夹“,就可以愉快地写C++啦。在Hello World.cpp中按F6运行吧!

安装成功的效果如下图:

安装成功图

注:VS Code Config Helper对全局设置的影响为:安装了插件C/C++CodeLLDB,增加了快捷键F6编译运行。

初次打开时,CodeLLDB会自动下载平台对应的package,如果下载失败,vscode会提示从对应链接下载一个拓展名为vsix的文件,然后在vs code插件页面选择从vsix安装(install from VSIX)即可。

vscode插件安装,卸载与禁用方法

上图左侧边栏第五个图标,即是vscode插件管理器。可以在里面下载并安装插件使用,或管理插件状态。选中已安装的插件,可以点击Inable将插件状态改变为Disable,或者将其卸载。无需笔者多言,动手试一试吧!

常用vscode插件

clangd: 语法高亮与自动补全

VS Code Config Helper中使用的自动补全工具是微软开发的C/C++ IntelliSense。这是一款很好的工具,刚学编程时使用十分合适。但是笔者试图使用vscode写Qt的时候,发现了一些小问题。clangd可以很方便得解决这一问题,并可替代C/C++ IntelliSense的全部功能。

由于我们安装CommandLine Tools时安装过clang。直接在左边栏打开“插件”,搜索并安装clangd即可。由于clangdC/C++冲突,需要将C/C++禁用。

C/C++ Compile Run: 一键编译运行C和C++代码

VS Code Config Helper使用了非常cool的方法实现在单独窗口运行程序。C/C++ Compile Run则是在vscode自带终端中运行程序。可以将编译运行的快捷键设为command+R,也可以实现一键编译运行。

编程网格: P大计算概论看题助手

也是谷雨同学写的,可以在vscode里以分屏的形式同时看到题目和代码,还支持一键提交,省去了复制粘贴的麻烦。对P大信科同学强烈推荐。(并没有题解,别高兴太早哈哈哈)

任何以语言名称命名的插件和插件包

如果用vscode写其他语言,可以安装相应插件,如Python,c#, Go等。但是Rust语言的推荐插件为rust-analyzer

各种主题

可按自己的审美选择。笔者正在使用的是Chinolor Theme插件中的Chinolor Light

Python开发环境的搭建

在阅读本文以前,我们认为你已经完成了brew和iTerm2的设置,并对如何让一门语言跑起来有所了解。

另:本文写作仓促,欢迎修改!

思路

先安装Pythonminiforge,然后使用vscodePycharm编写Python代码

Pythonminiforge的安装

Python

通常来说,我们学习的Python版本为Python3。我们使用brew安装,命令如下。这样你的电脑上就有一个Python环境,在终端输入python3就可以正常运行代码了。

brew install python3

miniforge

Conda是用来管理电脑环境的管理器,在Windows上广泛运行的是Anaconda。因为Anaconda对m系列芯片的Mac支持并不完善,我们使用miniforge这一Conda的精简版。你可以在miniforge的Github地址查看更具体的Readme。

安装步骤

参考资料:[Apple提供的tensorflow安装方法](https://developer.apple.com/metal/tensorflow-plugin/)

  1. 下载安装脚本

地址如下,打不开请使用代理服务器。下文用shellFile指代下载到的文件,请自行替换。

Intel芯片地址:https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-x86_64.sh

Apple芯片地址:https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-arm64.sh

  1. 执行安装命令
chmod +x shellFile
sh shellFile
  1. 验证安装成功
conda info

Conda简介

参考资料:Getting started with Conda

基本概念

使用Python的过程中,最常见的一个问题就是他人写好的内容因为版本不同无法执行或者报错。这是Python的特点导致的,这里不过多赘述。为了解决这个问题,Conda应运而生。

Conda的概念就是:通过虚拟环境的方式运行相关的内容,使多个版本的Python及依赖可以同时存在,避免了安装卸载的麻烦。

使用概述

记得修改ENVNAME

  1. 创建环境
conda create --name ENVNAME
  1. 激活环境
conda activate ENVNAME
  1. 关闭这个环境回到系统级的python
conda deactivate ENVNAME
  1. environment.yml等文件中中安装环境
conda env create -f environment.yml

vscode插件

关于vscode的介绍、安装和文件组织体系,见vscode的安装

vscodePython系列插件,安装之后即可使用,个人认为易用度还是挺高的。

常用的插件有

python
Pylance
Python Environment Manager
Jupyter(插件包)

Pycharm安装和使用

jetbrains官网下载Pycharm。在校学生具有免费使用专业版的资格,可以到https://www.jetbrains.com/community/education/#students申请。新建项目之前,在设置里面找到Python Interpreter,选择conda即可。新建或者使用现有的都可以。推荐日常学习的时候维护只要一个虚拟环境就可以了,不需要每次都重新安装依赖。

机器学习包安装指南

  1. tensorflow

Apple提供的tensorflow安装方法很详细,笔者就不赘述了。

  1. pytorch

在MacOS 12.3以上的版本,可以使用GPU加速运算。选择nightly版本的pytorch即可使用。在pytorch的主页有写到这一点。

无法打开App的可能解决方法

Apple是一家注重用户安全和隐私的企业,对生态采取封闭管理的思想。相比于iOS,macOS的封闭性不强,但是仍然有沙盒和App校验等安全措施。同时,苹果开发者的门槛较高,市面上有许多程序是“未经苹果认可的”,因此我们经常遇到App打不开的问题。可能的情况和解决方案列举如下。

注:安装不明来源的软件可能造成您的计算机受到病毒破坏。打开每个”不安全“的软件前,请仔细考虑。 苹果官方的使用手册介绍了这些概念,本文也直接或间接参考了手册。请参阅:打开来自身份不明开发者的 Mac App通过覆盖安全性设置来打开 AppApp 已被修改或者已损坏

"App来自不被认可的开发者“

macOS使用手册上给出的方法:单独豁免该App

我们也推荐此方式,可尽可能避免电脑受到恶意软件损害。

  1. 访达 中,找到想要打开的 App。请勿使用启动台来执行此操作。
  2. 按住 Control 键,并点按 App 图标,然后从菜单中选取“打开”。

针对所有 App :开启”允许任何来源“

有一定风险,我们建议建议有一定计算机经验的用户开启。

打开任意终端,输入以下命令并输入管理员密码,即可开启。

sudo spctl --master-disable

"App已经损坏,请将其移到废纸篓"

每一个App,开发者会对其签名,以保证分发到用户手中时不会被篡改。出现此问题常常是因为App证书签名失效。这在盗版软件中常见,但是仍要注意软件被恶意篡改的可能性。

如果对App来源较为信任,可以使用如下命令对其自行签名。

xattr -r -d com.apple.quarantine 此处替换为APP地址