
# Fetch the rule from the website.

___x_cmd_md_rule(){
    while [ $# -gt 0 ]; do
        case "$1" in
            -h|--help)      ___x_cmd help -m md rule "$@" ; return 0 ;;
            *)              ___x_cmd_md_rule___auto "$1" || return $? ; shift ;;
        esac
    done
}

___x_cmd_md_rule___auto(){
    local id="$1"
    id="${id##"[*md"}"
    id="${id##*"[MD"}"
    id="${id%%"]*"}"

    case "$id" in
        ?)          id="00${id}" ;;
        ??)         id="0${id}"  ;;
        ???)        ;;
        *)          md:error "unknown md rule -> $id" ; return 1 ;;
    esac

    ___x_cmd_md_rule___md
}

___x_cmd_md_rule___md(){
    ___x_cmd ccmd 1d -- ___x_cmd_md_rule___raw "$id"
}

___x_cmd_md_rule___raw(){
    ___x_cmd curl --fail -q "https://codeberg.org/x-cmd-sourcecode/rumdl/raw/branch/main/docs/md${id}.md" 2>/dev/null
}
