Skip to content

Instantly share code, notes, and snippets.

Avatar

Matt Komarnicki mattkomarnicki

View GitHub Profile
View exiftool_gps_meta.sh
exiftool -XMP:GPSLatitude=1.288249 -XMP:GPSLongitude=103.851536 -P -overwrite_original A7304765.ARW
// Reload metadata in Capture One
// -overwrite_original will prevent from making extra copy of the target file
View camel_case_to_human.php
<?php
private function camelCaseToHuman(string $input): string
{
$result = preg_split('/(^[^A-Z]+|[A-Z][^A-Z]+)/', $input, -1, PREG_SPLIT_NO_EMPTY| PREG_SPLIT_DELIM_CAPTURE);
return ucfirst(implode(' ', $result));
}
View phpbb_posts_per_month.sql
SELECT YEAR(FROM_UNIXTIME(post_time)) as `year`, LPAD(MONTH(FROM_UNIXTIME(post_time)), 2, 0) as `month`, COUNT(post_id) as count FROM phpbb3_posts
GROUP BY `year`, `month`
ORDER BY `year`, `month` ASC
View gist:878bfbe9f34583c180346726ac1c149b
# There was a day where I have too many color schemes in iTerm2 and I want to remove them all.
# iTerm2 doesn't have "bulk remove" and it was literally painful to delete them one-by-one.
# iTerm2 save it's preference in ~/Library/Preferences/com.googlecode.iterm2.plist in a binary format
# What you need to do is basically copy that somewhere, convert to xml and remove color schemes in the xml files.
$ cd /tmp/
$ cp ~/Library/Preferences/com.googlecode.iterm2.plist .
$ plutil -convert xml1 com.googlecode.iterm2.plist
$ vi com.googlecode.iterm2.plist
View remove_zoom_us_macos.sh
# 1) Save below script as a file with *.sh extension
#! /bin/bash
echo Cleaning Zoom…
echo Cleaning Application Cached Files…
sudo rm -rf ~/Library/Application\ Support/zoom.us
echo Cleaning Application…
{
sudo rm -rf /Applications/zoom.us.app
sudo rm -rf ~/Applications/zoom.us.app
@mattkomarnicki
mattkomarnicki / GIF-Screencast-OSX.md
Created Mar 17, 2019 — forked from dergachev/GIF-Screencast-OSX.md
OS X Screencast to animated GIF
View GIF-Screencast-OSX.md

OS X Screencast to animated GIF

This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.

Screencapture GIF

Instructions

To capture the video (filesize: 19MB), using the free "QuickTime Player" application:

View events.js
// MIT licensed, Written by Abdul Khan and Alexey Novak, 2014
// version 0.1.3
var utils = utils || {};
// Publish/Subscribe pattern adapted from
// http://davidwalsh.name/pubsub-javascript
(function() {
utils.Events = function() {
@mattkomarnicki
mattkomarnicki / format_number_in_k_notation.php
Last active Jun 28, 2019
Formats given integer into short version with a suffix. For example "1500" will become "1K+".
View format_number_in_k_notation.php
<?php
if (!function_exists('format_number_in_k_notation')) {
function format_number_in_k_notation(int $number): string
{
$suffixByNumber = function () use ($number) {
if ($number < 1000) {
return sprintf('%d', $number);
}
View redundant_else_redundant_if.php
<?php
// example 1 (lame)
public function isAdmin(): bool
{
if ($this->permission->canAccess('dashboard')) {
return true;
} else {
return false;
}
View react example snippet
// welcome.blade.php
<!doctype html>
<html lang="{{ app()->getLocale() }}">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="csrf-token" content="{{ csrf_token() }}">
<title>Laravel Test</title>
<link href="{{mix('css/app.css')}}" rel="stylesheet" type="text/css">