Local Documentation: PHP, Django, jQuery
As ubiquitous as wifi is these days, I still feel better with a local copy of the documentation around. Here's how I created local copies of the PHP, Django, and jQuery docs on my MacBook running Mac OS X 10.5.6.
Django's documentation files are flat HTML, so the only real step
is to build the docs using Sphinx. I'll do this in
~/Sites/django-docs/ for consistency with my PHP setup, but strictly
speaking you can access these docs without the overhead of a web server.
sudo easy_install sphinx cd ~/Sites/ svn co http://code.djangoproject.com/svn/django/trunk/docs/ django-docs cd django-docs make html
The final step took several minutes to complete on my MacBook. Script
output notes that the new documentation is stored in
Open the index.html file in your browser. There's no step 3!
The PHP setup is slightly more complicated since the docs themselves rely on PHP. (On the upside, this provides quick access to function reference with URLs like php.net/explode.) Luckily the process is well documented. I won't duplicate their steps here, but I will share some tips.
Here is my Apache 2 configuration file. I saved this to
/private/etc/apache2/other/php.localhost.conf where it's automatically
/private/etc/apache2/httpd.conf. Open up
Mac OS X 10.5 honors
/etc/hosts, so appending something to the
standard localhost line gives you a quick-and-easy local domain name. I
127.0.0.1 localhost php.localhost
The initial takes a few minutes. I highly recommend using the suggested flags to ignore non-English language files and the documentation tarballs.
Finally, I had to disable the inclusion of
httpd.conf, which was overriding
Unfortunately, this results in a broken API browser for reasons unknown to me. I'll leave it here in case others figure out where I went wrong.
This one is pretty straightforward, but requires another
as the URLs are all relative to
/. Personally I like
docs.jquery.com better than the API browser, but those docs run off
a MediaWiki install. First, download the docs. (These are also available
as an Adobe AIR application, linked from api.jquery.com.)
First, add a new alias to
127.0.0.1 localhost php.localhost jquery.localhost
Now download the API browser using Subversion. For some reason, jquery-1.3.1.js is missing from trunk, so we'll download that as well.
cd ~/Sites/ svn co http://jqueryjs.googlecode.com/svn/trunk/tools/jquery-api-browser/ jquery-docs curl -o jquery-docs/lib/jquery/jquery-1.3.1.js http://ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js
A very simple Apache configuration file is needed. I created
other/jquery.localhost.conf, just like I did for the PHP docs:
<VirtualHost *> ServerName jquery.localhost DocumentRoot /Users/adam/Sites/jquery-docs DirectoryIndex index.php </VirtualHost>
Restart Apache (
sudo apachectl restart) and browse to