Tags

Posts tagged with: snippets

ajax analysis api apple atom automator backpack browsers camping cheatsheets code console editors ergonomics gems google helipad hpricot internationalisation javascript lies mac optimisation patterns performance personal php plugins productivity programming prototype rails rapidrails rsi rss ruby server snippets standards sysadmin terminal testing textile textmate theory tips tools vim workshops writing xslt

Hpricot Google search snippet

Posted on Fri 5 Jan, 2007

With hpricot you can do anything!

puts ((Hpricot(open(URI.escape(“http://www.google.com/search?q=#{term}”))))/”a.l”).collect { |link| ”#{link.innerHTML}: #{link.attributes[‘href’]}” }.join(”\n”)

Continue reading → | Tagshpricot, ruby, programming, snippets

JavaScript function to help with Accesskeys

Posted on Wed 21 Dec, 2005

There’s a few little touches I like on sites I frequent: sensible tabindexes for forms, accesskeys and so on. Once I learn the accesskeys, I can fly around the main sections of a site. I apply these things to the sites I build, and the other day I realised adding accesskeys and supporting markup was no fun at all.

I wrote this JavaScript function to search for all your accesskeys and add some friendly markup. It even detects if the user is running Windows or Mac OS, to tell them to use ‘alt’ or ‘ctrl’:

function underline_accesskeys()
{
var links = document.getElementsByTagNam…

Continue reading → | Tagsjavascript, code, snippets, programming

Single-table inheritance and validates_as_unique

Posted on Tue 29 Nov, 2005

I had a User class, which then had a Moderator class. I was using the “type” field in my database to denote whether a user was a User or a Moderator. However, my validations weren’t working as I expected:

validates_as_unique :name, :email

Users could have the same email address as Moderators. Obviously sometimes this kind of scoping makes sense for STI classes, but it doesn’t here. I ended up writing this:

module ActiveRecord
module Validations
module ClassMethods
# Intended for use with STI tables, helps ignore the type field
def validates_overall_u…

Continue reading → | Tagssnippets, code, programming, rails

Javascript Mini Bibliography

Posted on Fri 18 Nov, 2005

I often annoys me when people don’t make it clear what they’re referencing in an article. Sometimes people don’t give any references at all, and when they do they use links on words that shouldn’t be links (the click here syndrome).

So I wrote this Javascript to help out. It adds a section at the bottom of each of your Wordpress posts containing all the links you referred to in a post:

/* From Prototype /
document.getElementsByClassName = function(className) {
var children = document.getElementsByTagName(‘
‘) || document.all;
var elements = new Array();

for (var i =...
Continue reading → | Tagsjavascript, snippets, code, programming

Processing Textile text with XSLT

Posted on Thu 7 Oct, 2004

Textile provides a simple way of writing human-friendly text that can easily be translated to XHTML. HTML tags are simplified into a set of phrase and block modifiers; even tables and attributes can be created.

I was looking at the PHP code for this and wondering if I could create an XSL file that could translate similar text into XHTML. I created some XML to contain my text:

And then used the following recursive algorithm to process it in XSLT:

...
Continue reading → | Tagsxslt, programming, snippets, tips, textile

Processessing multiple XML files with XSLT in PHP

Posted on Fri 16 Jul, 2004

I often use a message class for a lot of things with PHP. This allows me to build messages to display to the user for errors, successes and general feedback.

Classes for each of these three things are created in CSS to display the information, and then I use a simple PHP class for appending messages to a arrays.

I wanted to include this in some XML data I was processing with XSLT, but I found it difficult to combine multiple XML files with PHP’s XSLT processor. However, in PHP4, you can do it like this:

// this is a code fragment
//
$XML = implode('', file($XML_Fi...
Continue reading → | Tagsphp, xslt, programming, snippets, tips