- Introduced three new layouts (default, minimal, slate) replacing class-based themes - Added comprehensive CSS variables for full customization of colors, fonts, borders, and link types - Updated README with new usage syntax, layout examples, and removed outdated todos
3.1 KiB
3.1 KiB
Menu Plugin for Obsidian
Create custom navigation menus in Obsidian using simple code blocks. Supports internal links, external URLs, and local file links with built-in themes and full customization.
Basic Usage
Create a menu using a menu code block with one of the built-in layouts:
```menu
layout: default
[[Home]]
[[Projects|My Projects]]
[Google](https://google.com)
[Documents](file:///C:/Users/YourName/Documents)
```
Built-in Layouts
default
Standard buttons with borders and backgrounds
```menu
layout: default
[[Dashboard]]
[GitHub](https://github.com)
[Files](file:///C:/Users/Documents)
```
minimal
Clean text links with subtle colors
```menu
layout: minimal
[[Notes]]
[Web](https://example.com)
[Folder](file:///C:/Projects)
```
slate
Solid background buttons
```menu
layout: slate
[[Home]]
[Links](https://obsidian.md)
```
horizon
Modern outlined style
```menu
layout: horizon
[[Dashboard]]
[Resources](https://example.com)
```
aether
Grid layout with equal-width items
```menu
layout: aether
[[Projects]]
[GitHub](https://github.com)
[Documents](file:///C:/Users/Documents)
```
Link Types
- Internal:
[[Note Name]]or[[Note Name|Display Text]] - External:
[Display Text](https://example.com) - Files:
[Display Text](file:///C:/path/to/file)
Color Customization
Add color properties using YAML syntax:
```menu
layout: default
bg: #1a1a1a
text: #ffffff
accent: #ff6b6b
border: #333333
[[Home]]
[GitHub](https://github.com)
```
Global Color Variables
bg: Background colortext: Text coloraccent: Hover/accent colorborder: Border colorhover-bg: Hover backgroundhover-border: Hover border colorfont: Font family
Link-Type Specific Colors
Customize each link type individually:
```menu
layout: minimal
internal-text: #00ff00
external-text: #ff6600
file-text: #0066ff
internal-font: "Arial"
external-font: "Georgia"
[[Internal Link]]
[External Link](https://example.com)
[File Link](file:///C:/Documents)
```
Available for each type (internal, external, file):
{type}-text: Text color{type}-bg: Background color{type}-border: Border color{type}-font: Font family{type}-accent: Hover text color{type}-hover-bg: Hover background{type}-hover-border: Hover border color
Advanced Examples
Gradient Background
```menu
layout: horizon
bg: linear-gradient(45deg, #667eea, #764ba2)
text: white
accent: #ffd700
[[Dashboard]]
[Projects](https://github.com)
```
Different Fonts Per Link Type
```menu
layout: default
font: "Inter"
internal-font: "Fira Code"
external-font: "Georgia"
file-font: "Arial"
[[Code Notes]]
[Articles](https://medium.com)
[Local Files](file:///C:/Documents)
```
Notes
- Use either
layout:orclass:(both work the same) - File paths use
file://protocol - Colors support hex, rgb, hsl, CSS variables, and gradients
- Font names with spaces need quotes:
font: "Work Sans"