390 lines
14 KiB
HTML
390 lines
14 KiB
HTML
|
|
<!DOCTYPE html>
|
||
|
|
<html lang="en">
|
||
|
|
<head>
|
||
|
|
<meta charset="UTF-8">
|
||
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
|
|
<title>Configuration - DWN Documentation</title>
|
||
|
|
<link rel="stylesheet" href="css/style.css">
|
||
|
|
</head>
|
||
|
|
<body>
|
||
|
|
<button class="mobile-menu-btn">Menu</button>
|
||
|
|
|
||
|
|
<div class="layout">
|
||
|
|
<aside class="sidebar">
|
||
|
|
<div class="sidebar-header">
|
||
|
|
<h1>DWN</h1>
|
||
|
|
<span class="version">v1.0.0</span>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<div class="search-box">
|
||
|
|
<input type="text" class="search-input" placeholder="Search docs...">
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<nav class="sidebar-nav">
|
||
|
|
<div class="nav-section">
|
||
|
|
<div class="nav-section-title">Getting Started</div>
|
||
|
|
<a href="index.html" class="nav-link">Introduction</a>
|
||
|
|
<a href="installation.html" class="nav-link">Installation</a>
|
||
|
|
<a href="quickstart.html" class="nav-link">Quick Start</a>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<div class="nav-section">
|
||
|
|
<div class="nav-section-title">User Guide</div>
|
||
|
|
<a href="features.html" class="nav-link">Features</a>
|
||
|
|
<a href="shortcuts.html" class="nav-link">Keyboard Shortcuts</a>
|
||
|
|
<a href="configuration.html" class="nav-link">Configuration</a>
|
||
|
|
<a href="layouts.html" class="nav-link">Layouts</a>
|
||
|
|
<a href="ai-features.html" class="nav-link">AI Integration</a>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<div class="nav-section">
|
||
|
|
<div class="nav-section-title">API Reference</div>
|
||
|
|
<a href="api-overview.html" class="nav-link">API Overview</a>
|
||
|
|
<a href="api-reference.html" class="nav-link">API Reference</a>
|
||
|
|
<a href="api-examples.html" class="nav-link">API Examples</a>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<div class="nav-section">
|
||
|
|
<div class="nav-section-title">Advanced</div>
|
||
|
|
<a href="architecture.html" class="nav-link">Architecture</a>
|
||
|
|
<a href="building.html" class="nav-link">Building from Source</a>
|
||
|
|
</div>
|
||
|
|
</nav>
|
||
|
|
</aside>
|
||
|
|
|
||
|
|
<main class="main-content">
|
||
|
|
<div class="content">
|
||
|
|
<div class="page-header">
|
||
|
|
<h1>Configuration</h1>
|
||
|
|
<p class="lead">Customize DWN to your preferences</p>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<h2>Configuration File</h2>
|
||
|
|
<p>DWN uses an INI-style configuration file located at:</p>
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>~/.config/dwn/config</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<p>Create it from the example:</p>
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>mkdir -p ~/.config/dwn
|
||
|
|
cp /etc/dwn/config.example ~/.config/dwn/config</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<h2>Configuration Sections</h2>
|
||
|
|
|
||
|
|
<h3>[general] - Core Settings</h3>
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>[general]
|
||
|
|
terminal = xfce4-terminal
|
||
|
|
launcher = dmenu_run
|
||
|
|
file_manager = thunar
|
||
|
|
focus_mode = click
|
||
|
|
focus_follow_delay = 100
|
||
|
|
decorations = true</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<div class="table-container">
|
||
|
|
<table>
|
||
|
|
<thead>
|
||
|
|
<tr>
|
||
|
|
<th>Option</th>
|
||
|
|
<th>Default</th>
|
||
|
|
<th>Description</th>
|
||
|
|
</tr>
|
||
|
|
</thead>
|
||
|
|
<tbody>
|
||
|
|
<tr>
|
||
|
|
<td><code>terminal</code></td>
|
||
|
|
<td>xfce4-terminal</td>
|
||
|
|
<td>Terminal emulator command</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>launcher</code></td>
|
||
|
|
<td>dmenu_run</td>
|
||
|
|
<td>Application launcher command</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>file_manager</code></td>
|
||
|
|
<td>thunar</td>
|
||
|
|
<td>File manager command</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>focus_mode</code></td>
|
||
|
|
<td>click</td>
|
||
|
|
<td><code>click</code> or <code>follow</code> (sloppy focus)</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>focus_follow_delay</code></td>
|
||
|
|
<td>100</td>
|
||
|
|
<td>Delay in ms for focus-follow mode (0-1000)</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>decorations</code></td>
|
||
|
|
<td>true</td>
|
||
|
|
<td>Show window decorations (title bar)</td>
|
||
|
|
</tr>
|
||
|
|
</tbody>
|
||
|
|
</table>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<h3>[appearance] - Visual Settings</h3>
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>[appearance]
|
||
|
|
border_width = 0
|
||
|
|
title_height = 28
|
||
|
|
panel_height = 32
|
||
|
|
gap = 0
|
||
|
|
font = fixed</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<div class="table-container">
|
||
|
|
<table>
|
||
|
|
<thead>
|
||
|
|
<tr>
|
||
|
|
<th>Option</th>
|
||
|
|
<th>Range</th>
|
||
|
|
<th>Description</th>
|
||
|
|
</tr>
|
||
|
|
</thead>
|
||
|
|
<tbody>
|
||
|
|
<tr>
|
||
|
|
<td><code>border_width</code></td>
|
||
|
|
<td>0-50</td>
|
||
|
|
<td>Window border width in pixels</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>title_height</code></td>
|
||
|
|
<td>0-100</td>
|
||
|
|
<td>Title bar height in pixels</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>panel_height</code></td>
|
||
|
|
<td>0-100</td>
|
||
|
|
<td>Panel height in pixels</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>gap</code></td>
|
||
|
|
<td>0-100</td>
|
||
|
|
<td>Gap between windows in pixels</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>font</code></td>
|
||
|
|
<td>-</td>
|
||
|
|
<td>X11 font name</td>
|
||
|
|
</tr>
|
||
|
|
</tbody>
|
||
|
|
</table>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<h3>[layout] - Layout Behavior</h3>
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>[layout]
|
||
|
|
default = tiling
|
||
|
|
master_ratio = 0.55
|
||
|
|
master_count = 1</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<div class="table-container">
|
||
|
|
<table>
|
||
|
|
<thead>
|
||
|
|
<tr>
|
||
|
|
<th>Option</th>
|
||
|
|
<th>Values</th>
|
||
|
|
<th>Description</th>
|
||
|
|
</tr>
|
||
|
|
</thead>
|
||
|
|
<tbody>
|
||
|
|
<tr>
|
||
|
|
<td><code>default</code></td>
|
||
|
|
<td>tiling, floating, monocle</td>
|
||
|
|
<td>Default layout for new workspaces</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>master_ratio</code></td>
|
||
|
|
<td>0.1-0.9</td>
|
||
|
|
<td>Master area ratio in tiling layout</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>master_count</code></td>
|
||
|
|
<td>1-10</td>
|
||
|
|
<td>Number of windows in master area</td>
|
||
|
|
</tr>
|
||
|
|
</tbody>
|
||
|
|
</table>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<h3>[panels] - Panel Visibility</h3>
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>[panels]
|
||
|
|
top = true
|
||
|
|
bottom = true</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<h3>[colors] - Color Scheme</h3>
|
||
|
|
<p>Colors are specified in hex format <code>#RRGGBB</code>.</p>
|
||
|
|
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>[colors]
|
||
|
|
panel_bg = #1a1a2e
|
||
|
|
panel_fg = #e0e0e0
|
||
|
|
workspace_active = #4a90d9
|
||
|
|
workspace_inactive = #3a3a4e
|
||
|
|
workspace_urgent = #d94a4a
|
||
|
|
title_focused_bg = #2d3a4a
|
||
|
|
title_focused_fg = #ffffff
|
||
|
|
title_unfocused_bg = #1a1a1a
|
||
|
|
title_unfocused_fg = #808080
|
||
|
|
border_focused = #4a90d9
|
||
|
|
border_unfocused = #333333
|
||
|
|
notification_bg = #2a2a3e
|
||
|
|
notification_fg = #ffffff</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<h3>[api] - WebSocket API</h3>
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>[api]
|
||
|
|
enabled = true
|
||
|
|
port = 8777</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<div class="table-container">
|
||
|
|
<table>
|
||
|
|
<thead>
|
||
|
|
<tr>
|
||
|
|
<th>Option</th>
|
||
|
|
<th>Default</th>
|
||
|
|
<th>Description</th>
|
||
|
|
</tr>
|
||
|
|
</thead>
|
||
|
|
<tbody>
|
||
|
|
<tr>
|
||
|
|
<td><code>enabled</code></td>
|
||
|
|
<td>false</td>
|
||
|
|
<td>Enable WebSocket API server</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>port</code></td>
|
||
|
|
<td>8777</td>
|
||
|
|
<td>API server port number</td>
|
||
|
|
</tr>
|
||
|
|
</tbody>
|
||
|
|
</table>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<h3>[ai] - AI Integration</h3>
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>[ai]
|
||
|
|
model = google/gemini-2.0-flash-exp:free
|
||
|
|
openrouter_api_key = sk-or-v1-your-key
|
||
|
|
exa_api_key = your-exa-key</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<p>API keys can also be set via environment variables:</p>
|
||
|
|
<ul>
|
||
|
|
<li><code>OPENROUTER_API_KEY</code></li>
|
||
|
|
<li><code>EXA_API_KEY</code></li>
|
||
|
|
</ul>
|
||
|
|
|
||
|
|
<h3>[autostart] - XDG Autostart</h3>
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>[autostart]
|
||
|
|
enabled = true
|
||
|
|
xdg_autostart = true
|
||
|
|
path = ~/.config/dwn/autostart.d</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<p>Directories scanned when <code>xdg_autostart = true</code>:</p>
|
||
|
|
<ul>
|
||
|
|
<li><code>/etc/xdg/autostart/*.desktop</code> - System defaults</li>
|
||
|
|
<li><code>~/.config/autostart/*.desktop</code> - User autostart</li>
|
||
|
|
<li><code>~/.config/dwn/autostart.d/*</code> - DWN-specific scripts</li>
|
||
|
|
</ul>
|
||
|
|
|
||
|
|
<h3>[demo] - Demo Mode Timing</h3>
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>[demo]
|
||
|
|
step_delay = 4000
|
||
|
|
ai_timeout = 15000
|
||
|
|
window_timeout = 5000</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<h2>Environment Variables</h2>
|
||
|
|
<div class="table-container">
|
||
|
|
<table>
|
||
|
|
<thead>
|
||
|
|
<tr>
|
||
|
|
<th>Variable</th>
|
||
|
|
<th>Description</th>
|
||
|
|
</tr>
|
||
|
|
</thead>
|
||
|
|
<tbody>
|
||
|
|
<tr>
|
||
|
|
<td><code>OPENROUTER_API_KEY</code></td>
|
||
|
|
<td>API key for AI command palette</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>EXA_API_KEY</code></td>
|
||
|
|
<td>API key for Exa semantic search</td>
|
||
|
|
</tr>
|
||
|
|
<tr>
|
||
|
|
<td><code>DISPLAY</code></td>
|
||
|
|
<td>X server to connect to</td>
|
||
|
|
</tr>
|
||
|
|
</tbody>
|
||
|
|
</table>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<h2>Example Configuration</h2>
|
||
|
|
<div class="code-block">
|
||
|
|
<pre><code>[general]
|
||
|
|
terminal = alacritty
|
||
|
|
launcher = rofi -show drun
|
||
|
|
file_manager = nautilus
|
||
|
|
focus_mode = click
|
||
|
|
decorations = true
|
||
|
|
|
||
|
|
[appearance]
|
||
|
|
border_width = 2
|
||
|
|
title_height = 24
|
||
|
|
panel_height = 28
|
||
|
|
gap = 5
|
||
|
|
font = monospace
|
||
|
|
|
||
|
|
[layout]
|
||
|
|
default = tiling
|
||
|
|
master_ratio = 0.55
|
||
|
|
master_count = 1
|
||
|
|
|
||
|
|
[panels]
|
||
|
|
top = true
|
||
|
|
bottom = false
|
||
|
|
|
||
|
|
[colors]
|
||
|
|
panel_bg = #282c34
|
||
|
|
panel_fg = #abb2bf
|
||
|
|
workspace_active = #61afef
|
||
|
|
workspace_inactive = #3e4451
|
||
|
|
border_focused = #61afef
|
||
|
|
border_unfocused = #3e4451
|
||
|
|
|
||
|
|
[api]
|
||
|
|
enabled = true
|
||
|
|
port = 8777
|
||
|
|
|
||
|
|
[autostart]
|
||
|
|
enabled = true
|
||
|
|
xdg_autostart = true</code></pre>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<footer>
|
||
|
|
<p>DWN Window Manager - retoor <retoor@molodetz.nl></p>
|
||
|
|
</footer>
|
||
|
|
</div>
|
||
|
|
</main>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<script src="js/main.js"></script>
|
||
|
|
</body>
|
||
|
|
</html>
|