Skip to content

Instantly share code, notes, and snippets.

@VonHeikemen
VonHeikemen / example-transducers-v3.js
Last active December 28, 2020 18:28
Transducers (in javascript) in action.
// Getting some stats from https://dev.to/dashboard
// Inspired by this: https://dev.to/tylerlwsmith/get-your-dev-2020-year-in-review-scraping-data-using-the-console-3gen
function compose(...fns) {
const apply = (arg, fn) => fn(arg);
return (initial) => fns.reduceRight(apply, initial);
}
function to_transducer(reducer) {
if(typeof reducer['@@transducer/step'] == 'function') {
@VonHeikemen
VonHeikemen / example-transducers-v2.js
Created December 26, 2020 19:08
Contrived example of transducer in action
// Common Utilities
function compose(...fns) {
const apply = (arg, fn) => fn(arg);
return (initial) => fns.reduceRight(apply, initial);
}
function curry(arity, fn, ...rest) {
if(arity <= rest.length) {
return fn(...rest);
@VonHeikemen
VonHeikemen / example-transducers-v1.js
Created December 26, 2020 19:07
Contrived example of transducers in action
// Common Utilities
function compose(...fns) {
const apply = (arg, fn) => fn(arg);
return (initial) => fns.reduceRight(apply, initial);
}
function curry(arity, fn, ...rest) {
if(arity <= rest.length) {
return fn(...rest);
@VonHeikemen
VonHeikemen / Taskfile.js
Created May 19, 2020 15:37
minimal, no dependencies task runner for deno.
// Command line usage examples:
// 1: deno run --allow-run ./Taskfile.js start
// 2: deno run --allow-run ./Taskfile.js echo "what?"
// 3: deno run --allow-run ./Taskfile.js do-stuff one two three
run(Deno.args, {
start() {
exec.cmd('deno run ./src/index.js');
},
@VonHeikemen
VonHeikemen / .env
Created March 29, 2020 21:21
functional programming stuff... in js.
ENV=development
HOST=http://localhost:5000
/*
* compile: gcc -std=c99 -Wall `pkg-config --cflags --libs libnotify` -lnotify cmus-notify.c -o cmus-notify
*
* test case: cmus-notify status playing file path title hola artist qace album ok
*
* installation:
* - Set the status_display_program variable in cmus
* :set status_display_program=/path-to/cmus-notify
*
* - Save the changes using
# PLEASE READ THE MAN PAGE BEFORE EDITING THIS FILE!
# https://htmlpreview.github.io/?https://github.com/conformal/spectrwm/blob/master/spectrwm.html
# NOTE: all rgb color values in this file are in hex! see XQueryColor for examples
# workspace_limit = 22
# focus_mode = default
# focus_close = previous
# focus_close_wrap = 1
# focus_default = last
# spawn_position = next
Xft.dpi: 96
Xft.antialias: true
Xft.hinting: true
Xft.rgba: rgb
Xft.autohint: false
Xft.hintstyle: hintslight
Xft.lcdfilter: lcddefault
XTerm*background: #DCE0DD
XTerm*foreground: #2F343F
HISTFILE="$HOME/.zsh_history"
HISTSIZE=50000
SAVEHIST=10000
## History command configuration
setopt extended_history # record timestamp of command in HISTFILE
setopt hist_expire_dups_first # delete duplicates first when HISTFILE size exceeds HISTSIZE
setopt hist_ignore_dups # ignore duplicated commands history list
setopt hist_ignore_space # ignore commands that start with space
setopt hist_verify # show command with history expansion to user before running it
@VonHeikemen
VonHeikemen / cmus_notify
Last active August 6, 2024 05:40
Display song cmus is playing using notify-send.
#! /usr/bin/env bash
# MIT License
#
# Copyright (c) 2019 Heiker Curiel
#
# 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