This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import Foundation | |
actor HTTPURLRequester { | |
enum Error: Swift.Error { | |
case unexpectedScheme(String?) | |
case unexpectedResponseType(URLResponse) | |
} | |
private(set) var tasks: [URLRequest: Task<(Data, HTTPURLResponse), Swift.Error>] = [:] | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!-- | |
(c) {CopyrightYears} {Title} | |
{BlogURL} | |
min theme by jstn | |
https://gist.github.com/jstn/5a67fd6c035bb86d1c504c98fa9cac07 | |
--> | |
<html> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function git_prompt() { | |
local dirty="" | |
if [[ -n $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then | |
dirty="*" | |
fi | |
if ! git diff --quiet 2> /dev/null; then | |
dirty="*" | |
fi |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Show hidden characters
{ | |
"caret_extra_bottom": 2, | |
"caret_extra_top": 2, | |
"caret_extra_width": 1, | |
"caret_style": "phase", | |
"color_scheme": "Packages/Base16 Color Schemes/Themes/base16-oceanicnext.tmTheme", | |
"create_window_at_startup": false, | |
"ensure_newline_at_eof_on_save": true, | |
"fold_buttons": false, | |
"folder_exclude_patterns": |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[Unit] | |
Description=netdata | |
After=network.service | |
Requires=network.service | |
[Service] | |
Type=oneshot | |
RemainAfterExit=true | |
ExecStart=/usr/sbin/netdata | |
ExecStop=/usr/bin/killall netdata |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
No-Starve and Read/Write mutexes, based on GCD in Swift 3.0 | |
Inspired by the Little Book of Semaphores: http://greenteapress.com/wp/semaphores/ | |
*/ | |
import Foundation | |
final class NoStarveMutex { | |
private final let _semaphoreA = DispatchSemaphore(value: 1) | |
private final let _semaphoreB = DispatchSemaphore(value: 0) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import UIKit | |
extension UIViewController { | |
func animateKeyboardWillChangeFrame(n: NSNotification?, animations: (keyboardFrameEnd: CGRect) -> Void) { | |
if let info = n?.userInfo as? Dictionary<String,AnyObject> { | |
let frameBeginValue = info[UIKeyboardFrameBeginUserInfoKey] as NSValue | |
let frameEndValue = info[UIKeyboardFrameEndUserInfoKey] as NSValue | |
let durationNumber = info[UIKeyboardAnimationDurationUserInfoKey] as NSNumber | |
let curveNumber = info[UIKeyboardAnimationCurveUserInfoKey] as NSNumber |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
var t = Timer() | |
t.start() | |
// do something | |
t.stop() | |
print("took \(t.seconds)") | |
*/ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// requires a bridging header with this: | |
// #import <CommonCrypto/CommonCrypto.h> | |
func MD5(_ string: String) -> String? { | |
let length = Int(CC_MD5_DIGEST_LENGTH) | |
var digest = [UInt8](repeating: 0, count: length) | |
if let d = string.data(using: String.Encoding.utf8) { | |
d.withUnsafeBytes { (body: UnsafePointer<UInt8>) in | |
CC_MD5(body, CC_LONG(d.count), &digest) | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
### JSTN | |
jstn.vt220.19200:\ | |
:cb:ce:ck:lc:fd#1000:hw:ht:np:sp#19200:tt=vt220:im=\r\n . .o8 oooo\r\n .o8 "888 `888\r\n.o888oo oooo oooo ooo. .oo. .oo. 888oooo. 888 oooo d8b\r\n 888 `888 `888 `888P"Y88bP"Y88b d88' `88b 888 `888""8P\r\n 888 888 888 888 888 888 888 888 888 888\r\n 888 . 888 888 888 888 888 888 888 888 888 .o.\r\n "888" `V88V"V8P' o888o o888o o888o `Y8bod8P' o888o d888b Y8P\r\n\r\n\r\n%s %r %m (%t)\r\n%h\r\n\r\n: | |
### |
NewerOlder