Skip to content

Instantly share code, notes, and snippets.

View trevorpao's full-sized avatar
🏠
Working from home

Trevor Pao trevorpao

🏠
Working from home
  • sense-info
  • Taipei
View GitHub Profile
@trevorpao
trevorpao / script-template.sh
Created February 9, 2023 07:53 — forked from m-radzikowski/script-template.sh
Minimal safe Bash script template - see the article with full description: https://betterdev.blog/minimal-safe-bash-script-template/
#!/usr/bin/env bash
set -Eeuo pipefail
trap cleanup SIGINT SIGTERM ERR EXIT
script_dir=$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd -P)
usage() {
cat <<EOF
Usage: $(basename "${BASH_SOURCE[0]}") [-h] [-v] [-f] -p param_value arg1 [arg2...]
@trevorpao
trevorpao / my.cnf
Created September 5, 2022 09:41 — forked from fevangelou/my.cnf
Optimized my.cnf configuration for MySQL/MariaDB (on Ubuntu, CentOS, Almalinux etc. servers)
# === Optimized my.cnf configuration for MySQL/MariaDB (on Ubuntu, CentOS, Almalinux etc. servers) ===
#
# by Fotis Evangelou, developer of Engintron (engintron.com)
#
# ~ Updated December 2021 ~
#
#
# The settings provided below are a starting point for a 8-16 GB RAM server with 4-8 CPU cores.
# If you have different resources available you should adjust accordingly to save CPU, RAM & disk I/O usage.
#
@trevorpao
trevorpao / demo.css
Last active March 14, 2022 04:03
HTML+CSS+JS
iframe {
width: 90vw;
height: 50vw;
display: block;
margin: 0 auto;
border: solid #f00 0.5rem;
}
// https://www.puritys.me/docs-blog/article-107-String-Length-%E4%B8%AD%E6%96%87%E5%AD%97%E4%B8%B2%E9%95%B7%E5%BA%A6.html
function bytesLength(c) {
var n = c.length,
s;
var len = 0;
for (var i = 0; i < n; i++) {
s = c.charCodeAt(i);
while (s > 0) {
len++;
@trevorpao
trevorpao / Vue3.md
Created October 2, 2021 05:45 — forked from harshadsatra/Vue3.md
Vue3 related lists
#!/bin/bash
set -u
abort() {
printf "%s\n" "$@"
exit 1
}
if [ -z "${BASH_VERSION:-}" ]
then
jQuery(document).ready(function ($) {
if (is_touch_device() && $('body').width() > 600) {
$('body').addClass('touch-device');
}
});
// from https://stackoverflow.com/a/4819886/359287
function is_touch_device() {
var prefixes = ' -webkit- -moz- -o- -ms- '.split(' ');
@trevorpao
trevorpao / sql-splitter.md
Created January 9, 2020 15:02 — forked from asika32764/sql-splitter.md
PHP - BIG SQL File Splitter as Iterator

SQL Splitter as Iterator

This is a class that can split BIG SQL file or string as iterator so that can help us save memory when importing SQL to database.

Composer version see here: https://github.com/asika32764/sql-splitter

Usage

$it = SqlSplitter::splitFromFile(__DIR__ . '/path/to/db.sql');
@trevorpao
trevorpao / webstoemp-gulpfile.js
Created October 18, 2019 12:21 — forked from jeromecoupe/webstoemp-gulpfile.js
Gulp 4 sample gulpfile.js. For a full explanation, have a look at https://www.webstoemp.com/blog/switching-to-gulp4/
"use strict";
// Load plugins
const autoprefixer = require("autoprefixer");
const browsersync = require("browser-sync").create();
const cp = require("child_process");
const cssnano = require("cssnano");
const del = require("del");
const eslint = require("gulp-eslint");
const gulp = require("gulp");