literate-dotfiles/dotfiles/newsboat.org
2019-05-16 21:13:08 +02:00

239 lines
9.0 KiB
Org Mode

#+TITLE: Newsboat Configuration
https://wiki.archlinux.org/index.php/Newsboat
https://newsboat.org/releases/2.12/docs/newsboat.html
* Config
:PROPERTIES:
:header-args: :tangle ~/.config/newsboat/config
:header-args+: :comments both :mkdirp yes
:END:
** Reload configuration
#+BEGIN_SRC conf
# All feeds will be automatically reloaded after a certain time has passed
auto-reload yes
# The number of minutes between automatic reloads.
reload-time 180
# The number of parallel reload threads that shall be started when all feeds are reloaded.
reload-threads 3
# If set to yes, then the first automatic reload will be suppressed if auto-reload is set to yes.
suppress-first-reload yes
#+END_SRC
** Basic configuration
#+BEGIN_SRC conf
confirm-exit no
external-url-viewer "urlscan -dc -r 'linkhandler {}'"
goto-first-unread no
goto-next-feed no
save-path "~/Saved Articles"
download-path "~/Downloads"
# If set to no, then the keymap hints on the bottom of screen will not be displayed.
show-keymap-hint no
feed-sort-order none
#+END_SRC
** Notifications
#+BEGIN_SRC conf
notify-format "%n unread articles"
notify-program ~/scripts/newsboat-notify.sh
notify-always no
#+END_SRC
*** Notification Script
:PROPERTIES:
:header-args: :tangle ~/scripts/newsboat-notify.sh
:header-args+: :comments both :mkdirp yes
:header-args+: :shebang "#!/usr/bin/env bash"
:END:
#+begin_src bash
dunstify -replace=38492 "Newsbeuter " "$1"
#+end_src
** Bindings
#+BEGIN_SRC conf
bind-key j down
bind-key k up
bind-key j next articlelist
bind-key k prev articlelist
bind-key J next-feed articlelist
bind-key K prev-feed articlelist
bind-key G end
bind-key g home
bind-key d pagedown
bind-key u pageup
bind-key l open
bind-key h quit
bind-key a toggle-article-read
bind-key n next-unread
bind-key N prev-unread
bind-key D pb-download
bind-key U show-urls
# bind-key x pb-delete
bind-key t set-tag
bind-key T clear-tag
bind-key r reload # Reload the currently selected feed
bind-key R reload-all # Reload all feeds
#+END_SRC
** Macros - Starts with , key
#+BEGIN_SRC conf
# Default Browser
browser "qutebrowser %u"
# Open in Browser
macro , open-in-browser
# Download Video with Youtube-DL
# TODO - Should write a script for that? Maybe open a tmux script if newsboat is in tmux pane?
macro t set browser "~/scripts/download-video.sh %u" ; open-in-browser ; set browser "qutebrowser %u"
# Download Audio with Youtube-DL
macro a set browser "~/scripts/download-audio.sh %u" ; open-in-browser ; set browser "qutebrowser %u"
# Open Video with MPV
macro v set browser "setsid nohup mpv %u &> /dev/null &" ; open-in-browser ; set browser "qutebrowser %u"
# Open With W3M
macro w set browser "w3m %u" ; open-in-browser ; set browser "qutebrowser %u"
# Copy Address to clipboard
macro c set browser "xsel -b <<<" ; open-in-browser ; set browser "qutebrowser %u"
#+END_SRC
** hide articles matching
#+BEGIN_SRC conf
ignore-article "*" "title =~ \"Sponsor\""
ignore-article "*" "title =~ \"Advertisement\""
ignore-mode "display"
#+END_SRC
** Feedlist and Article Format
#+BEGIN_SRC conf
feedlist-format "%4i %n %11u %t"
feedlist-title-format "N %V - Your feeds (%u unread, %t total)%?T? - tag `%T'&?"
articlelist-format "%3i %f %D %?T?|%-17T| ?%t"
articlelist-title-format "%N %V - Articles in feed '%T' (%u unread, %t total) - %U"
itemview-title-format "Article '%T'"
#+END_SRC
** Color Scheme
#+BEGIN_SRC conf
include "~/.config/newsboat/colors"
#+END_SRC
* Colors
:PROPERTIES:
:header-args: :tangle ~/.config/newsboat/colors
:header-args+: :comments both :mkdirp yes
:END:
#+BEGIN_SRC conf
highlight feedlist "^ *[0-9]+ *N " cyan cyan
highlight articlelist "^ *[0-9]+ *N " cyan cyan
highlight article "(^Feed:.*|^Title:.*|^Author:.*)" red default
highlight article "(^Link:.*|^Date:.*)" white default
highlight article "^Podcast Download URL:.*" cyan default
highlight article "^Links:" magenta black underline
highlight article "https?://[^ ]+" green default
highlight article "^(Title):.*$" blue default
highlight article "\\[[0-9][0-9]*\\]" magenta default bold
highlight article "\\[image\\ [0-9]+\\]" green default bold
highlight article "\\[embedded flash: [0-9][0-9]*\\]" green default bold
highlight article ":.*\\(link\\)$" cyan default
highlight article ":.*\\(image\\)$" blue default
highlight article ":.*\\(embedded flash\\)$" magenta default
color background default default
color listnormal default default
color listnormal_unread white default
color listfocus color255 cyan bold
color listfocus_unread color255 cyan bold
color info cyan black
color article default default
#+END_SRC
* URLS
:PROPERTIES:
:header-args: :tangle ~/.config/newsboat/urls
:header-args+: :comments both :mkdirp yes
:END:
** NEWSFEEDS
*** Linux
#+begin_src conf
https://itsfoss.com/feed/ "~NEWSFEED: It's Foss" linux
https://lukesmith.xyz/rss.xml "~NEWSFEED: Lukesmith" linux
https://lord.re/index.xml "~NEWSFEED: /home/lord" linux
http://feeds.cyberciti.biz/Nixcraft-LinuxFreebsdSolarisTipsTricks "~NEWSFEED: nixCraft" linux
http://frederic.bezies.free.fr/blog/?feed=rss2 "~NEWSFEED: Le Weblog de Frederic Bezies" linux
https://addy-dclxvi.github.io/index.xml "~NEWSFEED: Addy's Blog" linux
http://feeds.feedburner.com/linoxideblog "~NEWSFEED: LinOxide" linux
#+end_src
*** Emacs
#+begin_src conf
http://www.planet.emacsen.org/atom.xml "~NEWSFEED: Planet Emacs" emacs
http://sachachua.com/blog/feed/ "~NEWSFEED: Sacha Chua" emacs
https://scripter.co/categories/org/index.xml "~NEWSFEED: Scripter" emacs
http://kitchingroup.cheme.cmu.edu/blog/feed "~NEWSFEED: The Kitchin Research Group" emacs
http://irreal.org/blog/?feed=rss2 "~NEWSFEED: Irreal" emacs
https://emacs.cafe/feed.xml "~NEWSFEED: Emacs café" emacs
http://pragmaticemacs.com/feed/ "~NEWSFEED: Pragmatic Emacs" emacs
https://pinecast.com/feed/emacscast "~NEWSFEED: EmacsCast" emacs
http://feeds.feedburner.com/CestLaZ "~newsfeed: c'est la Z" emacs
https://joshrollinswrites.com/index.xml "The Art of Not Asking Why" emacs
#+end_src
*** Other
#+begin_src conf
http://xkcd.com/rss.xml "~NEWSFEED: XKCD" fun
#+end_src
** Youtube
#+begin_src conf
https://www.youtube.com/feeds/videos.xml?channel_id=UCkK9UDm_ZNrq_rIXCz3xCGA "~YOUTUBE: Bryan Lunduke" youtube unix
https://www.youtube.com/feeds/videos.xml?channel_id=UC2eYFnH61tmytImy1mTYvhA "~YOUTUBE: Luke Smith" youtube unix
https://www.youtube.com/feeds/videos.xml?channel_id=UCXPHFM88IlFn68OmLwtPmZA "~YOUTUBE: Greg Hurrell" youtube unix
https://www.youtube.com/feeds/videos.xml?channel_id=UCUR1pFG_3XoZn3JNKjulqZg "~YOUTUBE: Thoughtbot" youtube unix
https://www.youtube.com/feeds/videos.xml?channel_id=UCOuIgj0CYCXCvjWywjDbauw "~YOUTUBE: Chat sceptique" youtube science
https://www.youtube.com/feeds/videos.xml?channel_id=UCMFcMhePnH4onVHt2-ItPZw "~YOUTUBE: Hygiène Mentale" youtube science
https://www.youtube.com/feeds/videos.xml?channel_id=UCxqAWLTk1CmBvZFPzeZMd9A "~YOUTUBE: Domain of Science" youtube science
https://www.youtube.com/feeds/videos.xml?channel_id=UC2LZO6swZ9SLUEOks3WnsfA "~YOUTUBE: 2veritasium" youtube science
https://www.youtube.com/feeds/videos.xml?channel_id=UCaNlbnghtwlsGF-KzAFThqA "~YOUTUBE: ScienceEtonnante" youtube science
https://www.youtube.com/feeds/videos.xml?channel_id=UCHnyfMqiRRG1u-2MsSQLbXA "~YOUTUBE: Veritasium" youtube science
https://www.youtube.com/feeds/videos.xml?channel_id=UCEfFUaIkjbI06PhALdcXNVA "~YOUTUBE: EmacsCast" youtube emacs
https://www.youtube.com/feeds/videos.xml?channel_id=UCkRmQ_G_NbdbCQMpALg6UPg "~YOUTUBE: Emacsrocks" youtube emacs
https://www.youtube.com/feeds/videos.xml?channel_id=UCQp2VLAOlvq142YN3JO3y8w "~YOUTUBE: John Kitchin" youtube emacs
https://www.youtube.com/feeds/videos.xml?channel_id=UCq0imsn84ShAe9PBOFnoIrg "~YOUTUBE: Brian Douglas" youtube control
https://www.youtube.com/feeds/videos.xml?channel_id=UCm5mt-A4w61lknZ9lCsZtBw "~YOUTUBE: Steve Brunton" youtube control
https://www.youtube.com/feeds/videos.xml?channel_id=UC7vVhkEfw4nOGp8TyDk7RcQ "~YOUTUBE: BostonDynamics" youtube control
https://www.youtube.com/feeds/videos.xml?channel_id=UCmkP178NasnhR3TWQyyP4Gw "~YOUTUBE: How To Mechatronics" youtube control
https://www.youtube.com/feeds/videos.xml?channel_id=UCSqyMHDUsc1gs6wz4sUy91w "~YOUTUBE: Jipihorn" youtube acoustic
#+end_src