Skip to content

Instantly share code, notes, and snippets.

View felixfbecker's full-sized avatar

Felix Becker felixfbecker

View GitHub Profile
@felixfbecker
felixfbecker / tasks.json
Last active March 9, 2021 01:28
VS Code Javac & JUnit tasks.json
/*
Example for quick Java compilation and unit tests in VS Code.
Works well with simple BlueJ projects.
Hit Ctrl+Shift+B to compile currently open file with javac.
Hit Ctrl+Shift+T to test currently open test class.
See red wiggles for compilation errors / failed assertions or click exclamation mark in the status bar.
Uses a few workarounds for individual commands per task and filename without extension.
This is written for Windows but it should be easy to adopt for Linux and Mac.
*/
{
@felixfbecker
felixfbecker / tasks.json
Last active April 29, 2021 12:09
VS Code tasks.json for Latex to PDF compilation w/ problem matcher
/*
An example tasks.json for VS Code that defines a task for compiling Latex to PDF including a problem matcher.
This is for Windows but it should be easy to adopt it for Linux/Mac, basically replace powershell with sh and -Command with -c
*/
{
"version": "0.1.0",
"isShellCommand": true,
"suppressTaskName": true,
"windows": {
"command": "powershell",
@felixfbecker
felixfbecker / threads_debug.txt
Last active January 4, 2016 19:04
Threads debug log
Debugger listening on port 14905
waiting for debug protocol on port 4711
>> accepted connection from client
-> initializeRequest
{ type: 'request',
seq: 1,
command: 'initialize',
arguments: { adapterID: 'php', linesStartAt1: true, pathFormat: 'path' } }
{
"version": 3,
"sources": [
"node_modules/browser-pack/_prelude.js",
"node_modules/angular-animate/angular-animate.js",
"node_modules/angular-animate/index.js",
...
"node_modules/angular/angular.js",
"node_modules/angular/index.js",
"node_modules/javascript-natural-sort/naturalSort.js",
@felixfbecker
felixfbecker / profile.ps1
Created September 16, 2016 10:57
My customized PowerShell prompt
# Fix UTF8 Output
# [Console]::OutputEncoding = [Text.Encoding]::UTF8
$OutputEncoding = [Text.Encoding]::UTF8
$env:COMPOSER_DISABLE_XDEBUG_WARN = 1
$env:NPM_CONFIG_UNICOE = 'true'
# A helper function to switch between multiple versions of PHP, NodeJS, ...
function Use-Version($program, $version, $arch) {
@felixfbecker
felixfbecker / observable-array.ts
Created November 30, 2017 04:55
Observable Array
import { Subject } from 'rxjs/Subject'
export interface Splice<T> {
/**
* The zero-based location in the array from which to start removing elements.
*/
start: number
/**
* The number of elements to remove.
*/
@felixfbecker
felixfbecker / protomap.ts
Last active April 19, 2018 07:05
Immutable __proto__ backed Map
// tslint:disable:forin
export class ProtoMap<V> {
private _values: any;
public [Symbol.toStringTag]: 'ProtoMap' = 'ProtoMap'
constructor(init?: Iterable<[string, V]> | { [key: string]: V }) {
this._values = { __proto__: null }
if (init) {
@felixfbecker
felixfbecker / worker_threads_test.ts
Created October 12, 2018 16:30
Goroutines in Node with Worker Threads
import { Worker } from 'worker_threads'
export function work<P extends any[], R>(script: (...args: P) => R | PromiseLike<R>, ...args: P): Promise<R> {
return new Promise((resolve, reject) => {
const workerSource = `
const { workerData, parentPort } = require('worker_threads');
Promise.resolve((${script})(...workerData))
.then(result => {
parentPort.postMessage({ type: 'success', result })
}, error => {
@felixfbecker
felixfbecker / comlink.ts
Created February 17, 2019 15:49
Comlink types
#!/usr/bin/env pwsh
$ErrorActionPreference = 'Stop'
$repositoryRoot = $PWD
# Builds the PCRE extension to sqlite3.
function Build-Libsqlite3Pcre {
[OutputType([string])]
param()