diff options
author | typebrook <typebrook@gmail.com> | 2020-02-09 17:09:58 +0800 |
---|---|---|
committer | typebrook <typebrook@gmail.com> | 2020-02-09 17:09:58 +0800 |
commit | c68b07ab292257be868406a4e486b1bc7fe44292 (patch) | |
tree | 1650bf14d4d068fff7490f865881539a39f6bcca | |
parent | d69df73fbc97cadeabe0f07cd2d78163afd421b8 (diff) |
update
-rwxr-xr-x | scripts/gist | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/scripts/gist b/scripts/gist index 29bb1e1..a67eca6 100755 --- a/scripts/gist +++ b/scripts/gist | |||
@@ -202,7 +202,7 @@ _validate_config(){ | |||
202 | echo 'To create/edit/delete a gist, a token is needed' | 202 | echo 'To create/edit/delete a gist, a token is needed' |
203 | return 1 | 203 | return 1 |
204 | fi | 204 | fi |
205 | elif [[ -z $token && $1 =~ ^(u|update)$ && $2 =~ ^(s|star) ]]; then | 205 | elif [[ -z $token && $1 =~ ^(f|fetch)$ && $2 =~ ^(s|star) ]]; then |
206 | if ! (_ask_token); then | 206 | if ! (_ask_token); then |
207 | echo 'To get user starred gists, a token is needed' | 207 | echo 'To get user starred gists, a token is needed' |
208 | return 1 | 208 | return 1 |
@@ -239,8 +239,8 @@ _show_list() { | |||
239 | echo ' gist update' | 239 | echo ' gist update' |
240 | return 0 | 240 | return 0 |
241 | fi | 241 | fi |
242 | [[ -z $1 ]] && local filter='/^ *s/ d; /^$/ d' | 242 | local filter='/^ *s/ d; /^$/ d' |
243 | [[ $1 == "s" ]] && local filter='/^ *[^ s]/ d; /^$/ d' | 243 | [[ $mark == "s" ]] && filter='/^ *[^ s]/ d; /^$/ d' |
244 | 244 | ||
245 | sed -e "$filter" $INDEX \ | 245 | sed -e "$filter" $INDEX \ |
246 | | while read index link blob_code file_num comment_num author description; do | 246 | | while read index link blob_code file_num comment_num author description; do |
@@ -307,19 +307,18 @@ _fetch_gists() { | |||
307 | echo "fetching $user's gists from $GITHUB_API..." | 307 | echo "fetching $user's gists from $GITHUB_API..." |
308 | echo | 308 | echo |
309 | local route="users/$user/gists" | 309 | local route="users/$user/gists" |
310 | local mark="" | ||
311 | local filter='/^[^s]/ d; /^$/ d' | 310 | local filter='/^[^s]/ d; /^$/ d' |
312 | if [[ "$1" =~ ^(star|s)$ ]];then | 311 | if [[ "$1" =~ ^(star|s)$ ]];then |
313 | route="gists/starred" | 312 | route="gists/starred" |
314 | mark="s" | 313 | local mark="s" |
315 | filter='/^[s]/ d; /^$/ d' | 314 | filter='/^[s]/ d; /^$/ d' |
316 | fi | 315 | fi |
317 | 316 | ||
318 | result=$(http_method GET $GITHUB_API/$route | _parse_response) | 317 | result=$(http_method GET $GITHUB_API/$route | mark=$mark _parse_response) |
319 | [[ -z $result ]] && echo Failed to update gists && return 1 | 318 | [[ -z $result ]] && echo Failed to update gists && return 1 |
320 | 319 | ||
321 | sed -i'' -e "$filter" $INDEX && echo "$result" >> $INDEX | 320 | sed -i'' -e "$filter" $INDEX && echo "$result" >> $INDEX |
322 | _show_list $mark | 321 | mark=$mark _show_list |
323 | 322 | ||
324 | if [[ $auto_sync != 'false' ]]; then (_sync_repos $1 > /dev/null 2>&1 &); fi | 323 | if [[ $auto_sync != 'false' ]]; then (_sync_repos $1 > /dev/null 2>&1 &); fi |
325 | } | 324 | } |
@@ -546,7 +545,7 @@ case "$1" in | |||
546 | "") | 545 | "") |
547 | _show_list ;; | 546 | _show_list ;; |
548 | star | s) | 547 | star | s) |
549 | _show_list s ;; | 548 | mark=s _show_list ;; |
550 | fetch | f) | 549 | fetch | f) |
551 | _fetch_gists "$2" ;; | 550 | _fetch_gists "$2" ;; |
552 | new | n) | 551 | new | n) |