Skip to content

Instantly share code, notes, and snippets.

View leetschau's full-sized avatar

Leo leetschau

View GitHub Profile
@leetschau
leetschau / pocket-export.csv
Created June 11, 2025 08:07
Pocket articles export
We can make this file beautiful and searchable if this error is corrected: It looks like row 10 should actually have 5 columns, instead of 2 in line 9.
title,url,time_added,tags,status
defmacro - The Nature of Lisp,http://www.defmacro.org/ramblings/lisp.html,1340872707,lisp xml ant,unread
HTTP Made Really Easy,http://www.jmarshall.com/easy/http/,1449453698,http|tech,unread
AsciiDoc cheatsheet,https://powerman.name/doc/asciidoc,1547390268,asciidoc,unread
ContiPerf 2,http://databene.org/contiperf,1349362779,java|test,unread
AJAX in Django with jQuery | webcloud,http://webcloud.se/log/AJAX-in-Django-with-jQuery/,1338701906,ajax|django|jquery,unread
如何证明一加一等于二? | 科学人 | 果壳网 科技有意思,https://www.guokr.com/article/6556/,1529657618,math,unread
Intro to Unintrusive JavaScript with Django - Irrational Exuberance,http://dev.lethain.com/intro-to-unintrusive-javascript-with-django/,1338701831,django ajax webservice,unread
http://mindhacks.cn/2011/11/04/how-to-interview-a-person-for-two-years/,http://mindhacks.cn/2011/11/04/how-to-interview-a-person-for-two-years/,1405132841,,unread
» What I Learned From Increasing My Prices ExtendsLogic,http://www.extendslogic.com/business/
@leetschau
leetschau / sharing-server.py
Created April 20, 2025 07:09
A standalone (and naive) texts and files sharing web server
#!/usr/bin/env python3
## This script starts a Web server providing texts and files sharing function.
## See the usage with `-h` option.
import os
import sys
import argparse
import urllib.parse
from http.server import HTTPServer, BaseHTTPRequestHandler
{
"$schema": "https://vega.github.io/schema/vega/v5.json",
"description": "A Demo",
"width": 700,
"height": 500,
"padding": 0,
"autosize": "none",
"data": [
{
"name": "nodes",
{
"nodes": [
{"id": 1, "name": "1.13", "IP": "192.168.1.13", "group": "attacker"},
{"id": 2, "name": "3.14", "IP": "192.168.3.14", "group": "victim"},
{"id": 2, "name": "3.18", "IP": "192.168.3.18", "group": "victim"}
],
"edges": [
{"id": 1, "source": 1, "target": 2, "relation": "SQL Injection"},
{"id": 1, "source": 1, "target": 3, "relation": "Web Shell"}
]
[project]
name = "my-fancy-project"
description = "My fancy project"
authors = [
{name = "Leo", email = "[email protected]"},
]
version = "0.1.0"
readme = "README.md"
license = {text = "MIT"}
@leetschau
leetschau / repl.py
Created July 5, 2024 11:08
REPL Enhancer
import pexpect
import argparse
import importlib
from pygments.styles.vim import VimStyle
from prompt_toolkit import PromptSession
from prompt_toolkit.history import FileHistory
from prompt_toolkit.lexers import PygmentsLexer
from prompt_toolkit.styles import style_from_pygments_cls
from prompt_toolkit.auto_suggest import AutoSuggestFromHistory
from prompt_toolkit.application.current import get_app
@leetschau
leetschau / JsonParser.fsx
Created July 14, 2021 09:33
Understanding Parser Combinators Series
/// This is the implementation of the first 2 parts of the wonderful 4-parts
/// posts "Understanding Parser Combinators" of
/// [F# for fun and profit](https://fsharpforfunandprofit.com/):
module ParserLib1 =
open System
/// Type that represents Success/Failure in parsing
type ParseResult<'a> =
@leetschau
leetschau / evint.sh
Last active February 5, 2020 07:23
fetch lines in a file with even intervals and window size
#!/bin/sh
# Function:
# print $output_num sections by order,
# each have $sec_num adjacent records
# from file $inp
inp=$1
output_num=$2
sec_num=$3
@leetschau
leetschau / achao.zsh-theme
Created December 11, 2019 07:30
my double line oh-my-zsh theme
rc=%{$reset_color%}
cy=$fg_bold[cyan]
bl=$fg_bold[blue]
re=$fg_bold[red]
wh=%{$fg_bold[white]%}
ye=$fg_bold[yellow]
gr=$fg_bold[green]
ma=$fg_bold[magenta]
ZSH_THEME_GIT_PROMPT_PREFIX="git("
@leetschau
leetschau / PythonStyleGuide.md
Last active May 31, 2019 02:00
Python Style Guide for BioT

Python Style Guide

综述

Python 语言最明显的特征之一是用缩进量表示从属关系,没有采用 Java, C 用括号定义作用域的自由书写风格。 所以 Python 对代码格式的要求十分严格,社区发展出了完整的编码规范和丰富的检查和修复工具,并能够整合到几乎所有主流编辑器中。

编码规范在提升代码质量和可读性、降低维护成本等方面发挥了核心作用,但如果没有相应的工具链帮助其落地,很难真正产生效果,本文第3、4节专门论述如何搭建可用的工具链。

Python 社区不鼓励对编码规范做人工审查,因为人工审查存在如下问题: