我喜欢使用 CakePHP 开发 Web 应用程序。我使用 Fetch 连接到服务器,要处理我的网站,我会转到 Fetch 上的文件,然后单击“编辑”>“Text Wrangler”。然后,我可以轻松编辑我的文件并直接保存到服务器。唯一的问题是,当我打开许多文件来处理网站时,它只列出文件名。为了使我的文件命名一致,我的一些文件具有相同的名称,但位于不同的文件夹中。例如,如果我有多个控制器,每个控制器可能都有一个名为“view”的关联视图。当我有许多名为“view”的文件和许多名为“add”的文件等时,工作会很困难。因此,找到一个允许我处理项目的文本编辑器很重要,我可以将我正在处理的所有文件分组到文件夹中。
通过谷歌搜索,我发现 TextMate 提供了“项目模式”,您可以在其中使用文件夹,但他们没有提供我需要的功能,因为无法在同一项目中从远程服务器打开多个文件。每次我选择使用 TextMate 进行编辑时,它都会创建一个新的文本文件,与我打开的上一个文件无关。MacFusion 有一个解决方法,但它导致 TextMate 崩溃,在解决了 TextMate 的一个又一个问题后,我得出结论,这应该是一个足够常见的功能,应该将其内置到文本编辑器中,而无需安装任何其他程序/补丁/等。
有谁知道 Mac 上有哪些好用的文本编辑器,我可以直接从 Fetch 打开文件到单个项目,并将打开的每个文件分组到一个文件夹中,这样侧面的文件列表就不会太长?我需要的另一个功能是针对我使用的语言进行颜色编码。
如果您有其他建议可以使我的工作环境更加高效,我将不胜感激。
谢谢!
答案1
一般来说,直接在实时/生产服务器上编辑不是一个好习惯。你应该总是拥有项目的本地副本(最好通过版本控制系统进行管理),以便能够修改/测试/调试更改前将它们部署到实时/生产网络服务器。
为了在开发过程中进行测试,您应该运行一个(本地)Web 服务器,其配置尽可能与在线 Web 服务器匹配。
此外,合适的 IDE 会索引/分析整个项目的源代码,以便它能够为您的代码提供代码辅助/自动完成功能(而不仅仅是标准 php 函数)。虽然技术上可行,但索引/分析远程服务器上的所有源文件会导致巨大的延迟,因此不受大多数 IDE 支持。(https://stackoverflow.com/questions/14310339/using-remote-server-in-phpstorm)
然而,通过稍微不同的方法,还是有一些选择的。
许多 IDE 都有在保存文件时上传/部署更改的选项,从而有效地使“远程”文件与本地副本保持同步。基本上,您的计算机上有网站的本地副本,每次您在文件中进行更改时,IDE 都会自动将这些更改上传到(远程)网络服务器。
以下是有关如何配置 PhpStorm(我选择的 IDE)以通过 FTP 自动上传更改的一些信息;
http://maffelu.net/phpstorm-upload-to-ftp-on-save/
http://www.jetbrains.com/phpstorm/webhelp/deployment-connection-tab.html
答案2
尝试 sshfs (https://github.com/osxfuse/osxfuse/wiki/SSHFS)。它允许您将远程服务器挂载为文件系统,这样您就可以通过正常的工作流程对文件进行操作,就像它们是本地文件一样。这样,您就可以在服务器上创建文件,就像在桌面上创建文件一样。
答案3
我最终在 NetBeans 上找到了我需要的东西。thaJeztah 的回答引导我找到了它,所以我决定让他赢。但他建议的 PhpStorm 在我的电脑上崩溃了……我不确定它是否可以处理大型文件系统。