(C-x means ctrl+x, M-x means alt+x)
The default prefix is C-b. If you (or your muscle memory) prefer C-a, you need to add this to ~/.tmux.conf
:
data:text/html, <html spellcheck="false" contenteditable> <style> html,body{min-height: 100%} body {min-height: 100%; background-color: transparent; background-image: -webkit-linear-gradient(top, #ddd 2%, transparent 2%); background-image: -moz-linear-gradient(top, #ddd 2%, transparent 2%); background-image: -o-linear-gradient(top, #ddd 2%, transparent 2%); background-image: linear-gradient(to bottom, #ddd 2%, transparent 2%); background-size: 100% 1.5em; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; color: #333; display: block; font: normal 1.5em 'Cambria', georgia, serif; height: 100%; line-height: 1.5em; margin: 0 auto; padding: .2em .5em; position: relative; vertical-align: bottom; width: 80%; } body:before, body:after{ content: ''; position: absolute; left: 0; top: 0; width: 100%; min-height: 100%; background: transparent; z-index: -1; } body:before{ background-image: -webkit-linear-gradient(left, #ccc 5px, transparent 5px, transparent 100%); background-image: -moz- |
This can reduce files to ~15% of their size (2.3M to 345K, in one case) with no obvious degradation of quality.
ghostscript -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/printer -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf
Other options for PDFSETTINGS:
A Dashing widget that checks whether a server is responding to either an http or ping request using smaller squares to represent its status.
This is based off of the Server Status widget that willjohnson developed but modified to work across multiple squares rather than be one square with a list.
The widget updates the appropriate squares color upon determining its status. Statuses are as follows:
class ApplicationController < ActionController::Base | |
after_action :server_push_headers # https://twitter.com/connorjshea/status/728472354385317888 | |
def server_push_headers | |
# CLoudflare HTTP2 Server Push: https://blog.cloudflare.com/announcing-support-for-http-2-server-push-2/ | |
if request.format.html? # only on html pages | |
layout = self.send(:_layout) # with the right layout | |
if layout == "main" || layout == "speaker" || layout == "admin" | |
assets = [ |
# Description: Boxstarter Script | |
# Author: Jess Frazelle <[email protected]> | |
# Last Updated: 2017-09-11 | |
# | |
# Install boxstarter: | |
# . { iwr -useb http://boxstarter.org/bootstrapper.ps1 } | iex; get-boxstarter -Force | |
# | |
# You might need to set: Set-ExecutionPolicy RemoteSigned | |
# | |
# Run this boxstarter by calling the following from an **elevated** command-prompt: |
# ssh key generator data source expects the below 3 inputs, and produces 3 outputs for use: | |
# "${data.external.ssh_key_generator.result.public_key}" (contents) | |
# "${data.external.ssh_key_generator.result.private_key}" (contents) | |
# "${data.external.ssh_key_generator.result.private_key_file}" (path) | |
data "external" "ssh_key_generator" { | |
program = ["bash", "${path.root}/../ssh_key_generator.sh"] | |
query = { | |
customer_name = "${var.customer_name}" | |
customer_group = "${var.customer_group}" |
####################################### | |
# Displays a yes/no prompt to continue that repeats until input matches. | |
# Arguments: | |
# $1 - (optional) a string representing the yes/no question to ask | |
# $2 - (optional) a string representing the prompt style. | |
# Returns: | |
# 0 to proceed further (indicates "yes"), 1 to stop (indicates "no"). | |
####################################### | |
continue_prompt() { | |
local prompt default reply |