From 3b6938f782eb1b9801b252f29619d15368b15df7 Mon Sep 17 00:00:00 2001 From: Arun Prakash Jana Date: Sun, 6 Jun 2021 18:58:13 +0530 Subject: [PATCH] Fix alignment --- plugins/README.md | 266 ++++++++++++++++++++++++---------------------- 1 file changed, 138 insertions(+), 128 deletions(-) diff --git a/plugins/README.md b/plugins/README.md index 1317b66e..b6f383fb 100644 --- a/plugins/README.md +++ b/plugins/README.md @@ -230,136 +230,146 @@ Don't forget to fork in the background to avoid blocking `nnn`. For more details on configuration and usage of the preview plugins, visit [Live Previews](https://github.com/jarun/nnn/wiki/Live-previews). -#### Examples +## Examples + There are many plugins provided by `nnn` which can be used as examples. Here are a few simple selected examples. -- Show the git log of changes to the particular file along with the code for a quick and easy review. - ```sh - #!/usr/bin/env sh - git log -p -- "$1" - ``` - -- Change to directory in clipboard using helper script - ```sh - #!/usr/bin/env sh - . $(dirname $0)/.nnn-plugin-helper - - nnn_cd "$(xsel -ob)" - ``` - -- Change directory to the location of a link using helper script with specific context (current) - ```sh - #!/usr/bin/env sh - . $(dirname $0)/.nnn-plugin-helper - - nnn_cd "$(dirname $(readlink -fn $1))" 0 - ``` - -- Change to arbitrary directory without helper script - ```sh - #!/usr/bin/env sh - printf "cd to: " - read -r dir - - printf "%s" "0c$dir" > "$NNN_PIPE" - ``` - -- Send every hovered file to X selection - ```sh - #!/usr/bin/env sh - if [ -z "$NNN_FIFO" ] ; then - exit 1 - fi - - while read FILE ; do - printf "%s" "$FILE" | xsel - done < "$NNN_FIFO" & - disown - ``` - -- Quick find (using `fd`) - ```sh - #!/usr/bin/env sh - - . "$(dirname "$0")"/.nnn-plugin-helper - - printf "pattern: " - read -r pattern - - if [ -n "$pattern" ]; then - printf "%s" "+l" > "$NNN_PIPE" - eval "fd -HI $pattern -0" > "$NNN_PIPE" - fi - ``` - -- Quick grep (using `rg`) - ```sh - #!/usr/bin/env sh - - . "$(dirname "$0")"/.nnn-plugin-helper - - printf "pattern: " - read -r pattern - - if [ -n "$pattern" ]; then - printf "%s" "+l" > "$NNN_PIPE" - eval "rg -l0 --hidden -S $pattern" > "$NNN_PIPE" - fi - ``` -- Quick scripts for paged output - ```sh - #!/usr/bin/env sh - - # Show media information for hovered file - # Save as file mediainf - # m:-!mediainf - - mediainfo "$1" | eval "$PAGER" - # exiftool "$1" | $PAGER - ------------------------------------------------- - #!/usr/bin/env sh - - # Show tree output with permissions and file size - # Save as file treeplug - # t:-!treeplug - - tree -ps | $EDITOR - - ------------------------------------------------- - #!/usr/bin/env sh - - # List files with UID/GID - # Save as file uidgid - # u:-!uidgid - - ls -lah --group-directories-first | less - ------------------------------------------------- - #!/usr/bin/env sh - - # Show hovered file data in hex - # Save as file hexview - # x:-!hexview - - if [ -f "$1" ]; then - xxd "$1" | $PAGER - fi - ------------------------------------------------- - #!/usr/bin/env sh - - # Show hovered PDF text - # Save as file pdftxt - # p:-!pdftxt - - if [ -f "$1" ] && [ "$(head -c 4 "$1")" = "%PDF" ]; then - pdftotext -nopgbrk -layout "$1" - | sed 's/\xe2\x80\x8b//g' | $PAGER - - # Convert using mutool - # file=`basename "$1"` - # txt=/tmp/"$file".txt - # mutool convert -o "$txt" "$1" - # eval $PAGER $txt - # rm "$txt - fi - ``` +#### Show the git log of changes to the particular file along with the code for a quick and easy review. + +```sh +#!/usr/bin/env sh +git log -p -- "$1" +``` + +#### Change to directory in clipboard using helper script + +```sh +#!/usr/bin/env sh +. $(dirname $0)/.nnn-plugin-helper + +nnn_cd "$(xsel -ob)" +``` + +#### Change directory to the location of a link using helper script with specific context (current) + +```sh +#!/usr/bin/env sh +. $(dirname $0)/.nnn-plugin-helper + +nnn_cd "$(dirname $(readlink -fn $1))" 0 +``` + +#### Change to arbitrary directory without helper script + +```sh +#!/usr/bin/env sh +printf "cd to: " +read -r dir + +printf "%s" "0c$dir" > "$NNN_PIPE" +``` + +#### Send every hovered file to X selection + +```sh +#!/usr/bin/env sh +if [ -z "$NNN_FIFO" ] ; then + exit 1 +fi + +while read FILE ; do + printf "%s" "$FILE" | xsel +done < "$NNN_FIFO" & +disown +``` + +#### Quick find (using `fd`) + +```sh +#!/usr/bin/env sh + +. "$(dirname "$0")"/.nnn-plugin-helper + +printf "pattern: " +read -r pattern + +if [ -n "$pattern" ]; then + printf "%s" "+l" > "$NNN_PIPE" + eval "fd -HI $pattern -0" > "$NNN_PIPE" +fi +``` + +#### Quick grep (using `rg`) + +```sh +#!/usr/bin/env sh + +. "$(dirname "$0")"/.nnn-plugin-helper + +printf "pattern: " +read -r pattern + +if [ -n "$pattern" ]; then + printf "%s" "+l" > "$NNN_PIPE" + eval "rg -l0 --hidden -S $pattern" > "$NNN_PIPE" +fi +``` + +#### Quick scripts for paged output + +```sh +#!/usr/bin/env sh + +# Show media information for hovered file +# Save as file mediainf +# m:-!mediainf + +mediainfo "$1" | eval "$PAGER" +# exiftool "$1" | $PAGER +------------------------------------------------- +#!/usr/bin/env sh + +# Show tree output with permissions and file size +# Save as file treeplug +# t:-!treeplug + +tree -ps | $EDITOR - +------------------------------------------------- +#!/usr/bin/env sh + +# List files with UID/GID +# Save as file uidgid +# u:-!uidgid + +ls -lah --group-directories-first | less +------------------------------------------------- +#!/usr/bin/env sh + +# Show hovered file data in hex +# Save as file hexview +# x:-!hexview + +if [ -f "$1" ]; then + xxd "$1" | $PAGER +fi +------------------------------------------------- +#!/usr/bin/env sh + +# Show hovered PDF text +# Save as file pdftxt +# p:-!pdftxt + +if [ -f "$1" ] && [ "$(head -c 4 "$1")" = "%PDF" ]; then + pdftotext -nopgbrk -layout "$1" - | sed 's/\xe2\x80\x8b//g' | $PAGER + + # Convert using mutool + # file=`basename "$1"` + # txt=/tmp/"$file".txt + # mutool convert -o "$txt" "$1" + # eval $PAGER $txt + # rm "$txt +fi +``` ## Contributing plugins -- 2.48.1