Seraphli / obsidian-aggregator

This plugin helps you gather information from files, and make a summary in the file.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Obsidian Aggregator

This plugin helps you gather information from files, and make a summary in the file.

Although it is difficult to write the regular expression, once it's done, it will help you a lot.

Preview

A collection of blocks with a tag. Example1

example1-preview

A collection of annotator blocks with tags. Example2

example2-preview

A stat table that is generated from a folder with custom helper supported. Example3

example3-preview

Usage

Create a code block like this, and set the language to the aggregator. Then this plugin will find content based on RegExp and render the result with the template.

scope:
    - Current File
matches:
    - regex: '>%%\n>```annotation-json\n>.*\n>```\n>%%\n>\*%%PREFIX%%.*\n>%%LINK%%.*\n>%%COMMENT%%\n>.*\n>%%TAGS%%\n>\#[a-zA-Z0-9\_]+\n\^[a-zA-Z0-9]*'
      template: '{{{result.match.[0]}}}'

If you want to sort the results, you can specify the fields and orders like this.

scope:
    - Current File
    - Papers
matches:
    - regex: '^\w[^\#]*\#[a-zA-Z0-9\_]+\s*$'
      template: '{{{result.match.[0]}}}'
    - regex: '>%%\n>```annotation-json\n>.*\n>```\n>%%\n>\*%%PREFIX%%.*\n>%%LINK%%.*\n>%%COMMENT%%\n>.*\n>%%TAGS%%\n>\#[a-zA-Z0-9\_]+\n\^[a-zA-Z0-9]*'
      template: '{{{result.match.[0]}}}'
order:
    fields: filename, line
    orders: asc, asc

Argument Explain

Check out Arguments.md.

Example Usage

Check out docs for detailed examples.

Settings

Note the default join string is not empty. It's just the text area can not display \n\n.

File Indicator is a Handlebars template. Available data: file: TFile, index: number starts at 1.

See Also

obsidian-link-embed

Thanks

About

This plugin helps you gather information from files, and make a summary in the file.

License:MIT License


Languages

Language:TypeScript 90.6%Language:JavaScript 8.5%Language:CSS 0.9%