aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorshmibs <shmibs@gmail.com>2015-08-21 08:24:24 -0700
committershmibs <shmibs@gmail.com>2015-08-21 08:24:24 -0700
commitdafd1290537fd76a19871d33a0f684b714dda872 (patch)
treef84f13b8ee6368ee69158e9929ef1ff92df23040
parentaeab1416ecfff0a6bc2ce419f2afb2f85177c62e (diff)
downloaddotfiles-dafd1290537fd76a19871d33a0f684b714dda872.tar.gz
zshrc: move desktop functionality to new file
-rw-r--r--.zshrc3
-rw-r--r--.zshrc-linux167
-rw-r--r--.zshrc-linux-desktop168
3 files changed, 171 insertions, 167 deletions
diff --git a/.zshrc b/.zshrc
index 86280b1..35f8cda 100644
--- a/.zshrc
+++ b/.zshrc
@@ -105,6 +105,9 @@ case $(uname) in
;;
Linux)
source ~/.zshrc-linux
+ if [[ -e ~/.zshrc-linux-desktop ]]; then
+ source ~/.zshrc-linux-desktop
+ fi
;;
*)
echo -e '[-- OS UNRECOGNISED --]'
diff --git a/.zshrc-linux b/.zshrc-linux
index 0e7daa3..a510ac6 100644
--- a/.zshrc-linux
+++ b/.zshrc-linux
@@ -45,170 +45,3 @@ git() {
$(which -p git) "$@"
fi
}
-
-# capture webm
-scap() {
- archey3
- sleep .1
- if [[ -f '/tmp/out.webm' ]]; then
- rm /tmp/out.webm
- fi
- echo 'recording...'
- ffmpeg -video_size 1920x1080 -framerate 30 -f x11grab -i :0.0 \
- -c:v libvpx -b:v 4M -threads 4 /tmp/out.webm > /dev/null 2>&1
-}
-
-# quickly send a file to hosted tmp dir
-send() {
- if [[ "$1" ]]; then
- scp $@ shmibbles.me:http/tmp/
- if [[ $? -eq 0 ]]; then
- for name in "$@"
- do
- basename=$(basename $name)
- ssh shmibbles.me "cd http/tmp; chmod o+r '$basename'"
- name=$(echo "http://shmibbles.me/tmp/$basename"\
- | sed 's/ /%20/g')
- echo $name | tr -d '\n' | xclip -i -selection clipboard
- echo $name | tr -d '\n' | xclip -i -selection primary
- done
- fi
- else
- echo "specify at least one file to send"
- fi
-}
-
-# take a screenshot, upload to /img/scrot, and update current symlink
-ssh-scrot() {
- archey3
-
- if [[ "$1" != "" ]]; then
- name=$1
- else
- echo -n "name: "
- read name
- fi
-
- date=$(date +'%Y-%m-%d')
-
- folder="http/img/scrot"
- ssh shmibbles.me "mkdir -p $folder/$date"
-
- if [[ "${?#0}" != "" ]]; then
- return 1
- fi
-
- ssh shmibbles.me "rm $folder/current 2>/dev/null; ln -s $folder/$date $folder/current"
-
- for i in {3..1}; do
- echo -n "$i "
- sleep 1
- done
-
- echo 'cheese!'
- sleep .1
-
- scrot /tmp/$name.png
- convert -scale 250x /tmp/$name.png /tmp/${name}_small.png
-
- scp /tmp/$name.png /tmp/${name}_small.png shmibbles.me:http/img/scrot/$date
-
- echo "http://shmibbles.me/img/scrot/$date/$name.png" | tr -d '\n' | xclip -i -selection clipboard
- echo "http://shmibbles.me/img/scrot/$date/$name.png" | tr -d '\n' | xclip -i -selection primary
- echo "http://shmibbles.me/img/scrot/$date/${name}_small.png" | tr -d '\n' | xclip -i -selection clipboard
- echo "http://shmibbles.me/img/scrot/$date/${name}_small.png" | tr -d '\n' | xclip -i -selection primary
-
- echo 'sent!'
-
- rm /tmp/$name.png /tmp/${name}_small.png
-
-}
-
-# export a section of a video to gif
-make-gif() {
-
- if [[ -z "$1" ]]; then
- break
- fi
-
- rm -f make-gif-palette.png
- rm -f make-gif-palette.png
- rm -f make-gif-in
-
- rm -f make-gif-in
-
- ln -s "$1" make-gif-in
-
- echo -n "start [00:00:00]: "
- read start
- if [[ -z "$start" ]]; then
- start="00:00:00"
- fi
-
- echo -n "length [full]: "
- read length
- if [[ -z "$length" ]]; then
- t=""
- length=""
- else
- t="-t"
- fi
-
- echo -n "fps [10]: "
- read fps
- if [[ -z "$fps" ]]; then
- fps="10"
- fi
-
- echo -n "width [480]: "
- read width
- if [[ -z "$width" ]]; then
- width="480"
- fi
-
- echo -n "use subtitles? [y/N]: "
- read subs
- if [[ "$subs" == "y" || "$subs" == "Y" ]]; then
- subs="true"
- else
- subs=""
- fi
-
- if [[ $subs ]]; then
- ffmpeg -y -ss "$start" $t "$length" -i "$1" \
- -copyts -vf "subtitles=make-gif-in,fps=$fps,scale=$width:-1:flags=lanczos,palettegen" make-gif-palette.png
- ffmpeg -ss "$start" $t "$length" -i "$1" -i make-gif-palette.png \
- -copyts -filter_complex \
- "subtitles=make-gif-in,fps=$fps,scale=$width:-1:flags=lanczos[x];[x][1:v]paletteuse" \
- out.gif
- else
- ffmpeg -y -ss "$start" $t "$length" -i "$1" \
- -vf "fps=$fps,scale=$width:-1:flags=lanczos,palettegen" make-gif-palette.png
- ffmpeg -ss "$start" $t "$length" -i "$1" -i make-gif-palette.png -filter_complex \
- "fps=$fps,scale=$width:-1:flags=lanczos[x];[x][1:v]paletteuse" \
- out.gif
- fi
-
- rm -f make-gif-palette.png
- rm -f make-gif-in
-}
-
-# um...
-fuck() {
- fuck="fuck"
- while true; do
- echo -en "\e[$((RANDOM%2));$((RANDOM%8+30))m"
-
- for i in {1..4}; do
- if [[ $((RANDOM%2)) -eq 1 ]]; then
- echo -n $fuck[$i] | tr '[:lower:]' '[:upper:]'
- else
- echo -n $fuck[$i]
- fi
- done
-
- for i in {1..$((RANDOM%20))}; do
- echo -n " "
- done
- done
-}
diff --git a/.zshrc-linux-desktop b/.zshrc-linux-desktop
new file mode 100644
index 0000000..c34c60e
--- /dev/null
+++ b/.zshrc-linux-desktop
@@ -0,0 +1,168 @@
+################## FUNCTIONS ##################
+
+# capture webm
+scap() {
+ archey3
+ sleep .1
+ if [[ -f '/tmp/out.webm' ]]; then
+ rm /tmp/out.webm
+ fi
+ echo 'recording...'
+ ffmpeg -video_size 1920x1080 -framerate 30 -f x11grab -i :0.0 \
+ -c:v libvpx -b:v 4M -threads 4 /tmp/out.webm > /dev/null 2>&1
+}
+
+# quickly send a file to hosted tmp dir
+send() {
+ if [[ "$1" ]]; then
+ scp $@ shmibbles.me:http/tmp/
+ if [[ $? -eq 0 ]]; then
+ for name in "$@"
+ do
+ basename=$(basename $name)
+ ssh shmibbles.me "cd http/tmp; chmod o+r '$basename'"
+ name=$(echo "http://shmibbles.me/tmp/$basename"\
+ | sed 's/ /%20/g')
+ echo $name | tr -d '\n' | xclip -i -selection clipboard
+ echo $name | tr -d '\n' | xclip -i -selection primary
+ done
+ fi
+ else
+ echo "specify at least one file to send"
+ fi
+}
+
+# take a screenshot, upload to /img/scrot, and update current symlink
+ssh-scrot() {
+ archey3
+
+ if [[ "$1" != "" ]]; then
+ name=$1
+ else
+ echo -n "name: "
+ read name
+ fi
+
+ date=$(date +'%Y-%m-%d')
+
+ folder="http/img/scrot"
+ ssh shmibbles.me "mkdir -p $folder/$date"
+
+ if [[ "${?#0}" != "" ]]; then
+ return 1
+ fi
+
+ ssh shmibbles.me "rm $folder/current 2>/dev/null; ln -s $folder/$date $folder/current"
+
+ for i in {3..1}; do
+ echo -n "$i "
+ sleep 1
+ done
+
+ echo 'cheese!'
+ sleep .1
+
+ scrot /tmp/$name.png
+ convert -scale 250x /tmp/$name.png /tmp/${name}_small.png
+
+ scp /tmp/$name.png /tmp/${name}_small.png shmibbles.me:http/img/scrot/$date
+
+ echo "http://shmibbles.me/img/scrot/$date/$name.png" | tr -d '\n' | xclip -i -selection clipboard
+ echo "http://shmibbles.me/img/scrot/$date/$name.png" | tr -d '\n' | xclip -i -selection primary
+ echo "http://shmibbles.me/img/scrot/$date/${name}_small.png" | tr -d '\n' | xclip -i -selection clipboard
+ echo "http://shmibbles.me/img/scrot/$date/${name}_small.png" | tr -d '\n' | xclip -i -selection primary
+
+ echo 'sent!'
+
+ rm /tmp/$name.png /tmp/${name}_small.png
+
+}
+
+# export a section of a video to gif
+make-gif() {
+
+ if [[ -z "$1" ]]; then
+ break
+ fi
+
+ rm -f make-gif-palette.png
+ rm -f make-gif-palette.png
+ rm -f make-gif-in
+
+ rm -f make-gif-in
+
+ ln -s "$1" make-gif-in
+
+ echo -n "start [00:00:00]: "
+ read start
+ if [[ -z "$start" ]]; then
+ start="00:00:00"
+ fi
+
+ echo -n "length [full]: "
+ read length
+ if [[ -z "$length" ]]; then
+ t=""
+ length=""
+ else
+ t="-t"
+ fi
+
+ echo -n "fps [10]: "
+ read fps
+ if [[ -z "$fps" ]]; then
+ fps="10"
+ fi
+
+ echo -n "width [480]: "
+ read width
+ if [[ -z "$width" ]]; then
+ width="480"
+ fi
+
+ echo -n "use subtitles? [y/N]: "
+ read subs
+ if [[ "$subs" == "y" || "$subs" == "Y" ]]; then
+ subs="true"
+ else
+ subs=""
+ fi
+
+ if [[ $subs ]]; then
+ ffmpeg -y -ss "$start" $t "$length" -i "$1" \
+ -copyts -vf "subtitles=make-gif-in,fps=$fps,scale=$width:-1:flags=lanczos,palettegen" make-gif-palette.png
+ ffmpeg -ss "$start" $t "$length" -i "$1" -i make-gif-palette.png \
+ -copyts -filter_complex \
+ "subtitles=make-gif-in,fps=$fps,scale=$width:-1:flags=lanczos[x];[x][1:v]paletteuse" \
+ out.gif
+ else
+ ffmpeg -y -ss "$start" $t "$length" -i "$1" \
+ -vf "fps=$fps,scale=$width:-1:flags=lanczos,palettegen" make-gif-palette.png
+ ffmpeg -ss "$start" $t "$length" -i "$1" -i make-gif-palette.png -filter_complex \
+ "fps=$fps,scale=$width:-1:flags=lanczos[x];[x][1:v]paletteuse" \
+ out.gif
+ fi
+
+ rm -f make-gif-palette.png
+ rm -f make-gif-in
+}
+
+# um...
+fuck() {
+ fuck="fuck"
+ while true; do
+ echo -en "\e[$((RANDOM%2));$((RANDOM%8+30))m"
+
+ for i in {1..4}; do
+ if [[ $((RANDOM%2)) -eq 1 ]]; then
+ echo -n $fuck[$i] | tr '[:lower:]' '[:upper:]'
+ else
+ echo -n $fuck[$i]
+ fi
+ done
+
+ for i in {1..$((RANDOM%20))}; do
+ echo -n " "
+ done
+ done
+}