Skip to content

Instantly share code, notes, and snippets.

View private-build-plans.toml
[buildPlans.kg] # <kg> is your plan name
family = "Iosevka KG Terminal" # Font menu family name
design = [
"cv08", "cv11", "cv19", "cv43", "cv49", "cv55", "cv62", "cv92",
# `g`, `l`, `y`, `G`, `Q`, `*`, `$` and `%`
"no-ligation"
] # Customize styles
hintParams = ["-a", "sss"] # Optional custom parameters for ttfautohint
@kaushikgopal
kaushikgopal / karabiner.edn
Last active Mar 28, 2021
My source Karabiner file in Goku's edn format
View karabiner.edn
{
;; ! | means mandatory - modifier(s) alone when pressend change behavior
;; # | means optional - modifiers are optional (but atleast one necessary)
;; :!Ca is keycode :a and prefix a with !C
;; C | left_command
;; T | left_control
;; O | left_option
;; S | left_shift
@kaushikgopal
kaushikgopal / karabiner.json
Last active Jan 11, 2021
Karabiner.json generated using Goku. For source edn file see https://gist.github.com/kaushikgopal/ff7a92bbc887e59699c804b59074a126
View karabiner.json
{
"global" : {
"check_for_updates_on_startup" : true,
"show_in_menu_bar" : true,
"show_profile_name_in_menu_bar" : false
},
"profiles" : [ {
"complex_modifications" : {
"parameters" : {
"basic.simultaneous_threshold_milliseconds" : 50,
@kaushikgopal
kaushikgopal / dependencies.gradle
Last active Apr 20, 2019
Dependencies Gradle - think of this is as the Android developer's Gemfile
View dependencies.gradle
/**
* Shared file between builds so that they can all use the same dependencies and
* maven repositories.
**/
ext.deps = [:]
def versions = [:]
versions.android_gradle_plugin = '3.3.2'
versions.min_sdk = 21
versions.target_sdk = 28
View morning.fish
function morning
# homebrew
brew update
brew upgrade
brew outdated
brew cleanup
# sdkman
echo "Y" | sdk update
View keybase.md

Keybase proof

I hereby claim:

  • I am kaushikgopal on github.
  • I am kaushikgopal (https://keybase.io/kaushikgopal) on keybase.
  • I have a public key ASDR8pa7M7GjmOJwED8ae0Cmr7Uyuk13EJDW0fs7kG8TlQo

To claim this, I am signing this object:

@kaushikgopal
kaushikgopal / .phoenix.2.js
Last active Oct 7, 2018
Kaushik Gopal's window management tool of choice - phoenix.js
View .phoenix.2.js
// download Phoenix from here https://github.com/kasper/phoenix
"use strict";
Phoenix.set({
openAtLogin: true
});
// -------------------------------------------
// Utility methods
@kaushikgopal
kaushikgopal / git_merge_up_push_up_version.rb
Created Oct 25, 2016
ruby script that makes merging up and pushing changes easy for versions ahead (if you follow semantic versioning)
View git_merge_up_push_up_version.rb
#!/usr/bin/env ruby
require 'rubygems'
require 'set'
require 'highline/import'
# this assumes you follow proper semantic app versioning
# listen to this http://fragmentedpodcast.com/episodes/054/ for an explanation
def confirm(message)
confirmation = ask message + " (y/n)"
@kaushikgopal
kaushikgopal / android_app_release.rb
Created Oct 7, 2016
a ruby release script for android apps
View android_app_release.rb
#!/usr/bin/env ruby
require 'highline/import'
require 'nokogiri'
# i suggest looking at this folder and seeing your app prefix ¯\_(ツ)_/¯
$gradle_properties = File.join(File.dirname(__FILE__), "..", "..", "gradle.properties")
$app_directory = "./<App Parent Directory>"
$app_name_prefix = "<Prefix for final apk e.g. uber-release->"
$splash_screen_location = "co.kaush.instashop/co.kaush.instashop.SplashActivity"
@kaushikgopal
kaushikgopal / DateSubject.java
Created Oct 3, 2016
DateSubject - custom Truth extension subject for comparing Dates
View DateSubject.java
import com.google.common.truth.FailureStrategy;
import com.google.common.truth.Subject;
import com.google.common.truth.SubjectFactory;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import static com.google.common.truth.Truth.assert_;
public class DateSubject