CasperSecurity

Current Path : /snap/core24/1349/bin/
Upload File :
Current File : //snap/core24/1349/bin/sensible-editor

#!/bin/sh
# Copyright 2007 Jari Aalto;
# Copyright 2019-2022 Bastien Roucariès
# Copyright 2022 Richard Lewis
# Released under GNU GPL v2 or any later version
PATH="$PATH:/usr/share/sensible-utils/bin"

program="$(realpath "$(command -v "$0")")"

Try()
{
    $candidate "$@"
    ret=$?
    [ "$ret" -ne 126 ] && [ "$ret" -ne 127 ] && exit "$ret"
}

TryEnv()
{
    # global $candidate
    [ -z "$candidate" ] && return
    # Prevent recursive loops, where environment variables are set to this script
    [ x$(realpath "$(command -v "$candidate" || true)" || true) = x"$program" ] && return
    # interpret like environ (7) man page. Do not use eval in order to not leak variables
    sh -c "$candidate \"\$@\"" EDITOR "$@"
    ret=$?
    # Operating system command not found
    [ "$ret" -ne 126 ] && [ "$ret" -ne 127 ] && exit "$ret"
}


# work around for #991982
nano ()
{
    if [ -z "$TERM" ]; then
	return 126
    else
	command nano "$@"
    fi
}

for candidate in "$VISUAL" "$EDITOR" "$SENSIBLE_EDITOR" "$SELECTED_EDITOR"; do
    TryEnv "$@"
done

# fix #987675
if [ -n "$HOME" ]; then
    if [ -r ~/.selected_editor ]; then
	. ~/.selected_editor 2>/dev/null
    elif [ -z "$EDITOR" ] && [ -z "$SELECTED_EDITOR" ] && [ -t 0 ]; then
	select-editor && . ~/.selected_editor 2>/dev/null
    fi
fi

for candidate in "$EDITOR" "$SELECTED_EDITOR"; do
    TryEnv "$@"
done

for candidate in editor nano nano-tiny vi; do
    Try "$@"
done

echo "Couldn't find an editor!" 1>&2
echo 'Set the $EDITOR environment variable to your desired editor.' 1>&2
exit 1

Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY