This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

superconfig / skills / hedgedoc / pad.sh
1.6 kB 58 lines
1#!/usr/bin/env bash 2# HedgeDoc pad management script 3# Usage: 4# pad.sh read <pad-id> - Read pad content 5# pad.sh create [file|-] - Create new pad, returns URL 6# pad.sh edit <pad-id> [file|-] - Replace pad content in-place 7# pad.sh info <pad-id> - Get pad metadata 8 9set -euo pipefail 10 11HEDGEDOC_URL="https://pad.lassul.us" 12SKILL_DIR="${SKILL_DIR:-$(cd "$(dirname "$0")" && pwd)}" 13 14cmd="${1:-help}" 15shift || true 16 17case "$cmd" in 18 read) 19 PADID="${1:?Usage: pad.sh read <pad-id>}" 20 curl -sf "${HEDGEDOC_URL}/${PADID}/download" 21 ;; 22 23 create) 24 if [ -n "${1:-}" ] && [ -f "$1" ]; then 25 CONTENT=$(cat "$1") 26 elif [ -n "${1:-}" ] && [ "$1" = "-" ]; then 27 CONTENT=$(cat) 28 else 29 CONTENT=$(cat) 30 fi 31 PAD_URL=$(curl -s -o /dev/null -w "%{redirect_url}" \ 32 -X POST "${HEDGEDOC_URL}/new" \ 33 -H "Content-Type: text/markdown" \ 34 -d "$CONTENT") 35 echo "$PAD_URL" 36 ;; 37 38 edit) 39 PADID="${1:?Usage: pad.sh edit <pad-id> [file|-]}" 40 shift 41 exec "$SKILL_DIR/pad-edit.py" "$PADID" "$@" 42 ;; 43 44 info) 45 PADID="${1:?Usage: pad.sh info <pad-id>}" 46 curl -sf "${HEDGEDOC_URL}/${PADID}/info" 47 ;; 48 49 help|*) 50 echo "Usage: pad.sh <command> [args]" 51 echo "" 52 echo "Commands:" 53 echo " read <pad-id> Read pad content (markdown)" 54 echo " create [file|-] Create new pad, returns URL" 55 echo " edit <pad-id> [file|-] Replace pad content in-place via websocket" 56 echo " info <pad-id> Get pad metadata (JSON)" 57 ;; 58esac