Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
export const obsidianExportPath =
'/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';;

3 changes: 3 additions & 0 deletions .env copy
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
export const obsidianExportPath =
'/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';

3 changes: 3 additions & 0 deletions .history/.env copy_20250714222050
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
export const obsidianExportPath =
'/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';;

3 changes: 3 additions & 0 deletions .history/.env copy_20250714222052
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
export const obsidianExportPath =
'/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';;

3 changes: 3 additions & 0 deletions .history/.env copy_20250714222119
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
export const obsidianExportPath =
'/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';

Empty file added .history/.env_20250714221322
Empty file.
2 changes: 2 additions & 0 deletions .history/.env_20250714221515
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export const obsidianExportPath =
'/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';
2 changes: 2 additions & 0 deletions .history/.env_20250714221531
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export const obsidianExportPath =
'/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';
3 changes: 3 additions & 0 deletions .history/.env_20250714221935
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
export const obsidianExportPath =
'/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';;

1 change: 1 addition & 0 deletions .history/FRONTMATTER_RULES_EXAMPLE_20250714220354.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

105 changes: 105 additions & 0 deletions .history/FRONTMATTER_RULES_EXAMPLE_20250714220357.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
# Frontmatter-Based Icon Rules Example

This document demonstrates how to use the new automatic frontmatter-based icon management feature in Obsidian Iconize.

## What it does

The feature automatically manages file icons based on frontmatter properties, such as quality scores, ratings, or any other metadata. Icons are:
- **Added** to files that meet the criteria and don't already have manually set icons
- **Removed** from files that no longer meet the criteria (but only if they were set by this system)
- **Avoided conflicts** with manually set icons or other plugin settings

## Example Usage

### Setup Rules

1. Go to Settings → Iconize → Frontmatter-based icon rules
2. Enable "Automatic frontmatter-based icon rules"
3. Add a new rule:
- **Rule name**: "High Quality Notes"
- **Apply to**: Files only
- **Frontmatter field**: quality
- **Condition**: greater than or equal
- **Value**: 8
- **Icon**: ⭐ (or any icon from icon packs)

### Example Files

**File with high quality score** (gets icon automatically):
```yaml
---
quality: 9
title: "Important Research Notes"
---

This file will automatically get a star icon because quality >= 8.
```

**File with low quality score** (no icon):
```yaml
---
quality: 5
title: "Draft Notes"
---

This file won't get an icon because quality < 8.
```

**File without quality metadata** (no icon):
```yaml
---
title: "Regular Notes"
---

This file won't get an icon because it has no quality field.
```

## Supported Operators

- **equals**: Field value exactly matches
- **not-equals**: Field value does not match
- **greater-than**: Numeric field value is greater than
- **greater-equal**: Numeric field value is greater than or equal
- **less-than**: Numeric field value is less than
- **less-equal**: Numeric field value is less than or equal
- **contains**: String field value contains substring
- **not-contains**: String field value does not contain substring
- **exists**: Field exists in frontmatter
- **not-exists**: Field does not exist in frontmatter

## Advanced Examples

### Rating System
```yaml
# Rule: rating >= 4 → ⭐
# Rule: rating <= 2 → ❌
---
rating: 5
---
```

### Status-Based Icons
```yaml
# Rule: status equals "completed" → ✅
# Rule: status equals "in-progress" → 🔄
# Rule: status equals "todo" → 📝
---
status: completed
---
```

### Tag-Based Icons
```yaml
# Rule: tags contains "important" → ❗
---
tags: ["work", "important", "project"]
---
```

## Priority System

1. **Manual icons** (highest priority) - never overridden
2. **Frontmatter rules** (medium priority) - applied automatically
3. **Custom path rules** (lowest priority) - existing system

The system will never override manually set icons, ensuring your intentional choices are preserved.
1 change: 1 addition & 0 deletions .history/FRONTMATTER_RULES_EXAMPLE_20250714221218.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

1 change: 1 addition & 0 deletions .history/env_20250714221143.js
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

1 change: 1 addition & 0 deletions .history/env_20250714221146.js
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export const obsidianExportPath = './build/';
1 change: 1 addition & 0 deletions .history/env_20250714221214.js
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

2 changes: 2 additions & 0 deletions .history/env_20250714221726.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
// Replace this path with your actual Obsidian vault path
export const obsidianExportPath = '/path/to/your/obsidian/vault/.obsidian/plugins/obsidian-iconize/';
4 changes: 4 additions & 0 deletions .history/env_20250714222638.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
// Replace this path with your actual Obsidian vault path
export const obsidianExportPath =
'/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';

4 changes: 4 additions & 0 deletions .history/env_20250714222639.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
// Replace this path with your actual Obsidian vault path
export const obsidianExportPath =
'/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';

5 changes: 5 additions & 0 deletions .history/env_20250714222705.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
// Update this path to point to your actual Obsidian vault
// Example: If your vault is at /Users/kayajones/Documents/MyVault
// Then set this to: /Users/kayajones/Documents/MyVault/.obsidian/plugins/obsidian-iconize/
export const obsidianExportPath = '/Users/kayajones/Documents/YourVaultName/.obsidian/plugins/obsidian-iconize/';

3 changes: 3 additions & 0 deletions .history/env_20250714222714.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
// Path to your Obsidian vault's plugin directory
export const obsidianExportPath = '/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';

3 changes: 3 additions & 0 deletions .history/env_20250714231207.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
// Path to your Obsidian vault's plugin directory
export const obsidianExportPath = '/Users/kayajones/Library/Mobile Documents/iCloud~md~obsidian/Documents/my brain/.obsidian/plugins/obsidian-iconize/';

1 change: 1 addition & 0 deletions .history/src/lib/frontmatter-rule_20250714215920.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

Loading