Skip to content

Instantly share code, notes, and snippets.

@shageman
shageman / gist:ecc8d0ca17851c191fd9f15aaf537b22
Created January 11, 2024 15:07 — forked from venantius/gist:ba11dc49cc7a770a3420
Rubocop summary stats generator
#!/usr/bin/env python3
"""
A little script to quickly identify the worst offenders. Easily extensible to
find and sort by other issues. Expects you to have results available in an
easily consumable JSON file, which you can generate by running:
rubocop --format progress --format json --out rubocop.json
"""
require "window_management"
require "sleep_management"
hs.loadSpoon("SpoonInstall")
spoon.SpoonInstall:andUse("CircleClock")
-- spoon.SpoonInstall:andUse("ClipboardTool",
-- {
-- config = { show_in_menubar = false, },
-- hotkeys = { toggle_clipboard = { { "cmd", "shift" }, "v" } },

graph TD; A-->B; A-->C; B-->D; C-->D;

#Sort the Ruby files in your project by number of has_many
ack " has_many " -c | awk -F ":" '{print $2,$1}' | grep -v "0" | sort -rn
#Count the lines of Ruby code in your app
find . -iname "*.rb" -type f -exec cat {} \; | wc -l
#Sort the Ruby files in your project by LOC
find . -iname "*.rb" -type f -exec wc -l {} \; | sort -rn
@shageman
shageman / bar.rake
Created February 8, 2012 02:08
Testing rake tasks
File: lib/tasks/bar.rake
class BarOutput
def self.banner text
puts '*' * 60
puts " #{text}"
puts '*' * 60
end
def self.puts string
puts string
@shageman
shageman / extract_persistence.sh
Last active December 2, 2015 16:00
Extraction of persistence engine out of ticketee sample app
#!/bin/bash --login
ensure() {
"$@" || exit 1
}
cd r4ia_examples/ticketee;
git checkout . && git clean -fd
@shageman
shageman / application.js
Created September 1, 2012 22:25
Rails environment indicator
<% if Rails.env != 'production' %>
document.addEventListener("DOMContentLoaded", function() {
$('body').append($('<div>').css({
display: 'block',
position: 'fixed',
left: '20px',
top: '500px',
'-webkit-transform': 'rotate(-90deg)',
'-moz-transform': 'rotate(-90deg)',
'-o-transform': 'rotate(-90deg)',
@shageman
shageman / object_creation_methods.rb
Last active October 6, 2015 23:38
ObjectCreationMethods a la Jeff Dean
#lives in spec/support/object_creation_methods.rb
# Source: https://pivotallabs.com/users/jdean/blog/articles/1900-rolling-your-own-object-creation-methods-for-specs
module ObjectCreationMethods
def new_post(overrides = {})
defaults = {:title => "Some title #{counter}"}
Post.new { |post| apply(post, defaults, overrides) }
end