Skip to content

Instantly share code, notes, and snippets.


Cyril Hou cyrilis

View GitHub Profile
cyrilis / Activate Office 2019 for macOS
Created May 6, 2020 — forked from zthxxx/Activate Office 2019 for macOS
crack activate office on mac with license file
View Activate Office 2019 for macOS

Activate MS Office 2019/2016 for macOS - Microsoft_Office_2019_VL_Serializer

Office 2019 above


Note that Office2019 DO NOT support activate via simple copy/paste plist license file which is the simplest way to activate Office 2016. Fortunately, you can also use the VL Serializer tool, just install Office 2019 and Serializer, then run Serializer to activate.


cyrilis /
Last active Mar 7, 2019
Github Reader CJS
cyrilis / test.html
Last active Feb 14, 2019
View test.html
<!DOCTYPE html>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="description" content="MoonLite is a UI component library based on Vue 2.0">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="">
View COE-swagger.yaml
swagger: '2.0'
title: COE API
description: COE Project API, make repentance great again.
version: 1.0.0
- http
basePath: '/'
cyrilis /
Last active Sep 28, 2017
Take a selfie every time you git commit

Take a selfie every time you git commit

本文仅写了 macOS 下的实践, 其他系统可参照修改。

通过 homebrew 安装 imagesnap:

brew install imagesnap
for ((i=1;i<=$#;i++));
if [ ${!i} = "-from" ]
then ((i++))
elif [ ${!i} = "-login" ];
then ((i++))
cyrilis / StringHelper.swift
Created Apr 12, 2016
Swift String substring
View StringHelper.swift
extension String {
subscript (r: Range<Int>) -> String {
get {
let startIndex = self.startIndex.advancedBy(r.startIndex)
let endIndex = startIndex.advancedBy(r.endIndex - r.startIndex)
return self[Range(start: startIndex, end: endIndex)]
func substring(from: Int) -> String {
let end = self.characters.count
cyrilis / truncate.lua
Last active Sep 5, 2015
truncate.lua -- html truncate for luvit lang.
View truncate.lua
-- Created by: Cyril.
-- Created at: 15/6/25 上午12:40
-- Email:
local string = require("string")
local find = string.find
_G.indexOf = function(t, x)
if type(t) == 'string' then
cyrilis / request.lua
Created Jul 11, 2015
Superagent like request library for Luvit
View request.lua
-- Created by: Cyril.
-- Created at: 15/6/23 下午4:04
-- Email:
http = require("http")
https = require("https")
local qs = require('../node_modules/luvit-querystring')
cyrilis / confirm-rails.js
Created May 22, 2015
Overwrite $.rails.confirm call a dialog component.
View confirm-rails.js
$.rails.allowAction = function(link){
return false;
return true;
$.rails.confirmed = function(link){
You can’t perform that action at this time.