Skip to content

Instantly share code, notes, and snippets.

View garyharan's full-sized avatar

Gary Haran garyharan

View GitHub Profile
rr() {
rake
if [ $? -gt 0 ]; then
say "Some tests failed."
echo "Some tests failed."
else
say "All tests green."
echo "All tests green."
fi
}
140 char limit sucks
Node.js matters because:
- JS programmers now have access to their language on the server (ignoring Netscape server for a minute).
- concurrent programming is the hot topic "du jour" and languages that embrace events like JS make for a good mix with this topic "du jour"
- Node.js is faster than Ruby yet still very expressive
- JS has a good chance to become the lingua franca for programmers much like PHP is for the web today.
// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Operators/Comparison_Operators
2 == "2"
true
2 === "2"
false
typeof 2
"number"
plugin.onMessageReceived = function(event){
var vimeo_expression = /^(?:http\S+vimeo\.com\/)(\d+)/;
var vimeo_match = event.content.match(vimeo_expression);
if (vimeo_match){
Talker.insertMessage(event, '<object width="400" height="220">'
+ '<param name="allowfullscreen" value="true" />'
+ '<param name="allowscriptaccess" value="always" />'
+ '<param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=' + vimeo_match[1]
+ '&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" />'
// https://cheeaun.talkerapp.com/plugins/82
// jQuery.nano template engine
// http://github.com/trix/nano
(function(c){c.nano=function(d,e){return d.replace(/\{([\w\.]*)}/g,function(a,f){a=f.split(".");var b=e[a.shift()];c.each(a,function(){b=b[this]});return b})}})(jQuery);
var vendorStyles = function(str){
var s = str.split('-');
if (s.length == 4 && s[0] == 'border'){
var value = s[3].split(':')[1];
plugin.onMessageInsertion = function(event){
// regex is probably wrong
var github_status_expression = /https*:\/\/github.com\/(.*)\/(.*)/i;
var last_anchor = Talker.getLastInsertion().find('a');
var last_href = last_anchor.attr('href') || '';
if (github_status_expression.test(last_href)){
var author = last_href.match(github_status_expression)[1];
$('p[time]').live('mouseover', function() {
var insertion = $(this);
var insertionTime = insertion.attr('time');
var timeSpan = insertion.find('span.time');
if (timeSpan.length) {
timeSpan.show();
} else {
var date = new Date();
date.setTime(insertionTime * 1000);
$(document).ready(function () {
$("a.remove").click(function() {
$.post(this.href, {_method: "delete"});
$(this).parent().remove();
return false;
});
});