mac

在 Mac 系统下开发 PHP 的话,使用 MAMP Pro 来搭建环境是一个不错的选择,主要还是因为方便,一口气就可以拥有 PHP + MySQL + Nginx + Apache + PostgreSQL + Memcached + Ruby + Python + Perl,可以说 Web 开发的全部组件基本都涉及到了。

所使用 MAMP Pro 已经有两年的历史了,最新升级的这个版本,配合最新的 Mac OS Sierra 版本,遇到了一个十分奇怪的问题,如果在命令行下使用 php 命令的话,每次执行命令都会特别缓慢。

Keep Reading — 388 words totally

以前,用 Windows 系统的时候,我学会了“粘滞键”这个专有名词,其含义,就是当按下一个键盘按键,并且保持不动的时候,系统应有的表现。

比如,一般来说,我们期望系统的行为是连续打出多个按键的字符。

我初始安装 Mac 系统的时候,按下一个按键,在 Terminal 等原生的 App 上,其行为是符合我们的预期的。但是,因为我是程序员,我使用 NetBeans 作为开发环境,当我连续按下一个键的时候,我发现,在 NetBeans 里面,只能出现一个字符。

Keep Reading — 367 words totally

以前一直没有使用 zsh,理由是,这不是一个默认安装的 shell,我所工作的环境一般都是 Linux 服务器环境,一般系统默认不会安装这个 shell 的。另外,bash 我也没有使用得多熟练,为了逼自己熟练掌握 bash,不用 zsh。

听起来好有道理的样子,我竟然信了。这个里面,我忽略了最重要的一点,就是趣味。

其实,日常需要在 shell 下完成的事情,就那么一点,如果不是刻意去训练,使用任何一种 shell 的水平根本不会进步,如果刻意去训练的话,我想,任何一种 shell 都可以使用得不错的。而我这个人如果用不上,根本不可能去刻意训练的。

Keep Reading — 536 words totally

昨天晚上,我给服务器更新shadowsocks,发现其Python版本已经改为了package,使用pip安装了,这下好了。我可以不用以前git的更新方案了,改为使用pip直接安装最新的release就可以了。算是一种进步吧。所以,我果断把服务器版本和客户端版本都改为了用pip安装的python软件包。

然后,在Mac上,更进一步,我配置了使用launchd来在开机自动启动shadowsocks客户端。下面给出配置文件和配置方法。

<?xml version="1.0" encoding="UTF-8"?>

Keep Reading — 247 words totally

Mac系统下通用的进程管理器,是Mac系统下非常重要的一个进程。一般来说该进程不允许直接以命令行的形式调用。只能通过其控制管理界面,launchctl来进行控制。

launchd主要功能是进程管理。可以理解成是一个常驻在后台的进程,根据用户的配置,来响应特定的系统事件。launchd既可以用于系统级别的服务,又可以用于个人用户级别的服务。

在launchd的语境中,常驻进程有两种,一种称为是daemon,也就是我们常说的守护进程,这种一般对所有用户都有相同的行为,响应相同的事件,始终运行于后台,没有前台交互界面。另一种称为是agent,这种是用户级别的服务进程,一般以用户的身份运行。

Keep Reading — 357 words totally