Skip to content

Instantly share code, notes, and snippets.

import android.app.Activity
import android.content.Intent
import android.os.Bundle
import kotlinx.coroutines.experimental.suspendCancellableCoroutine
typealias RequestCode = Int
typealias ResultCode = Int
data class ActivityResult(
val requestCode: RequestCode,
import android.media.MediaRecorder;
import android.support.annotation.NonNull;
import com.f2prateek.rx.android.schedulers.AndroidSchedulers;
import java.io.File;
import java.io.IOException;
import java.util.concurrent.TimeUnit;
import rx.Observable;
import rx.subscriptions.Subscriptions;
public class RxMediaRecorder {
@meoyawn
meoyawn / multitouch.kt
Last active April 5, 2019 09:08
Android multitouch helper
import android.view.MotionEvent
typealias PxF = Float
typealias X = PxF
typealias Y = PxF
typealias PointerId = Int
inline fun MotionEvent.multiTouch(
@meoyawn
meoyawn / client.kt
Last active April 14, 2019 10:46
CLI instant messenger in 60 lines with ZMQ
package chat
import org.zeromq.ZMQ
import kotlin.concurrent.thread
fun main(args: Array<String>): Unit =
ZMQ.context(1).use { ctx ->
thread {
ctx.socket(ZMQ.SUB).use { stream ->
stream.connect(MESSAGE_STREAM)
enum ColumnType: String, Codable {
case line
case x
case area
case bar
}
typealias LineId = String
struct Columns {
@meoyawn
meoyawn / cli.kt
Last active October 28, 2019 07:33
Calling CLI tools using kotlin coroutines with cancellation support
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.cancel
import kotlinx.coroutines.launch
import kotlinx.coroutines.suspendCancellableCoroutine
import java.io.StringWriter
sealed class Cli {
data class Ok(val stdout: String) : Cli()
data class Err(val stderr: String) : Cli()
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Job
import kotlinx.coroutines.launch
import kotlinx.coroutines.time.delay
import mu.KotlinLogging
import java.time.Duration
private val log = KotlinLogging.logger { }
data class PeriodicJob(
! 2/5/2020 https://twitter.com
twitter.com##div[aria-label$="Your Home Timeline"]
twitter.com##div[aria-label$="Trending now"]
twitter.com##aside[aria-label$="Who to follow"]
twitter.com##a[aria-label^="Home"]
twitter.com##a[aria-label$="explore"]
twitter.com##a[aria-label^="Notifications"]
twitter.com##a[aria-label^="Bookmarks"]
twitter.com##a[aria-label^="Lists"]
twitter.com##a[aria-label^="Profile"]
@meoyawn
meoyawn / yarn.sh
Created July 24, 2020 17:43
update package.json using yarn
jq '.dependencies | keys | .[]' package.json | xargs yarn add
jq '.devDependencies | keys | .[]' package.json | xargs yarn add --dev
@meoyawn
meoyawn / pyproject.toml
Created July 30, 2020 13:02
gpt-2 dependencies
[tool.poetry]
version = "1.0.0"
name = "gpt-2"
description = ""
authors = []
[tool.poetry.dependencies]
fire = "^0.1.3"
regex = "2017.4.5"
requests = "2.21.0"