Skip to content

Usage Guide

neo451 edited this page Nov 30, 2024 · 7 revisions

Basic Usage

  • To see actions available in the current context:

    • Either use :Feed <Tab> to see the completions
    • Or use :Feed <Enter> to see and select
  • To give arguments to a command, for example Feed update_feed which is a requires one additional argument

    • Either do :Feed update_feed neovim.io/news.xml, you get tab completion if available
    • Or just type the :Feed update_feed alone, and either select or type in the missing argument
  • Some important commands

name use default keymap (in the views managed by this plugin)
update update all feeds in database none
update_feed update a single feed none
show_index show the aggregate view / search results none
show_entry show the entry under cursor <CR>
search query the db s
refresh refresh the index r
tag/untag tag current entry +/-
open_in_browser open the current entry in browser b
urlview show an entry's urls and open them r in entry view
open_url open the link undercursor gx in entry view

Feed Management

From config

  • Pass your feeds as list of url and tags in setup
  • Use Feed update to update all or Feed update_feed to update one feed
require"feed".setup{
  feeds = {
     -- These two styles all work
     "https://neovim.io/news.xml",
     -- tags given to a feed to be tagged to all its entries
     { "https://neovim.io/news.xml", name = "Neovim News", tags = { "tech", "news" } }, 
     -- RssHub link is also a first class citizen like http/https
     -- rsshub://{route} will be the unique identifier in the database and resolved when fetching feeds which instance to use base on your config.rsshub_instance
     "rsshub://apnews/topics/apf-topnews" 
   }
 }

From opml

  • Use Feed load_opml to import your opml file
  • Use Feed export_opml to export your opml file to load in other readers

Feed Searching

DSL query

  • use Feed search to filter your feeds
  • Grammar
    • no modifier means regex, searches entries' title
      • = is also regex but matches the entries' feed
    • + means must_have, searches entries' tags
    • - means must_not_have, searches entries' tags
    • @ means date, searches entries' date
      • 2015-8-10 searches only entries after the date
      • 2-months-ago searches only entries within two months from now
      • 1-year-ago--6-months-ago means entries in the period
    • # means limit, limits the number of entries
    • Example: Feed search +blog +unread -star @6-months-ago #10 zig !rust shows 10 entries with tags blog and unread, without tag star, and are published within 6 month, making sure they have zig and not rust in the title.
    • the default query is +unread @6-months-ago

Live grep

  • use Feed grep to use telescope's live_grep (requires ripgrep) to do fulltext search accross your database.
Clone this wiki locally