Skip to content

Instantly share code, notes, and snippets.

View usirin's full-sized avatar

Umut Sirin usirin

View GitHub Profile
@usirin
usirin / karabiner-colemak-dhm.json
Created April 5, 2025 22:54
karabiner colemak dhm
{
"description": "Colemak Mod-DHm (matrix / ortho keyboards)",
"manipulators": [
{
"from": {
"key_code": "grave_accent_and_tilde",
"modifiers": { "optional": ["caps_lock", "left_command", "left_control", "left_alt", "right_command", "right_control", "right_alt"] }
},
"to": [{ "key_code": "grave_accent_and_tilde" }],
"type": "basic"
@usirin
usirin / settings.jsonc
Created February 1, 2025 21:23
vscode/cursor settings
{
// Editor settings
"editor.accessibilitySupport": "off",
"editor.bracketPairColorization.enabled": false,
"editor.codeActionsOnSave": {
"source.organizeImports.biome": "explicit"
},
"editor.codeLensFontFamily": "Iosevka",
"editor.cursorBlinking": "solid",
"editor.foldingImportsByDefault": false,
@usirin
usirin / rfc-writer.md
Created November 3, 2024 20:50
RFC Writer

You are an expert software engineer tasked with writing detailed Request for Comments (RFC) documents. Your goal is to create clear, thorough, and professionally structured technical proposals that facilitate productive discussion and decision-making.

Core Principles

When writing RFCs, follow these key principles:

  1. Be concise yet comprehensive
  2. Focus on technical architecture and implementation details
  3. Consider alternatives and trade-offs
  4. Address potential risks and mitigations
  5. Think through the migration/rollout strategy
# vim:fileencoding=utf-8:foldmethod=marker
#: Fonts {{{
#: kitty has very powerful font management. You can configure
#: individual font faces and even specify special fonts for particular
#: characters.
# font_family IA Writer Mono S
font_family InconsolataGo Nerd Font
# Address vim mode switching delay (http://superuser.com/a/252717/65504)
set -s escape-time 0
set -g history-limit 50000
set -g display-time 4000
set -g status-interval 5
set -g status-keys emacs
set -g focus-events on
setw -g aggressive-resize on
setw -g mouse
@usirin
usirin / hosts
Created July 8, 2023 19:51
/etc/hosts for kampus local dev
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
@usirin
usirin / create-kernel.ts
Created January 14, 2023 23:50
typescript port of github.com/usirin/simple-kernel
export interface Bootstrapper<T> {
bootstrap(context: T): Promise<any> | any;
}
export interface KernelOptions<T> {
bootstrappers: Array<Bootstrapper<T>>;
}
export function createKernel<T>(
options: KernelOptions<T>,
@usirin
usirin / .yabairc
Created November 22, 2022 09:54
my yabai config
#!/usr/bin/env sh
# vi: ft=sh
yabai -m signal --add event=dock_did_restart action="sudo yabai --load-sa"
sudo yabai --load-sa
# float system preferences
yabai -m rule --add app='^System Information$' manage=off
yabai -m rule --add app='^System Preferences$' manage=off
yabai -m rule --add title='Preferences$' manage=off
@usirin
usirin / obsidian-daily-template.md
Created June 9, 2022 20:36
obsidian-daily-template.md

focus

Tasks

Overdue

not done
due before {{date:YYYY-MM-DD}}
@usirin
usirin / task-dashboard.md
Created May 11, 2022 19:37
My obsidian dashboard for personal task management

Tasks

Due Today
not done
due today
Due Tomorrow
not done
due tomorrow