commit df02474

uint  ·  2026-03-10 18:30:01 +0000 UTC
parent 9218a7d
shrados: add `url URL` option
1 files changed,  +17, -6
+17, -6
 1@@ -210,6 +210,7 @@ Commands:
 2   cd ..                go up one directory
 3   cd /                 go to root
 4   watch n              play video at ls index using VIDEO_PLAYER
 5+  url URL              set server URL
 6   pwd                  show current folder
 7   quit | exit          leave shrados
 8 EOF2
 9@@ -247,6 +248,20 @@ cmd_ls()
10 # print current dir
11 cmd_pwd() { [ -n "$CUR_DIR" ] && printf '/%s\n' "$CUR_DIR" || printf '/\n'; }
12 
13+# set server URL and reload library from new endpoint
14+cmd_url()
15+{
16+	[ $# -eq 1 ] || { printf '%s\n' "usage: url <http://host:port>" >&2; return 1; }
17+	PARADOS_URL=$1
18+	CUR_DIR=""
19+	if refresh_library; then
20+		printf 'server: %s\n' "$PARADOS_URL"
21+	else
22+		printf 'server set to: %s\n' "$PARADOS_URL"
23+		return 1
24+	fi
25+}
26+
27 # change directory based on ls index, .., or /
28 cmd_cd()
29 {
30@@ -373,6 +388,7 @@ dispatch()
31 		ls) cmd_ls ;;
32 		cd) cmd_cd "$@" ;;
33 		watch) cmd_watch "$@" ;;
34+		url) cmd_url "$@" ;;
35 		pwd) cmd_pwd ;;
36 		quit|exit) return 99 ;;
37 		'') return 0 ;;
38@@ -388,12 +404,7 @@ main()
39 	: > "$LIB_FILE"; : > "$MAP_FILE"
40 
41 	if [ "${1:-}" = "--help" ] || [ "${1:-}" = "-h" ]; then cmd_help; exit 0; fi
42-	if [ "${1:-}" = "--url" ]; then
43-		[ $# -ge 2 ] || die "missing value for --url"
44-		PARADOS_URL=$2
45-		shift 2
46-	fi
47-	[ $# -eq 0 ] || die "usage: shrados.sh [--url URL]"
48+	[ $# -eq 0 ] || die "usage: shrados"
49 
50 	load_auth_cache
51 	if ! refresh_library; then printf '%s\n' "not logged in. use: login" >&2; fi