Skip to content

Instantly share code, notes, and snippets.

View foriequal0's full-sized avatar
🤓
I may be slow to respond.

SeongChan Lee foriequal0

🤓
I may be slow to respond.
  • Seoul, South Korea
  • 18:12 (UTC +09:00)
View GitHub Profile
@foriequal0
foriequal0 / lambda.py
Last active September 7, 2019 14:11
www.weather.go.kr rader prediction crawler
import boto3
from datetime import datetime, timezone
import logging
import urllib.request
logger = logging.getLogger()
logger.setLevel(logging.INFO)
s3 = boto3.resource('s3')
BUCKET_NAME = "weather-go-kr-radar-predict-crawler-images"
@foriequal0
foriequal0 / content-clamp.user.js
Last active June 27, 2020 10:36
Contents clamp
// ==UserScript==
// @name Contents Clamp
// @updateURL https://gist.github.com/foriequal0/12794f45f5ef60249e8ba36f978dfaa4/raw/content-clamp.user.js
// @version 10
// @match http://*/*
// @match https://*/*
// @run-at document-idle
// ==/UserScript==
(function ContentsClamp(){
@foriequal0
foriequal0 / Works.md
Last active October 11, 2021 14:19
Works
@foriequal0
foriequal0 / git-sync
Last active June 10, 2020 09:59
git-sync
#!/usr/bin/env bash
# git-sync: pull, prune, trim all branches.
# requires: (optional) git-trim
set -euo pipefail
CURRENT=$(git branch --show-current)
do-ff() {
@foriequal0
foriequal0 / git-fixup
Last active April 11, 2022 07:10
git-fixup
#!/usr/bin/env bash
## git-fixup: fixup and rebase interactively.
## requires fzf
set -euo pipefail
get-base() {
local REMOTE_HEAD;
local REMOTE_BASE;
#!/usr/bin/env zsh
git() {
if [[ $1 == "checkout" ]]; then
echo "Use 'git swtich' or 'git restore'"
return -1
fi
if [[ $1 == "switch" ]] && [[ "$#" -eq 1 ]]; then
local BRANCHES=$(git branch --list --verbose | grep -v -e "^\*" | sed 's/^\s*//')
local BRANCH=$(echo "$BRANCHES" | fzf --height 8 --select-1 --exit-0 | awk '{print $1}')
@foriequal0
foriequal0 / git-scratch
Last active May 10, 2021 03:49
git-scratch
#!/usr/bin/env bash
## Requires: (optional) git-sync
set -euo pipefail
OPTS_SPEC="\
$0 [<branch-name>] [<options>]
An opinionated git workflow for random walker.
@foriequal0
foriequal0 / tents-and-trees.rs
Last active July 5, 2020 14:13
Tents and Trees solver
use std::collections::VecDeque;
use std::error::Error;
use std::fmt::{Display, Formatter};
use std::io::{stdin, Read};
type Result<T> = std::result::Result<T, Box<dyn Error>>;
fn main() -> Result<()> {
let mut input = String::new();
stdin().read_to_string(&mut input)?;
@foriequal0
foriequal0 / snakebird.rs
Created August 30, 2020 10:27
snakebird-rs: Snakebird Solver
use std::collections::{HashSet, VecDeque};
#[derive(Copy, Clone, Eq, PartialEq, Hash, Debug)]
enum Dir {
Left,
Right,
Down,
Up,
}
@foriequal0
foriequal0 / StableNameStack.ts
Last active November 21, 2024 07:59
CDK StableNameStack
import { CfnElement, CfnResource, Stack } from "@aws-cdk/core";
import { makeUniqueId } from "@aws-cdk/core/lib/private/uniqueid";
import { Node } from "constructs";
import * as assert from "assert";
const PINNED_RESOURCE_NAMES_CONTEXT_KEY = "pinnedLogicalIds";
type PinnedLogicalIds = { [segment: string]: PinnedLogicalIds | string };
export class StableNameStack extends Stack {