Skip to content

Instantly share code, notes, and snippets.

View ashang's full-sized avatar

에런 ashang

  • Between Chair and Keyboard
View GitHub Profile
@ashang
ashang / code_style.md
Last active June 20, 2025 02:31 — forked from jesseschalken/code_style.md
Code style

My preferred code style is 2-space K&R. This is intended to provide a justification for this style.

Why K&R?

K&R style has the following properties:

  1. Provides symmetric size (in terms of screen space consumed) between the opening and closing syntax of a clode block.
  2. Forces no empty or meaningless lines, thereby avoiding artificial distance between related things that should be together.
  3. Consumes the minimum vertical space while keeping the opening and closing syntax of a block on separate lines from the content.
@ashang
ashang / org_ally1_bus_fix.md
Created April 23, 2023 01:10 — forked from jeffcogswell/org_ally1_bus_fix.md
Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus ...

Seeing this error in the bash shell when launching some apps, such as scite:

** (scite:5298): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files

Update as per comments below.

It appears adding this library fixes the problem: at-spi2-core

@ashang
ashang / extend.md
Created February 16, 2023 07:10 — forked from nex3/extend.md

How @extend Works

@akhleung is working on hcatlin/libsass and was wondering how @extend is implemented in the Ruby implementation of Sass. Rather than just tell him, I thought I'd write up a public document about it so anyone who's porting Sass or is just curious about how it works can see.

Note that this explanation is simplified in numerous ways. It's intended to explain the most complex parts of a basic correct @extend transformation, but it leaves out numerous details that will be important if full Sass compatibility

@ashang
ashang / config
Last active December 6, 2022 13:32
To have touchpad tap to click in sway
+
+input "type:touchpad" {
+ dwt enabled
+ tap enabled
+ middle_emulation enabled
+ natural_scroll enabled
+}
@ashang
ashang / install-instructions.md
Created November 22, 2022 05:43 — forked from crispyricepc/install-instructions.md
wlprop - An xprop clone for wlroots based compositors

Dependencies

Make sure you have installed the following commands:

  • swaymsg
  • jq
  • slurp
  • awk

Installation

@ashang
ashang / rust-maintainer-perfectionism.md
Created November 14, 2022 16:24 — forked from ctrlcctrlv/rust-maintainer-perfectionism.md
Rust maintainer perfectionism

Rust maintainer perfectionism, or, the tragedy of Alacritty

I did not submit this to Hacker News and did not intend that this post would have high circulation but have no real problem with it being there or with it having such. I have more recent comments below. This post is from January 2020 and predates the Modular Font Editor K (MFEK) project.

I have not worked on Rust projects in quite a while, and don't know if I ever will again. I feel many crate maintainers are way too perfectionist, for example, despite all the developer hours that went into this PR, it took the effort within years to be (halfway) merged.

There's always a reason not to merge, isn't there? It would be better done with a new nightly language feature, or the function signature should have a where clause, or the documentation is not perfect. There's always a new nit to pick in the world of Ru

Sass/Less Comparison

In this document I am using Sass's SCSS syntax. You can choose to use the indented syntax in sass, if you prefer it, it has no functional differences from the SCSS syntax.

For Less, I'm using the JavaScript version because this is what they suggest on the website. The ruby version may be different.

Variables

@ashang
ashang / iptables-cheatsheet.md
Created August 10, 2022 02:43 — forked from mcastelino/iptables-cheatsheet.md
iptables-cheatsheet

The netfilter hooks in the kernel and where they hook in the packet flow

The figure below calls out

  • The netfilter hooks
  • The order of table traversal
@ashang
ashang / convertnotes.rb
Created August 30, 2020 15:26 — forked from etc/convertnotes.rb
A small script to convert WP-Footnotes style footnotes to PHP Markdown Extra style footnotes.
#!/usr/bin/env ruby
# A small script to convert WP-Footnotes style footnotes to PHP Markdown Extra
# style footnotes.
#
# Possibly useful for those who are migrating from Wordpress to Jekyll, were
# using WP-Footnotes, and wish to render their new Markdown pages with Kramdown
# (which supports PHP Markdown Extra style footnotes).
#
# For example, you might first run https://github.com/thomasf/exitwp and then run
#!/usr/bin/env python
# Linux usage: ./extract_tampermonkey_script.py "/home/<USER>/.config/<BROWSER>/Default/Local Extension Settings/<EXTENSION_ID>"
# i.e.: ./extract_tampermonkey_script.py "/home/foo/.config/google-chrome-beta/Default/Local Extension Settings/gcalenpjmijncebpfijmoaglllgpjagf"
# Mac usage: ./extract_tampermonkey_script.py "/Users/<USER>/Library/Application Support/Google/Chrome/Default/Local Extension Settings/<EXTENSION_ID>/"
# i.e.: ./extract_tampermonkey_script.py "/Users/foo/Library/Application Support/Google/Chrome/Default/Local Extension Settings/dhdgffkkebhmkfjojejmpbldmpobfkfo/"
import leveldb
import sys
import re