Skip to content

Instantly share code, notes, and snippets.

@smottt
smottt / contenteditable.html
Created April 11, 2012 15:31
contenteditable example
<html>
<head>
<title>contenteditable example</title>
</head>
<body>
<!-- html code ... -->
<article contenteditable="true" date-edit-url="update.php">
Some content here ...
</article>
@ngauthier
ngauthier / README.md
Created July 5, 2012 20:10
Rdio "native" in linux

I like Rdio and linux. Rdio works great in a browser except for one thing: keyboard shortcuts!!!

When coding, I like to be able to play/pause my music quickly, meaning I don't want to switch windows. I figured out a way to do this:

Google Chrome --app

First, I made a file in my ~/bin called rdio that runs:

google-chrome --app=http://rdio.com
@charlee
charlee / ffmpeg.sh
Last active January 19, 2022 15:05
ffmpeg tips
# losslessly concat mp4 files
ffmpeg -i input1.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate1.ts
ffmpeg -i input2.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate2.ts
ffmpeg -i "concat:intermediate1.ts|intermediate2.ts" -c copy -bsf:a aac_adtstoasc output.mp4
# concat files with the same format
# 1. create a file list
file '/path/to/file1'
file '/path/to/file2'
file '/path/to/file3'
@ohheh
ohheh / letterboxdbookmarklet.js
Last active March 25, 2025 23:08
A javascript bookmarklet for opening Letterboxd from an IMDB page.
javascript:{var s = window.location.href.toString();var p=/\/(?:title|name)\/([a-zA-Z0-9])+\//gi;if (p.test(s)){try{var n=s.match(p)[0].split("\/")[2];window.open('http://letterboxd.com/imdb/'+n);}catch(e){}}};void(0);
@jamiechapman
jamiechapman / ParseProxyObject.java
Last active March 14, 2019 07:37
A Parse.com Serializable ParseObject Proxy
// By Jamie Chapman, @chappers57
// License: open, do as you wish, just don't blame me if stuff breaks ;-)
public class ParseProxyObject implements Serializable {
private static final long serialVersionUID = 1L;
private HashMap<String, Object> values = new HashMap<String, Object>();
public HashMap<String, Object> getValues() {
return values;
@joeytwiddle
joeytwiddle / gist:6129676
Last active January 31, 2025 23:04
Deep population helper for mongoose
// Example usage:
// deepPopulate(blogPost, "comments comments._creator comments._creator.blogposts", {sort:{title:-1}}, callback);
// Note that the options get passed at *every* level!
// Also note that you must populate the shallower documents before the deeper ones.
function deepPopulate(doc, pathListString, options, callback) {
var listOfPathsToPopulate = pathListString.split(" ");
function doNext() {
if (listOfPathsToPopulate.length == 0) {
// Now all the things underneath the original doc should be populated. Thanks mongoose!
callback(null,doc);
@cayuu
cayuu / MuteRdioAds.js
Last active April 12, 2017 02:01
Mute Rdio Ads (copy + paste into browser console) [24 Oct 2013]
var r = R.player, oVol = r.volume(), tf = r._onTrackFinished, ar = r._onAudioReady, n = r._next;
r._onTrackFinished = function() {
return .001 !== r.volume() && (oVol = r.volume()), r.volume(.001), tf.apply(this, arguments);
};
r._onAudioReady = function() {
return r.playingAd() || r.volume(oVol), ar.apply(this, arguments);
};
@mikerudolph
mikerudolph / Rdio Proxy
Last active March 11, 2016 18:19
I wanted to see how easy it was to download Rdio songs as you listen to them, turns out its just as easy as I though.
var http = require('http'),
url = require('url'),
fs = require('fs');
var port = 9000;
var httpServer = http.createServer(function(request, response) {
var parsedUrl = url.parse(request.url);
var requestData;
var requestOpts = {
var http = require('http'),
url = require('url'),
fs = require('fs');
var port = 9000;
var httpServer = http.createServer(function(request, response) {
var parsedUrl = url.parse(request.url);
var requestData;
var requestOpts = {
@Takhion
Takhion / ArcUtils.java
Last active April 11, 2022 02:29
Collection of methods to achieve better circular arc drawing, as Canvas.drawArc() is unreliable. See the related article: https://medium.com/p/9155f49166b8
/**
* ArcUtils.java
*
* Copyright (c) 2014 BioWink GmbH.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is