Skip to content

Instantly share code, notes, and snippets.

Avatar

Helge Heß helje5

View GitHub Profile
@helje5
helje5 / Tows.swift
Last active Aug 30, 2021
An 82-liner SwiftUI script similar to CodeCows 🐮
View Tows.swift
import SwiftUI
import cows // @AlwaysRightInstitute
struct ContentView: View {
@State var searchString = ""
@State var matches = allCows
@State var selectedCow : String?
let font = Font(NSFont
@helje5
helje5 / servedocc.swift
Last active Oct 11, 2021
Small Swift Script to serve `.doccarchive`s to the browser
View servedocc.swift
#!/usr/bin/swift sh
import MacroExpress // @Macro-swift
// MARK: - Parse Commandline Arguments & Usage
func usage() {
let tool = path.basename(process.argv.first ?? "servedocc")
print(
"""
@helje5
helje5 / main.swift
Last active Oct 1, 2021
Using async/await concurrency on iOS 14 and before
View main.swift
// Created by Helge Heß 2021-06-17
import Foundation
// They use obfuscated names to hide it from us!
import JavaScriptCore
/// Setup our async/await runtime.
let runtime = JSContext()!
@helje5
helje5 / SVGWebView.swift
Created May 10, 2021
A SwiftUI View to display SVGs using WKWebView
View SVGWebView.swift
// Created by Helge Heß on 06.04.21.
// Also available as a package: https://github.com/ZeeZide/SVGWebView
import SwiftUI
import WebKit
/**
* Display an SVG using a `WKWebView`.
*
* Used by [SVG Shaper for SwiftUI](https://zeezide.de/en/products/svgshaper/)
@helje5
helje5 / SparkleCommands.swift
Last active Jul 26, 2021
How to hookup Sparkle in SwiftUI
View SparkleCommands.swift
//
// SparkleCommands.swift
// Past for iChat
//
// Created by Helge Heß on 08.04.21.
//
import SwiftUI
#if SPARKLE && canImport(Sparkle)
@helje5
helje5 / CliptIt.swift
Created Jul 17, 2020
Demo for SwiftBlocksUI: Clip Slack messages using a Message Action
View CliptIt.swift
#!/usr/bin/swift sh
import SwiftBlocksUI // @SwiftBlocksUI ~> 0.8.0
dotenv.config()
struct ClipItForm: Blocks {
@State(\.messageText) var messageText
@State var importance = "medium"
@helje5
helje5 / SlashCows.swift
Created Jul 17, 2020
ASCII Cows for Slack, as a Slash Command - a SwiftBlocksUI demo
View SlashCows.swift
#!/usr/bin/swift sh
import cows // @AlwaysRightInstitute ~> 1.0.0
import SwiftBlocksUI // @SwiftBlocksUI ~> 0.8.0
dotenv.config()
struct CowMessage: Blocks {
@Environment(\.messageText) private var query
@helje5
helje5 / AppDelegate.swift
Last active Mar 22, 2019
Dock gets stuck on drag
View AppDelegate.swift
import Cocoa
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {
@IBOutlet weak var window : NSWindow!
@IBOutlet weak var tableView : NSTableView!
func applicationDidFinishLaunching(_ aNotification: Notification) {
@helje5
helje5 / TestView.swift
Created Nov 27, 2018
Nested NSStackViews lead to ambiguous layout
View TestView.swift
import Cocoa
final class TestView : NSView {
static func makeAndAttachToView(_ rootView: NSView) {
let view = TestView()
view.translatesAutoresizingMaskIntoConstraints = false
rootView.addSubview(view)
NSLayoutConstraint.activate([
@helje5
helje5 / InPlaceEnumEditing.swift
Created Apr 7, 2018
In-place editing of associated values in enums
View InPlaceEnumEditing.swift
struct MyArray<Element> : CustomStringConvertible {
class Storage<T> {
var values = ContiguousArray<T>()
}
var storage = Storage<Element>()
init<T: Sequence>(contentsOf s: T) where T.Element == Element {
for item in s { storage.values.append(item) }