aboutsummaryrefslogtreecommitdiff
path: root/.local/bin/sfeed_fzf
blob: 5c432b864795d824475fe7d3d01dc927ad9dd574 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh -eu

config=$XDG_CONFIG_HOME/sfeed/sfeedrc
unread=$XDG_CONFIG_HOME/sfeed/unread
read=$XDG_CONFIG_HOME/sfeed/read
feeds=$XDG_CONFIG_HOME/sfeed/feeds

touch "$read"

sfeed_update "$config" || true

sfeed_plain_function() {
  sfeed_plain "$feeds"/* |
    sed 's/^[N ]\+//g' |
    sort --reverse |
    grep --invert-match --fixed-strings --file "$read" > "$unread"
}

sfeed_plain_function
fzf < "$unread" \
  --multi \
  --info hidden \
  --bind "enter:execute(firefox \$(echo {} | awk '{ print \$NF }'))" \
  --bind "ctrl-d:reload(echo {} >> $read && { sfeed_plain $feeds/* | sed 's/^[N ]\+//g' | sort --reverse | grep --invert-match --fixed-strings --file $read > $unread && cat $unread; })"