Nova是Mac下一款非常强大的文本代码编辑软件,制作跨平台应用程序的理由很充分-首先,它们是跨平台的-但这不是我们的身份。 作为一家Mac软件公司成立于1997年,我们对Panic的喜悦来自于打造出真正感觉像Mac的东西。这次带来的是11.0版本。
很久以前,我们创建了Coda,这是一款多合一的Mac Web编辑器,开创了新局面。 但是,当我们开始研究Nova时,我们看到了今天的网络以及我们需要的位置。 是时候重新开始了。
Nova 打开文件速度非常快,并且已内置对 CoffeeScript、CSS、Diff、ERB、Haml、HTML、INI、JavaScript、JSON、JSX、Less、Lua、Markdown、Perl、PHP、Python、Ruby、Sass、SCSS、Smarty、SQL、TSX、TypeScript、XML、YAML、VUE、React 等编程语言的支持。Nova 也具有非常强大的 API 和内置的扩展浏览器,扩展市场有丰富的扩展可以安装,扩展是用JavaScript编写的,因此任何人都可以编写它们。Nova包含内置扩展模板,可用于快速开发。还有命令面板、自定义布局、自定义主题、智能全项目索引、Git源代码版本控制(Clone、初始化仓库、Fetch、pull、push、Stage、unstage、Commit)、内置静态Web服务器,可以通过FTP,SFTP,WebDAV和云进行远程发布等等功能。
编辑。
这一切都始于我们一流的文本编辑器。
它是新的,超快速且灵活的,具有您想要的所有功能:智能自动完成,多个光标,小地图,编辑器过度滚动,标签对和括号以及更多方式。
出于好奇,Nova已内置支持CoffeeScript,CSS,Diff,ERB,Haml,HTML,INI,JavaScript,JSON,JSX,Less,Lua,Markdown,Perl,PHP,Python,Ruby,Sass,SCSS,Smarty ,SQL,TSX,TypeScript,XML和YAML。
它还具有强大的API和内置的扩展浏览器,因此非常易于扩展。
(这里有个有趣的编辑故事。在beta版中,我们发现了Apple文本布局引擎中的一些错误,我们无法修复。我们的解决方案?从头开始编写我们自己的文本布局管理器。不仅解决了这些错误,而且还也提高了编辑器的性能。我们不会胡闹!)
但是,即使世界上最好的文本引擎也没有任何意义,除非您真正喜欢在应用程序中花费时间。那么,Nova看起来如何?
接口。
很美丽。而且干净。和乐趣。
您可以使Nova看起来像您想要的样子,同时仍然感觉像Mac。光明,黑暗,计算机朋克,仅此而已。另外,主题类似于CSS,并且易于编写。当Mac从亮模式切换到暗模式时,Nova甚至可以自动更改主题。
屏幕快照显示Bright,它是Nova中的默认界面主题。
工作流程。
Nova不仅可以帮助您编码。它可以帮助您的代码运行。
您可以轻松地为项目创建构建和运行任务。我们在Coda中没有它们,但是男孩,现在我们有了它们。它们是可随时通过工具栏按钮或键盘快捷键触发的自定义脚本。
想象一下构建内容,只需单击一下按钮,Nova就会启动本地服务器,获取适当的URL,并立即为您打开浏览器。只要想一想您可以节省的时间。
Nova支持单独的“生成”,“运行”和“清理”任务。运行时它可以打开报告。脚本可以用多种语言编写。
Nova 11.0版本的更新内容:
最新
现在可以将多个项目分组到单个窗口中,作为单独的窗口选项卡
标签现在可以固定在每个标签栏的左侧
单个拆分现在可以“放大”以占据整个内容区域
现在可以使用选项卡栏最左侧的关闭按钮完全关闭拆分窗格
在macOS 13.0(Ventura)及更高版本上使用快捷方式在Nova中创建新的文本文档并打开现有文件和文件夹
添加了对在编辑器中配置可选字体变体和功能的高级支持
已添加URL方案操作以打开文件nova://open?path=[path]&line=[line]&type=[syntax]
Git:增加了对使用GPG密钥、SSH密钥或X.509证书的提交签名的支持
Git:当前分支名称现在显示在状态栏中
Git:一个新的“存储库”边栏部分允许管理分支、标签等
Git:增加了对修改提交的支持
Git:增加了对手动将分支合并到HEAD
Git:更改现在可以被视为树或列表
Git:增加了对远程更改的自动、可配置获取的支持
Git:如果在Git配置中设置,提交消息字段现在将从模板中自动填充
Git:“丢弃更改”现在可用于未跟踪的文件来删除它们
Git:添加了对解析主机名的支持~/.ssh/config
Git:现在可以从项目→Git子菜单中丢弃焦点文件的更改
Git:现在支持Mailmaps显示过去提交作者和提交者的更新名称和电子邮件地址
Git:未提交行的内联“作者”占位符现在可以隐藏
Git:内联“作者”和“显示行的最后更改”现在可以选择性地忽略空格中的更改
Git:提交详细信息弹出窗口现在支持长提交散列的一键式复制
Git:现在可以通过菜单栏访问Git边栏的“提交”字段
比较:增加了对忽略空白空间更改的支持
比较:现在支持拖放文件
比较:每个大块内文本的更改现在内联显示
任务:当前的Git分支现在可以作为参数或环境变量通配符使用
Git帐户:增加了对“Gitea”的支持
Vim模式:增加了对Control-N和Control-P的支持,用于在插入模式下完成导航
Vim模式:增加了对Control-A和Control-X的支持,分别在正常模式下光标下的数字递增或递减
Vim模式:在正常模式下,增加了对zc和zo分别折叠和展开代码的支持
颜色选择器:在某些情况下,色调滑块不再显示不准确的颜色值
可访问性:三种新的缩进指南调色板可用于帮助使用protanopia、deuteranopia和tritanopia的用户
添加了一个选项,用于在插入编码不兼容的字符时抑制警告
在符号名称非常大的情况下,强制执行最小宽度的最小悬停指示器
设置:添加了一个帮助按钮,链接到关于Nova如何从设置>工具中获取环境变量的文档
PHP:添加了一些缺失的函数完成,例如http_build_query()
PHP:添加/** */作为自动关闭对(以帮助Intelephense用户完成文档注释)
JavaScript / TypeScript:改进的对象字面符号化
Python:在match或case语句的结尾后插入换行,现在缩进新行
新的扩展
树保姆:增加了对几个新过滤器谓词的支持,以允许更复杂的查询
语言服务器:当兼容的语言服务器可用时,添加了对“格式文档”和“格式选择”的内置支持
语言服务器:增加了对“跳转类型声明”、“跳转为类型定义”、“跳转为实现”和“跳转为引用”的支持
改进
代码悬停现在使用与编辑器相同的字体大小和缩放
现在可以滚动带有大正文文本的窗口内通知
所有内置语言的解析已移至NovaParseService XPC服务
大幅文件滚动响应能力的性能改进(>100MB)
语言:XML、INI、Diff和Shell脚本解析器已迁移到Tree-sitter
关闭分隔符的自动插入现在发生在键入其他字符后,而不是立即
零宽度控制字符现在显示十六进制代码点,而不是“未知”字形
改进了某些文本移动的CRLF(Windows)行尾的处理,特别是在Vim模式下
Git:改进了SSH StrictHostKeyChecking支持的处理
Git:现在首先使用GitHub执行Avatar获取,然后退回到Gravatar
Git:在尝试在没有足够访问权限的情况下推送到受保护的分支时,改进了错误报告
Git:自定义钩子现在继承了任务也使用的登录外壳环境,以更好地模拟,就像在交互式外壳中运行一样
Git:改进了更新Git reflog时时区偏移的处理
按单词向前移动或选择现在会考虑标识符前缀(例如PHP中的$)
在查询系统标识符之前,在确定文件是否可以作为文本打开时,现在会咨询扩展语法检测器
TypeScript/TSX:在键入开口括号时,角括号现在被视为周围一对
文件边栏:在编辑文件名时,双击现在会选择单个组件,而不是整个文件名
启动器:远程项目项目现在显示其URL在列表视图位置列中(如果适用)
现在,无论“显示导航控件”偏好设置如何,远程边栏都会始终显示导航控件
修复
编辑文本字段后关闭首选项窗口时解决了潜在的挂起问题
解决了在连续行上使用多个光标向上/向下移动行的问题
现在,当使用多个游标时,LSP完成工作正常
解决了使用块式光标时连字渲染的问题
SSH密钥密码警报的“保存在钥匙串中”复选框现在可以正常工作
在编辑器首选项中禁用时,代码结构标题不再显示行号
解决了显示包含大量字符的代码结构头时的潜在挂起
现在,当使用不同数字宽度的比例字体时,行号排水沟的尺寸会更准确
修复了尝试显示已删除的文本装饰的工具提示时的潜在崩溃
如果文件的路径在后台更改,可见路径栏文件夹列表弹出窗口现在会自动关闭
解决了在焦点或选择发生变化时可能导致狭窄的内容拆分调整大小的问题
现在可以在不启用“键入时检查拼写”的情况下进行交互式拼写检查
解决了当滚动视口靠近底部时,编辑器可以“跳跃”的潜在情况
修复了解析仅包含字符串替换的JavaScript模板字面表达式时的潜在崩溃
解决了文件名中的某些字符在瞬态选项卡标题中呈现错误的情况
改进了一些在折叠了大量代码后,键入性能可能比预期慢的情况
“保存和发布”菜单项现在可以独立于“保存”项及其替代项反弹到自定义键绑定
解决了JS Streams API中的错误传播可能会使扩展服务崩溃的情况
现在,从查找横幅“替换”字段中按制表符将焦点移动到编辑器
解决了打开文档选项卡和使用深色主题时可能出现的视觉闪光灯
设置:Nova Developer登录表现在在从macOS密码自动填充后进行验证
任务:扩展包含特殊字符的变量,如和号,现在可以正常工作
任务:在发送EOF之前,调用大型远程任务脚本现在应该会正确发送整个脚本
项目设置:解决了在编辑值时关闭项目设置时保存扩展任务配置的问题
项目设置:解决了将任务或远程目标重命名为已使用的名称将删除重命名项目的情况
Git:解决了阻止使用SSH双重认证的问题
Git:修复了存储库处于分离的HEAD状态时阻止提交的问题
Git:解决Nova之外的合并或变基状态现在会清除准备好的提交消息
Git:没有提交的新存储库现在将显示默认分支名称,而不是“无提交”。
Git:解决了可能阻止编辑器排水沟更改注释在提交后更新的问题
Git:在具有多个遥控器的存储库中调用“项目→Git→推送”菜单项现在可以正常工作
Git:推送对最新版本的遥控器的引用现在将跳过推送,防止远程钩子意外触发
Git: Fixed a potential crash when creating a commit or tag if the value of user.name or user.email Git config options were malformed
Git:改进了Nova运行时对外部来源的存储库初始化和删除的处理
Git:当存在未提交的冲突更改时,尝试将分支合并到HEAD中,现在会显示警报并中止合并
比较:解决了如果最终区域在没有尾随换行的情况下与两个文件的末尾相交,则构建比较区域的问题
比较:在编辑设置修改后,当比较视图更新时,滚动位置现在可以更准确地保持
终端:CSI r、A和B现在应该尊重终端尺寸
终端:现在,当按住control-option-command时,鼠标事件会反向发送
终端:解决了合并宽字符后字符的潜在问题
终端:作为状态恢复的一部分,重新连接时,选项卡不再集中
终端:远程终端窗口现在应提示在适用时输入Yubikey PIN
Vim模式:修复了交叉表情符号的移动的潜在问题
CLI:解决了创建未保存文件的问题
CLI:解决了如果路径指定为绝对值,将打开的文件管道到stdout将失败的问题
CLI:尝试打开指向文件夹的符号链接或别名,现在将文件夹作为项目打开
文件边栏:调用“发布”上下文菜单项现在尊重发布忽略规则
文件边栏:右键单击所选文件的文件名不再导致文件名变得可编辑
文件边栏:在某些情况下,扩展文件边栏中的递归符号链接不再导致挂起或崩溃
文件边栏:修复了禁用“忽略被Git排除的文件”时无法显示文件的问题
查找边栏:解决了在枚举要搜索的目录时,进度指示器可能会向后填充的问题
符号边栏:解决了将滑块调整到第一个位置不会折叠所有符号的情况
符号侧边栏:改进了为非常大或复杂的文档显示和更新符号树的性能
调试控制台:改进了终端ANSI颜色代码的解析
调试控制台:当接受完成时,现在尊重是否接受Tab或Return接受的设置
预览:解决了因键盘事件排队而关闭JavaScript警报时的潜在崩溃问题
发布:删除和重新创建本地发布根文件夹不再将文件夹本身排队
HTML:使用Unicode转义代码的实体现在应该正确突出显示
Ruby:方法参数的语法高亮现在更加一致
Ruby:自动完成不再错误地将“self”添加到实例方法定义的完成中
JavaScript:修复了阻止提供Web API完成的问题
扩展库:修复了具有多个类别的扩展的潜在布局问题
系统版本要求:macOS 10.14.4 或更高。
Apple Silicon M1、M2:兼容
暂无评论内容