macOS为Sublime Text 4配置C++/Python开发环境
目录
一、基本配置
安装完Sublime Text 4之后,第一步当然是先安装 Package Control
了。它类似于包管理器,有了它可以很方便地安装/卸载/列出其他的插件。
安装方法为:按住 Cmd + Shift + P
打开命令面板,输入 Install Package Control
,找到相应的选项即可安装。安装结束之后,重启Sublime Text,打开命令面板,输入 Package Control: Install Package
后按下回车就可以安装其他的插件了。
一些好用的插件:
ChineseLocalizations
:简体中文汉化。一般还会搭配上ConvertToUTF8
这个插件,用于解决中文在Sublime Text中乱码的问题;SideBarEnhancements
:侧边栏增强。通常还会搭配上SyncedSideBarBg
这个插件,用于解决侧边栏颜色和Sublime Text背景色不统一的问题;BracketHighlighter
:括号高亮。
接下来就是用户配置了,按下 Cmd + ,
可以打开用户配置,在右边的框中进行编辑,这里贴一下博主自己的配置:
{"font_size": 15,"font_options": ["no_italic", "no_bold"], // 无斜体,无加粗"color_scheme": "Monokai.sublime-color-scheme", // Monokai主题"theme": "Default Dark.sublime-theme","line_padding_bottom": 1,"line_padding_top": 1,"caret_extra_top": 1,"caret_extra_bottom": 1,"caret_extra_width": 1,"highlight_line": true, // 高亮当前行"show_encoding": true, // 右下角显示编码"trim_trailing_white_space_on_save": true, // 保存时自动在文件末尾增加换行"show_full_path": true, // 上方显示文件完整路径"bold_folder_labels": true,"word_wrap": true, // 是否自动换行"rulers": [80],"translate_tabs_to_spaces": true, // 将tab转化为空格"save_on_focus_lost": true, // 失焦后立即保存"ignored_packages": ["Vintage"], // 忽略插件}
用户配置存储在 ~/Library/Application Support/Sublime Text/Packages/User/Preferences.sublime-settings
里。
二、配置开发环境
随着时间的推移,本文所给出的配置方法可能会失效,所以这里先列出一些相关信息:
- 系统:Ventura 13.1
- Sublime Text版本:4143
- 终端:iTerm2 3.4.19
2.1 配置C++
本节假设你已经安装了iTerm2。
依次点击上方菜单栏中的 工具 -> 编译系统 -> 新建编译系统
,清空其中的内容,然后将以下内容复制进去
{ "cmd": ["bash", "-c", "g++ '${file}' -std=c++11 -stdlib=libc++ -o '${file_path}/${file_base_name}' && open -a iTerm.app '${file_path}/${file_base_name}'"], "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", "working_dir": "${file_path}", "selector": "source.c, source.c++",}
⚠️ 考虑到使用Sublime Text写C++的用户大多数都会选择编译完后立即运行,因此这里给出的配置也是编译+运行配置。如果仅需编译,可参考其他博主的文章。
之后保存,请不要更改默认保存路径,只需将文件名修改成 C++11
即可(当然可以自定义)。该配置文件的存储路径为:~/Library/Application Support/Sublime Text/Packages/User/C++11.sublime-build
。
再次点击上方菜单栏中的 工具 -> 编译系统
,选择 C++11
即可。写完代码并保存之后,按下 Cmd + B
即可实现编译+运行。
为了防止运行结束之后iTerm自动闪退,这里需要做一点变更。打开iTerm,按下 Cmd + ,
打开 Preferences
,依次点击 Profiles -> Session
,将 After a session ends
后面修改成 No Action
。
2.2 配置Python
同样是 工具 -> 编译系统 -> 新建编译系统
,将下面的内容复制进去,当然不要忘记替换 你的python解释器路径
,可通过在终端输入 which python
来查看。
{ "cmd":["你的python解释器路径", "-u", "${file}"], "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", "env": {"PYTHONIOENCODING": "utf8"}, "selector": "source.python",}
之后保存,文件名可设置成 Python3
,再点击上方菜单栏中的 工具 -> 编译系统
,选择 Python3
即可。
但这样配置的Python还无法实现交互式输入,这时候就需要安装 SublimeREPL
插件了。安装完之后,打开 ~/Library/Application Support/Sublime Text/Packages/SublimeREPL/config/Python/Main.sublime-menu
,根据 "id": "repl_python_run"
进行定位,将 cmd
中的 python
替换成 python3
解释器路径,如下图所示(注意必须是 python3
,如果是 python
可能会报错)
然后配置快捷键。依次点击上方菜单栏中的 Sublime Text -> Settings -> 快捷键设置
,在其中添加以下内容:
[ { "keys": ["alt+shift+n"], // 不喜欢这个键位可自行更改 "caption": "SublimeREPL: Python - RUN current file", "command": "run_existing_window_command", "args": { "id": "repl_python_run", "file": "config/Python/Main.sublime-menu"} },]
保存之后,我们就可以使用快捷键 Alt + Shift + n
来进行交互式输入了。当然,非交互式输入也可以使用该快捷键。
三、一些Bug汇总
将根据评论区的反馈持续更新…
已解决:
- 对于搭载M1芯片的mac,
SublimeAStyleFormatter
可能不起作用。这时候打开访达,进入应用程序,右键Sublime Text.app
,点击显示简介
,勾选使用 Rosetta 打开
即可。
尚未解决:
- 博主的mac如果不安装
SublimeAStyleFormatter
或CodeFormatter
这种插件会导致打不开上方菜单栏中的Sublime Text -> Settings
。但如果创建一个新用户在新用户里使用就不会有这个问题; - 之所以使用iTerm作为终端是因为如果使用mac自带的终端(即将编译命令中的
iTerm.app
替换成Terminal.app
)会导致:"xxx"无法打开,因为不允许“(null)”在“终端”中打开文稿
。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341