Skip to content

Instantly share code, notes, and snippets.

View n1k0's full-sized avatar
✏️
writing a github status

Nicolas Perriault n1k0

✏️
writing a github status
View GitHub Profile
@n1k0
n1k0 / meta-extract.js
Created January 21, 2012 07:02
CasperJS script to extract meta informations
var casper = require("casper").create()
, url = casper.cli.get(0)
, metas = [];
if (!url) {
casper.echo('Usage: casperjs [url]').exit();
}
casper.on('remote.message', function(msg) {
console.log(msg);
@n1k0
n1k0 / batch.js
Last active September 1, 2016 13:21
Quick kinto-http batch sample data creation script
var opts = {headers: {Authorization: "Basic " + require("btoa")("test:test")}};
var c = new (require("kinto-http"))("http://0.0.0.0:8888/v1", opts);
var schema = {"type": "object", "properties": {"n": {"type": "number"}}};
var displayFields = ["n"];
c.createBucket("buck")
.then(() => c.bucket("buck").createCollection("coll", {
data: {schema, displayFields}
}))
.then(() => {
@n1k0
n1k0 / click-while-selector.md
Last active August 29, 2016 17:26
A possible clickWhileSelector() implementation

clickWhileSelector()

var casper = require('casper').create();

casper.clickWhileSelector = function(selector) {
    return this.then(function() {
        if (this.exists(selector)) {
            this.echo('found link: ' + this.getElementInfo(selector).tag);
            this.click(selector);
@n1k0
n1k0 / casperjs-link-checker.md
Last active August 5, 2016 04:58
A link checker using CasperJS
@n1k0
n1k0 / quickstart.coffee
Created November 13, 2011 12:12
CasperJS documentation examples
phantom.injectJs "casper.js"
getLinks = ->
links = document.querySelectorAll "h3.r a"
Array::map.call links, (e) -> e.getAttribute "href"
links = []
casper = new phantom.Casper()
casper.start "http://google.fr/", (self) ->
@n1k0
n1k0 / location.js
Created July 4, 2012 08:46
PhantomJS test script for window.location
var page = require('webpage').create();
var base = phantom.args[0];
var path = phantom.args[1];
var expected = phantom.args[2];
page.onNavigationRequested = function(url, navigationType, navigationLocked, isMainFrame) {
console.log('Navigation requested: ' + navigationType + '; ' + url);
if (!page.testStarted) {
return;
}
@n1k0
n1k0 / jquery.truncatable.js
Created March 9, 2010 08:35
jQuery lightweight text truncation plugin
/**
* truncatable - jQuery lightweight text truncation plugin
*
* Adapted from Philip Beel's code http://theodin.co.uk/blog/development/truncatable-jquery-plugin.html
*
* Copyright (c) 2010 Nicolas Perriault (http://prendreuncafe.com/blog/)
* Copyright (c) 2009 Philip Beel (http://www.theodin.co.uk/)
*
* Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
* and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
@n1k0
n1k0 / index.html
Created January 18, 2016 08:01
Firefox service worker bug with ZERO WIDTH JOINER char (0x200D)
<!DOCTYPE html>
<html><meta charset="utf-8"></head>
<body>
<script>
window.navigator.serviceWorker.register("worker.js", {scope: "/"})
.then(reg => console.log("registered", reg))
.catch(err => console.error("service worker error", err))
</script>
</body>
</html>
@n1k0
n1k0 / Preferences.sublime-settings
Created January 21, 2014 18:44
My Sublime Text 3 preferences
{
"bold_folder_labels": true,
"caret_style": "smooth",
"color_scheme": "Packages/User/Flatland Monokai (SL).tmTheme",
"default_encoding": "UTF-8",
"detect_slow_plugins": false,
"draw_minimap_border": false,
"draw_white_space": "all",
"ensure_newline_at_eof_on_save": true,
"fade_fold_buttons": true,
(defn default-hash-map [default keys]
(into {} (map #(hash-map % default) (seq keys))))
;; user> (default-hash-map 0 [:a :b])
;; {:a 0, :b 0}