From e3c4b0e821b41f5091d12c1fc1b235a9c9c710f4 Mon Sep 17 00:00:00 2001 From: Mathias Bynens Date: Tue, 27 Dec 2011 16:39:21 +0100 Subject: Add `escape` function which escapes UTF-8 characters into their 3-byte format MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Example: $ escape "♥♡♥" \xE2\x99\xA5\xE2\x99\xA1\xE2\x99\xA5 $ echo -e "\xE2\x99\xA5\xE2\x99\xA1\xE2\x99\xA5" ♥♡♥ --- .functions | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.functions b/.functions index 62d970d..0cdfebc 100644 --- a/.functions +++ b/.functions @@ -9,6 +9,7 @@ function httpcompression() { encoding="$(curl -LIs -H 'User-Agent: Mozilla/5 Gecko' -H 'Accept-Encoding: gzip,deflate,compress,sdch' "$1" | grep '^Content-Encoding:')" && echo "$1 is encoded using ${encoding#* }" || echo "$1 is not using any encoding" } +# Syntax-highlight JSON files function json() { python -mjson.tool <<< "$*" | pygmentize -l javascript } @@ -16,4 +17,10 @@ function json() { # All the dig info function digga() { dig +nocmd "$1" any +multiline +noall +answer +} + +# Escape UTF-8 characters into their 3-byte format +function escape() { + printf "\\\x%s" $(printf "$@" | xxd -p -c1 -u) + echo # newline } \ No newline at end of file -- cgit v1.2.3