TextMate (http://macromates.com) is an macOS X only editor, and there's a TextMate bundle available (https://github.com/masterzen/puppet-textmate-bundle) for editing Puppet manifests. First, install TextMate and Git (available with the command-line developer tools), and follow these commands to set up the Puppet bundle:
$ mkdir ~/temp$ cd ~/temp$ git clone https://github.com/masterzen/puppet-textmate-bundle.git Puppet.tmbundle$ mv ~/temp/Puppet.tmbundle ~/Library/Application\ Support/TextMate/Bundles/$ rm -fr ~/temp
Now select a manifest and open it with TextMate. In the TextMate dialog, select Puppet and Install Bundle, and you are all ready to rock.