Skip to content

Instantly share code, notes, and snippets.

Avatar

Emanuele Ruffaldi eruffaldi

View GitHub Profile
@eruffaldi
eruffaldi / main.cpp
Created Oct 12, 2020
Named Operators in C++ and Unicode
View main.cpp
// Testedt with GCC and CLang
// Not working with ICC due to the UTF-8
// MSVC requires /utf-8 option
#include <iostream>
// from https://riptutorial.com/cplusplus/example/23817/named-operators
// modified to use < > instead of *
// modified for adding unary version
namespace named_operator {
template<class D>struct make_operator{constexpr make_operator(){}};
View midi2notes.py
from mido import MidiFile
import mido
import sys
def ntof(n):
return 440*(2**((n-69)/12))
def main():
mid = MidiFile(sys.argv[1])
View posit_one.h
// cppPosit 7b7b5ecde436a65923d679d91ddb1b29b711af27
/**
* Emanuele Ruffaldi (C) 2017-2018
*
* My personal bit hip pop using BMI extensions and a bit of constexpr!
*/
#if defined(__SDSVHLS__) && !defined(FPGAHLS)
#define FPGAHLS
@eruffaldi
eruffaldi / cf32.jl
Last active Dec 30, 2018
Julia cf32
View cf32.jl
function s64toc64(a::Int64)::Int64
return a < 0 ? -(a & 9223372036854775807) : a;
end
function c64tos64(a::Int64)::Int64
return a < 0 ? ((-a) | -9223372036854775808) : a;
end
@eruffaldi
eruffaldi / gettoken.sh
Created Sep 25, 2018
Google OAuth 2.0 full example bash script.
View gettoken.sh
#!/bin/bash
#1) on https://console.developers.google.com/ register project and associate API from library
# OUTPUT: client_id,client_secret
client_id="..."
client_secret="...."
#2) get authorization code at the following link using web browser
# OUTPUT: code
scope="https://www.googleapis.com/auth/drive"
View pdfextract.py
import os,sys
people = [x.split(" ") for x in """1 10 name""".split("\n")]
print (people)
for f,n,name in people:
f = int(f)
n = int(n)
print (f,f+n-1,name)
os.system("gs -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -dSAFER -dFirstPage=%d -dLastPage=%d -sOutputFile=%s.pdf \"%s\"" % (f,f+n-1,name,sys.argv[1]))
@eruffaldi
eruffaldi / timeline-kml-work.py
Created Jul 13, 2018
Google Timeline KML to working enter-exit
View timeline-kml-work.py
# parses KML from Google Timeline to obtain places
# Emanuele Ruffaldi 2018
import os,sys
import csv
import datetime
import xml.etree.ElementTree as ET
from collections import defaultdict
import time
from dateutil import tz
from_zone = tz.tzutc()
View gist:cd82d29292291a85daa9d8d41f094a65
find / -mtime -1 -not \( -path "/proc/*" -o -path "/sys/*" -o -path "/dev/*" \) -print
@eruffaldi
eruffaldi / word_comments_to_json.vbs
Created May 28, 2018
Microsoft Word VBA code for Comment to JSON
View word_comments_to_json.vbs
Sub ListComments()
Dim x As Document
Set doc = Word.ActiveDocument
For k = 1 To doc.Comments.Count
Dim co As Comment
Set co = doc.Comments(k)
co.Range.Select
t = Selection.Text
@eruffaldi
eruffaldi / foldersgit.sh
Created May 23, 2018
List git folders remote colored
View foldersgit.sh
#!/bin/bash
RESTORE='\033[0m'
RED='\033[00;31m'
GREEN='\033[00;32m'
YELLOW='\033[00;33m'
BLUE='\033[00;34m'
PURPLE='\033[00;35m'
CYAN='\033[00;36m'
LIGHTGRAY='\033[00;37m'
You can’t perform that action at this time.