Skip to content

Instantly share code, notes, and snippets.

@wangyingang
wangyingang / 01.bash_shortcuts_v2.md
Created February 7, 2023 07:45 — forked from tuxfight3r/01.bash_shortcuts_v2.md
Bash keyboard shortcuts

Bash Shortcuts

visual cheetsheet

Moving

command description
ctrl + a Goto BEGINNING of command line
Since 2013 a video format much better than H.264 is widely available, namely H.265 (better in that it compresses more for the same quality, or gives higher quality for the same size). To use it, replace the libx264 codec with libx265, and push the compression lever further by increasing the CRF value — add, say, 4 or 6, since a reasonable range for H.265 may be 24 to 30. Note that lower CRF values correspond to higher bitrates, and hence produce higher quality videos.
ffmpeg -i input.mp4 -vcodec libx265 -crf 28 output.mp4
To see this technique applied using the older H.264 format, see this answer, quoted below for convenience:
Calculate the bitrate you need by dividing your target size (in bits) by the video length (in seconds). For example for a target size of 1 GB (one gigabyte, which is 8 gigabits) and 10 000 seconds of video (2 h 46 min 40 s), use a bitrate of 800 000 bit/s (800 kbit/s):
ffmpeg -i input.mp4 -b 800k output.mp4
@wangyingang
wangyingang / IdeaVim OS X Key Repeat.markdown
Created November 26, 2021 18:10 — forked from lsd/IdeaVim OS X Key Repeat.markdown
Enable key-repeat for ALL applications or just for IdeaVim/specific JetBrains apps

Upgrading to Lion or Yosemite and WebStorm 9, I noticed key repeat was
turned off for the IdeaVim plugin h j k l keys.

System-wide key repeat

defaults write -g ApplePressAndHoldEnabled -bool false in a terminal will enable
key repeat for every app. This can alternatively be found in the accessibility settings in OS X' preferences.

App specific key repeat

@wangyingang
wangyingang / README-Template.md
Created January 5, 2019 01:14 — forked from PurpleBooth/README-Template.md
A template to make good README.md

Project Title

One Paragraph of project description goes here

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

@wangyingang
wangyingang / UrlEscapeSample.java
Created July 10, 2015 08:55
URL escape sample (java.net.URLEncoder and Guava UrlEscaper)
public class UrlEscapeSample {
public static void main(String[] args) {
String filename = "中国 地图/? a.docx";
String urlEncoding = URLEncoder.encode(filename, StandardCharsets.UTF_8.toString());
prettyPrint("java.net.URLEncoder", urlEncoding);
prettyPrint("UrlEscapers.urlFormParameterEscaper", UrlEscapers.urlFormParameterEscaper().escape(filename));
prettyPrint("java.net.URLEncoder then replace to %20", urlEncoding.replaceAll("\\+", "%20"));
prettyPrint("UrlEscapers.urlPathSegmentEscaper", UrlEscapers.urlPathSegmentEscaper().escape(filename));
prettyPrint("UrlEscapers.urlFragmentEscaper", UrlEscapers.urlFragmentEscaper().escape(filename));
}
@wangyingang
wangyingang / get_gravatar.md
Last active May 10, 2017 16:41
Get gravatar image using command line(Mac OS X only)

#Get Gravatar image using command line(Mac OS X only)

Gravatar image download url

http://www.gravatar.com/avatar/HASH

Get default image

curl -o yourname.png http://www.gravatar.com/avatar/$(md5 -q -s youremail@example.com)

Introduction

An introduction to curl using GitHub's API

The Basics

Makes a basic GET request to the specifed URI

curl https://api.github.com/users/caspyin
# Mac OS X Lion introduced a new, iOS-like context menu when you press and hold a key
# that enables you to choose a character from a menu of options. If you are on Lion
# try it by pressing and holding down 'e' in any app that uses the default NSTextField
# for input.
#
# It's a nice feature and continues the blending of Mac OS X and iOS features. However,
# it's a nightmare to deal with in Sublime Text 2 if you're running Vintage (Vim) mode,
# as it means you cannot press and hold h/j/k/l to move through your file. You have
# to repeatedly press the keys to navigate.