<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sean M. McDaniel</title>
	<atom:link href="http://seanmmcdaniel.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://seanmmcdaniel.com</link>
	<description>A Personal website</description>
	<lastBuildDate>Wed, 05 Oct 2011 20:05:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5</generator>
		<item>
		<title>Modifier Key Symbols</title>
		<link>http://seanmmcdaniel.com/2011/10/modifier-key-symbols/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=modifier-key-symbols</link>
		<comments>http://seanmmcdaniel.com/2011/10/modifier-key-symbols/#comments</comments>
		<pubDate>Mon, 03 Oct 2011 20:52:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[symbols]]></category>

		<guid isPermaLink="false">http://seanmmcdaniel.com/?p=345</guid>
		<description><![CDATA[HTML Symbol List While writing news articles, I had to look up HTML symbols for modifier keys. Here is the full list. Modifier keys Character HTML code Description &#8614; &#38;#8614; Tab (mapsto symbol) ^ ^ Control &#8984; &#38;#8984; Command (Apple) &#8230; <a href="http://seanmmcdaniel.com/2011/10/modifier-key-symbols/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<h1>HTML Symbol List</h1>
<p>While writing news articles, I had to look up HTML symbols for modifier keys. Here is the full list.</p>
<h2>Modifier keys</h2>
<table>
<tr>
<th><strong>Character</strong></th>
<th><strong>HTML code</strong></th>
<th><strong>Description</strong></th>
</tr>
<tr>
<td>&#8614;</td>
<td>&amp;#8614;</td>
<td>Tab (<kbd>mapsto</kbd> symbol)</td>
</tr>
<tr>
<td>^</td>
<td>^</td>
<td>Control</td>
</tr>
<tr>
<td>&#8984;</td>
<td>&amp;#8984;</td>
<td>Command (Apple)</td>
</tr>
<tr>
<td>&#8657;</td>
<td>&amp;#8657;</td>
<td>Shift</td>
</tr>
<tr>
<td>&crarr;</td>
<td>&amp;crarr;</td>
<td>Enter (carriage return arrow)</td>
</tr>
</table>
<h2>Miscellaneous Keyboard Symbols</h2>
<table>
<tr>
<th><strong>Character</strong></th>
<th><strong>HTML code</strong></th>
<th><strong>Description</strong></th>
</tr>
<tr>
<td>&amp;</td>
<td>&amp;amp;</td>
<td>Ampersand</td>
</tr>
<tr>
<td>&gt;</td>
<td>&amp;gt;</td>
<td>Greater than</td>
</tr>
<td>&lt;</td>
<td>&amp;lt;</td>
<td>Less than</td>
</table>
<p>All other keyboard symbols should render as entered.</p>
]]></content:encoded>
			<wfw:commentRss>http://seanmmcdaniel.com/2011/10/modifier-key-symbols/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PyROOT with SciPy and NumPy on OS X</title>
		<link>http://seanmmcdaniel.com/2011/10/pyroot-with-scipy-and-numpy-on-os-x/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=pyroot-with-scipy-and-numpy-on-os-x</link>
		<comments>http://seanmmcdaniel.com/2011/10/pyroot-with-scipy-and-numpy-on-os-x/#comments</comments>
		<pubDate>Sat, 01 Oct 2011 20:05:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Scientific Computing]]></category>
		<category><![CDATA[10.7]]></category>
		<category><![CDATA[cern]]></category>
		<category><![CDATA[Lion]]></category>
		<category><![CDATA[numpy]]></category>
		<category><![CDATA[os x]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[ROOT]]></category>
		<category><![CDATA[scipy]]></category>

		<guid isPermaLink="false">http://seanmmcdaniel.com/?p=307</guid>
		<description><![CDATA[ROOT Installation Introduction The following instructions are for those trying to install ROOT on OS X 10.7 Lion with python bindings (PyROOT) and numpy, scipy, and matplotlib. For example, in a python script, one can import (a sample from one &#8230; <a href="http://seanmmcdaniel.com/2011/10/pyroot-with-scipy-and-numpy-on-os-x/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<h1>ROOT Installation</h1>
<h2>Introduction</h2>
<p>The following instructions are for those trying to install ROOT on OS X 10.7 Lion with python bindings (<kbd>PyROOT</kbd>) and <kbd>numpy</kbd>, <kbd>scipy</kbd>, and <kbd>matplotlib</kbd>. For example, in a python script, one can import (a sample from one of my scripts)&#8230;</p>
<pre class="brush: python; title: ; notranslate">
# Root imports
from ROOT import TH1F, TFile, THStack, TF1, TCanvas, TLegend
from ROOT import kRed, kBlue, kWhite
from ROOT import gStyle, gPad
# SciPy and Numpy
import scipy as sp
import numpy as np
import matplotlib as plt
</pre>
<p>Altogether, it&#8217;s a highly flexible environment for scientific computing.</p>
<p><strong>Note</strong>: The below instructions are only valid if you have XCode installed (see my post on Mac Setup, Part 1)</p>
<h2>Installing ROOT with Python Support</h2>
<p>We will take the following route:</p>
<ol>
<li>Install an appropriate version of Python</li>
<li>Install a fortran compiler (<kbd>gfortran</kbd>)</li>
<li>Create a directory for our root installation</li>
<li>Download the most recent version of the ROOT source and unpack in the install directory</li>
<li>Set the envionrment variables required for installation</li>
<li>Configure, make and install ROOT with python support</li>
<li>Set remaining enviornmental variables</li>
<li>Test and enjoy your new computing environment</kbd>
</ol>
<h3>Prerequisites</h3>
<p>It is assumed that you have <a href="http://developer.apple.com/xcode/">XCode</a> installed. If not, please see my earlier post. </p>
<h3>Python</h3>
<p>One of the trickiest parts of the installation was finding a compatable version of python. There were three issues.</p>
<ul>
<li>I couldn't find legacy installers for Python 2.6 in Lion (2.7 and 3.1 were <a href="http://python.org/download/">available</a> from the Python.org website).</li>
<li>The build type of Python and ROOT must be identical (both must be either 32 bit or 64 bit).</li>
<li>NumPy, SciPy, and matplotlib must be compatible with the installed Python version.</li>
</ul>
<p>I wanted to compile and install a 64 bit ROOT installation. The <a href="http://www.python.org/download/">2.7 Python installer</a> from <a href="http://www.python.org/">Python.org</a> installs both 32 and 64 bit versions of Python (e.g. <kbd>python2.7</kbd> and <kbd>python2.7-32</kbd>). One can compile ROOT with Python support using the standard Python.org 2.7 distribution with minimal effort. Everything will work well, but you will not have access to <kbd>numpy</kbd>, <kbd>scipy</kbd>, and <kbd>matplotlib</kbd>. These packages must be installed separately. </p>
<p>Most of my problems arose because of <kbd>scipy</kbd> and <kbd>numpy</kbd>. Building <kbd>numpy</kbd> from source requires Python 2.4, 2.5, or 2.6, but not 2.7. The package installer for 2.7 is only for 32 bit Python. I was not able to find a compatible version of Scipy and Numpy from the <a href="http://www.scipy.org/">Scipy.org</a> web site that worked with my 64 bit tandem install of python 2.7 and ROOT.</p>
<p>Luckily, the Enthought Python Distribution (EPD) provided a 64bit, Python 2.7 framework install that included numpy and scipy. The EPD 64bit distribution is, however, only free for <a href="http://enthought.com/products/edudownload.php">academics</a>. <a href="http://enthought.com/products/epd_free.php">EPD Free</a> (free for anyone) is so far 32 bit only for Apple and Windows platforms. </p>
<p>The 64 bit EPD Framework install is located at <kbd>/Library/Frameworks/EPD64.framework/Versions/7.1/</kbd>. Both 32 and 64 bit EPD distributions can be concurrently installed. The 32 bit version is located at <kbd>/Library/Frameworks/Python.framework/Versions/7.1/</kbd>.</p>
<h3>Fortran Compiler</h3>
<p>Root requires a fortran compiler. This is neither provided by a stock install of 10.7 nor XCode. There are three sources for free Fortran compilers online, and they are all uncompatable. <em>Install only one version.</em> I have used the version provided by AT&#038;T's R research <a title="gfortran down from AT&#038;T research" href="http://r.research.att.com/tools/">page</a>. Follow their instructions.</p>
<h3>Download ROOT</h3>
<p>Create a directory to store the ROOT installation binaries, libraries, and other files.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
sudo mkdir /usr/local/root
</pre>
<p>Download the latest ROOT source code from their <a title="Download ROOT" href="http://root.cern.ch/drupal/content/downloading-root">download page</a>. For Lion, the latest development version, as of early September 2011, was the 5.30/01 <a title="ROOT 5.30/01" href="http://root.cern.ch/drupal/content/root-version-v5-30-00-patch-release-notes">patch</a>. The professional version 5.30/00 compiled with problems. Recently, the production (Pro) version has been updated to <a href="http://root.cern.ch/drupal/content/production-version-530">5.30/02</a> and I now recommend that version.</p>
<p>After your download, unpack the files in your ROOT directory, i.e.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
gzip -dc root_&lt;version&gt;.source.tar.gz | tar -xf -
</pre>
<h3>Environment Variables and other Pre-compilation Steps</h3>
<p>Two types of installation are possible:</p>
<ul>
<li><em>Location independent version</em>: Installation in an arbitrary and movable location as pointed to by a set of environment variables.</kbd>
<li><em>Location dependent version</em>: Installation in a fixed directory selected during configuration through the <kbd>--prefix</kbd> flag. </li>
</ul>
<p>I chose the location independent version. Before configuring your installation through <kbd>./configure</kbd>, set your environment variables. Because we are compiling with python support, you must point to the location of the python version you want married to ROOT. For me, this was the 64 bit Enthought distribution located at <kbd>/Library/Frameworks/EPD64.framework/Versions/Current/</kbd>.</p>
<p>The required environment variables needed for <kbd>./configure</kbd> for a location independent install with python support are listed below. Please keep in mind that these are specific to my installation of Python and the location I wanted my ROOT distribution to reside.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
export ROOTSYS=/usr/local/root/5.30.01
export PYTHONDIR=/Library/Frameworks/EPD64.framework/Versions/Current/
</pre>
<h3>Configuration and Installation</h3>
<p>From your ROOT folder, run the configuration script for your OS X 64 bit system.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
./configure macosx64
</pre>
<p>Python support is included by default. After a successful configuration, compile through <kbd>make</kbd></p>
<pre class="brush: bash; light: true; title: ; notranslate">
sudo make -j4
</pre>
<p>The <kbd>-j4</kbd> flag indicates my system has four cores. Compilation will go much faster when you can simultaneously run four instances of your fortran or c compiler. There is <em>no</em> <kbd>sudo make install</kbd>. We have chosen a location independent install. Your binaries will be located under <kbd>$ROOTSYS/bin</kbd>. <kbd>make install</kbd> moves your files to a <kbd>--prefix</kbd> path specified in your <kbd>./configure</kbd>. We did not specify such a path. </p>
<p>During my process of discovering how to install ROOT, I messed up my configuration several times. Even after a <kbd>make clean</kbd> I was getting errors like</p>
<p><kbd>No rule to make target `XrdOucFactoryBonjour.hh', needed by &gt; &gt; &gt; `../../obj/XrdOucBonjour.o'.  Stop.</kbd></p>
<p>on my next build. These errors were cleared by issuing</p>
<pre class="brush: bash; light: true; title: ; notranslate">
make distclean-xrootd
make all-xrootd
</pre>
<p>after my <kbd>make clean</kbd> and before <kbd>./configure macosx64</kbd>.</p>
<h3>Final Steps</h3>
<p>Before running ROOT or important ROOT objects into python, you need to set a few more environment variables. From my <kbd>.zshrc</kbd> (instructions are identical for <kbd>.bashrc</kbd>),</p>
<pre class="brush: bash; title: ; notranslate">
# ROOT Data Analysis Framework
#export ROOTSYS=/usr/local/root/5.30.01
export ROOTSYS=/usr/local/root/current/
export LD_LIBRARY_PATH=$ROOTSYS/lib:$LD_LIBRARY_PATH
export DYLD_LIBRARY_PATH=$ROOTSYS/lib:$DYLD_LIBRARY_PATH
export SHLIB_PATH=$ROOTSYS/lib:$SHLIB_PATH
export LIBPATH=$ROOTSYS/lib:$LIBPATH
export MANPATH=$ROOTSYS/man:$MANPATH

export PYTHONPATH=$ROOTSYS/bindings/pyroot:$PYTHONPATH
export PYTHONPATH=$ROOTSYS/lib:$PYTHONPATH

export PYTHONDIR=/Library/Frameworks/EPD64.framework/Versions/Current/
</pre>
<p>That should be it. ROOT can be run through the terminal</p>
<pre class="brush: plain; light: true; title: ; notranslate">
root
</pre>
<p>To test pyroot, launch the 64bit Enthought Python executable <kbd>/Library/Frameworks/EPD64.framework/Versions/Current/bin/python</kbd> (I've created a symbolic link to the binary called <kbd>epython64</kbd> and placed the symbolic link in <kbd>~/bin</kbd>) and import ROOT</p>
<pre class="brush: plain; light: true; title: ; notranslate">
➜  ~  epython64
Enthought Python Distribution -- www.enthought.com
Version: 7.1-2 (64-bit)

Python 2.7.2 |EPD 7.1-2 (64-bit)| (default, Jul 27 2011, 14:50:45) 
[GCC 4.0.1 (Apple Inc. build 5493)] on darwin
Type &quot;packages&quot;, &quot;demo&quot; or &quot;enthought&quot; for more information.
&gt;&gt;&gt; import ROOT
&gt;&gt;&gt; 
</pre>
<p>No errors are reported. The install was a success.</p>
]]></content:encoded>
			<wfw:commentRss>http://seanmmcdaniel.com/2011/10/pyroot-with-scipy-and-numpy-on-os-x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ZSH on OS X</title>
		<link>http://seanmmcdaniel.com/2011/09/zsh-on-os-x/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=zsh-on-os-x</link>
		<comments>http://seanmmcdaniel.com/2011/09/zsh-on-os-x/#comments</comments>
		<pubDate>Fri, 30 Sep 2011 16:51:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[ZSH]]></category>
		<category><![CDATA[10.7]]></category>
		<category><![CDATA[Lion]]></category>
		<category><![CDATA[zsh]]></category>
		<category><![CDATA[zshell os x]]></category>

		<guid isPermaLink="false">http://seanmmcdaniel.com/?p=243</guid>
		<description><![CDATA[ZSH on OS X These are the steps I followed for installing and customizing ZSH on 10.7 Lion. Installation Instructions Install a new version of zsh through MacPorts OS X Lion comes with a newer version of zsh (4.3.11) in &#8230; <a href="http://seanmmcdaniel.com/2011/09/zsh-on-os-x/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<h1>ZSH on OS X</h1>
<p>These are the steps I followed for installing and customizing ZSH on 10.7 Lion.</p>
<h2>Installation Instructions</h2>
<h3>Install a new version of zsh through MacPorts</h3>
<p>OS X Lion comes with a newer version of zsh (4.3.11) in <kbd>/bin</kbd>, but if you want to maintain a current version, you can install it from MacPorts (or Fink or Homebrew depending on which package manager you prefer). The syntax is similar. For MacPorts,</p>
<pre class="brush: plain; light: true; title: ; notranslate">sudo port install zsh-devel +mp_completion +examples +dec +pcre</pre>
<p>MacPorts will install zsh in <code>/opt/local/bin/zsh</code>. Unfortunately, OS X will not recognize zsh as a login shell until <code>/etc/shells</code> is edited to include <code>/opt/local/bin/zsh</code>. My <code>/etc/shells</code> reads</p>
<pre class="brush: bash; title: ; notranslate">
# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.

/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
/opt/local/bin/zsh
</pre>
<p><kbd>/etc/shells</kbd> is a protected file and can only be edited with admin or root privaleges.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
sudo gvim /etc/shells
</pre>
<p>Alternatively,</p>
<pre class="brush: bash; light: true; title: ; notranslate">
sudo sh -c &quot;echo '/opt/local/bin/zsh' &gt;&gt; /etc/shells
</pre>
<h3>Change the default shell to zsh</h3>
<p><em><strong>Option 1</strong> (preferred)</em>: In Terminal.app, execute</p>
<pre class="brush: bash; light: true; title: ; notranslate">chsh -s /opt/local/bin/zsh</pre>
<p><em><strong>Option 2</strong>:</em> You should also be able to make the change through System Preferences -> Users &#038; Groups. Unlock the pane (lower left corner). Right click on your account and select &#8220;Advanced Options&#8230;&#8221; (note: if the pane is not unlocked, the contextual menu will not appear).</p>
<p><a href="http://seanmmcdaniel.com/wp-content/uploads/2011/09/zsh_accountsetup_part1.png"><img src="http://seanmmcdaniel.com/wp-content/uploads/2011/09/zsh_accountsetup_part1.png" alt="" title="Make ZSH the default shell - Step 1" width="669" height="536" class="alignleft size-full wp-image-251" /></a></p>
<p>Your default shell can be changed from the opened dialog</p>
<p>These are the steps I followed for installing and customizing ZSH on 10.7 Lion.</p>
<p><a href="http://seanmmcdaniel.com/wp-content/uploads/2011/09/zsh_accountsetup_part2_blurred.png"><img src="http://seanmmcdaniel.com/wp-content/uploads/2011/09/zsh_accountsetup_part2_blurred.png" alt="" title="zsh_accountsetup_part2_blurred" width="668" height="541" class="alignleft size-full wp-image-302" /></a></p>
<h3>Install ZSH Templates</h3>
<p>There are two main template packages that can be added to zsh. These packages extend the default functionality of ZSH. Please see their documentation for further information. The packages:</p>
<ul>
<li><a title="Oh My ZSH: A framework for managing your ZSH installation" href="https://github.com/robbyrussell/oh-my-zsh"><strong>Oh My Zsh</strong></a>: &#8220;A community supported framework for managing your ZSH installation.&#8221; Oh-my-zsh provides a growing collection of plugins and addons that enhance your zshell.</li>
<li><a title="ZSH Templates for OS X" href="http://code.google.com/p/zsh-templates-osx/"><strong>zsh-templates-osx</strong></a>: &#8220;A collection of files that help the user to customize the zsh shell for the Mac OS X operating system&#8221;</li>
</ul>
<p>I originally tried using <em>zsh-templates-osx</em>. The instructions are simple: a custom <kbd>/private/etc/zshrc</kbd> and <kbd>/private/etc/zshenv</kbd> are downloaded and written with appropriate root permissions. These files are sourced with new login shells (see  <a href="http://shreevatsa.wordpress.com/2008/03/30/zshbash-startup-files-loading-order-bashrc-zshrc-etc/">this</a> article).</p>
<pre class="brush: bash; light: true; title: ; notranslate">
cd /private 
sudo svn co http://zsh-templates-osx.googlecode.com/svn/trunk/etc 
</pre>
<p>The template files are added to <kbd>/Library/init/zsh</kbd>.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
cd /Library 
sudo svn co http://zsh-templates-osx.googlecode.com/svn/trunk/Library/init 
</pre>
<p>I had a few problem with the install, including problems with the order of my bin directories in <kbd>$PATH</kbd> (<em>zsh-templates-osx</em> sets variables through <kbd>path_helper</kbd>), environment variables, and the sourcing of <kbd>etc/zshrc</kbd> and <kbd>etc/zshenv</kbd>. I&#8217;m assuming that the error lies on my end. If you have an idea, please leave me a comment.</p>
<p>I settled on <em>oh-my-zsh</em>. Installation was also simple. Directly from their <a title="Installation of Oh my ZSH" href="https://github.com/robbyrussell/oh-my-zsh">website</a>:</p>
<p><strong>Step 1</strong>: Clone the repository. Templates files are copied to a hidden directory <kbd>~/.oh-my-zsh</kbd> in your <kbd>$HOME</kbd> directory.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
</pre>
<p><strong>Step 2</strong>: Backup your <kbd>~/.zshrc</kbd></p>
<pre class="brush: bash; light: true; title: ; notranslate">
cp .zshrc .zshrc_backup
</pre>
<p><strong>Step 3</strong>: Copy their <kbd>.zshrc<kbd> to your <kbd>$HOME</kbd>.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
</pre>
<p><strong>Step 4</strong>: Add back any customizations from your original <kbd>.zshrc</kbd> (now <kbd>.zshrc_backup</kbd>) file back to their </kbd>.zshrc.</p>
<p>Oh-my-zsh actives the wonderful tab-completion, history, and directory navigation features of ZSH by default. Any further changes to your user experience is straight forward: themes and additional plugins can be loaded through <kbd>~/.zshrc</kbd> and further modifications can be added to <kbd>.zsh</kbd> files in <kbd>~/.oh-my-zsh/lib</kbd>. To change your theme and add additional plugins, edit </p>
<pre class="brush: bash; light: true; title: ; notranslate">
ZSH_THEME=&quot;robbyrussell&quot;
</pre>
<p>to change your theme. A list of current themes is maintained <a title="A list of current themes for Oh My ZSH" href="https://github.com/robbyrussell/oh-my-zsh/wiki/themes">here</a>. Additional plugins can be added. Edit <kbd>plugins=(list of plugins)</kbd> in <kbd>~/.zshrc</kbd>.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
plugins=(git osx macports)
</pre>
<p>A full list of plugins is maintained <a href="https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins">here</a>.</p>
<p>Additional aliases and settings are placed into <kbd>~/.oh-my-zsh/lib</kbd> as a group of files with <kbd>.zsh</kbd> suffixes. Any file with this suffix will be sourced. These files (for example <kbd>aliases.zsh</kbd>) can be freely edited.</p>
<h3>Further additions to zshrc</h3>
<p>Fortunately, oh-my-zsh turns on most of features a common user will need. Most of my additions were <kbd>$PATH</kbd> additions for ROOT, MacPorts and X11, required environment variables, and my <kbd>dircolor</kbd> settings (see below).</p>
<p>The only noteworthy additions are the automatic <kbd>ls</kbd> after a <kbd>cd</kbd> as suggested by a post on <a title="StackOverflow" href="http://stackoverflow.com/questions/3964068/zsh-automatically-run-ls-after-every-cd">StackOverflow</a>, and the ordering of my <kbd>PATH</kbd> variables.</p>
<pre class="brush: bash; collapse: true; light: false; title: ; toolbar: true; notranslate">
# Path additions
# List items in the reverse order you want them to appear in $PATH (i.e. last
# items appear first ).
PATH=/usr/X11/bin:$PATH     # X11 Stuff
PATH=$ROOTSYS/bin:$PATH     # ROOT Data Analysis Framework
PATH=/opt/local/bin:$PATH   # MacPorts
PATH=/opt/local/sbin:$PATH  # MacPorts
PATH=/usr/local/bin:$PATH   # User binaries
PATH=$HOME/bin:$PATH        # Personal binaries

export PATH


# List directory contents after a 'cd'
function chpwd() {
    emulate -LR zsh
    ls
}
</pre>
<h3>Add greater color customization through dircolors</h3>
<p>Although <em>oh-my-zsh</em> provides a default color scheme, I prefer the greater customization provided by <kbd>dircolors</kbd>. <kbd>dircolors</kbd> is not included in the base 10.7 distribution. An integrated <kbd>dircolors</kbd> and <kbd>ls</kbd> must be installed. This combination is included an integrated component of of the GNU core utilities package (coreutils), a suite of <em>basic file, shell, and text manipulation utilities</em> (see <a href="http://www.gnu.org/s/coreutils/">GNU Operating System coreutils</a>). coreutils can be installed through MacPorts.</p>
<p>Here's an overview of the procedure we will follow:</p>
<ol>
<li>Install <kbd>coreutils</kbd> through macports</li>
<li>Create a custom <kbd>.dir_colors</kbd> file in your <kbd>$HOME</kbd> enumerating your color choices</li>
<li>Ensure your <kbd>$TERM</kbd> type is included in <kbd>.dir_colors</kbd></li>
<li>Edit <kbd>~/.zshrc</kbd> to evaluate <kbd>dircolors</kbd> when <kbd>ls</kbd> is called</li>
<li>Alias your <kbd>ls</kbd> to include the <kbd>--color</kbd> flag.</li>
<li>Adjust <em>oh-my-zsh</em></li>
</ol>
<p>First, install <em>coreutils</em></p>
<pre class="brush: bash; light: true; title: ; notranslate">
sudo port install coreutils
</pre>
<p>Please install without the <kbd>+with_default_names</kbd> option. <kbd>+with_default_names</kbd> uses the regular names for new standard unix programs rather than prefacing them with a 'g', e.g. ls instead of gls. This is a problem if MacPorts is ever updated. Please see my post here.</p>
<p>After the installation of coreutils, create a <kbd>~/.dir_colors</kbd> file. </p>
<pre class="brush: bash; light: true; title: ; notranslate">
touch ~/.dir_colors
</pre>
<p>I have included mine below, adapted and designed for text on a black terminal. Please make sure that your TERM is included in the .dir_colors header. To see your version of TERM:</p>
<pre class="brush: bash; light: true; title: ; notranslate">
echo $TERM
</pre>
<p>For my computer the result was xterm-256color. Your Terminal type can be changed in Terminal Preferences.</p>
<p>My <kbd>~/.dir_colors</kbd> file</p>
<pre class="brush: bash; collapse: true; light: false; title: ; toolbar: true; notranslate">

# DIRCOLOR file for the mac.
# Designed for a text on black terminal.

# Below, there should be one TERM entry for each terminal
# type that can be colored.
TERM linux
TERM linux-c
TERM mach-color
TERM console
TERM con132x25
TERM con132x30
TERM con132x43
TERM con132x60
TERM con80x25
TERM con80x28
TERM con80x30
TERM con80x43
TERM con80x50
TERM con80x60
TERM dtterm
TERM xterm
TERM xterm-color
TERM xterm-256color # Default for OS X 10.7
TERM xterm-debian
TERM rxvt
TERM screen
TERM screen-bce
TERM putty
TERM screen-w
TERM vt100
TERM Eterm

COLOR yes

# Below are the color init strings for the basic file types. 
# A color init string consists of one or more of the following
# numeric codes:
# 
# Attribute codes:
#     00=none 01=bold 04=underscore 05=blink 07=reverse
#     08=concealed
# Text color codes:
#     30=black 31=red 32=green 33=yellow 34=blue 35=magenta
#     36=cyan 37=white
# Background color codes:
#     40=black 41=red 42=green 43=yellow 44=blue 45=magenta 
#     46=cyan 47=white

NORMAL 00	    # Global default
FILE 00		    # Normal file
DIR 04;40;33        # Directory (DEFAULT: 01;34 - CHANGED S.M.)
LINK 01;36	    # Symbolic link.
FIFO 40;33	    # Pipe
SOCK 01;35	    # Socket
DOOR 01;35	    # Door
BLK 40;33;01	    # Block device driver
CHR 40;33;01	    # Character device driver
ORPHAN 40;31;01     # Symlink to nonexistent file

# This is for files with execute permission:
EXEC 01;32

# List any file extensions like '.gz' or '.tar' that you would
# like ls to colorize below. Put the extension, a space, and
# the color init string (and any comments you want to add after 
# a '#').



# USER DEFINED

# Archive files
.tar 01;31 # archives or compressed (bright red)
.tgz 01;31
.tar.gz 01;31
.arj 01;31
.taz 01;31
.lzh 01;31
.zip 01;31
.z   01;31
.Z   01;31
.gz  01;31
.bz2 01;31
.deb 01;31
.rpm 01;31
.jar 01;31

# Images and video
.fig 01;35
.jpg 01;35
.jpeg 01;35
.gif 01;35
.bmp 01;35
.pbm 01;35
.pgm 01;35
.ppm 01;35
.tga 01;35
.xbm 01;35
.xpm 01;35
.tif 01;35
.tiff 01;35
.png 01;35
.mov 01;35
.mpg 01;35
.mpeg 01;35
.avi 01;35
.fli 01;35
.gl 01;35
.dl 01;35
.xcf 01;35
.xwd 01;35

# Audio
.ogg 01;35
.mp3 01;35
.wav 01;35
.aac 01;35


# Programming
*Makefile 01;33
.C   01;33
.cpp 01;33
.cc  01;33
.c   01;33
.for 01;33
.h   01;33
.tcl 01;33
.py  01;33
.sh  01;33
.o   33
.so  33

# Documents
*README 01;37;41
*Readme 01;37;41
*readme 01;37;41
.tex 01;37;40
.dvi 01;37;40
.ppt 01;37;40
.pptx 01;37;40
.doc 01;37;40
.docx 01;37;40
.xls 01;37;40
.xlsx 01;37;40
.ps  01;37;40
.eps 01;37;40
.pdf 01;37;40
.txt 01;37;40
.htm 01;37;40
.xml 01;37;40
.pot 01;37;40
.nb  01;37;40

# Spectra (physics stuff)
.spe 32
.spn 32
.sec 32
.asc 32
.mat 32
.spc 32
.Spc 32
.root 32
.gf2 32
.gf3 32

# Data
.dat 01;04;35
.evt 01;04;35
.bin 01;04;35

# Temporary files
*~ 36
.bak 36
.tmp 36
*# 36
</pre>
<p>Add the following lines to your <kbd>~/.zshrc</kbd> to ensure that <kbd>dircolors</kbd> runs when <kbd>ls</kbd> or any <kbd>ls</kbd> variant is called.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
# Color listing
eval $(dircolors ~/.dir_colors)
zstyle ':completion:*' list-colors &quot;${(s.:.)LS_COLORS}&quot;
</pre>
<p><em>ls</em> must be called with the <kbd>--color</kbd> flag. Modify the <em>ls</em> aliases in <kbd>~/.oh-my-zsh/lib/aliases.zsh</kbd>.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
# List direcory contents
export LS_OPTIONS='--color'
alias l='ls $LS_OPTIONS'
alias ll='ls $LS_OPTIONS -lh'
alias lll='ls $LS_OPTIONS -alh'
alias sl='ls $LS_OPTIONS' # often screw this up
</pre>
<p>Lastly, <kbd>~/.oh-my-zsh/lib/theme-and-appearance.zsh</kbd> needs modified so <em>ls</em> is not called with the <kbd>-G</kbd> flag. Change <kbd>alias ls='ls -G'</kbd> to <kbd>alias ls='ls --color</kbd>, i.e.</p>
<pre class="brush: bash; light: true; title: ; notranslate">
# Enable ls colors
# Edited - S.M. Changed ls -G -&gt; ls --color. Requires dircolor to be valid.
if [ &quot;$DISABLE_LS_COLORS&quot; != &quot;true&quot; ]
then
  # Find the option for using colors in ls, depending on the version: Linux or BSD
  ls --color -d . &amp;&gt;/dev/null 2&gt;&amp;1 &amp;&amp; alias ls='ls --color=tty' || alias ls='ls --color'
fi
</pre>
<h2>Conclusions</h2>
<p>That should be all! Questions and comments can be addressed below. </p>
]]></content:encoded>
			<wfw:commentRss>http://seanmmcdaniel.com/2011/09/zsh-on-os-x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Mac Setup, Part 1</title>
		<link>http://seanmmcdaniel.com/2011/09/new-mac-setup-part1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=new-mac-setup-part1</link>
		<comments>http://seanmmcdaniel.com/2011/09/new-mac-setup-part1/#comments</comments>
		<pubDate>Fri, 30 Sep 2011 15:29:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Scientific Computing]]></category>
		<category><![CDATA[ZSH]]></category>
		<category><![CDATA[10.7]]></category>
		<category><![CDATA[Lion]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[os x]]></category>
		<category><![CDATA[setup]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://seanmmcdaniel.com/?p=175</guid>
		<description><![CDATA[New Mac Setup, Part 1 I had to setup a new OS X system from scratch. The last time I did so was over a half-decade ago with my old laptop, and I&#8217;ve forgotten most of my global and software &#8230; <a href="http://seanmmcdaniel.com/2011/09/new-mac-setup-part1/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<h1>New Mac Setup, Part 1</h1>
<p>I had to setup a new OS X system from scratch. The last time I did so was over a half-decade ago with my old laptop, and I&#8217;ve forgotten most of my global and software settings. Below are my notes associated with the new machine, including a description of problems I faced in my upgrade from Snow Leopard to Lion.</p>
<p>I&#8217;ve separated my content into two entries because of length. The first will cover software. The second will cover tweaks.</p>
<h2>Technical Software</h2>
<p>Most software on this list is free. A few installs are covered in additional details below this list.</p>
<ol>
<li><strong><a title="Apple XCode Home" href="http://developer.apple.com/xcode/">XCode</a></strong> (free): Apple integrated development environment for the OS X platform. Contains all the tools necessary for creating and compiling Mac applications. Many of the below installs (e.g. <a title="MacPorts" href="http://www.macports.org/">MacPorts</a>) are dependent on the development tools provided in XCode (as of 11 Sept. 2011, version 4.1). XCode can be downloaded from Apple&#8217;s App Store for free (search for <kbd>XCode</kbd>). <strong>Installation notes</strong>: Even though the App Store says <kbd>XCode</kbd> is installed, <em>it is not</em>. Search for <kbd>XCode Installer</kbd> in spotlight and run the installation program. People have had problems with the installation if iTunes is running. If you&#8217;re having problems, check Activity Monitor (Applications &rarr; Utilities &rarr; Activity Monitor) for open processes affiliated with iTunes. </li>
<li><strong><a title="MacPorts" href="http://www.macports.org/">MacPorts</a></strong> (free): Package manager. Install open-source, command-line or X11, software on your Mac. Similar package managers are available&#8212;see, for example, <a href="http://www.finkproject.org/">Fink</a> and <a href="http://mxcl.github.com/homebrew/">Homebrew</a>&#8212;and all three programs work similarly. Any instructions specific to MacPorts (e.g. <code>sudo install</code>) can be easily extended to Fink or Homebrew. The differences between the three package managers are outlined in a blog post by <a href="http://tedwise.com/2010/08/28/homebrew-vs-macports/">Ted Wise</a>. There are several GUI wrappers for MacPorts for those that prefer graphics over a command-line interface, but I haven&#8217;t used them. Note that the installation of MacPorts, and likely all of the mentioned package managers, require the installation of the latest version of XCode. <strong>Installation notes</strong>: See MacPorts update notes after this list. <em>Please select a single package manager.</em> The simultaneous use of several (e.g. Fink and MacPorts) can cause problems.</li>
<li><strong><a title="Enthought Python Distribution 7.0" href="http://www.enthought.com/products/epd.php" target="_blank">Enthought python distribution (EPD)</a></strong> (free for academics): Contains python 2.5, 2.6, and 2.7 plus a <a title="Enthought distribution package contents" href="http://www.enthought.com/products/epdlibraries.php" target="_blank">complete set</a> of scientific tools including, <a title="SciPy" href="http://www.scipy.org/" target="_blank">SciPy</a>, <a title="Numpy" href="http://numpy.scipy.org/" target="_blank">NumPy</a>, and <a title="Matplotlib" href="http://matplotlib.sourceforge.net/" target="_blank">Matplotlib</a>. Python 3.x is not included. The academic version is free. 32bit and 64bit packages are available (although the 64bit build doesn&#8217;t include the full set of utilities). Installing the Enthought Suite is much easier than compiling the components individually. <strong>Installation:</strong> Like the official python distributions available from python.org, EPD installs as a Framework in <kbd>/Library/Frameworks/Python.framework/Versions</kbd>.</li>
<li><strong><a title="MacVim editor" href="http://code.google.com/p/macvim/" target="_blank">MacVim</a></strong> (free): My favorite editor. MacVim is the native vim client for Mac OS X. If you prefer Emacs, try <a title="Carbon Emacs" href="http://homepage.mac.com/zenitani/emacs-e.html" target="_blank" class="broken_link">Carbon Emacs</a>. Although MacVim will work after an upgrade to Lion, the 10.6 version (version 7.3, rev. 53) is buggy (problems opening multiple tabs, problems with saving files, etc.). A fresh Application install (version 7.3, rev. 61) will fix the problem and provide native Lion features like full screen. </li>
<li><strong><a title="MacFuse" href="http://code.google.com/p/macfuse/" target="_blank">MacFuse</a></strong> (free)+ <strong><a title="MacFusion" href="http://macfusionapp.org/" target="_blank">MacFusion</a></strong> (free): MacFuse allows you to mount 3rd-party file systems on OS X. MacFusion is the 3rd party SSH file system and GUI interface for MacFuse that allows you to view and edit remote files over an SSH connection as if they were on your own computer. The standard installation of MacFuse does not work correctly on a 64 bit Snow Leopard installation. I instead used the an unofficial distribution noted <a title="MacFuse unoffical distribution" href="http://groups.google.com/group/macfuse/browse_thread/thread/9e5ec92932f27f46" target="_blank">here</a>. These two programs remain untested on Lion after my upgrade.</li>
<li><strong><a title="The R Project" href="http://www.r-project.org/" target="_blank">R</a></strong> (and R64) (free): Well-respected, free, statistical software.</li>
<li><strong><a title="MacTex LaTex Distribution" href="http://www.tug.org/mactex/" target="_blank">MacTex LaTex Distribution</a></strong> (free): A complete and full LaTex distribution for OS X.</li>
<li><strong><a title="Jabref" href="http://jabref.sourceforge.net/">JabRef</a></strong> (free): Manage your bibliography and citations. Works particularly well with LaTex documents.</li>
<li><strong><a title="Mathematica" href="http://www.wolfram.com/mathematica/" target="_blank">Mathematica</a></strong> ($$, discounts for students): Mathematics software. Great for symbolic calculations. <a title="Octave" href="http://www.gnu.org/software/octave/">Octave</a> is a free alternative, but I do not have experience with the program.</li>
<li><strong><a title="ROOT Data Analysis Framework" href="http://root.cern.ch/drupal/">ROOT</a></strong> (free): A data analysis framework largely used in high-energy and nuclear physics.</li>
<li><strong><a title="X Quartz for OS X" href="http://xquartz.macosforge.org/trac/wiki">X Quartz</a></strong></a> (free): From their website: <em>The XQuartz project is an open-source effort to develop a version of the  X.org X Window System that runs on Mac OS X. Together with supporting libraries and applications, it forms the X11.app that Apple has shipped with OS X since version 10.5.</em>  XQuartz is, in general, a more up-to-date and bug-free version of Apple&#8217;s own X11. An new XQuartz install is recommended for building MacPort packages (e.g. Wine).
</ol>
<h3>MacPorts Upgrade</h3>
<p>If you bought your computer with 10.7 installed, you can ignore the text below. The following information only applies to people like me who installed <kbd>MacPorts</kbd> before an upgrade to 10.7. Any operating system upgrade will likely break your <kbd>MacPorts</kbd> installation.</p>
<p>Download the latest version from MacPorts, mount the dmg, and run the installer. MacPorts requires the latest version of XCode, as installed from the App Store.</p>
<p>After a new installation of MacPorts, try and update old packages</p>
<pre class="brush: bash; light: true; title: ; notranslate">sudo port upgrade outdated</pre>
<p>This upgrade process will likely fail. If so, you need to go through the processes of uninstalling and re-installing packages. The upgrade processes is outlined in the MacPorts <a title="MacPorts Migration Wiki" href="http://trac.macports.org/wiki/Migration" target="_blank">Wiki</a> and consists of the following steps (taken directly from their site).</p>
<ol>
<li>To remember which ports you have installed, save a list to file.</li>
<li>Delete all installed ports</li>
<li>Clean up partial builds</li>
<li>Reinstall all packages you from from your installed ports file</li>
</ol>
<p>The associated commands for these four steps are </p>
<pre class="brush: bash; light: true; title: ; notranslate">
port -qv installed &gt; myoutputfile.txt
sudo port -fp uninstall --follow-dependents installed
sudo port clean all
sudo port install portname +variant1 +variant2 …
</pre>
<p><kbd>+variant1</kbd>, <kbd>+variant2</kbd>, etc. are the additional flags that can be passed to a package for additional functionality. For my zshell installation, for example</p>
<pre class="brush: bash; light: true; title: ; notranslate">sudo port instal zsh-devel +mp_completion +dec +examples</pre>
<p>For me, the process of migrating MacPorts was particularly frustrating. I installed <kbd>coreutils</kbd> with the <kbd>+with_default_names</kbd> variant. Coreutils usually installs its utilities with a &#8216;g&#8217; prefix, i.e. <kbd>ls</kbd> becomes <kbd>gls</kbd>. <kbd>+with_default_names</kbd> removes the &#8216;g&#8217; prefex.  When I uninstalled all packages, <kbd>/usr/local/bin</kbd> was left with many of the essential and now broken coreutils programs like <kbd>ls</kbd>. I couldn&#8217;t figure out why my <kbd>sudo port</kbd> installations were failing. The problem: the uninstaller removed all the linked libraries for the core utilities, but did not remove the main binaries. A full suite of common unix utilities, which where overwriting the standard distribution utilities in <kbd>/bin</kbd> and <kbd>/usr/bin</kbd> because of the preference of <kbd>/usr/local/bin</kbd> in <kbd>$PATH</kbd>, were broken. MacPorts was trying to use broken Unix utilities to compile new software.</p>
<p>The lesson: After completing your MacPorts uninstall, check <kbd>/usr/local</kbd> for any orphaned packages beyond the standard <kbd>port*</kbd> binaries and remove them. When reinstalling coreutils, run the command without variants</p>
<pre class="brush: bash; light: true; title: ; notranslate">sudo port install coreutils</pre>
<p>The <em>g</em>-prefix utilities can be symlinked to their regular names.</p>
<pre class="brush: bash; light: true; title: ; notranslate">for f in g*; do sudo ln -s $f ${f:1}; done</pre>
<h3>MacPorts Installs</h3>
<p>A list of programs I&#8217;ve installed through MacPorts</p>
<ol>
<li><a title="coreutils" href="http://www.gnu.org/s/coreutils/"><strong>coreutils</strong></a>: From the <a href="http://www.gnu.org/s/coreutils/">gnu.org</a> web page: &#8220;the basic file, shell and text manipulation utilities of the GNU operating system.&#8221; A coreutils install was required for a new <kbd>dircolors</kbd> and <kbd>ls</kbd>. Dircolors and GNU ls can be combined to provide extremely flexible color highlighting in bash and zsh shell environments.</li>
<li><a title="Exhuberant Ctags" href="http://ctags.sourceforge.net/whatis.html"><strong>Exhuberent Ctags</strong></a>: Automatically tag source files for use by Vim, Emacs, and other editors. Permits quick access to file components (function definitions, classes, variables, etc.)</li>
<li><a href="http://zsh.sourceforge.net/"><strong>ZShell:</strong></a> The <kbd>zsh</kbd> shell, a powerful alternative to bash.</li>
<li><a href="http://wiki.winehq.org/MacOSX"><strong>Wine</strong></a>: Run windows programs in OS X. Works great for small executables, less so for games. Wine is a large, complicated program. The MacPorts install will take a while and will install many, many dependencies.</li>
<li><a href="http://www.gimp.org/macintosh/"><strong>Gimp</strong></a>: Sophisticated Graphics editor. Free alternative to Adobe&#8217;s Photoshop. The build process took nearly three hours on a new MacBook Pro.</li>
</ol>
<p>The corresponding MacPort commands</p>
<pre class="brush: bash; light: true; title: ; notranslate">
sudo port install coreutils
sudo port install ctags
sudo port install zsh-devel +mp_completion +examples +dec +pcre
sudo port install wine
sudo port install gimp-devel
</pre>
<h3>ZSH Installation</h3>
<p>My ZSH installation is addressed in a separate post.</p>
<h3>Python Installation</h3>
<p>Multiple python distributions can be installed simultaneously. </p>
<p>OS X provides python out of the box (installed in <kbd>/usr/bin/python</kbd>)&mdash;just execute <kbd>python</kbd> from the command line&mdash;but its recommended that one <a href="http://python.org/download/">install</a> a new Framework version (either <a href="http://python.org/ftp/python/2.7.2/python-2.7.2-macosx10.6.dmg">2.7</a> or <a href="http://python.org/ftp/python/3.2.2/python-3.2.2-macosx10.6.dmg">3.1</a>) from <a href="http://python.org/download/">Python.org</a>. If you need computational or visualization packages, consider installing the <a title="Enthought Python Distribution" href="http://www.enthought.com/">Enthought Python Distribution (EPD)</a>, which bundles numpy, scipy, matplotlib, wxPython and other packages into an easy installer. </p>
<h3>ROOT installation</h3>
<p>Installation of ROOT is addressed in a separated post.</p>
<h2>Productivity</h2>
<p>Most applications on this list are free.</p>
<ol>
<li><strong><a title="Firebox" href="http://www.mozilla.org/en-US/firefox/new/">Firefox</a></strong> (free): Browser of choice because of the numerous, high-quality extensions available, the ability to tag bookmarks, and keyword searching. Chrome, Opera, and Safari (Apple&#8217;s default browser) are also available for the Mac platform. Safari and Chrome are both native Mac applications&mdash;they support trackpad gestures, full screen mode, and all other expected OS X goodies&mdash;and therefore they may migrate to my top choice if they fold in Firefox&#8217;s additional functionality. Unfortunately, I still haven&#8217;t found an easy way to syncronize bookmarks across browsers and platforms. <a href="http://www.xmarks.com/">XMarks</a> still does not work properly for Chrome on OS X.</li>
<li><strong><a href="http://qsapp.com/">Quicksilver</a></strong> (free): Application launcher and much more. I use quicksilver to launch programs, perform quick calculations, and assign keyboard commands to common actions (e.g. open a Terminal and <kbd>cd</kbd> to the folder selected in Finder).</li>
<li><strong><a href="http://growl.info/">Growl</a></strong> + <strong><a href="http://growl.info/growlmail/">GrowlMail</a></strong> (both free): Notification system for OS X. Presents useful and relevant information subtly without stealing focus from your work flow. Examples include snippets of incoming mail messages (with Growl Mail), the completion of uploads and downloads (through Transmit or Firefox, for example), and Twitter updates. A list of supported applications is listed on Growl&#8217;s <a href="http://growl.info/applications">website</a> by category. A version for Lion will be released soon and distributed through the App Store application, but on my system the older version for Snow Leopard works well. <strong>Update</strong>: I just noticed that GrowlMail is no longer actively developed by the Growl team so that they can focus on their flagship product. The project has been moved to <a href="http://code.google.com/p/growlmail/">Google Code</a>.</li>
<li><strong><a href="http://skim-app.sourceforge.net/">Skim</a></strong> (free): PDF reader. Better than Preview for reading scientific papers. My recommendation comes with a warning. Skim does not save its markup information in the pdf data; the markup is instead saved as extended attributes. Although other Skim users can see your markup, those using other readers cannot. To include the markup with the pdf data, choose <kbd>File &rarr; Export...</kbd> and select &#8220;PDF with embedded notes.&#8221;</li>
<li><strong><a href="http://www.videolan.org/vlc/">VLC Media Player</a></strong> (free): Free, open source media player. Supports most file formats. Browser plugsins are available.</li>
<li><strong><a href="http://www.panic.com/transmit/">Transmit</a></strong> ($$): FTP, SFTP, and WebDAV client. Beyond the standard upload and download capabilities of any FTP and SFTP client, Transmit now allows one to mount disks to the Finder over SFTP (similar to MacFuse and MacFusion) and can synchronize local and remote directories.</li>
<li><strong><a href="http://www.skype.com/intl/en-us/homepage" class="broken_link">Skype</a></strong>: Video conferencing and chat. Allows for screen sharing.</li>
<li><strong><a href="http://www.google.com/tools/dlpage/res/talkvideo/hangouts/">Google+ Hangouts</a></strong>: Video conferencing and chat. Handles multiple (group) chat very well. Google Hangouts requires a Google+ account and a browser <a href="http://www.google.com/tools/dlpage/res/talkvideo/hangouts/">plugin</a>. For OS X, the plugin hangs with Firefox. Use of Google Chrome is recommended.</li>
<li><strong><a href="https://www.dropbox.com/">Dropbox</a></strong> (free with limited storage): Online storage. Dropbox creates a folder that is automatically synced with the cloud (<kbd>~/Dropbox/</kbd>). Files uploaded to the cloud can either be accessed through a browser, or by another computer with Dropbox installed. </li>
<li><strong><a href="http://www.islayer.com/apps/istatpro/" class="broken_link">IStatPro</a></strong> (free): Monitor system attributes (temperatures, disk storage, memory usage, CPU usage, etc.) using this Dashboard widget.</li>
<li><strong><a href="https://agilebits.com/products/1Password/Mac">1Password</a></strong> ($$): Password manager. Manages all account passwords for both programs and online sites (e.g. Facebook, Gmail, etc.). Because 1Password manages all passwords, and eliminates password memorization, the user can create custom and unique passwords for different logins, increasing online security.</li>
<li><strong><a href="http://www.jibapps.com/en/products/trashme/">TrashMe</a></strong> ($$): Remove OS X applications. Applications are usually removed by dragging the application (in <kbd>/Applications/</kbd>) to the trash. Doing so usually leaves orphan files in <kbd>/Library/</kbd>, <kbd>~/Library/</kbd> and other locations that are secretly installed when the application was originally drug into <kbd>/Applications</kbd>. This method of dragging the application to the trash allows the application to be reinstalled without losing user data, but if you want the application completely removed, and you aren&#8217;t confortable chasing the list of folders where the application has imprinted itself, than a program like <a href="http://www.jibapps.com/en/products/trashme/">TrashMe</a> is recommended. </li>
</ol>
<h2>Fun</h2>
<ol>
<li><strong><a href="http://www.spotify.com/">Spotify</a></strong> (free): Spotify music service. Play most, Western, major label songs on demand (with exceptions, e.g. the Beatles). Unlike Pandora, Spotify allows you to select the individual songs you want to listen to. Spotify is supported by ads, but with a monthly subscription, you can upgrade to service without ads and with a higher streaming bitrate. </li>
<li><strong><a href="http://reederapp.com/">Reeder</a></strong> ($$): RSS reader.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://seanmmcdaniel.com/2011/09/new-mac-setup-part1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A study of complementary reactions: single-proton pickup and single-proton knockout</title>
		<link>http://seanmmcdaniel.com/2011/08/a-study-of-complementary-reactions-single-proton-pickup-and-single-proton-knockout/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=a-study-of-complementary-reactions-single-proton-pickup-and-single-proton-knockout</link>
		<comments>http://seanmmcdaniel.com/2011/08/a-study-of-complementary-reactions-single-proton-pickup-and-single-proton-knockout/#comments</comments>
		<pubDate>Fri, 19 Aug 2011 23:51:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[NSCL]]></category>
		<category><![CDATA[Nuclear Physics]]></category>
		<category><![CDATA[Science]]></category>
		<category><![CDATA[knockout]]></category>
		<category><![CDATA[nscl]]></category>
		<category><![CDATA[nuclear reactions]]></category>
		<category><![CDATA[pickup]]></category>
		<category><![CDATA[thesis]]></category>

		<guid isPermaLink="false">http://seanmmcdaniel.com/?p=193</guid>
		<description><![CDATA[A study of complementary reactions: single-proton pickup and single-proton knockout Update (2 Sep. 2011): The download of my thesis is now password protected. If you want a copy, please contact me and I&#8217;ll send you the password. I&#8217;ve uploaded information &#8230; <a href="http://seanmmcdaniel.com/2011/08/a-study-of-complementary-reactions-single-proton-pickup-and-single-proton-knockout/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<h2>A study of complementary reactions: single-proton pickup and single-proton knockout</h2>
<p><strong>Update </strong><em>(2 Sep. 2011)</em>: The download of my thesis is now password protected. If you want a copy, please contact me and I&#8217;ll send you the password.</p>
<p>I&#8217;ve uploaded <a title="Doctoral Thesis" href="http://seanmmcdaniel.com/resume/publications/doctoral-thesi/">information</a> on my doctoral thesis, including a complete abstract.</p>
<p>My thesis has been submitted to ProQuest for publication (IP limited and subscription based). Michigan State University requests that ProQuest converts all submitted theses to microfiche format (arghhh!) and the entire processes takes four to five weeks. A link and citation will be provided when available.</p>
<p>For those looking for a sensible pdf copy: <a href="http://seanmmcdaniel.com/wp-content/uploads/2011/08/resume_McDaniel_27Aug2011.pdf">download</a> (right click and save as&#8230;). The file is 20.5 MB in size. I have purchased and reserved the copyright in my name. Although the file is currently available for anyone to download, access restrictions may be installed in the future. Enjoy!</p>
<p>I have also updated the <a href="http://seanmmcdaniel.com/wp-content/uploads/2011/08/resume_McDaniel_27Aug2011.pdf">pdf</a> copy of my resume. It now agrees with the posted version. For those who downloaded an older version, please also note that my current address has changed.</p>
]]></content:encoded>
			<wfw:commentRss>http://seanmmcdaniel.com/2011/08/a-study-of-complementary-reactions-single-proton-pickup-and-single-proton-knockout/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Publications updated</title>
		<link>http://seanmmcdaniel.com/2011/06/publications-updated/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=publications-updated</link>
		<comments>http://seanmmcdaniel.com/2011/06/publications-updated/#comments</comments>
		<pubDate>Fri, 24 Jun 2011 21:43:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Curriculum Vitae]]></category>
		<category><![CDATA[Employment]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[employment]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[publications]]></category>
		<category><![CDATA[resume]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://seanmmcdaniel.com/?p=141</guid>
		<description><![CDATA[Publications updated I added a publications page under &#8216;Resume and CV&#8216;, and updated my CV to reflect new articles in press.]]></description>
				<content:encoded><![CDATA[<h2>Publications updated</h2>
<p>I added a <a title="Publications" href="http://seanmmcdaniel.com/resume/publications/" target="_blank">publications</a> page under &#8216;<a title="Resume and CV" href="http://seanmmcdaniel.com/resume/" target="_blank">Resume and CV</a>&#8216;, and updated my CV to reflect new articles in press.</p>
]]></content:encoded>
			<wfw:commentRss>http://seanmmcdaniel.com/2011/06/publications-updated/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Science page created</title>
		<link>http://seanmmcdaniel.com/2011/06/science-page-created/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=science-page-created</link>
		<comments>http://seanmmcdaniel.com/2011/06/science-page-created/#comments</comments>
		<pubDate>Thu, 16 Jun 2011 20:32:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Science]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[science]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://seanmmcdaniel.com/?p=100</guid>
		<description><![CDATA[Science page created I have added information about my work at the NSCL and my thesis project, &#8220;A study of complementary reactions: single-proton knockout and single-proton pickup.&#8221; I have now pointed my old websites, hosted by the MSU physics and &#8230; <a href="http://seanmmcdaniel.com/2011/06/science-page-created/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<h2>Science page created</h2>
<p>I have added information about my work at the NSCL and my thesis project, &#8220;A study of complementary reactions: single-proton knockout and single-proton pickup.&#8221; I have now pointed my old websites, hosted by the MSU physics and astronomy department and the NSCL to automatically redirect to this domain.</p>
]]></content:encoded>
			<wfw:commentRss>http://seanmmcdaniel.com/2011/06/science-page-created/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Resume and CV added</title>
		<link>http://seanmmcdaniel.com/2011/06/resume-and-cv-added/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=resume-and-cv-added</link>
		<comments>http://seanmmcdaniel.com/2011/06/resume-and-cv-added/#comments</comments>
		<pubDate>Thu, 16 Jun 2011 19:11:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Curriculum Vitae]]></category>
		<category><![CDATA[Employment]]></category>
		<category><![CDATA[Resume]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[curriculum vitae]]></category>
		<category><![CDATA[cv]]></category>
		<category><![CDATA[employment]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[resume]]></category>

		<guid isPermaLink="false">http://seanmmcdaniel.com/?p=89</guid>
		<description><![CDATA[Resume and CV added I have uploaded my resume and CV. They are posted in both HTML and PDF form. If you are interested in additional details, you can contact me.]]></description>
				<content:encoded><![CDATA[<h2>Resume and CV added</h2>
<p>I have uploaded my resume and CV. They are posted in both HTML and PDF form. If you are interested in additional details, you can <a title="Contact Me" href="http://seanmmcdaniel.com/contact-me/">contact me</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://seanmmcdaniel.com/2011/06/resume-and-cv-added/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Website created</title>
		<link>http://seanmmcdaniel.com/2011/06/initial-upload/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=initial-upload</link>
		<comments>http://seanmmcdaniel.com/2011/06/initial-upload/#comments</comments>
		<pubDate>Sun, 12 Jun 2011 18:56:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Website]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://seanmmcdaniel.com/?p=1</guid>
		<description><![CDATA[Website created Initial creation of the personal website of Sean M. McDaniel. Please bear with me as I upload and update content.]]></description>
				<content:encoded><![CDATA[<h2>Website created</h2>
<p>Initial creation of the personal website of Sean M. McDaniel. Please bear with me as I upload and update content.</p>
]]></content:encoded>
			<wfw:commentRss>http://seanmmcdaniel.com/2011/06/initial-upload/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
