Merge remote-tracking branch 'origin/main' into standalone

; Conflicts:
;	apps/client/src/layouts/mobile_layout.tsx
;	apps/client/src/services/promoted_attribute_definition_parser.ts
;	apps/server/package.json
;	apps/server/src/becca/entities/bnote.ts
;	apps/server/src/etapi/etapi_utils.ts
;	apps/server/src/etapi/notes.ts
;	apps/server/src/routes/api/clipper.ts
;	apps/server/src/routes/api/export.ts
;	apps/server/src/routes/api/files.ts
;	apps/server/src/routes/api/image.ts
;	apps/server/src/routes/api/import.ts
;	apps/server/src/routes/api/note_map.ts
;	apps/server/src/routes/api/search.ts
;	apps/server/src/routes/api/similar_notes.ts
;	apps/server/src/routes/api/sync.ts
;	apps/server/src/routes/error_handlers.ts
;	apps/server/src/routes/index.ts
;	apps/server/src/routes/route_api.ts
;	apps/server/src/routes/routes.ts
;	apps/server/src/services/anonymization.ts
;	apps/server/src/services/app_info.ts
;	apps/server/src/services/builtin_attributes.ts
;	apps/server/src/services/export/zip.ts
;	apps/server/src/services/hidden_subtree.ts
;	apps/server/src/services/llm/ai_service_manager.ts
;	apps/server/src/services/llm/context/modules/context_formatter.ts
;	apps/server/src/services/llm/context/note_content.ts
;	apps/server/src/services/llm/formatters/base_formatter.ts
;	apps/server/src/services/llm/formatters/ollama_formatter.ts
;	apps/server/src/services/llm/formatters/openai_formatter.ts
;	apps/server/src/services/llm/tools/read_note_tool.ts
;	apps/server/src/services/note_types.ts
;	apps/server/src/services/notes.ts
;	apps/server/src/services/options.ts
;	apps/server/src/services/options_init.ts
;	apps/server/src/services/search/expressions/note_content_fulltext.ts
;	apps/server/src/services/utils.ts
;	apps/server/src/services/ws.ts
;	apps/server/src/share/content_renderer.ts
;	packages/commons/src/lib/builtin_attributes.ts
;	packages/commons/src/lib/rows.ts
;	packages/trilium-core/src/routes/api/attachments.ts
;	packages/trilium-core/src/routes/api/attributes.ts
;	packages/trilium-core/src/routes/api/branches.ts
;	packages/trilium-core/src/routes/api/notes.ts
;	packages/trilium-core/src/routes/api/recent_changes.ts
;	packages/trilium-core/src/routes/api/revisions.ts
;	packages/trilium-core/src/routes/api/sql.ts
;	packages/trilium-core/src/routes/api/stats.ts
;	packages/trilium-core/src/services/attributes.ts
;	packages/trilium-core/src/services/builtin_attributes.ts
;	packages/trilium-core/src/services/promoted_attribute_definition_parser.ts
;	pnpm-lock.yaml
This commit is contained in:
Elian Doran
2026-03-22 12:56:14 +02:00
805 changed files with 30506 additions and 50300 deletions

View File

@@ -85,9 +85,10 @@ export default async function buildApp() {
app.use(`/robots.txt`, express.static(path.join(publicAssetsDir, "robots.txt")));
app.use(`/icon.png`, express.static(path.join(publicAssetsDir, "icon.png")));
const sessionParser = (await import("./routes/session_parser.js")).default;
const { default: sessionParser, startSessionCleanup } = await import("./routes/session_parser.js");
app.use(sessionParser);
app.use(favicon(path.join(assetsDir, "icon.ico")));
startSessionCleanup();
app.use(favicon(path.join(assetsDir, isDev ? "icon-dev.ico" : "icon.ico")));
if (openID.isOpenIDEnabled())
app.use(auth(openID.generateOAuthConfig()));
@@ -97,16 +98,16 @@ export default async function buildApp() {
custom.register(app);
error_handlers.register(app);
// triggers sync timer
await import("./services/sync.js");
const { startSyncTimer } = await import("./services/sync.js");
startSyncTimer();
// triggers backup timer
await import("./services/backup.js");
// trigger consistency checks timer
await import("./services/consistency_checks.js");
const { startConsistencyChecks } = await import("./services/consistency_checks.js");
startConsistencyChecks();
await import("./services/scheduler.js");
const { startScheduler } = await import("./services/scheduler.js");
startScheduler();
erase.startScheduledCleanup();

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 168 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 172 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 237 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 202 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 191 KiB

View File

@@ -1,162 +1,24 @@
<figure class="image image_resized" style="width:63.68%;">
<img style="aspect-ratio:1363/1364;" src="AI_image.png"
width="1363" height="1364">
<figcaption>An example chat with an LLM</figcaption>
</figure>
<p>The AI / LLM features within Trilium Notes are designed to allow you to
interact with your Notes in a variety of ways, using as many of the major
providers as we can support.&nbsp;</p>
<p>In addition to being able to send chats to LLM providers such as OpenAI,
Anthropic, and Ollama - we also support agentic tool calling, and embeddings.</p>
<p>The quickest way to get started is to navigate to the “AI/LLM” settings:</p>
<figure
class="image image_resized" style="width:74.04%;">
<img style="aspect-ratio:1916/1906;" src="5_AI_image.png"
width="1916" height="1906">
</figure>
<p>Enable the feature:</p>
<figure class="image image_resized" style="width:82.82%;">
<img style="aspect-ratio:1911/997;" src="1_AI_image.png"
width="1911" height="997">
</figure>
<h2>Embeddings</h2>
<p><strong>Embeddings</strong> are important as it allows us to have an compact
AI “summary” (it's not human readable text) of each of your Notes, that
we can then perform mathematical functions on (such as cosine similarity)
to smartly figure out which Notes to send as context to the LLM when you're
chatting, among other useful functions.</p>
<p>You will then need to set up the AI “provider” that you wish to use to
create the embeddings for your Notes. Currently OpenAI, Voyage AI, and
Ollama are supported providers for embedding generation.</p>
<p>In the following example, we're going to use our self-hosted Ollama instance
to create the embeddings for our Notes. You can see additional documentation
about installing your own Ollama locally in&nbsp;<a class="reference-link"
href="#root/_help_vvUCN7FDkq7G">Installing Ollama</a>.</p>
<p>To see what embedding models Ollama has available, you can check out
<a
href="https://ollama.com/search?c=embedding">this search</a>on their website, and then <code spellcheck="false">pull</code> whichever
one you want to try out. A popular choice is <code spellcheck="false">mxbai-embed-large</code>.</p>
<p>First, we'll need to select the Ollama provider from the tabs of providers,
then we will enter in the Base URL for our Ollama. Since our Ollama is
running on our local machine, our Base URL is <code spellcheck="false">http://localhost:11434</code>.
We will then hit the “refresh” button to have it fetch our models:</p>
<figure
class="image image_resized" style="width:82.28%;">
<img style="aspect-ratio:1912/1075;" src="4_AI_image.png"
width="1912" height="1075">
</figure>
<p>When selecting the dropdown for the “Embedding Model”, embedding models
should be at the top of the list, separated by regular chat models with
a horizontal line, as seen below:</p>
<figure class="image image_resized"
style="width:61.73%;">
<img style="aspect-ratio:1232/959;" src="8_AI_image.png"
width="1232" height="959">
</figure>
<p>After selecting an embedding model, embeddings should automatically begin
to be generated by checking the embedding statistics at the top of the
“AI/LLM” settings panel:</p>
<figure class="image image_resized" style="width:67.06%;">
<img style="aspect-ratio:1333/499;" src="7_AI_image.png"
width="1333" height="499">
</figure>
<p>If you don't see any embeddings being created, you will want to scroll
to the bottom of the settings, and hit “Recreate All Embeddings”:</p>
<figure
class="image image_resized" style="width:65.69%;">
<img style="aspect-ratio:1337/1490;" src="3_AI_image.png"
width="1337" height="1490">
</figure>
<p>Creating the embeddings will take some time, and will be regenerated when
a Note is created, updated, or deleted (removed).</p>
<p>If for some reason you choose to change your embedding provider, or the
model used, you'll need to recreate all embeddings.</p>
<h2>Tools</h2>
<p>Tools are essentially functions that we provide to the various LLM providers,
and then LLMs can respond in a specific format that tells us what tool
function and parameters they would like to invoke. We then execute these
tools, and provide it as additional context in the Chat conversation.&nbsp;</p>
<p>These are the tools that currently exist, and will certainly be updated
to be more effectively (and even more to be added!):</p>
<ul>
<li><code spellcheck="false">search_notes</code>
<ul>
<li>Semantic search</li>
</ul>
</li>
<li><code spellcheck="false">keyword_search</code>
<ul>
<li>Keyword-based search</li>
</ul>
</li>
<li><code spellcheck="false">attribute_search</code>
<ul>
<li>Attribute-specific search</li>
</ul>
</li>
<li><code spellcheck="false">search_suggestion</code>
<ul>
<li>Search syntax helper</li>
</ul>
</li>
<li><code spellcheck="false">read_note</code>
<ul>
<li>Read note content (helps the LLM read Notes)</li>
</ul>
</li>
<li><code spellcheck="false">create_note</code>
<ul>
<li>Create a Note</li>
</ul>
</li>
<li><code spellcheck="false">update_note</code>
<ul>
<li>Update a Note</li>
</ul>
</li>
<li><code spellcheck="false">manage_attributes</code>
<ul>
<li>Manage attributes on a Note</li>
</ul>
</li>
<li><code spellcheck="false">manage_relationships</code>
<ul>
<li>Manage the various relationships between Notes</li>
</ul>
</li>
<li><code spellcheck="false">extract_content</code>
<ul>
<li>Used to smartly extract content from a Note</li>
</ul>
</li>
<li><code spellcheck="false">calendar_integration</code>
<ul>
<li>Used to find date notes, create date notes, get the daily note, etc.</li>
</ul>
</li>
</ul>
<p>When Tools are executed within your Chat, you'll see output like the following:</p>
<figure
class="image image_resized" style="width:66.88%;">
<img style="aspect-ratio:1372/1591;" src="6_AI_image.png"
width="1372" height="1591">
</figure>
<p>You don't need to tell the LLM to execute a certain tool, it should “smartly”
call tools and automatically execute them as needed.</p>
<h2>Overview</h2>
<p>To start, simply press the <em>Chat with Notes</em> button in the&nbsp;
<a
class="reference-link" href="#root/_help_xYmIYSP6wE3F">Launch Bar</a>.</p>
<figure class="image image_resized" style="width:60.77%;">
<img style="aspect-ratio:1378/539;" src="2_AI_image.png"
width="1378" height="539">
</figure>
<p>If you don't see the button in the&nbsp;<a class="reference-link" href="#root/_help_xYmIYSP6wE3F">Launch Bar</a>,
you might need to move it from the <em>Available Launchers</em> section to
the <em>Visible Launchers</em> section:</p>
<figure class="image image_resized"
style="width:69.81%;">
<img style="aspect-ratio:1765/1287;" src="9_AI_image.png"
width="1765" height="1287">
</figure>
<p>Starting with version v0.102.0, AI/LLM integration has been removed from
the Trilium Notes core.</p>
<p>While a significant amount of effort went into developing this feature,
maintaining and supporting it long-term proved to be unsustainable.</p>
<p>When upgrading to v0.102.0, your Chat notes will be preserved, but instead
of the dedicated chat window they will be turned to a normal&nbsp;<a class="reference-link"
href="#root/_help_6f9hih2hXXZk">Code</a>&nbsp;note, revealing the underlying
JSON of the conversation.</p>
<h2>Alternative solutions (MCP)</h2>
<p>Given the recent advancements of the AI scene, MCP has grown to be more
powerful and facilitates easier integrations with various application.</p>
<p>As such, there are third-party solutions that integrate an MCP server
that can be used with Trilium:</p>
<ul>
<li><a href="https://github.com/tan-yong-sheng/triliumnext-mcp">tan-yong-sheng/triliumnext-mcp</a>
</li>
<li><a href="https://github.com/perfectra1n/triliumnext-mcp">perfectra1n/triliumnext-mcp</a>
</li>
</ul>
<aside class="admonition important">
<p>These solutions are third-party and thus not endorsed or supported directly
by the Trilium Notes team. Please address questions and issues on their
corresponding repository instead.</p>
</aside>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 186 KiB

View File

@@ -1,22 +0,0 @@
<p>Currently, we support the following providers:</p>
<ul>
<li><a class="reference-link" href="#root/_help_7EdTxPADv95W">Ollama</a>
</li>
<li><a class="reference-link" href="#root/_help_ZavFigBX9AwP">OpenAI</a>
</li>
<li><a class="reference-link" href="#root/_help_e0lkirXEiSNc">Anthropic</a>
</li>
<li>Voyage AI</li>
</ul>
<p>To set your preferred chat model, you'll want to enter the provider's
name here:</p>
<figure class="image image_resized" style="width:88.38%;">
<img style="aspect-ratio:1884/1267;" src="Providers_image.png"
width="1884" height="1267">
</figure>
<p>And to set your preferred embedding provider:</p>
<figure class="image image_resized"
style="width:93.47%;">
<img style="aspect-ratio:1907/1002;" src="1_Providers_image.png"
width="1907" height="1002">
</figure>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 270 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

View File

@@ -1,45 +0,0 @@
<p><a href="https://ollama.com/">Ollama</a> can be installed in a variety
of ways, and even runs <a href="https://hub.docker.com/r/ollama/ollama">within a Docker container</a>.
Ollama will be noticeably quicker when running on a GPU (Nvidia, AMD, Intel),
but it can run on CPU and RAM. To install Ollama without any other prerequisites,
you can follow their <a href="https://ollama.com/download">installer</a>:</p>
<figure
class="image image_resized" style="width:50.49%;">
<img style="aspect-ratio:785/498;" src="3_Installing Ollama_image.png"
width="785" height="498">
</figure>
<figure class="image image_resized" style="width:40.54%;">
<img style="aspect-ratio:467/100;" src="Installing Ollama_image.png"
width="467" height="100">
</figure>
<figure class="image image_resized" style="width:55.73%;">
<img style="aspect-ratio:1296/1011;" src="1_Installing Ollama_image.png"
width="1296" height="1011">
</figure>
<p>After their installer completes, if you're on Windows, you should see
an entry in the start menu to run it:</p>
<figure class="image image_resized"
style="width:66.12%;">
<img style="aspect-ratio:1161/480;" src="2_Installing Ollama_image.png"
width="1161" height="480">
</figure>
<p>Also, you should have access to the <code spellcheck="false">ollama</code> CLI
via Powershell or CMD:</p>
<figure class="image image_resized" style="width:86.09%;">
<img style="aspect-ratio:1730/924;" src="5_Installing Ollama_image.png"
width="1730" height="924">
</figure>
<p>After Ollama is installed, you can go ahead and <code spellcheck="false">pull</code> the
models you want to use and run. Here's a command to pull my favorite tool-compatible
model and embedding model as of April 2025:</p><pre><code class="language-text-x-trilium-auto">ollama pull llama3.1:8b
ollama pull mxbai-embed-large</code></pre>
<p>Also, you can make sure it's running by going to <a href="http://localhost:11434">http://localhost:11434</a> and
you should get the following response (port 11434 being the “normal” Ollama
port):</p>
<figure class="image">
<img style="aspect-ratio:585/202;" src="4_Installing Ollama_image.png"
width="585" height="202">
</figure>
<p>Now that you have Ollama up and running, have a few models pulled, you're
ready to go to go ahead and start using Ollama as both a chat provider,
and embedding provider!</p>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 198 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 175 KiB

View File

@@ -0,0 +1,118 @@
<p><em>Active content</em> is a generic name for powerful features in Trilium,
these range from customizing the UI to advanced scripting that can alter
your notes or even your PC.</p>
<h2>Safe import</h2>
<p>Active content problem of safety, especially when this active content
comes from a third-party such as if it is downloaded from a website and
then imported into Trilium.</p>
<p>When <a href="#root/_help_mHbBMPDPkVV5">importing</a> .zip archives into Trilium, <em>safe mode</em> is
active by default which will try to prevent untrusted code from executing.
For example, a <a href="#root/_help_MgibgPcfeuGz">custom widget</a> needs the
<code
spellcheck="false">#widget</code> <a href="#root/_help_HI6GBBIduIgv">label</a> in order to function;
safe import works by renaming that label to <code spellcheck="false">#disabled:widget</code>.</p>
<h2>Safe mode</h2>
<p>Sometimes active content can cause issues with the UI or the server, preventing
it from functioning properly.&nbsp;<a class="reference-link" href="#root/_help_64ZTlUPgEPtW">Safe mode</a>&nbsp;allows
starting Trilium in such a way that active content is not loaded by default
at start-up, allowing the user to fix the problematic scripts or widgets.</p>
<h2>Types of active content</h2>
<p>These are the types of active content in Trilium, along with a few examples
of what untrusted content of that type could cause:</p>
<table>
<thead>
<tr>
<th>Name</th>
<th>Disabled on a safe <a href="#root/_help_mHbBMPDPkVV5">import</a>
</th>
<th>Description</th>
<th>Potential risks of untrusted code</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#root/_help_yIhgI5H7A2Sm">Front-end scripts</a>
</td>
<td>Yes</td>
<td>Allow running arbitrary code on the client (UI) of Trilium, which can
alter the user interface.</td>
<td>A malicious script can execute server-side code, access un-encrypted notes
or change their contents.</td>
</tr>
<tr>
<td><a class="reference-link" href="#root/_help_MgibgPcfeuGz">Custom Widgets</a>
</td>
<td>Yes</td>
<td>Can add new UI features to Trilium, for example by adding a new section
in the&nbsp;<a class="reference-link" href="#root/_help_RnaPdbciOfeq">Right Sidebar</a>.</td>
<td>The UI can be altered in such a way that it can be used to extract sensitive
information or it can simply cause the application to crash.</td>
</tr>
<tr>
<td><a class="reference-link" href="#root/_help_SPirpZypehBG">Backend scripts</a>
</td>
<td>Yes</td>
<td>Can run custom code on the server of Trilium (Node.js environment), with
full access to the notes and the database.</td>
<td>Has access to all the unencrypted notes, but with full access to the database
it can completely destroy the data. It also has access to execute other
applications or alter the files and folders on the server).</td>
</tr>
<tr>
<td><a class="reference-link" href="#root/_help_1vHRoWCEjj0L">Web View</a>
</td>
<td>Yes</td>
<td>Displays a website inside a note.</td>
<td>Can point to a phishing website which can collect the data (for example
on a log in page).</td>
</tr>
<tr>
<td><a class="reference-link" href="#root/_help_HcABDtFCkbFN">Render Note</a>
</td>
<td>Yes</td>
<td>Renders custom content inside a note, such as a dashboard or a new editor
that is not officially supported by Trilium.</td>
<td>Can affect the UI similar to front-end scripts or custom widgets since
the scripts are not completely encapsulated, or they can act similar to
a web view where they can collect data entered by the user.</td>
</tr>
<tr>
<td><a class="reference-link" href="#root/_help_AlhDUqhENtH7">Custom app-wide CSS</a>
</td>
<td>No</td>
<td>Can alter the layout and style of the UI using CSS, applied regardless
of theme.</td>
<td>Generally less problematic than the rest of active content, but a badly
written CSS can affect the layout of the application, requiring the use
of&nbsp;<a class="reference-link" href="#root/_help_64ZTlUPgEPtW">Safe mode</a>&nbsp;to
be able to use the application.</td>
</tr>
<tr>
<td><a href="#root/_help_pKK96zzmvBGf">Custom themes</a>
</td>
<td>No</td>
<td>Can change the style of the entire UI.</td>
<td>Similar to custom app-wide CSS.</td>
</tr>
<tr>
<td><a class="reference-link" href="#root/_help_gOKqSJgXLcIj">Icon Packs</a>
</td>
<td>No</td>
<td>Introduces new icons that can be used for notes.</td>
<td>Generally are more contained and less prone to cause issues, but they
can cause performance issues (for example if the icon pack has millions
of icons in it).</td>
</tr>
</tbody>
</table>
<h2>Active content badge</h2>
<p>Starting with v0.102.0, on the&nbsp;<a class="reference-link" href="#root/_help_IjZS7iK5EXtb">New Layout</a>&nbsp;a
badge will be displayed near the note title, indicating that an active
content is detected. Clicking the badge will reveal a menu with various
options related to that content type, for example to open the documentation
or to configure the execution of scripts.</p>
<p>For some active content types, such as backend scripts with custom triggering
conditions a toggle button will appear. This makes it possible to easily
disable scripts or widgets, but also to re-enable them if an import was
made with safe mode active.</p>

View File

@@ -29,10 +29,9 @@
<li>Ideally, create a dedicated spot in your note tree where to place the
icon packs.</li>
<li>Right click the note where to put it and select <em>Import into note</em>.</li>
<li
>Uncheck <em>Safe import</em>.</li>
<li>Select <em>Import</em>.</li>
<li><a href="#root/_help_s8alTXmpFR61">Refresh the application</a>.</li>
<li>Uncheck <em>Safe import</em>.</li>
<li>Select <em>Import</em>.</li>
<li><a href="#root/_help_s8alTXmpFR61">Refresh the application</a>.</li>
</ol>
<aside class="admonition warning">
<p>Since <em>Safe import</em> is disabled, make sure you trust the source as

View File

@@ -64,22 +64,12 @@
This is intentional to avoid displaying a partial state of the subtree.</p>
</aside>
<h2>Working with collections</h2>
<p>By default, some of the&nbsp;<a class="reference-link" href="#root/_help_GTwFsgaA0lCt">Collections</a>&nbsp;will
automatically hide their child notes, for example the&nbsp;<a class="reference-link"
href="#root/_help_CtBQqbwXDx1w">Kanban Board</a>&nbsp;or the&nbsp;<a class="reference-link"
href="#root/_help_2FvYrpmOXm29">Table</a>.</p>
<p>The reasoning behind this is that collections are generally opaque to
the rest of the notes and they can generate a large amount of sub-notes
since they intentionally lack structure (in order to allow easy swapping
between views).</p>
<p>Some types of collections have the child notes intentionally shown, for
example the legacy ones (Grid and List), but also the&nbsp;<a class="reference-link"
href="#root/_help_zP3PMqaG71Ct">Presentation</a>&nbsp;which requires the tree
structure in order to organize and edit the slides.</p>
<p>For large collections, it can be helpful to hide their child notes for
performance reasons or de-cluttering the tree.</p>
<p>To toggle this behavior:</p>
<ul>
<li>In the&nbsp;<a class="reference-link" href="#root/_help_IjZS7iK5EXtb">New Layout</a>,
press the Options button underneath the title and uncheck <em>Hide child notes in tree</em>.</li>
<li>Open the collection and in&nbsp;<a class="reference-link" href="#root/_help_CssoWBu8I7jF">Collection Properties</a>,
look for <em>Hide child notes in tree</em>.</li>
<li>Right click the collection note in the&nbsp;<a class="reference-link"
href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>&nbsp;and select <em>Advanced</em><em>Show subtree</em>.</li>
</ul>

View File

@@ -16,7 +16,7 @@
width="1651" height="810">
</figure>
</td>
<td><a class="reference-link" href="#root/_help_xWbu3jpNWapp">Calendar</a>
<td><a class="reference-link" href="#root/_help_xWbu3jpNWapp">Calendar</a>&nbsp;
<br>which displays a week, month or year calendar with the notes being shown
as events. New events can be added easily by dragging across the calendar.</td>
</tr>
@@ -27,7 +27,7 @@
width="1643" height="647">
</figure>
</td>
<td><a class="reference-link" href="#root/_help_2FvYrpmOXm29">Table</a>
<td><a class="reference-link" href="#root/_help_2FvYrpmOXm29">Table</a>&nbsp;
<br>displays each note as a row in a table, with&nbsp;<a class="reference-link"
href="#root/_help_OFXdgB2nNk1F">Promoted Attributes</a>&nbsp;being shown as well.
This makes it easy to visualize attributes of notes, as well as making
@@ -40,7 +40,7 @@
width="1174" height="850">
</figure>
</td>
<td><a class="reference-link" href="#root/_help_CtBQqbwXDx1w">Kanban Board</a>
<td><a class="reference-link" href="#root/_help_CtBQqbwXDx1w">Kanban Board</a>&nbsp;
<br>displays notes in columns, grouped by the value of a label. Items and
columns can easily be created or dragged around to change their status.</td>
</tr>
@@ -51,7 +51,7 @@
width="844" height="639">
</figure>
</td>
<td><a class="reference-link" href="#root/_help_81SGnPGMk7Xc">Geo Map</a>
<td><a class="reference-link" href="#root/_help_81SGnPGMk7Xc">Geo Map</a>&nbsp;
<br>which displays a geographical map in which the notes are represented as
markers/pins on the map. New events can be easily added by pointing on
the map.</td>
@@ -63,7 +63,7 @@
width="1120" height="763">
</figure>
</td>
<td><a class="reference-link" href="#root/_help_zP3PMqaG71Ct">Presentation</a>
<td><a class="reference-link" href="#root/_help_zP3PMqaG71Ct">Presentation</a>&nbsp;
<br>which shows each note as a slide and can be presented full-screen with
smooth transitions or exported to PDF for sharing.</td>
</tr>
@@ -88,27 +88,48 @@
<p>To create a new collections, right click in the&nbsp;<a class="reference-link"
href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>&nbsp;and look for the <em>Collections</em> entry
and select the desired type.</p>
<p>By default, collections come with a default configuration and sometimes
even sample notes. To create a collection completely from scratch:</p>
<ol>
<li>Create a new note of type <em>Text</em> (or any type).</li>
<li>Change the <a href="#root/_help_KSZ04uQ2D1St">note type</a> to <em>Collection</em>.</li>
<li>In&nbsp;<a class="reference-link" href="#root/_help_CssoWBu8I7jF">Collection Properties</a>,
select the desired view type.</li>
<li>Consult the help page of the corresponding view type in order to understand
how to configure them.</li>
</ol>
<h2>Configuration</h2>
<p>To change the configuration of a collection or even switch to a different
collection (e.g. from Kanban Board to a Calendar), see the dedicated <em>Collections</em> tab
in the&nbsp;<a class="reference-link" href="#root/_help_BlN9DFI679QC">Ribbon</a>.</p>
collection (e.g. from Kanban Board to a Calendar), see the&nbsp;<a class="reference-link"
href="#root/_help_CssoWBu8I7jF">Collection Properties</a>&nbsp;bar at the top
of the note.</p>
<h2>Archived notes</h2>
<p>By default, <a href="#root/_help_MKmLg5x6xkor">archived notes</a> will not be
shown in collections. This behavior can be changed by going to <em>Collection Properties</em> in
the&nbsp;<a class="reference-link" href="#root/_help_BlN9DFI679QC">Ribbon</a>&nbsp;and
checking <em>Show archived notes</em>.</p>
shown in collections. This behavior can be changed by going to&nbsp;
<a
class="reference-link" href="#root/_help_CssoWBu8I7jF">Collection Properties</a>&nbsp;and checking <em>Show archived notes</em>.</p>
<p>Archived notes will be generally indicated by being greyed out as opposed
to the normal ones.</p>
<h2>Hiding the child notes from the note tree</h2>
<p>For collections with a large number of items, it can be helpful to hide
the items from the note tree for performance reasons and to reduce clutter.
This is especially useful for standalone collections, such as a geomap
or a task board.</p>
<p>To do so, go to&nbsp;<a class="reference-link" href="#root/_help_CssoWBu8I7jF">Collection Properties</a>&nbsp;and
select <em>Hide child notes in tree</em>.</p>
<h2>Advanced use cases</h2>
<h3>Adding a description to a collection</h3>
<p>To add a text before the collection, for example to describe it:</p>
<ol>
<li>Create a new collection.</li>
<li>In the&nbsp;<a class="reference-link" href="#root/_help_BlN9DFI679QC">Ribbon</a>,
go to <em>Basic Properties</em> and change the note type from <em>Collection</em> to <em>Text</em>.</li>
<li>Change the <a href="#root/_help_KSZ04uQ2D1St">note type</a> from <em>Collection</em> to <em>Text</em>.</li>
</ol>
<p>Now the text will be displayed above while still maintaining the collection
view.</p>
<p>The only downside to this method is that&nbsp;<a class="reference-link"
href="#root/_help_CssoWBu8I7jF">Collection Properties</a>&nbsp;will not be shown
anymore. In this case, modify the attributes manually or switch back temporarily
to the <em>Collection</em> type for configuration purposes.</p>
<h3>Using saved search</h3>
<p>Collections, by default, only display the child notes. However, it is
possible to use the&nbsp;<a class="reference-link" href="#root/_help_eIg8jdvaoNNd">Search</a>&nbsp;functionality
@@ -123,19 +144,6 @@
of the search results. The reason is that the search might hit a note multiple
times, causing an exponential rise in the number of results.</p>
</aside>
<h3>Creating a collection from scratch</h3>
<p>By default, collections come with a default configuration and sometimes
even sample notes. To create a collection completely from scratch:</p>
<ol>
<li>Create a new note of type <em>Text</em> (or any type).</li>
<li>In the&nbsp;<a class="reference-link" href="#root/_help_BlN9DFI679QC">Ribbon</a>,
go to <em>Basic Properties</em> and select <em>Collection</em> as the note
type.</li>
<li>Still in the ribbon, go to <em>Collection Properties</em> and select the
desired view type.</li>
<li>Consult the help page of the corresponding view type in order to understand
how to configure them.</li>
</ol>
<h2>Under the hood</h2>
<p>Collections by themselves are simply notes with no content that rely on
the&nbsp;<a class="reference-link" href="#root/_help_0ESUbbAxVnoK">Note List</a>&nbsp;mechanism

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 605 B

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 249 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 179 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 249 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 179 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 1014 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.6 KiB

After

Width:  |  Height:  |  Size: 966 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1014 B

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 966 B

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 338 KiB

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 605 B

View File

@@ -1,5 +1,5 @@
<figure class="image image-style-align-center">
<img style="aspect-ratio:767/606;" src="4_Calendar_image.png"
<img style="aspect-ratio:767/606;" src="2_Calendar_image.png"
width="767" height="606">
</figure>
<p>The Calendar view will display each child note in a calendar that has
@@ -18,35 +18,9 @@
kind of interaction, such as moving events around as well as creating new
ones.</p>
<h2>Creating a calendar</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>
<img src="2_Calendar_image.png">
</td>
<td>The Calendar View works only for Collection note types. To create a new
note, right click on the note tree on the left and select Insert note after,
or Insert child note and then select <em>Collection</em>.</td>
</tr>
<tr>
<td>2</td>
<td>
<img src="3_Calendar_image.png">
</td>
<td>Once created, the “View type” of the Collection needs changed to “Calendar”,
by selecting the “Collection Properties” tab in the ribbon.</td>
</tr>
</tbody>
</table>
<p>Right click on an existing note in the&nbsp;<a class="reference-link"
href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>&nbsp;and select <em>Insert child note</em> and
look for <em>Calendar</em>.</p>
<h2>Creating a new event/note</h2>
<ul>
<li>Clicking on a day will create a new child note and assign it to that particular
@@ -68,7 +42,7 @@
<ul>
<li>Hovering the mouse over an event will display information about the note.
<br>
<img src="7_Calendar_image.png">
<img src="5_Calendar_image.png">
</li>
<li>Left clicking the event will open a&nbsp;<a class="reference-link" href="#root/_help_ZjLYv08Rp3qC">Quick edit</a>&nbsp;to
edit the note in a popup while allowing easy return to the calendar by
@@ -125,33 +99,36 @@
</thead>
<tbody>
<tr>
<td><code>#calendar:hideWeekends</code>
<td><code spellcheck="false">#calendar:hideWeekends</code>
</td>
<td>When present (regardless of value), it will hide Saturday and Sundays
from the calendar.</td>
</tr>
<tr>
<td><code>#calendar:weekNumbers</code>
<td><code spellcheck="false">#calendar:weekNumbers</code>
</td>
<td>When present (regardless of value), it will show the number of the week
on the calendar.</td>
</tr>
<tr>
<td><code>#calendar:initialDate</code>
<td><code spellcheck="false">#calendar:initialDate</code>
</td>
<td>Change the date the calendar opens on. When not present, the calendar
opens on the current date.</td>
</tr>
<tr>
<td><code>#calendar:view</code>
<td><code spellcheck="false">#calendar:view</code>
</td>
<td>
<p>Which view to display in the calendar:</p>
<ul>
<li><code>timeGridWeek</code> for the <em>week</em> view;</li>
<li><code>dayGridMonth</code> for the <em>month</em> view;</li>
<li><code>multiMonthYear</code> for the <em>year</em> view;</li>
<li><code>listMonth</code> for the <em>list</em> view.</li>
<li><code spellcheck="false">timeGridWeek</code> for the <em>week</em> view;</li>
<li
><code spellcheck="false">dayGridMonth</code> for the <em>month</em> view;</li>
<li
><code spellcheck="false">multiMonthYear</code> for the <em>year</em> view;</li>
<li
><code spellcheck="false">listMonth</code> for the <em>list</em> view.</li>
</ul>
<p>Any other value will be dismissed and the default view (month) will be
used instead.</p>
@@ -160,7 +137,7 @@
</td>
</tr>
<tr>
<td><code>~child:template</code>
<td><code spellcheck="false">~child:template</code>
</td>
<td>Defines the template for newly created notes in the calendar (via dragging
or clicking).</td>
@@ -208,6 +185,18 @@
at which the event ends (in relation with <code spellcheck="false">endDate</code> if
present, or <code spellcheck="false">startDate</code>).</td>
</tr>
<tr>
<td><code spellcheck="false">#recurrence</code>
</td>
<td>This is an optional CalDAV <code spellcheck="false">RRULE</code> string
that if present, determines whether a task should repeat or not. Note that
it does not include the <code spellcheck="false">DTSTART</code> attribute,
which is derived from the <code spellcheck="false">#startDate</code> and
<code
spellcheck="false">#startTime</code>directly. For examples of valid <code spellcheck="false">RRULE</code> strings
see <a href="https://icalendar.org/rrule-tool.html">https://icalendar.org/rrule-tool.html</a>
</td>
</tr>
<tr>
<td><code spellcheck="false">#color</code>
</td>
@@ -220,7 +209,7 @@
<tr>
<td><code spellcheck="false">#calendar:color</code>
</td>
<td><strong>❌️ Removed since v0.100.0. Use</strong> <code spellcheck="false">**#color**</code> <strong>instead.</strong>
<td><strong>❌️ Removed since v0.100.0. Use</strong> <code spellcheck="false">**#color**</code> <strong>instead.</strong>&nbsp;&nbsp;
<br>
<br>Similar to <code spellcheck="false">#color</code>, but applies the color
only for the event in the calendar and not for other places such as the
@@ -244,15 +233,15 @@
<td><code spellcheck="false">#calendar:displayedAttributes</code>
</td>
<td>Allows displaying the value of one or more attributes in the calendar
like this:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
like this:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br>
<br>
<img src="9_Calendar_image.png">&nbsp;&nbsp;&nbsp;
<img src="7_Calendar_image.png">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br>
<br><code spellcheck="false">#weight="70" #Mood="Good" #calendar:displayedAttributes="weight,Mood"</code>&nbsp;&nbsp;&nbsp;
<br><code spellcheck="false">#weight="70" #Mood="Good" #calendar:displayedAttributes="weight,Mood"</code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br>
<br>It can also be used with relations, case in which it will display the
title of the target note:&nbsp;&nbsp;&nbsp;&nbsp;
title of the target note:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br>
<br><code spellcheck="false">~assignee=@My assignee #calendar:displayedAttributes="assignee"</code>
</td>
@@ -289,7 +278,7 @@
<h2>How the calendar works</h2>
<p>
<img src="11_Calendar_image.png">
<img src="9_Calendar_image.png">
</p>
<p>The calendar displays all the child notes of the Collection that have
a <code spellcheck="false">#startDate</code>. An <code spellcheck="false">#endDate</code> can
@@ -300,11 +289,52 @@
#hidePromotedAttributes </code></pre>
<p>This will result in:</p>
<p>
<img src="10_Calendar_image.png">
<img src="8_Calendar_image.png">
</p>
<p>When not used in a Journal, the calendar is recursive. That is, it will
look for events not just in its child notes but also in the children of
these child notes.</p>
<h2>Recurrence</h2>
<p>The built in calendar view also supports repeating tasks. If a child note
of the calendar has a #recurrence label with a valid recurrence, that event
will repeat on the calendar according to the recurrence string.&nbsp;</p>
<p>For example, to make a note repeat on the calendar:</p>
<ul>
<li>Every Day - <code spellcheck="false">#recurrence="FREQ=DAILY;INTERVAL=1"</code>
</li>
<li>Every 3 days - <code spellcheck="false">#recurrence="FREQ=DAILY;INTERVAL=3"</code>
</li>
<li>Every week - <code spellcheck="false">#recurrence="FREQ=WEEKLY;INTERVAL=1"</code>
</li>
<li>Every 2 weeks on Monday, Wednesday and Friday - <code spellcheck="false">#recurrence="FREQ=WEEKLY;INTERVAL=2;BYDAY=MO,WE,FR"</code>
</li>
<li>Every 3 months - <code spellcheck="false">#recurrence="FREQ=MONTHLY;INTERVAL=3"</code>
</li>
<li>Every 2 months on the First Sunday - <code spellcheck="false">#recurrence="FREQ=MONTHLY;INTERVAL=2;BYDAY=1SU"</code>
</li>
<li>Every month on the Last Friday - <code spellcheck="false">#recurrence="FREQ=MONTHLY;INTERVAL=1;BYDAY=-1FR"</code>
</li>
<li>And so on.</li>
</ul>
<p>For other examples of valid <code spellcheck="false">RRULE</code> strings
see <a href="https://icalendar.org/rrule-tool.html">https://icalendar.org/rrule-tool.html</a>
</p>
<p>Note that the recurrence string does not include the <code spellcheck="false">DTSTART</code> attribute
as defined in the iCAL specifications. This is derived directly from the
<code
spellcheck="false">startDate</code>and <code spellcheck="false">startTime</code> attributes</p>
<p>If you want to override the label the calendar uses to fetch the recurrence
string, you can use the <code spellcheck="false">#calendar:recurrence</code> attribute.
For example, you can set <code spellcheck="false">#calendar:recurrence=taskRepeats</code>.
Then you can set your recurrence string like <code spellcheck="false">#taskRepeats="FREQ=DAILY;INTERVAL=1"</code>
</p>
<p>Also note that the recurrence label can be made promoted as with the start
and end dates.&nbsp;</p>
<aside class="admonition warning">
<p>If the recurrence string is not valid, a toast will be shown with the
note ID and title of the note with the erroneous recurrence message. This
note will not be added to the calendar</p>
</aside>
<h2>Use-cases</h2>
<h3>Using with the Journal / calendar</h3>
<p>It is possible to integrate the calendar view into the Journal with day
@@ -324,7 +354,7 @@
not having a <code spellcheck="false">dateNote</code> attribute. Children
of the child notes will not be displayed.</li>
</ul>
<img src="8_Calendar_image.png" width="1217"
<img src="6_Calendar_image.png" width="1217"
height="724">
<h3>Using a different attribute as event title</h3>
@@ -352,7 +382,7 @@ height="724">
<td>
<p>&nbsp;</p>
<figure class="image image-style-align-center">
<img style="aspect-ratio:445/124;" src="5_Calendar_image.png"
<img style="aspect-ratio:445/124;" src="3_Calendar_image.png"
width="445" height="124">
</figure>
</td>
@@ -378,7 +408,7 @@ height="724">
<td><pre><code class="language-text-x-trilium-auto">#startDate=2025-02-14 #endDate=2025-02-15 ~for=@John Smith ~for=@Jane Doe #calendar:title="for"</code></pre>
</td>
<td>
<img src="6_Calendar_image.png" width="294"
<img src="4_Calendar_image.png" width="294"
height="151">
</td>
</tr>

View File

@@ -0,0 +1,25 @@
<figure class="image">
<img style="aspect-ratio:1177/98;" src="Collection Properties_imag.png"
width="1177" height="98">
</figure>
<p>The <em>Collection Properties</em> is a toolbar that is displayed at the
top of every <a href="#root/_help_GTwFsgaA0lCt">collection note</a>.</p>
<p>For versions prior to v0.102.0, this feature was only available for the&nbsp;
<a
class="reference-link" href="#root/_help_IjZS7iK5EXtb">New Layout</a>. Starting with this version, the collection properties
are enabled for the Old layout as well, and&nbsp;<a class="reference-link"
href="#root/_help_BlN9DFI679QC">Ribbon</a>&nbsp;no longer contains a dedicated
tab for collection properties.</p>
<p>The collection properties has:</p>
<ul>
<li>A quick selector for the view type (e.g. grid, calendar, board).</li>
<li>A settings button with:
<ul>
<li>Settings for the current view, for example hiding the weekends in a calendar.</li>
<li>Generic settings for the collection, such as <a href="#root/_help_wyaGBBQrl4i3">hiding the child notes</a> or
showing <a href="#root/_help_MKmLg5x6xkor">archived notes</a>.</li>
</ul>
</li>
<li>Specific interactions for the current view, for example month selector
and view switcher for the calendar.</li>
</ul>

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -1,50 +1,20 @@
<aside class="admonition important">
<p><a class="reference-link" href="#root/_help_zEY4DaJG4YT5">Attributes</a><a class="reference-link"
href="#root/_help_OFXdgB2nNk1F">Promoted Attributes</a><a class="reference-link"
href="#root/_help_zEY4DaJG4YT5">Attributes</a>Starting with Trilium v0.97.0,
the geo map has been converted from a standalone <a href="#root/_help_KSZ04uQ2D1St">note type</a> to
a type of view for the&nbsp;<a class="reference-link" href="#root/_help_0ESUbbAxVnoK">Note List</a>.&nbsp;</p>
<p>Starting with Trilium v0.97.0, the geo map has been converted from a standalone
<a
href="#root/_help_KSZ04uQ2D1St">note type</a>to a type of view for the&nbsp;<a class="reference-link"
href="#root/_help_0ESUbbAxVnoK">Note List</a>.&nbsp;</p>
</aside>
<figure class="image image-style-align-center">
<img style="aspect-ratio:892/675;" src="9_Geo Map_image.png"
<img style="aspect-ratio:892/675;" src="8_Geo Map_image.png"
width="892" height="675">
</figure>
<p>This note type displays the children notes on a geographical map, based
on an attribute. It is also possible to add new notes at a specific location
using the built-in interface.</p>
<h2>Creating a new geo map</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>
<figure class="image">
<img style="aspect-ratio:483/413;" src="15_Geo Map_image.png"
width="483" height="413">
</figure>
</td>
<td>Right click on any note on the note tree and select <em>Insert child note</em><em>Geo Map (beta)</em>.</td>
</tr>
<tr>
<td>2</td>
<td>
<figure class="image image-style-align-center image_resized" style="width:53.44%;">
<img style="aspect-ratio:1720/1396;" src="8_Geo Map_image.png"
width="1720" height="1396">
</figure>
</td>
<td>By default the map will be empty and will show the entire world.</td>
</tr>
</tbody>
</table>
<p>Right click on an existing note in the&nbsp;<a class="reference-link"
href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>&nbsp;and select <em>Geo Map</em>.</p>
<p>By default the map will be empty and will show the entire world.</p>
<h2>Repositioning the map</h2>
<ul>
<li>Click and drag the map in order to move across the map.</li>
@@ -68,12 +38,12 @@
<td>1</td>
<td>To create a marker, first navigate to the desired point on the map. Then
press the
<img src="10_Geo Map_image.png">button in the&nbsp;<a href="#root/_help_XpOYSgsLkTJy">Floating buttons</a>&nbsp;(top-right)
area.&nbsp;&nbsp;&nbsp;&nbsp;
<img src="9_Geo Map_image.png">button in the&nbsp;<a href="#root/_help_XpOYSgsLkTJy">Floating buttons</a>&nbsp;(top-right)
area.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br>
<br>If the button is not visible, make sure the button section is visible
by pressing the chevron button (
<img src="17_Geo Map_image.png">) in the top-right of the map.</td>
<img src="15_Geo Map_image.png">) in the top-right of the map.</td>
<td></td>
</tr>
<tr>
@@ -83,7 +53,7 @@
width="1730" height="416">
</td>
<td>Once pressed, the map will enter in the insert mode, as illustrated by
the notification.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
the notification.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br>
<br>Simply click the point on the map where to place the marker, or the Escape
key to cancel.</td>
@@ -99,7 +69,7 @@
<tr>
<td>4</td>
<td>
<img class="image_resized" style="aspect-ratio:1696/608;width:100%;" src="16_Geo Map_image.png"
<img class="image_resized" style="aspect-ratio:1696/608;width:100%;" src="14_Geo Map_image.png"
width="1696" height="608">
</td>
<td>Once confirmed, the marker will show up on the map and it will also be
@@ -138,7 +108,7 @@
<h2>How the location of the markers is stored</h2>
<p>The location of a marker is stored in the <code spellcheck="false">#geolocation</code> attribute
of the child notes:</p>
<img src="18_Geo Map_image.png"
<img src="16_Geo Map_image.png"
width="1288" height="278">
<p>This value can be added manually if needed. The value of the attribute
is made up of the latitude and longitude separated by a comma.</p>
@@ -219,15 +189,15 @@ width="1288" height="278">
<td>1</td>
<td>
<figure class="image image-style-align-center image_resized" style="width:56.84%;">
<img style="aspect-ratio:732/918;" src="12_Geo Map_image.png"
<img style="aspect-ratio:732/918;" src="11_Geo Map_image.png"
width="732" height="918">
</figure>
</td>
<td>Go to Google Maps on the web and look for a desired location, right click
on it and a context menu will show up.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
on it and a context menu will show up.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br>
<br>Simply click on the first item displaying the coordinates and they will
be copied to clipboard.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
be copied to clipboard.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br>
<br>Then paste the value inside the text box into the <code spellcheck="false">#geolocation</code> attribute
of a child note of the map (don't forget to surround the value with a
@@ -248,7 +218,7 @@ width="1288" height="278">
<td>3</td>
<td>
<figure class="image image-style-align-center image_resized" style="width:100%;">
<img style="aspect-ratio:1074/276;" src="11_Geo Map_image.png"
<img style="aspect-ratio:1074/276;" src="10_Geo Map_image.png"
width="1074" height="276">
</figure>
</td>
@@ -287,7 +257,7 @@ width="1288" height="278">
width="696" height="480">
</td>
<td>The address will be visible in the top-left of the screen, in the place
of the search bar.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
of the search bar.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br>
<br>Select the coordinates and copy them into the clipboard.</td>
</tr>
@@ -329,7 +299,7 @@ width="1288" height="278">
<td>2</td>
<td>
<figure class="image image-style-align-center">
<img style="aspect-ratio:322/222;" src="14_Geo Map_image.png"
<img style="aspect-ratio:322/222;" src="13_Geo Map_image.png"
width="322" height="222">
</figure>
</td>
@@ -344,7 +314,7 @@ width="1288" height="278">
width="620" height="530">
</figure>
</td>
<td>When going back to the map, the track should now be visible.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<td>When going back to the map, the track should now be visible.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br>
<br>The start and end points of the track are indicated by the two blue markers.</td>
</tr>
@@ -371,9 +341,9 @@ width="1288" height="278">
class="reference-link" href="#root/_help_XpOYSgsLkTJy">Floating buttons</a>. To disable it, press the button again.</p>
<h2>Configuration</h2>
<h3>Map Style</h3>
<p>The styling of the map can be adjusted in the <em>Collection Properties</em> tab
in the&nbsp;<a class="reference-link" href="#root/_help_BlN9DFI679QC">Ribbon</a>&nbsp;or
manually via the <code spellcheck="false">#map:style</code> attribute.</p>
<p>The styling of the map can be adjusted in the&nbsp;<a class="reference-link"
href="#root/_help_CssoWBu8I7jF">Collection Properties</a>&nbsp;or manually via
the <code spellcheck="false">#map:style</code> attribute.</p>
<p>The geo map comes with two different types of styles:</p>
<ul>
<li>Raster styles
@@ -396,16 +366,35 @@ width="1288" height="278">
</ul>
</li>
</ul>
<h3>Custom map style / tiles</h3>
<p>Starting with v0.102.0 it is possible to use custom tile sets, but only
in raster format.</p>
<p>To do so, manually set the <code spellcheck="false">#map:style</code>
<a
href="#root/_help_HI6GBBIduIgv">label</a>to the URL of the tile set. For example, to use Esri.NatGeoWorldMap,
set the value to <a href="https://server.arcgisonline.com/ArcGIS/rest/services/NatGeo_World_Map/MapServer/tile/%7Bz%7D/%7By%7D/%7Bx%7D."><code spellcheck="false">https://server.arcgisonline.com/ArcGIS/rest/services/NatGeo_World_Map/MapServer/tile/{z}/{y}/{x}</code>.</a>
</p>
<aside class="admonition note">
<p>Currently it is not possible to use a custom map style.</p>
<p>For a list of tile sets, see the <a href="https://leaflet-extras.github.io/leaflet-providers/preview/">Leaflet Providers preview</a> page.
Select a desired tile set and just copy the URL from the <em>Plain JavaScript</em> example.</p>
</aside>
<h3>Scale</h3>
<p>Activating this option via the&nbsp;<a class="reference-link" href="#root/_help_BlN9DFI679QC">Ribbon</a>&nbsp;or
manually via <code spellcheck="false">#map:scale</code> will display an indicator
in the bottom-left of the scale of the map.</p>
<p>Custom vector map support is planned, but not yet implemented.</p>
<h3>Other options</h3>
<p>The following options can be configured either via the&nbsp;<a class="reference-link"
href="#root/_help_CssoWBu8I7jF">Collection Properties</a>, by clicking on the
settings (Gear icon). Alternatively, each of these options also have a
corresponding <a href="#root/_help_HI6GBBIduIgv">label</a> that can be set manually.</p>
<ul>
<li>Scale, which illustrates the scale of the map in kilometers and miles
in the bottom-left of the map.</li>
<li>The name of the markers is displayed by default underneath the pin on
the map. Since v0.102.0, it is possible to hide these labels which increases
the performance and decreases clutter when there are many markers on the
map.</li>
</ul>
<h2>Troubleshooting</h2>
<figure class="image image-style-align-right image_resized" style="width:34.06%;">
<img style="aspect-ratio:678/499;" src="13_Geo Map_image.png"
<img style="aspect-ratio:678/499;" src="12_Geo Map_image.png"
width="678" height="499">
</figure>

View File

@@ -26,5 +26,9 @@
<p>The grid view is also used by default in the&nbsp;<a class="reference-link"
href="#root/_help_0ESUbbAxVnoK">Note List</a>&nbsp;of every note, making it easy
to navigate to children notes.</p>
<h3>Creating a new table</h3>
<p>Right click on an existing note in the&nbsp;<a class="reference-link"
href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>&nbsp;and select <em>Insert child note</em> and
look for <em>Grid View</em>.</p>
<h2>Configuration</h2>
<p>Unlike most other view types, the grid view is not actually configurable.</p>

View File

@@ -5,6 +5,10 @@
<p>The Board view presents sub-notes in columns for a Kanban-like experience.
Each column represents a possible value for a status label, which can be
adjusted.</p>
<h2>Creating a Kanban board</h2>
<p>Right click on an existing note in the&nbsp;<a class="reference-link"
href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>&nbsp;and select <em>Insert child note</em> and
look for <em>Kanban Board</em>.</p>
<h2>How it works</h2>
<p>When first creating a collection of <em>Board</em> type, a few subnotes
will be created, each having a <code spellcheck="false">#status</code> label

View File

@@ -10,6 +10,10 @@
<p>In the example above, the "Node.js" note on the left panel contains several
child notes. The right panel displays the content of these child notes
as a single continuous document.</p>
<h3>Creating a new table</h3>
<p>Right click on an existing note in the&nbsp;<a class="reference-link"
href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>&nbsp;and select <em>Insert child note</em> and
look for <em>List View</em>.</p>
<h2>Interaction</h2>
<ul>
<li>Each note can be expanded or collapsed by clicking on the arrow to the
@@ -32,9 +36,9 @@
</ul>
<h2>Expanding and collapsing multiple notes at once</h2>
<p>Apart from individually expanding or collapsing notes, it's also possible
to expand or collapse them all at once. To do so, go to the <em>Collection Properties</em> tab
in the&nbsp;<a class="reference-link" href="#root/_help_BlN9DFI679QC">Ribbon</a>&nbsp;and
look for the corresponding button.</p>
to expand or collapse them all at once. To do so, go to the&nbsp;<a class="reference-link"
href="#root/_help_CssoWBu8I7jF">Collection Properties</a>&nbsp;and look for the
corresponding button.</p>
<p>By default, the <em>Expand</em> button will only expand the direct children
(first level) of the collection. Starting with v0.100.0, it's possible
to expand multiple levels of notes using the arrow button next to the button.</p>

View File

@@ -4,6 +4,10 @@
</figure>
<p>The Presentation view allows the creation of slideshows directly from
within Trilium.</p>
<h3>Creating a new presentation</h3>
<p>Right click on an existing note in the&nbsp;<a class="reference-link"
href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>&nbsp;and select <em>Insert child note</em> and
look for <em>Presentation</em>.</p>
<h2>How it works</h2>
<ul>
<li>Each slide is a child note of the collection.</li>
@@ -82,8 +86,8 @@
<p>At collection level, it's possible to adjust:</p>
<ul>
<li>The theme of the entire presentation to one of the predefined themes by
going to the&nbsp;<a class="reference-link" href="#root/_help_BlN9DFI679QC">Ribbon</a>&nbsp;and
looking for the <em>Collection Properties</em> tab.</li>
going to the&nbsp;<a class="reference-link" href="#root/_help_CssoWBu8I7jF">Collection Properties</a>&nbsp;and
looking for the <em>Theme</em> option.</li>
<li>It's currently not possible to create custom themes, although it is planned.</li>
<li>Note that it is note possible to alter the CSS via&nbsp;<a class="reference-link"
href="#root/_help_AlhDUqhENtH7">Custom app-wide CSS</a>&nbsp;because the slides

View File

@@ -36,8 +36,9 @@
</ul>
<h2>Interaction</h2>
<h3>Creating a new table</h3>
<p>Right click the&nbsp;<a class="reference-link" href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>&nbsp;and
select <em>Insert child note</em> and look for the <em>Table item</em>.</p>
<p>Right click on an existing note in the&nbsp;<a class="reference-link"
href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>&nbsp;and select <em>Insert child note</em> and
look for <em>Table</em>.</p>
<h3>Adding columns</h3>
<p>Each column is a <a href="#root/_help_OFXdgB2nNk1F">promoted or unpromoted attribute</a> that
is defined on the Collection note.</p>
@@ -153,8 +154,8 @@
to a certain number of levels or even disable it completely. To do so,
either:</p>
<ul>
<li>Go to <em>Collection Properties</em> in the&nbsp;<a class="reference-link"
href="#root/_help_BlN9DFI679QC">Ribbon</a>&nbsp;and look for the <em>Max nesting depth</em> section.
<li>Go to&nbsp;<a class="reference-link" href="#root/_help_CssoWBu8I7jF">Collection Properties</a>&nbsp;and
look for the <em>Max nesting depth</em> section.
<ul>
<li>To disable nesting, type 0 and press Enter.</li>
<li>To limit to a certain depth, type in the desired number (e.g. 2 to only

View File

@@ -80,7 +80,7 @@
<td><a class="reference-link" href="#root/_help_GTwFsgaA0lCt">Collections</a>
</td>
<td>Displays the children of the note either as a grid, a list, or for a more
specialized case: a calendar.
specialized case: a calendar.&nbsp;
<br>
<br>Generally useful for easy reading of short notes.</td>
</tr>
@@ -108,7 +108,7 @@
<td>Easy for brainstorming ideas, by placing them in a hierarchical layout.</td>
</tr>
<tr>
<td><a class="reference-link" href="#root/_help_81SGnPGMk7Xc">Geo Map View</a>
<td><a class="reference-link" href="#root/_help_81SGnPGMk7Xc">Geo Map</a>
</td>
<td>Displays the children of the note as a geographical map, one use-case
would be to plan vacations. It even has basic support for tracks. Notes

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 612 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 612 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -13,7 +13,7 @@
<p>See&nbsp;<a class="reference-link" href="#root/_help_XJGJrpu7F9sh">PDFs</a>.</p>
<h3>Images</h3>
<figure class="image image-style-align-center image_resized" style="width:50%;">
<img style="aspect-ratio:879/766;" src="3_File_image.png"
<img style="aspect-ratio:879/766;" src="2_File_image.png"
width="879" height="766">
</figure>
<p>Interaction:</p>
@@ -30,25 +30,10 @@
</li>
</ul>
<h3>Videos</h3>
<figure class="image image-style-align-center image_resized" style="width:50%;">
<img style="aspect-ratio:854/700;" src="File_image.png"
width="854" height="700">
</figure>
<p>Video files can be added in as well. The file is streamed directly, so
when accessing the note from a server it doesn't have to download the entire
video to start playing it.</p>
<aside class="admonition caution">
<p>Although Trilium offers support for videos, it is generally not meant
to be used with very large files. Uploading large videos will cause the&nbsp;
<a
class="reference-link" href="#root/_help_wX4HbRucYSDD">Database</a>&nbsp;to balloon as well as the any&nbsp;<a class="reference-link"
href="#root/_help_ODY7qQn5m2FT">Backup</a>&nbsp;of it. In addition to that, there
might be slowdowns when first uploading the files. Otherwise, a large database
should not impact the general performance of Trilium significantly.</p>
</aside>
<p>See&nbsp;<a class="reference-link" href="#root/_help_AjqEeiDUOzj4">Videos</a>.</p>
<h3>Audio</h3>
<figure class="image image-style-align-center image_resized" style="width:50%;">
<img style="aspect-ratio:850/243;" src="2_File_image.png"
<img style="aspect-ratio:850/243;" src="1_File_image.png"
width="850" height="243">
</figure>
<p>Adding a supported audio file will reveal a basic audio player that can
@@ -64,7 +49,7 @@
</ul>
<h3>Text files</h3>
<figure class="image image-style-align-center image_resized" style="width:50%;">
<img style="aspect-ratio:926/347;" src="1_File_image.png"
<img style="aspect-ratio:926/347;" src="File_image.png"
width="926" height="347">
</figure>
<p>Files that are identified as containing text will show a preview of their
@@ -83,7 +68,7 @@
application.</p>
<h3>Unknown file types</h3>
<figure class="image image-style-align-center image_resized" style="width:50%;">
<img style="aspect-ratio:532/240;" src="4_File_image.png"
<img style="aspect-ratio:532/240;" src="3_File_image.png"
width="532" height="240">
</figure>
<p>If the file could not be identified as any of the supported file types
@@ -110,7 +95,7 @@
<p>Files are also displayed in the&nbsp;<a class="reference-link" href="#root/_help_0ESUbbAxVnoK">Note List</a>&nbsp;based
on their type:</p>
<img class="image_resized" style="aspect-ratio:853/315;width:50%;"
src="5_File_image.png" width="853" height="315">
src="4_File_image.png" width="853" height="315">
</li>
<li>
<p>Non-image files can be embedded into text notes as read-only widgets via

View File

@@ -0,0 +1,131 @@
<figure class="image image-style-align-right image_resized" style="width:61.8%;">
<img style="aspect-ratio:953/587;" src="Videos_image.png"
width="953" height="587">
</figure>
<p>Starting with v0.103.0, Trilium has a custom video player which offers
more features than the built-in video player.</p>
<p>Versions prior to v0.103.0 also support videos, but using the built-in
player.</p>
<p>The file is streamed directly, so when accessing the note from a server
it doesn't have to download the entire video to start playing it.</p>
<h2>Note on large video files</h2>
<p>Although Trilium offers support for videos, it is generally not meant
to be used with very large files. Uploading large videos will cause the&nbsp;
<a
class="reference-link" href="#root/_help_wX4HbRucYSDD">Database</a>&nbsp;to balloon as well as the any&nbsp;<a class="reference-link"
href="#root/_help_ODY7qQn5m2FT">Backup</a>&nbsp;of it. In addition to that, there
might be slowdowns when first uploading the files. Otherwise, a large database
should not impact the general performance of Trilium significantly.</p>
<h2>Supported formats</h2>
<p>Trilium uses the built-in video decoding mechanism of the browser (or
Electron/Chromium when running on the desktop). Starting with v0.103.0,
a message will be displayed instead when a video format is not supported.</p>
<h2>Interactions</h2>
<p>To play/pause the video, simply click anywhere on the video.</p>
<p>The controls at the bottom will hide automatically after playing, simply
move the mouse to show them again.</p>
<p>The bottom bar has the following features:</p>
<ul>
<li>
<p>A track bar to seek across the video.</p>
</li>
<li>
<p>On the left of the track bar, the current time is indicated.</p>
</li>
<li>
<p>On the right of the track bar, the remaining time is indicated.</p>
</li>
<li>
<p>On the left side there are buttons to:</p>
<ul>
<li>Adjust the playback speed (e.g. 0.5x, 1x).</li>
<li>Rotate the video by 90 degrees.</li>
</ul>
</li>
<li>
<p>In the center:</p>
<ul>
<li>Go back by 10s</li>
<li>Play/pause</li>
<li>Go forward by 30s</li>
<li>Loop, which when enabled will restart the video once it reaches the end.</li>
</ul>
</li>
<li>
<p>On the right side:</p>
<ul>
<li>Mute button</li>
<li>Volume adjustment</li>
<li>Full screen</li>
<li>Zoom to fill, which will crop the video so that it fills the entire window.</li>
<li>Picture-in-picture (if the browser supports it).</li>
</ul>
</li>
</ul>
<h2>Keyboard shortcuts</h2>
<p>The following keyboard shortcuts are supported by the video player:</p>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><kbd>Space</kbd>
</td>
<td>Play/pause</td>
</tr>
<tr>
<td><kbd>Left arrow key</kbd>
</td>
<td>Go back by 10s</td>
</tr>
<tr>
<td><kbd>Right arrow key</kbd>
</td>
<td>Go forward by 10s</td>
</tr>
<tr>
<td><kbd>Ctrl</kbd> + <kbd>Left arrow key</kbd>
</td>
<td>Go back by 1 min</td>
</tr>
<tr>
<td><kbd>Ctrl</kbd> + <kbd>Right arrow key</kbd>
</td>
<td>Go right by 1 min</td>
</tr>
<tr>
<td><kbd>F</kbd>
</td>
<td>Toggle full-screen</td>
</tr>
<tr>
<td><kbd>M</kbd>
</td>
<td>Mute/unmute</td>
</tr>
<tr>
<td><kbd>Home</kbd>
</td>
<td>Go to the beginning of the video</td>
</tr>
<tr>
<td><kbd>End</kbd>
</td>
<td>Go to the end of the video</td>
</tr>
<tr>
<td><kbd>Up</kbd>
</td>
<td>Increase volume by 5%</td>
</tr>
<tr>
<td><kbd>Down</kbd>
</td>
<td>Decrease volume by 5%</td>
</tr>
</tbody>
</table>

Binary file not shown.

After

Width:  |  Height:  |  Size: 842 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 652 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -6,10 +6,20 @@
<img style="aspect-ratio:886/663;" src="2_Mermaid Diagrams_image.png"
width="886" height="663">
</figure>
<h2>Types of diagrams</h2>
<p>Trilium supports Mermaid, which adds support for various diagrams such
as flowchart, sequence diagram, class diagram, state diagram, pie charts,
etc., all using a text description of the chart instead of manually drawing
the diagram.</p>
<p>Starting with v0.103.0, Mermaid diagrams no longer start with a sample
flowchart, but instead a pane at the bottom will show all the supported
diagrams with sample code for each:</p>
<ul>
<li>Simply click on any of the samples to apply it.</li>
<li>The pane will disappear as soon as something is typed in the code editor
or a sample is selected. To make it appear again, simply remove the content
of the note.</li>
</ul>
<h2>Layouts</h2>
<p>Depending on the chart being edited and user preference, there are two
layouts supported by the Mermaid note type:</p>
@@ -38,30 +48,34 @@
<img src="1_Mermaid Diagrams_image.png">
</li>
<li>The preview can be moved around by holding the left mouse button and dragging.</li>
<li>Zooming can also be done by using the scroll wheel.</li>
<li>The zoom and position on the preview will remain fixed as the diagram
changes, to be able to work more easily with large diagrams.</li>
</ul>
<li
>Zooming can also be done by using the scroll wheel.</li>
<li>The zoom and position on the preview will remain fixed as the diagram
changes, to be able to work more easily with large diagrams.</li>
</ul>
</li>
<li>The size of the source/preview panes can be adjusted by hovering over
the border between them and dragging it with the mouse.</li>
<li>In the&nbsp;<a class="reference-link" href="#root/_help_XpOYSgsLkTJy">Floating buttons</a>&nbsp;area:
<ul>
<li>The source/preview can be laid out left-right or bottom-top via the <em>Move editing pane to the left / bottom</em> option.</li>
<li>Press <em>Lock editing</em> to automatically mark the note as read-only.
<li
>Press <em>Lock editing</em> to automatically mark the note as read-only.
In this mode, the code pane is hidden and the diagram is displayed full-size.
Similarly, press <em>Unlock editing</em> to mark a read-only note as editable.</li>
<li>Press the <em>Copy image reference to the clipboard</em> to be able to insert
the image representation of the diagram into a text note. See&nbsp;<a class="reference-link"
href="#root/_help_0Ofbk1aSuVRu">Image references</a>&nbsp;for more information.</li>
<li>Press the <em>Export diagram as SVG</em> to download a scalable/vector rendering
of the diagram. Can be used to present the diagram without degrading when
zooming.</li>
<li
>Press the <em>Copy image reference to the clipboard</em> to be able to insert
the image representation of the diagram into a text note. See&nbsp;<a class="reference-link"
href="#root/_help_0Ofbk1aSuVRu">Image references</a>&nbsp;for more information.</li>
<li
>Press the <em>Export diagram as SVG</em> to download a scalable/vector rendering
of the diagram. Can be used to present the diagram without degrading when
zooming.</li>
<li>Press the <em>Export diagram as PNG</em> to download a normal image (at
1x scale, raster) of the diagram. Can be used to send the diagram in more
traditional channels such as e-mail.</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2>Errors in the diagram</h2>
<p>If there is an error in the source code, the error will be displayed in

View File

@@ -2,15 +2,20 @@
<img style="aspect-ratio:601/216;" src="Render Note_image.png"
width="601" height="216">
</figure>
<p>Render Note is used in&nbsp;<a class="reference-link" href="#root/_help_CdNpE2pqjmI6">Scripting</a>.
It works by displaying the HTML of a&nbsp;<a class="reference-link" href="#root/_help_6f9hih2hXXZk">Code</a>&nbsp;note,
via an attribute.</p>
<p>Render Note is a special case of <a href="#root/_help_yIhgI5H7A2Sm">front-end scripting</a> which
allows rendering custom content inside a note. This makes it possible to
create custom dashboards, or to use a custom note editor.</p>
<p>The content can either be a vanilla HTML, or Preact JSX.</p>
<h2>Creating a render note</h2>
<ol>
<li>Create a&nbsp;<a class="reference-link" href="#root/_help_6f9hih2hXXZk">Code</a>&nbsp;note
with the HTML language, with what needs to be displayed (for example
<code
spellcheck="false">&lt;p&gt;Hello world.&lt;/p&gt;</code>).</li>
with the:
<ol>
<li>HTML language for the legacy/vanilla method, with what needs to be displayed
(for example <code spellcheck="false">&lt;p&gt;Hello world.&lt;/p&gt;</code>).</li>
<li>JSX for the Preact-based approach (see below).</li>
</ol>
</li>
<li>Create a&nbsp;<a class="reference-link" href="#root/_help_HcABDtFCkbFN">Render Note</a>.</li>
<li>Assign the <code spellcheck="false">renderNote</code> <a href="#root/_help_zEY4DaJG4YT5">relation</a> to
point at the previously created code note.</li>
@@ -47,7 +52,7 @@ $dateEl.text(new Date());</code></pre>
<li>
<p>Create a child&nbsp;<a class="reference-link" href="#root/_help_6f9hih2hXXZk">Code</a>&nbsp;note
with JSX as the language.
<br>As an example, use the following content:</p><pre><code class="language-text-jsx">export default function() {
<br>As an example, use the following content:</p><pre><code class="language-text-x-trilium-auto">export default function() {
return (
&lt;&gt;
&lt;p&gt;Hello world.&lt;/p&gt;

View File

@@ -0,0 +1,91 @@
<figure class="image">
<img style="aspect-ratio:1102/573;" src="Spreadsheets_image.png"
width="1102" height="573">
</figure>
<aside class="admonition important">
<p>Spreadsheets are a new type of note introduced in v0.103.0 and are currently
considered experimental/beta. As such, expect major changes to occur to
this note type.</p>
</aside>
<p>Spreadsheets provide a familiar experience to Microsoft Excel or LibreOffice
Calc, with support for formulas, data validation and text formatting.</p>
<h2>Spreadsheets vs. collections</h2>
<p>There is a slight overlap between spreadsheets and the&nbsp;<a class="reference-link"
href="#root/_help_2FvYrpmOXm29">Table</a>&nbsp;collection. In general the table
collection is useful to track meta-information about notes (for example
a collection of people and their birthdays), whereas spreadsheets are quite
useful for calculations since they support formulas.</p>
<p>Spreadsheets also benefit from a wider range of features such as data
validation, formatting and can work on a relatively large dataset.</p>
<h2>Important statement regarding data format</h2>
<p>For Trilium as a knowledge database, it is important that data is stored
in a format that is easy to convert to something else. For example,&nbsp;
<a
class="reference-link" href="#root/_help_iPIMuisry3hd">Text</a>&nbsp;notes can be exported to either HTML or Markdown, making
it relatively easy to migrate to another software or simply to stand the
test of time.</p>
<p>For spreadsheets, Trilium uses a technology called <a href="https://docs.univer.ai/">Univer Sheets</a>,
developed by DreamNum Co., Ltd. Although this software library is quite
powerful and has a good track record (starting with Luckysheet from 2020,
becoming Univer somewhere in 2023), it uses its own JSON format to store
the sheets.</p>
<p>As such, if Univer were to become unmaintained or incompatible for some
reason, your data might become vendor locked-in.</p>
<p>With that in mind, spreadsheets can be really useful for quick calculations,
but it's important not to have critical information on it that you might
not want to need in a few years time.</p>
<h2>Regarding data export</h2>
<p>Currently, in Trilium there is no way to export the spreadsheets to CSV
or Excel formats. We might manage to add support for it at some point,
but currently this is not the case.</p>
<h2>Supported features</h2>
<p>The spreadsheet has support for the following features:</p>
<ul>
<li>Filtering</li>
<li>Sorting</li>
<li>Data validation</li>
<li>Conditional formatting</li>
<li>Notes / annotations</li>
<li>Find / replace</li>
</ul>
<p>We might consider adding <a href="https://docs.univer.ai/guides/sheets/features/filter">other features</a> from
Univer at some point. If there is a particular feature that can be added
easily, it can be discussed over <a href="#root/_help_wy8So3yZZlH9">GitHub Issues</a>.</p>
<h2>Features not supported yet</h2>
<h3>Regarding Pro features</h3>
<p>Univer spreadsheets also feature a <a href="https://univer.ai/pro">Pro plan</a> which
adds quite a lot of functionality such as charts, printing, pivot tables,
export, etc.</p>
<p>As the Pro plan needs a license, Trilium does not support any of the premium
features. Theoretically, pro features can be used in trial mode with some
limitations, we might explore this direction at some point.</p>
<h3>Planned features</h3>
<p>There are a few features that are already planned but are not supported
yet:</p>
<ul>
<li>Trilium-specific formulas (e.g. to obtain the title of a note).</li>
<li>User-defined formulas</li>
<li>Cross-workbook calculation</li>
</ul>
<p>If you would like us to work on these features, consider <a href="https://triliumnotes.org/en/support-us">supporting us</a>.</p>
<h2>Known limitations</h2>
<ul>
<li>
<p>It is possible to share a spreadsheet, case in which a best-effort HTML
rendering of the spreadsheet is done.</p>
<ul>
<li>For more advanced use cases, this will most likely not work as intended.
Feel free to <a href="#root/_help_wy8So3yZZlH9">report issues</a>, but keep in
mind that we might not be able to have a complete feature parity with all
the features of Univer.</li>
</ul>
</li>
<li>
<p>There is currently no export functionality, as stated previously.</p>
</li>
<li>
<p>There is no dedicated mobile support. Mobile support is currently experimental
in Univer and when it becomes stable, we could potentially integrate it
into Trilium as well.</p>
</li>
</ul>

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

View File

@@ -0,0 +1,29 @@
<p>Unlike <a href="#root/_help_yIhgI5H7A2Sm">front-end scripts</a> which run on the
client / browser-side, back-end scripts run directly on the Node.js environment
of the Trilium server.</p>
<p>Back-end scripts can be used both on a&nbsp;<a class="reference-link"
href="#root/_help_WOcw2SLH6tbX">Server Installation</a>&nbsp;(where it will run
on the device the server is running on), or on the&nbsp;<a class="reference-link"
href="#root/_help_poXkQfguuA0U">Desktop Installation</a>&nbsp;(where it will
run on the PC).</p>
<h2>Advantages of backend scripts</h2>
<p>The benefit of backend scripts is that they can be pretty powerful, for
example to have access to the underlying system, for example it can read
files or execute processes.</p>
<p>However, the main benefit of backend scripts is that they have easier
access to the notes since the information about them is already loaded
in memory. Whereas on the client, notes have to be manually loaded first.</p>
<h2>Creating a backend script</h2>
<p>Create a new&nbsp;<a class="reference-link" href="#root/_help_6f9hih2hXXZk">Code</a>&nbsp;note
and select the language <em>JS backend</em>.</p>
<h2>Running backend scripts</h2>
<p>Backend scripts can be either run manually (via the Execute button on
the script page), or they can be triggered on certain events.</p>
<p>In addition, scripts can be run automatically when the server starts up,
on a fixed time interval or when a certain event occurs (such as an attribute
being modified). For more information, see the dedicated&nbsp;<a class="reference-link"
href="#root/_help_GPERMystNGTB">Events</a>&nbsp;page.</p>
<h2>Script API</h2>
<p>Trilium exposes a set of APIs that can be directly consumed by scripts,
under the <code spellcheck="false">api</code> object. For a reference of
this API, see&nbsp;<a class="reference-link" href="#root/_help_MEtfsqa5VwNi">Backend API</a>.</p>

View File

@@ -14,32 +14,30 @@
</thead>
<tbody>
<tr>
<td><code>run</code>
<td><code spellcheck="false">run</code>
</td>
<td>
<p>Defines on which events script should run. Possible values are:</p>
<ul>
<li><code>frontendStartup</code> - when Trilium frontend starts up (or is refreshed),
but not on mobile.</li>
<li><code>mobileStartup</code> - when Trilium frontend starts up (or is refreshed),
on mobile.</li>
<li><code>backendStartup</code> - when Trilium backend starts up</li>
<li><code>hourly</code> - run once an hour. You can use additional label <code>runAtHour</code> to
specify at which hour, on the back-end.</li>
<li><code>daily</code> - run once a day, on the back-end</li>
<li><code spellcheck="false">backendStartup</code> - when Trilium backend starts
up</li>
<li><code spellcheck="false">hourly</code> - run once an hour. You can use
additional label <code spellcheck="false">runAtHour</code> to specify at
which hour, on the back-end.</li>
<li><code spellcheck="false">daily</code> - run once a day, on the back-end</li>
</ul>
</td>
</tr>
<tr>
<td><code>runOnInstance</code>
<td><code spellcheck="false">runOnInstance</code>
</td>
<td>Specifies that the script should only run on a particular&nbsp;<a class="reference-link"
href="#root/_help_c5xB8m4g2IY6">Trilium instance</a>.</td>
</tr>
<tr>
<td><code>runAtHour</code>
<td><code spellcheck="false">runAtHour</code>
</td>
<td>On which hour should this run. Should be used together with <code>#run=hourly</code>.
<td>On which hour should this run. Should be used together with <code spellcheck="false">#run=hourly</code>.
Can be defined multiple times for more runs during the day.</td>
</tr>
</tbody>

View File

@@ -1,92 +1,76 @@
<h2>Frontend API</h2>
<p>The frontend api supports two styles, regular scripts that are run with
the current app and note context, and widgets that export an object to
Trilium to be used in the UI. In both cases, the frontend api of Trilium
is available to scripts running in the frontend context as global variable
<code
spellcheck="false">api</code>. The members and methods of the api can be seen on the <a href="#root/_help_GLks18SNjxmC">Script API</a> page.</p>
<p>Front-end scripts are custom JavaScript notes that are run on the client
(browser environment)</p>
<p>There are four flavors of front-end scripts:</p>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>Regular scripts</td>
<td>These are run with the current app and note context. These can be run
either manually or automatically on start-up.</td>
</tr>
<tr>
<td><a class="reference-link" href="#root/_help_MgibgPcfeuGz">Custom Widgets</a>
</td>
<td>These can introduce new UI elements in various positions, such as near
the&nbsp;<a class="reference-link" href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>,
content area or even the&nbsp;<a class="reference-link" href="#root/_help_RnaPdbciOfeq">Right Sidebar</a>.</td>
</tr>
<tr>
<td><a class="reference-link" href="#root/_help_4Gn3psZKsfSm">Launch Bar Widgets</a>
</td>
<td>Similar to&nbsp;<a class="reference-link" href="#root/_help_MgibgPcfeuGz">Custom Widgets</a>,
but dedicated to the&nbsp;<a class="reference-link" href="#root/_help_xYmIYSP6wE3F">Launch Bar</a>.
These can simply introduce new buttons or graphical elements to the bar.</td>
</tr>
<tr>
<td><a class="reference-link" href="#root/_help_HcABDtFCkbFN">Render Note</a>
</td>
<td>This allows rendering custom content inside a note, using either HTML
or Preact JSX.</td>
</tr>
</tbody>
</table>
<p>For more advanced behaviors that do not require a user interface (e.g.
batch modifying notes), see&nbsp;<a class="reference-link" href="#root/_help_SPirpZypehBG">Backend scripts</a>.</p>
<h2>Scripts</h2>
<p>Scripts don't have any special requirements. They can be run at will using
the execute button in the UI or they can be configured to run at certain
times using <a href="#root/_help_zEY4DaJG4YT5">Attributes</a> on the note containing
the script.</p>
<h3>Global Events</h3>
<p>This attribute is called <code spellcheck="false">#run</code> and it can
have any of the following values:</p>
<p>Scripts don't have any special requirements. They can be run manually
using the <em>Execute</em> button on the code note or they can be run automatically;
to do so, set the <code spellcheck="false">run</code> <a href="#root/_help_HI6GBBIduIgv">label</a> to
either:</p>
<ul>
<li><code spellcheck="false">frontendStartup</code> - executes on frontend
upon startup.</li>
<li><code spellcheck="false">mobileStartup</code> - executes on mobile frontend
upon startup.</li>
<li><code spellcheck="false">backendStartup</code> - executes on backend upon
startup.</li>
<li><code spellcheck="false">hourly</code> - executes once an hour on backend.</li>
<li><code spellcheck="false">daily</code> - executes once a day on backend.</li>
</ul>
<h3>Entity Events</h3>
<p>These events are triggered by certain <a href="#root/_help_zEY4DaJG4YT5">relations</a> to
other notes. Meaning that the script is triggered only if the note has
this script attached to it through relations (or it can inherit it).</p>
<ul>
<li><code spellcheck="false">runOnNoteCreation</code> - executes when note
is created on backend.</li>
<li><code spellcheck="false">runOnNoteTitleChange</code> - executes when note
title is changed (includes note creation as well).</li>
<li><code spellcheck="false">runOnNoteContentChange</code> - executes when
note content is changed (includes note creation as well).</li>
<li><code spellcheck="false">runOnNoteChange</code> - executes when note is
changed (includes note creation as well).</li>
<li><code spellcheck="false">runOnNoteDeletion</code> - executes when note
is being deleted.</li>
<li><code spellcheck="false">runOnBranchCreation</code> - executes when a branch
is created. Branch is a link between parent note and child note and is
created e.g. when cloning or moving note.</li>
<li><code spellcheck="false">runOnBranchDeletion</code> - executes when a branch
is delete. Branch is a link between parent note and child note and is deleted
e.g. when moving note (old branch/link is deleted).</li>
<li><code spellcheck="false">runOnChildNoteCreation</code> - executes when
new note is created under this note.</li>
<li><code spellcheck="false">runOnAttributeCreation</code> - executes when
new attribute is created under this note.</li>
<li><code spellcheck="false">runOnAttributeChange</code> - executes when attribute
is changed under this note.</li>
<li><code spellcheck="false">frontendStartup</code> - when Trilium frontend
starts up (or is refreshed), but not on mobile.</li>
<li><code spellcheck="false">mobileStartup</code> - when Trilium frontend starts
up (or is refreshed), on mobile.</li>
</ul>
<aside class="admonition note">
<p>Backend scripts have more powerful triggering conditions, for example
they can run automatically on a hourly or daily basis, but also on events
such as when a note is created or an attribute is modified. See the server-side&nbsp;
<a
class="reference-link" href="#root/_help_GPERMystNGTB">Events</a>&nbsp;for more information.</p>
</aside>
<h2>Widgets</h2>
<p>Conversely to scripts, widgets do have some specific requirements in order
to work. A widget must:</p>
<p>Widgets require a certain format in order for Trilium to be able to integrate
them into the UI.</p>
<ul>
<li>Extend <a href="https://triliumnext.github.io/Notes/frontend_api/BasicWidget.html">BasicWidget</a> or
one of it's subclasses.</li>
<li>Create a new instance and assign it to <code spellcheck="false">module.exports</code>.</li>
<li>Define a <code spellcheck="false">parentWidget</code> member to determine
where it should be displayed.</li>
<li>Define a <code spellcheck="false">position</code> (integer) that determines
the location via sort order.</li>
<li>Have a <code spellcheck="false">#widget</code> attribute on the containing
note.</li>
<li>Create, render, and return your element in the render function.
<ul>
<li>For <a href="https://triliumnext.github.io/Notes/frontend_api/BasicWidget.html">BasicWidget</a> and
<a
href="https://triliumnext.github.io/Notes/frontend_api/NoteContextAwareWidget.html">NoteContextAwareWidget</a>you should create <code spellcheck="false">this.$widget</code> and
render it in <code spellcheck="false">doRender()</code>.</li>
<li>For <a href="https://triliumnext.github.io/Notes/frontend_api/RightPanelWidget.html">RightPanelWidget</a> the
<code
spellcheck="false">this.$widget</code>and <code spellcheck="false">doRender()</code> are already
handled and you should instead return the value in <code spellcheck="false">doRenderBody()</code>.</li>
</ul>
</li>
</ul>
<h3>parentWidget</h3>
<ul>
<li><code spellcheck="false">left-pane</code> - This renders the widget on
the left side of the screen where the note tree lives.</li>
<li><code spellcheck="false">center-pane</code> - This renders the widget in
the center of the layout in the same location that notes and splits appear.</li>
<li><code spellcheck="false">note-detail-pane</code> - This renders the widget <em>with</em> the
note in the center pane. This means it can appear multiple times with splits.</li>
<li><code spellcheck="false">right-pane</code> - This renders the widget to
the right of any opened notes.</li>
<li>For legacy widgets, the script note must export a <code spellcheck="false">BasicWidget</code> or
a derived one (see&nbsp;<a class="reference-link" href="#root/_help_GhurYZjh8e1V">Note context aware widget</a>&nbsp;or&nbsp;
<a
class="reference-link" href="#root/_help_M8IppdwVHSjG">Right pane widget</a>).</li>
<li>For Preact widgets, a built-in helper called <code spellcheck="false">defineWidget</code> needs
to be used.</li>
</ul>
<p>For more information, see&nbsp;<a class="reference-link" href="#root/_help_MgibgPcfeuGz">Custom Widgets</a>.</p>
<h2>Script API</h2>
<p>The front-end API of Trilium is available to all scripts running in the
front-end context as global variable <code spellcheck="false">api</code>.
For a reference of the API, see&nbsp;<a class="reference-link" href="#root/_help_Q2z6av6JZVWm">Frontend API</a>.</p>
<h3>Tutorial</h3>
<p>For more information on building widgets, take a look at <a href="#root/_help_SynTBQiBsdYJ">Widget Basics</a>.</p>

View File

@@ -71,7 +71,7 @@ class="ck-table-resized">
</colgroup>
<thead>
<tr>
<th>Value for <code>parentWidget</code>
<th>Value for <code spellcheck="false">parentWidget</code>
</th>
<th>Description</th>
<th>Sample widget</th>
@@ -80,15 +80,15 @@ class="ck-table-resized">
</thead>
<tbody>
<tr>
<th><code>left-pane</code>
<th><code spellcheck="false">left-pane</code>
</th>
<td>Appears within the same pane that holds the&nbsp;<a class="reference-link"
href="#root/_help_oPVyFC7WL2Lp">Note Tree</a>.</td>
<td>Same as above, with only a different <code>parentWidget</code>.</td>
<td>Same as above, with only a different <code spellcheck="false">parentWidget</code>.</td>
<td>None.</td>
</tr>
<tr>
<th><code>center-pane</code>
<th><code spellcheck="false">center-pane</code>
</th>
<td>In the content area. If a split is open, the widget will span all of the
splits.</td>
@@ -96,7 +96,7 @@ class="ck-table-resized">
<td>None.</td>
</tr>
<tr>
<th><code>note-detail-pane</code>
<th><code spellcheck="false">note-detail-pane</code>
</th>
<td>
<p>In the content area, inside the note detail area. If a split is open,
@@ -107,16 +107,19 @@ class="ck-table-resized">
</td>
<td>
<ul>
<li>The widget must export a <code>class</code> and not an instance of the class
(e.g. <code>no new</code>) because it needs to be multiplied for each note,
so that splits work correctly.</li>
<li>Since the <code>class</code> is exported instead of an instance, the <code>parentWidget</code> getter
must be <code>static</code>, otherwise the widget is ignored.</li>
<li>The widget must export a <code spellcheck="false">class</code> and not an
instance of the class (e.g. <code spellcheck="false">no new</code>) because
it needs to be multiplied for each note, so that splits work correctly.</li>
<li
>Since the <code spellcheck="false">class</code> is exported instead of an
instance, the <code spellcheck="false">parentWidget</code> getter must be
<code
spellcheck="false">static</code>, otherwise the widget is ignored.</li>
</ul>
</td>
</tr>
<tr>
<th><code>right-pane</code>
<th><code spellcheck="false">right-pane</code>
</th>
<td>In the&nbsp;<a class="reference-link" href="#root/_help_RnaPdbciOfeq">Right Sidebar</a>,
as a dedicated section.</td>
@@ -124,8 +127,8 @@ class="ck-table-resized">
</td>
<td>
<ul>
<li>Although not mandatory, it's best to use a <code>RightPanelWidget</code> instead
of a <code>BasicWidget</code> or a <code>NoteContextAwareWidget</code>.</li>
<li>Although not mandatory, it's best to use a <code spellcheck="false">RightPanelWidget</code> instead
of a <code spellcheck="false">BasicWidget</code> or a <code spellcheck="false">NoteContextAwareWidget</code>.</li>
</ul>
</td>
</tr>
@@ -143,4 +146,13 @@ class="ck-table-resized">
to the&nbsp;<a class="reference-link" href="#root/_help_xYmIYSP6wE3F">Launch Bar</a>.
See&nbsp;<a class="reference-link" href="#root/_help_4Gn3psZKsfSm">Launch Bar Widgets</a>&nbsp;for
more information.</p>
<h2>Custom position</h2>
<h2>Custom position</h2>
<p>The position of a custom widget is defined via a <code spellcheck="false">position</code> integer.</p>
<p>In legacy widgets:</p><pre><code class="language-text-x-trilium-auto">class MyWidget extends api.BasicWidget {
// [..
get position() { return 10; }
}</code></pre>
<p>In Preact widgets:</p><pre><code class="language-text-x-trilium-auto">export default defineWidget({
// [...]
position: 10
});</code></pre>

View File

@@ -5,16 +5,17 @@
<p>Unlike&nbsp;<a class="reference-link" href="#root/_help_MgibgPcfeuGz">Custom Widgets</a>,
the process of setting up a launch bar widget is slightly different:</p>
<ol>
<li>Create a Code note of type <em>JavaScript (front-end)</em>.
<li>Create a Code note of type <em>JavaScript (front-end)</em> or JSX (for Preact-based
widgets).
<ul>
<li>The script itself uses the same concepts as&nbsp;<a class="reference-link"
href="#root/_help_MgibgPcfeuGz">Custom Widgets</a>, including the use of a
<code
spellcheck="false">NoteContextAwareWidget</code>or a <code spellcheck="false">BasicWidget</code> (according
to needs).</li>
<li>As examples, see&nbsp;<a class="reference-link" href="#root/_help_IPArqVfDQ4We">Note Title Widget</a>&nbsp;and&nbsp;
<a
class="reference-link" href="#root/_help_gcI7RPbaNSh3">Analog Watch</a>.</li>
<li>As examples in both legacy and Preact format, see&nbsp;<a class="reference-link"
href="#root/_help_IPArqVfDQ4We">Note Title Widget</a>&nbsp;and&nbsp;<a class="reference-link"
href="#root/_help_gcI7RPbaNSh3">Analog Watch</a>.</li>
</ul>
</li>
<li>Don't set <code spellcheck="false">#widget</code>, as that attribute is
@@ -25,5 +26,5 @@
<li>Give the newly created launcher a name (and optionally a name).</li>
<li>In the&nbsp;<a class="reference-link" href="#root/_help_OFXdgB2nNk1F">Promoted Attributes</a>&nbsp;section,
modify the <em>widget</em> field to point to the newly created note.</li>
<li>Refresh the UI.</li>
<li><a href="#root/_help_s8alTXmpFR61">Refresh</a> the UI.</li>
</ol>

View File

@@ -1,9 +1,28 @@
<aside class="admonition note">
<p>This page describes how to create custom icon packs. For a general description
of how to use already existing icon packs, see&nbsp;<a class="reference-link"
href="#root/_help_gOKqSJgXLcIj">Icon Packs</a>.</p>
<p>This page explains, stepbystep, how to create a custom icon pack. For
a general description of how to use already existing icon packs, see&nbsp;
<a
class="reference-link" href="#root/_help_gOKqSJgXLcIj">Icon Packs</a>.</p>
</aside>
<h2>Supported formats</h2>
<p>First read the quick flow to get the overall steps. After that there is
a concrete example (Phosphor) with a small Node.js script you can run to
generate the manifest.</p>
<h2>Quick flow (what you need to do)</h2>
<ol>
<li>Verify the icon set is a font (one of: .woff2, .woff, .ttf).</li>
<li>Obtain a list that maps icon names to Unicode code points (often provided
as a JSON like <code spellcheck="false">selection.json</code> or a CSS file).</li>
<li>Create a manifest JSON that maps icon ids to glyphs and search terms.</li>
<li>Create a Trilium note of type Code, set language to JSON, paste the manifest
as the note content.</li>
<li>Upload the font file as an attachment to the same note (MIME type must
be <code spellcheck="false">font/woff2</code>, <code spellcheck="false">font/woff</code>,
or <code spellcheck="false">font/ttf</code> and role <code spellcheck="false">file</code>).</li>
<li>Add the label <code spellcheck="false">#iconPack=&lt;prefix&gt;</code> to
the note (prefix: alphanumeric, hyphen, underscore only).</li>
<li>Refresh the client and verify the icon pack appears in the icon selector.</li>
</ol>
<h2>Verify the icon set</h2>
<p>The first step is to analyze if the icon set being packed can be integrated
into Trilium.</p>
<p>Trilium only supports <strong>font-based icon sets</strong>, with the following
@@ -40,8 +59,6 @@
</tr>
</tbody>
</table>
<h2>Unsupported formats</h2>
<p>Trilium <strong>does not</strong> support the following formats:</p>
<ul>
<li>SVG-based fonts.</li>
@@ -53,48 +70,45 @@
</ul>
<p>In this case, the font must be manually converted to one of the supported
formats (ideally <code spellcheck="false">.woff2</code>).</p>
<h2>Prerequisites</h2>
<p>In order to create a new icon pack from a set of icons, it must meet the
following criteria:</p>
<ol>
<li>It must have a web font of the supported format (see above).</li>
<li>It must have some kind of list, containing the name of each icon and the
corresponding Unicode code point. If this is missing, icon fonts usually
ship with a <code spellcheck="false">.css</code> file that can be used to
extract the icon names from.</li>
</ol>
<h2>Step-by-step process</h2>
<p>As an example throughout this page, we are going to go through the steps
of integrating <a href="https://phosphoricons.com/">Phosphor Icons</a>.</p>
<h3>Creating the manifest</h3>
<p>This is the most difficult part of creating an icon pack, since it requires
processing of the icon list to match Trilium's format.</p>
<p>The icon pack manifest is a JSON file with the following structure:</p><pre><code class="language-application-ld-json">{
"icons": {
"bx-ball": {
"glyph": "\ue9c2",
"terms": [ "ball" ]
},
"bxs-party": {
"glyph": "\uec92",
"terms": [ "party" ]
}
}
}</code></pre>
<h2>Manifest format</h2>
<p>The manifest is a JSON object with an <code spellcheck="false">icons</code> map.
Each entry key is the CSS/class id you will use (Trilium uses the CSS class
when rendering). Value object:</p>
<ul>
<li>The JSON example is a sample from the Boxicons font.</li>
<li>This is simply a mapping between the CSS classes (<code spellcheck="false">bx-ball</code>),
to its corresponding code point in the font (<code spellcheck="false">\ue9c2</code>)
and the terms/aliases used for search purposes.</li>
<li>Note that it's also possible to use the unescaped glyph inside the JSON.
It will appear strange (e.g. ), but it will be rendered properly regardless.</li>
<li>The first term is also considered the “name” of the icon, which is displayed
while hovering over it in the icon selector.</li>
<li>glyph: the single character (the glyph) — can be the escaped Unicode (e.g.
"\ue9c2") or the literal character.</li>
<li>terms: array of search aliases; the first term is used as display name
in the selector.</li>
</ul>
<p>In order to generate this manifest, generally a script is needed that
processes an already existing list. In the case of Phosphor Icons, the
icon list comes in a file called <code spellcheck="false">selection.json</code> with
the following format:</p><pre><code class="language-application-ld-json">{
<p>Example minimal manifest:</p><pre><code class="language-text-x-trilium-auto">{
"icons": {
"ph-acorn": {
"glyph": "\uea3f",
"terms": ["acorn", "nut"]
},
"ph-book": {
"glyph": "\uea40",
"terms": ["book", "read"]
}
}
}</code></pre>
<aside class="admonition note">
<ul>
<li>You can supply glyph as the escaped <code spellcheck="false">\uXXXX</code> sequence
or as the actual UTF8 character.</li>
<li>It is also possible to use the unescaped glyph inside the JSON. It will
appear strange (e.g. ), but it will be rendered properly regardless.</li>
<li>The manifest keys (e.g. <code spellcheck="false">ph-acorn</code>) should
match the class names used by the font (prefix + name is a common pattern).</li>
</ul>
</aside>
<h2>Concrete example: Phosphor Icons</h2>
<p><a href="https://phosphoricons.com/">Phosphor Icons</a> provide a
<code
spellcheck="false">selection.json</code>that includes <code spellcheck="false">properties.code</code> (the
codepoint) and <code spellcheck="false">properties.name</code> (the icon
name). The goal: convert that into Trilium's manifest.</p>
<p>Sample <code spellcheck="false">selection.json</code> excerpt:</p><pre><code class="language-text-x-trilium-auto">{
"icons": [
{
"icon": {
@@ -121,9 +135,9 @@
/* [...] */
]
}</code></pre>
<p>As such, we can write a Node.js script to automatically process the manifest
file:</p><pre><code class="language-application-javascript-env-backend">import { join } from "node:path";
import { readFileSync } from "node:fs";
<p>A tiny Node.js script to produce the manifest (place <code spellcheck="false">selection.json</code> in
the same directory and run with Node 20+):</p><pre><code class="language-application-javascript-env-backend">import { join } from "node:path";
import { readFileSync, writeFileSync } from "node:fs";
function processIconPack(packName) {
const path = join(packName);
@@ -143,12 +157,19 @@ function processIconPack(packName) {
};
}
return JSON.stringify({
icons
}, null, 2);
writeFileSync("manifest.json", JSON.stringify(icons, null, 2), "utf8");
console.log("manifest.json created");
}
console.log(processIconPack("light"));</code></pre>
processIconPack("light");</code></pre>
<p>What to do with the script:</p>
<ul>
<li>Put <code spellcheck="false">selection.json</code> and <code spellcheck="false">build-manifest.js</code> in
a folder.</li>
<li>Run: node build-manifest.js</li>
<li>The script writes <code spellcheck="false">manifest.json</code> — open it,
verify contents, then copy into a Trilium Code note (language: JSON).</li>
</ul>
<aside class="admonition tip">
<p><strong>Mind the escape format when processing CSS</strong>
</p>
@@ -158,32 +179,6 @@ console.log(processIconPack("light"));</code></pre>
<p>As a more compact alternative, provide the un-escaped character directly,
as UTF-8 is supported.</p>
</aside>
<h3>Creating the icon pack</h3>
<ol>
<li>Create a note of type <em>Code</em>.</li>
<li>Set the language to <em>JSON</em>.</li>
<li>Copy and paste the manifest generated in the previous step as the content
of this note.</li>
<li>Go to the <a href="#root/_help_0vhv7lsOLy82">note attachment</a> and upload the
font file (in <code spellcheck="false">.woff2</code>, <code spellcheck="false">.woff</code>,
<code
spellcheck="false">.ttf</code>) format.
<ol>
<li>Trilium identifies the font to use from attachments via the MIME type,
make sure the MIME type is displayed correctly after uploading the attachment
(for example <code spellcheck="false">font/woff2</code>).</li>
<li>Make sure the <code spellcheck="false">role</code> appears as <code spellcheck="false">file</code>,
otherwise the font will not be identified.</li>
<li>Multiple attachments are supported, but only one font will actually be
used in Trilium's order of preference: <code spellcheck="false">.woff2</code>,
<code
spellcheck="false">.woff</code>, <code spellcheck="false">.ttf</code>. As such, there's not
much reason to upload more than one font per icon pack.</li>
</ol>
</li>
<li>Go back to the note and rename it. The name of the note will also be the
name of the icon pack as displayed in the list of icons.</li>
</ol>
<h3>Assigning the prefix</h3>
<p>Before an icon pack can be used, it needs to have a prefix defined. This
prefix uniquely identifies the icon pack so that it can be used throughout
@@ -203,6 +198,34 @@ console.log(processIconPack("light"));</code></pre>
If the prefix doesn't match these constraints, the icon pack will be ignored
and an error will be logged in&nbsp;<a class="reference-link" href="#root/_help_bnyigUA2UK7s">Backend (server) logs</a>.</p>
</aside>
<h2>Creating the Trilium icon pack note</h2>
<ol>
<li>Create a note of type <em>Code</em>.</li>
<li>Set the language to <em>JSON</em>.</li>
<li>Rename the note. The name of the note will also be the name of the icon
pack as displayed in the list of icons.</li>
<li>Copy and paste the manifest generated in the previous step as the content
of this note.</li>
<li>Go to the <a href="#root/_help_0vhv7lsOLy82">note attachment</a> and upload the
font file (in <code spellcheck="false">.woff2</code>, <code spellcheck="false">.woff</code>,
<code
spellcheck="false">.ttf</code>) format.
<ol>
<li>Trilium identifies the font to use from attachments via the MIME type,
make sure the MIME type is displayed correctly after uploading the attachment
(for example <code spellcheck="false">font/woff2</code>).</li>
<li>Make sure the <code spellcheck="false">role</code> appears as <code spellcheck="false">file</code>,
otherwise the font will not be identified.</li>
<li>Multiple attachments are supported, but only one font will actually be
used in Trilium's order of preference: <code spellcheck="false">.woff2</code>,
<code
spellcheck="false">.woff</code>, <code spellcheck="false">.ttf</code>. As such, there's not
much reason to upload more than one font per icon pack.</li>
</ol>
</li>
<li>Add label: <code spellcheck="false">#iconPack=&lt;prefix&gt;</code> (for
Phosphor example: <code spellcheck="false">#iconPack=ph</code>).</li>
</ol>
<h3>Final steps</h3>
<ul>
<li><a href="#root/_help_s8alTXmpFR61">Refresh the client</a>

View File

@@ -168,12 +168,10 @@
"code-notes-title": "ملاحظات برمجية",
"visible-launchers-title": "المشغلات المرئية",
"user-guide": "دليل المستخدم",
"ai-llm-title": "AI/LLM",
"etapi-title": "ETAPI",
"sql-console-history-title": "سجل وحدة تحكم SQL",
"launch-bar-templates-title": "قوالب شريط التشغيل",
"base-abstract-launcher-title": "المشغل الاساسي المجرد",
"llm-chat-title": "الدردشة مع الملاحظات",
"localization": "اللغة والمنطقة",
"go-to-previous-note-title": "اذهب الى الملاحظة السابقة",
"go-to-next-note-title": "اذهب الى الملاحظة التالية",

View File

@@ -77,7 +77,6 @@
"etapi-title": "ETAPI",
"backup-title": "Còpia de seguretat",
"sync-title": "Sincronització",
"ai-llm-title": "AI/LLM",
"other": "Altres",
"advanced-title": "Avançat",
"inbox-title": "Safata d'entrada"

View File

@@ -255,8 +255,6 @@
"user-guide": "用户指南",
"localization": "语言和区域",
"jump-to-note-title": "跳转至...",
"llm-chat-title": "与笔记聊天",
"ai-llm-title": "AI/LLM",
"inbox-title": "收件箱",
"command-palette": "打开命令面板",
"zen-mode": "禅模式",

View File

@@ -251,9 +251,7 @@
"visible-launchers-title": "Sichtbare Starter",
"user-guide": "Nutzerhandbuch",
"jump-to-note-title": "Springe zu...",
"llm-chat-title": "Chat mit Notizen",
"multi-factor-authentication-title": "MFA",
"ai-llm-title": "AI/LLM",
"localization": "Sprache & Region",
"inbox-title": "Posteingang",
"zen-mode": "Zen-Modus",
@@ -330,7 +328,7 @@
"expand-subtree": "Unterzweig aufklappen",
"collapse-tree": "Baumstruktur einklappen",
"collapse-subtree": "Unterzweig einklappen",
"sort-child-notes": "Unternotizen sortieren",
"sort-child-notes": "Untergeordnete Notizen sortieren",
"create-note-after": "Erstelle eine neue Notiz dahinter",
"create-note-into": "Erstelle eine neue Notiz davor",
"create-note-into-inbox": "Neue Notiz in Inbox erstellen",
@@ -425,7 +423,7 @@
"error_title": "Fehler"
},
"share_theme": {
"site-theme": "Webseite Stil",
"site-theme": "Webseiten Stil",
"search_placeholder": "Suche...",
"image_alt": "Artikel Bild",
"last-updated": "Zuletzt aktualisiert am {{- date}}",

View File

@@ -3,6 +3,50 @@
"back-in-note-history": "Μετάβαση στην προηγούμενη σημείωση στο ιστορικό",
"forward-in-note-history": "Μεταβείτε στην επόμενη σημείωση στο ιστορικό",
"open-jump-to-note-dialog": "Ανοίξτε το παράθυρο διαλόγου \"Μετάβαση στη σημείωση\"",
"open-command-palette": "Άνοιγμα παλέτας εντολών"
"open-command-palette": "Άνοιγμα παλέτας εντολών",
"scroll-to-active-note": "Μετακίνηση του δέντρου σημειώσεων στην ενεργή σημείωση",
"quick-search": "Ενεργοποίηση γραμμής γρήγορης αναζήτησης",
"search-in-subtree": "Αναζήτηση σημειώσεων στο υποδέντρο της ενεργής σημείωσης",
"expand-subtree": "Ανάπτυξη υποδέντρου της τρέχουσας σημείωσης",
"collapse-tree": "Σύμπτυξη ολόκληρου του δέντρου σημειώσεων",
"collapse-subtree": "Σύμπτυξη υποδέντρου της τρέχουσας σημείωσης",
"sort-child-notes": "Ταξινόμηση υποσημειώσεων",
"creating-and-moving-notes": "Δημιουργία και μετακίνηση σημειώσεων",
"create-note-after": "Δημιουργία σημείωσης μετά την ενεργή σημείωση",
"create-note-into": "Δημιουργία σημείωσης ως υποσημείωσης της ενεργής σημείωσης",
"create-note-into-inbox": "Δημιουργία σημείωσης στα Εισερχόμενα (εάν έχουν οριστεί) ή στη σημείωση ημέρας",
"delete-note": "Διαγραφή σημείωσης",
"move-note-up": "Μετακίνηση σημείωσης προς τα επάνω",
"move-note-down": "Μετακίνηση σημείωσης προς τα κάτω",
"move-note-up-in-hierarchy": "Μετακίνηση σημείωσης προς τα επάνω στην ιεραρχία",
"move-note-down-in-hierarchy": "Μετακίνηση σημείωσης προς τα κάτω στην ιεραρχία",
"edit-note-title": "Μετάβαση από το δέντρο στις λεπτομέρειες της σημείωσης και επεξεργασία τίτλου",
"edit-branch-prefix": "Εμφάνιση παραθύρου «Επεξεργασία προθέματος κλάδου»",
"clone-notes-to": "Κλωνοποίηση επιλεγμένων σημειώσεων",
"move-notes-to": "Μετακίνηση επιλεγμένων σημειώσεων",
"note-clipboard": "Πρόχειρο σημειώσεων",
"copy-notes-to-clipboard": "Αντιγραφή επιλεγμένων σημειώσεων στο πρόχειρο",
"paste-notes-from-clipboard": "Επικόλληση σημειώσεων από το πρόχειρο στην ενεργή σημείωση",
"cut-notes-to-clipboard": "Αποκοπή επιλεγμένων σημειώσεων στο πρόχειρο",
"select-all-notes-in-parent": "Επιλογή όλων των σημειώσεων από το τρέχον επίπεδο σημείωσης",
"add-note-above-to-the-selection": "Προσθήκη της παραπάνω σημείωσης στην επιλογή",
"add-note-below-to-selection": "Προσθήκη της παρακάτω σημείωσης στην επιλογή",
"duplicate-subtree": "Αντιγραφή υποδέντρου",
"tabs-and-windows": "Καρτέλες & Παράθυρα",
"open-new-tab": "Άνοιγμα νέας καρτέλας",
"close-active-tab": "Κλείσιμο ενεργής καρτέλας",
"reopen-last-tab": "Επαναφορά τελευταίας κλειστής καρτέλας",
"activate-next-tab": "Ενεργοποίηση καρτέλας στα δεξιά",
"activate-previous-tab": "Ενεργοποίηση καρτέλας στα αριστερά",
"open-new-window": "Άνοιγμα νέου κενού παραθύρου",
"toggle-tray": "Εμφάνιση/Απόκρυψη εφαρμογής από το system tray",
"first-tab": "Ενεργοποίηση πρώτης καρτέλας στη λίστα",
"second-tab": "Ενεργοποίηση της δεύτερης καρτέλας στη λίστα",
"third-tab": "Ενεργοποίηση της τρίτης καρτέλας στη λίστα",
"fourth-tab": "Ενεργοποίηση της τέταρτης καρτέλας στη λίστα",
"fifth-tab": "Ενεργοποίηση της πέμπτης καρτέλας στη λίστα",
"sixth-tab": "Ενεργοποίηση της έκτης καρτέλας στη λίστα",
"seventh-tab": "Ενεργοποίηση της έβδομης καρτέλας στη λίστα",
"eight-tab": "Ενεργοποίηση της όγδοης καρτέλας στη λίστα"
}
}

View File

@@ -337,7 +337,6 @@
"protected-session-title": "Protected Session",
"sync-status-title": "Sync Status",
"settings-title": "Settings",
"llm-chat-title": "Chat with Notes",
"options-title": "Options",
"appearance-title": "Appearance",
"shortcuts-title": "Shortcuts",
@@ -350,7 +349,6 @@
"etapi-title": "ETAPI",
"backup-title": "Backup",
"sync-title": "Sync",
"ai-llm-title": "AI/LLM",
"other": "Other",
"advanced-title": "Advanced",
"visible-launchers-title": "Visible Launchers",

View File

@@ -237,7 +237,6 @@
"protected-session-title": "Sesión protegida",
"sync-status-title": "Sincronizar estado",
"settings-title": "Ajustes",
"llm-chat-title": "Chat con notas",
"options-title": "Opciones",
"appearance-title": "Apariencia",
"shortcuts-title": "Atajos",
@@ -250,7 +249,6 @@
"etapi-title": "ETAPI",
"backup-title": "Respaldo",
"sync-title": "Sincronizar",
"ai-llm-title": "IA/LLM",
"other": "Otros",
"advanced-title": "Avanzado",
"visible-launchers-title": "Lanzadores visibles",

View File

@@ -1,442 +1,440 @@
{
"keyboard_actions": {
"open-jump-to-note-dialog": "Ouvrir la boîte de dialogue \"Aller à la note\"",
"search-in-subtree": "Rechercher des notes dans les sous-arbres de la note active",
"expand-subtree": "Développer le sous-arbre de la note actuelle",
"collapse-tree": "Réduire toute l'arborescence des notes",
"collapse-subtree": "Réduire le sous-arbre de la note actuelle",
"sort-child-notes": "Trier les notes enfants",
"creating-and-moving-notes": "Créer et déplacer des notes",
"create-note-into-inbox": "Créer une note dans l'emplacement par défaut (si défini) ou une note journalière",
"delete-note": "Supprimer la note",
"move-note-up": "Déplacer la note vers le haut",
"move-note-down": "Déplacer la note vers le bas",
"move-note-up-in-hierarchy": "Déplacer la note vers le haut dans la hiérarchie",
"move-note-down-in-hierarchy": "Déplacer la note vers le bas dans la hiérarchie",
"edit-note-title": "Passer de l'arborescence aux détails d'une note et éditer le titre",
"edit-branch-prefix": "Afficher la fenêtre Éditer le préfixe de branche",
"note-clipboard": "Note presse-papiers",
"copy-notes-to-clipboard": "Copier les notes sélectionnées dans le presse-papiers",
"paste-notes-from-clipboard": "Coller les notes depuis le presse-papiers dans la note active",
"cut-notes-to-clipboard": "Couper les notes sélectionnées dans le presse-papiers",
"select-all-notes-in-parent": "Sélectionner toutes les notes du niveau de la note active",
"add-note-above-to-the-selection": "Ajouter la note au-dessus de la sélection",
"add-note-below-to-selection": "Ajouter la note en dessous de la sélection",
"duplicate-subtree": "Dupliquer le sous-arbre",
"tabs-and-windows": "Onglets et fenêtres",
"open-new-tab": "Ouvrir un nouvel onglet",
"close-active-tab": "Fermer l'onglet actif",
"reopen-last-tab": "Rouvrir le dernier onglet fermé",
"activate-next-tab": "Basculer vers l'onglet à droite de l'onglet actif",
"activate-previous-tab": "Basculer vers l'onglet à gauche de l'onglet actif",
"open-new-window": "Ouvrir une nouvelle fenêtre vide",
"toggle-tray": "Afficher/masquer l'application dans la barre des tâches",
"first-tab": "Basculer vers le premier onglet dans la liste",
"second-tab": "Basculer vers le deuxième onglet dans la liste",
"third-tab": "Basculer vers le troisième onglet dans la liste",
"fourth-tab": "Basculer vers le quatrième onglet dans la liste",
"fifth-tab": "Basculer vers le cinquième onglet dans la liste",
"sixth-tab": "Basculer vers le sixième onglet dans la liste",
"seventh-tab": "Basculer vers le septième onglet dans la liste",
"eight-tab": "Basculer vers le huitième onglet dans la liste",
"ninth-tab": "Basculer vers le neuvième onglet dans la liste",
"last-tab": "Basculer vers le dernier onglet dans la liste",
"dialogs": "Boîtes de dialogue",
"show-note-source": "Affiche la boîte de dialogue Source de la note",
"show-options": "Afficher les Options",
"show-revisions": "Afficher la boîte de dialogue Versions de la note",
"show-recent-changes": "Afficher la boîte de dialogue Modifications récentes",
"show-sql-console": "Afficher la boîte de dialogue Console SQL",
"show-backend-log": "Afficher la boîte de dialogue Journal du backend",
"text-note-operations": "Opérations sur les notes textuelles",
"add-link-to-text": "Ouvrir la boîte de dialogue pour ajouter un lien dans le texte",
"follow-link-under-cursor": "Suivre le lien sous le curseur",
"insert-date-and-time-to-text": "Insérer la date et l'heure dans le texte",
"paste-markdown-into-text": "Coller du texte au format Markdown dans la note depuis le presse-papiers",
"cut-into-note": "Couper la sélection depuis la note actuelle et créer une sous-note avec le texte sélectionné",
"add-include-note-to-text": "Ouvrir la boîte de dialogue pour Inclure une note",
"edit-readonly-note": "Éditer une note en lecture seule",
"attributes-labels-and-relations": "Attributs (labels et relations)",
"add-new-label": "Créer un nouveau label",
"create-new-relation": "Créer une nouvelle relation",
"ribbon-tabs": "Onglets du ruban",
"toggle-basic-properties": "Afficher/masquer les Propriétés de base de la note",
"toggle-file-properties": "Afficher/masquer les Propriétés du fichier",
"toggle-image-properties": "Afficher/masquer les Propriétés de l'image",
"toggle-owned-attributes": "Afficher/masquer les Attributs propres",
"toggle-inherited-attributes": "Afficher/masquer les Attributs hérités",
"toggle-promoted-attributes": "Afficher/masquer les Attributs promus",
"toggle-link-map": "Afficher/masquer la Carte de la note",
"toggle-note-info": "Afficher/masquer les Informations de la note",
"toggle-note-paths": "Afficher/masquer les Emplacements de la note",
"toggle-similar-notes": "Afficher/masquer les Notes similaires",
"other": "Autre",
"toggle-right-pane": "Afficher/masquer le volet droit, qui inclut la Table des matières et les Accentuations",
"print-active-note": "Imprimer la note active",
"open-note-externally": "Ouvrir la note comme fichier avec l'application par défaut",
"render-active-note": "Rendre (ou re-rendre) la note active",
"run-active-note": "Exécuter le code JavaScript (frontend/backend) de la note active",
"toggle-note-hoisting": "Activer le focus sur la note active",
"unhoist": "Désactiver tout focus",
"reload-frontend-app": "Recharger l'application",
"open-dev-tools": "Ouvrir les outils de développement",
"toggle-left-note-tree-panel": "Basculer le panneau gauche (arborescence des notes)",
"toggle-full-screen": "Basculer en plein écran",
"zoom-out": "Dézoomer",
"zoom-in": "Zoomer",
"note-navigation": "Navigation dans les notes",
"reset-zoom-level": "Réinitialiser le niveau de zoom",
"copy-without-formatting": "Copier le texte sélectionné sans mise en forme",
"force-save-revision": "Forcer la création / sauvegarde d'une nouvelle version de la note active",
"show-help": "Affiche le guide de l'utilisateur intégré",
"toggle-book-properties": "Afficher/masquer les Propriétés du Livre",
"toggle-classic-editor-toolbar": "Activer/désactiver l'onglet Mise en forme de l'éditeur avec la barre d'outils fixe",
"export-as-pdf": "Exporte la note actuelle en PDF",
"show-cheatsheet": "Affiche une fenêtre modale avec des opérations de clavier courantes",
"toggle-zen-mode": "Active/désactive le mode zen (interface réduite pour favoriser la concentration)",
"back-in-note-history": "Naviguer à la note précédente dans l'historique",
"forward-in-note-history": "Naviguer a la note suivante dans l'historique",
"open-command-palette": "Ouvrir la palette de commandes",
"clone-notes-to": "Cloner les nœuds sélectionnés",
"move-notes-to": "Déplacer les nœuds sélectionnés",
"scroll-to-active-note": "Faire défiler larborescence des notes jusquà la note active",
"quick-search": "Activer la barre de recherche rapide",
"create-note-after": "Créer une note après la note active",
"create-note-into": "Créer une note enfant de la note active",
"find-in-text": "Afficher/Masquer le panneau de recherche"
},
"login": {
"title": "Connexion",
"heading": "Connexion à Trilium",
"incorrect-password": "Le mot de passe est incorrect. Veuillez réessayer.",
"password": "Mot de passe",
"remember-me": "Se souvenir de moi",
"button": "Connexion",
"sign_in_with_sso": "Se connecter avec {{ ssoIssuerName }}",
"incorrect-totp": "TOTP incorrect. Veuillez réessayer."
},
"set_password": {
"title": "Définir un mot de passe",
"heading": "Définir un mot de passe",
"description": "Avant de pouvoir commencer à utiliser Trilium depuis le web, vous devez d'abord définir un mot de passe. Vous utiliserez ensuite ce mot de passe pour vous connecter.",
"password": "Mot de passe",
"password-confirmation": "Confirmation du mot de passe",
"button": "Définir le mot de passe"
},
"setup": {
"heading": "Configuration de Trilium Notes",
"new-document": "Je suis un nouvel utilisateur et je souhaite créer un nouveau document Trilium pour mes notes",
"sync-from-desktop": "J'ai déjà l'application de bureau et je souhaite configurer la synchronisation avec celle-ci",
"sync-from-server": "J'ai déjà un serveur et je souhaite configurer la synchronisation avec celui-ci",
"next": "Suivant",
"init-in-progress": "Initialisation du document en cours",
"redirecting": "Vous serez bientôt redirigé vers l'application.",
"title": "Configuration"
},
"setup_sync-from-desktop": {
"heading": "Synchroniser depuis une application de bureau",
"description": "Cette procédure doit être réalisée depuis l'application de bureau :",
"step1": "Ouvrez l'application Trilium Notes.",
"step2": "Dans le menu Trilium, cliquez sur Options.",
"step3": "Cliquez sur la catégorie Synchroniser.",
"step4": "Remplacez l'adresse de l'instance de serveur par : {{- host}} et cliquez sur Enregistrer.",
"step5": "Cliquez sur le bouton 'Tester la synchronisation' pour vérifier que la connexion fonctionne.",
"step6": "Une fois que vous avez terminé ces étapes, cliquez sur {{- link}}.",
"step6-here": "ici"
},
"setup_sync-from-server": {
"heading": "Synchroniser depuis le serveur",
"instructions": "Veuillez saisir l'adresse du serveur Trilium et les informations d'identification ci-dessous. Cela téléchargera l'intégralité du document Trilium à partir du serveur et configurera la synchronisation avec celui-ci. En fonction de la taille du document et de votre vitesse de connexion, cela peut prendre un plusieurs minutes.",
"server-host": "Adresse du serveur Trilium",
"server-host-placeholder": "https://<nom d'hôte>:<port>",
"proxy-server": "Serveur proxy (facultatif)",
"proxy-server-placeholder": "https://<nom d'hôte>:<port>",
"note": "Note :",
"proxy-instruction": "Si vous laissez le paramètre de proxy vide, le proxy du système sera utilisé (s'applique uniquement à l'application de bureau)",
"password": "Mot de passe",
"password-placeholder": "Mot de passe",
"back": "Retour",
"finish-setup": "Terminer"
},
"setup_sync-in-progress": {
"heading": "Synchronisation en cours",
"successful": "La synchronisation a été correctement configurée. La synchronisation initiale prendra un certain temps. Une fois terminée, vous serez redirigé vers la page de connexion.",
"outstanding-items": "Éléments de synchronisation exceptionnels :",
"outstanding-items-default": "N/A"
},
"share_404": {
"title": "Page non trouvée",
"heading": "Page non trouvée"
},
"share_page": {
"parent": "parent :",
"clipped-from": "Cette note a été initialement extraite de {{- url}}",
"child-notes": "Notes enfants :",
"no-content": "Cette note n'a aucun contenu."
},
"weekdays": {
"monday": "Lundi",
"tuesday": "Mardi",
"wednesday": "Mercredi",
"thursday": "Jeudi",
"friday": "Vendredi",
"saturday": "Samedi",
"sunday": "Dimanche"
},
"months": {
"january": "Janvier",
"february": "Février",
"march": "Mars",
"april": "Avril",
"may": "Mai",
"june": "Juin",
"july": "Juillet",
"august": "Août",
"september": "Septembre",
"october": "Octobre",
"november": "Novembre",
"december": "Décembre"
},
"special_notes": {
"search_prefix": "Recherche :"
},
"test_sync": {
"not-configured": "L'hôte du serveur de synchronisation n'est pas configuré. Veuillez d'abord configurer la synchronisation.",
"successful": "L'établissement de liaison du serveur de synchronisation a été réussi, la synchronisation a été démarrée."
},
"hidden-subtree": {
"root-title": "Notes cachées",
"search-history-title": "Historique de recherche",
"note-map-title": "Carte de la Note",
"sql-console-history-title": "Historique de la console SQL",
"shared-notes-title": "Notes partagées",
"bulk-action-title": "Action groupée",
"backend-log-title": "Journal Backend",
"user-hidden-title": "Utilisateur masqué",
"launch-bar-templates-title": "Modèles de barre de raccourcis",
"base-abstract-launcher-title": "Raccourci Base abstraite",
"command-launcher-title": "Raccourci Commande",
"note-launcher-title": "Raccourci Note",
"script-launcher-title": "Raccourci Script",
"built-in-widget-title": "Widget intégré",
"spacer-title": "Séparateur",
"custom-widget-title": "Widget personnalisé",
"launch-bar-title": "Barre de lancement",
"available-launchers-title": "Raccourcis disponibles",
"go-to-previous-note-title": "Aller à la note précédente",
"go-to-next-note-title": "Aller à la note suivante",
"new-note-title": "Nouvelle note",
"search-notes-title": "Rechercher des notes",
"calendar-title": "Calendrier",
"recent-changes-title": "Modifications récentes",
"bookmarks-title": "Signets",
"open-today-journal-note-title": "Ouvrir la note du journal du jour",
"quick-search-title": "Recherche rapide",
"protected-session-title": "Session protégée",
"sync-status-title": "État de la synchronisation",
"settings-title": "Réglages",
"options-title": "Options",
"appearance-title": "Apparence",
"shortcuts-title": "Raccourcis",
"text-notes": "Notes de texte",
"code-notes-title": "Notes de code",
"images-title": "Images",
"spellcheck-title": "Correcteur orthographique",
"password-title": "Mot de passe",
"etapi-title": "ETAPI",
"backup-title": "Sauvegarde",
"sync-title": "Synchronisation",
"other": "Autre",
"advanced-title": "Avancé",
"visible-launchers-title": "Raccourcis visibles",
"user-guide": "Guide de l'utilisateur",
"jump-to-note-title": "Aller à...",
"llm-chat-title": "Discuter avec Notes",
"multi-factor-authentication-title": "MFA",
"ai-llm-title": "AI/LLM",
"localization": "Langue et région",
"inbox-title": "Boîte de réception",
"command-palette": "Ouvrir la palette de commandes",
"zen-mode": "Mode Zen"
},
"notes": {
"new-note": "Nouvelle note",
"duplicate-note-suffix": "(dup)",
"duplicate-note-title": "{{- noteTitle }} {{ duplicateNoteSuffix }}"
},
"backend_log": {
"log-does-not-exist": "Le fichier journal '{{ fileName }}' n'existe pas (encore).",
"reading-log-failed": "La lecture du fichier journal d'administration '{{ fileName }}' a échoué."
},
"content_renderer": {
"note-cannot-be-displayed": "Ce type de note ne peut pas être affiché."
},
"pdf": {
"export_filter": "Document PDF (*.pdf)",
"unable-to-export-message": "La note actuelle n'a pas pu être exportée en format PDF.",
"unable-to-export-title": "Impossible d'exporter au format PDF",
"unable-to-save-message": "Le fichier sélectionné n'a pas pu être écrit. Réessayez ou sélectionnez une autre destination.",
"unable-to-print": "Impossible d'imprimer la note"
},
"tray": {
"tooltip": "Trilium Notes",
"close": "Quitter Trilium",
"recents": "Notes récentes",
"bookmarks": "Signets",
"today": "Ouvrir la note du journal du jour",
"new-note": "Nouvelle note",
"show-windows": "Afficher les fenêtres",
"open_new_window": "Ouvrir une nouvelle fenêtre"
},
"migration": {
"old_version": "La migration directe à partir de votre version actuelle n'est pas prise en charge. Veuillez d'abord mettre à jour vers la version v0.60.4, puis vers cette nouvelle version.",
"error_message": "Erreur lors de la migration vers la version {{version}}: {{stack}}",
"wrong_db_version": "La version de la base de données ({{version}}) est plus récente que ce que l'application supporte actuellement ({{targetVersion}}), ce qui signifie qu'elle a été créée par une version plus récente et incompatible de Trilium. Mettez à jour vers la dernière version de Trilium pour résoudre ce problème."
},
"modals": {
"error_title": "Erreur"
},
"keyboard_action_names": {
"command-palette": "Palette de commandes",
"quick-search": "Recherche rapide",
"back-in-note-history": "Revenir dans lhistorique des notes",
"forward-in-note-history": "Suivant dans lhistorique des notes",
"jump-to-note": "Aller à…",
"scroll-to-active-note": "Faire défiler jusquà la note active",
"search-in-subtree": "Rechercher dans la sous-arborescence",
"expand-subtree": "Développer la sous-arborescence",
"collapse-tree": "Réduire larborescence",
"collapse-subtree": "Réduire la sous-arborescence",
"sort-child-notes": "Trier les notes enfants",
"create-note-after": "Créer une note après",
"create-note-into": "Créer une note dans",
"create-note-into-inbox": "Créer une note dans Inbox",
"delete-notes": "Supprimer les notes",
"move-note-up": "Remonter la note",
"move-note-down": "Descendre la note",
"move-note-up-in-hierarchy": "Monter la note dans la hiérarchie",
"move-note-down-in-hierarchy": "Descendre la note dans la hiérarchie",
"edit-note-title": "Modifier le titre de la note",
"edit-branch-prefix": "Modifier le préfixe de la branche",
"clone-notes-to": "Cloner les notes vers",
"move-notes-to": "Déplacer les notes vers",
"copy-notes-to-clipboard": "Copier les notes dans le presse-papiers",
"paste-notes-from-clipboard": "Coller les notes depuis le presse-papiers",
"cut-notes-to-clipboard": "Couper les notes vers le presse-papier",
"select-all-notes-in-parent": "Selectionner toutes les notes dans le parent",
"add-note-above-to-selection": "Ajouter la note au-dessus à la selection",
"add-note-below-to-selection": "Ajouter la note dessous à la selection",
"duplicate-subtree": "Dupliquer la sous-arborescence",
"open-new-tab": "Ouvrir un nouvel onglet",
"close-active-tab": "Fermer l'onglet actif",
"reopen-last-tab": "Réouvrir le dernier onglet",
"activate-next-tab": "Activer l'onglet suivant",
"activate-previous-tab": "Activer l'onglet précédent",
"open-new-window": "Ouvrir une nouvelle fenêtre",
"toggle-system-tray-icon": "Activer/Désactiver l'icone de la barre d'état",
"toggle-zen-mode": "Activer/Désactiver le mode Zen",
"switch-to-first-tab": "Aller au premier onglet",
"switch-to-second-tab": "Aller au second onglet",
"switch-to-third-tab": "Aller au troisième onglet",
"switch-to-fourth-tab": "Aller au quatrième onglet",
"switch-to-fifth-tab": "Aller au cinquième onglet",
"switch-to-sixth-tab": "Aller au sixième onglet",
"switch-to-seventh-tab": "Aller au septième onglet",
"switch-to-eighth-tab": "Aller au huitième onglet",
"switch-to-ninth-tab": "Aller au neuvième onglet",
"switch-to-last-tab": "Aller au dernier onglet",
"show-note-source": "Afficher la source de la note",
"show-options": "Afficher les options",
"show-revisions": "Afficher les révisions",
"show-recent-changes": "Afficher les changements récents",
"show-sql-console": "Afficher la console SQL",
"show-backend-log": "Afficher le journal du backend",
"show-help": "Afficher l'aide",
"show-cheatsheet": "Afficher la fiche de triche",
"add-link-to-text": "Ajouter un lien au texte",
"follow-link-under-cursor": "Suivre le lien en dessous du curseur",
"insert-date-and-time-to-text": "Insérer la date et l'heure dans le texte",
"paste-markdown-into-text": "Coller du Markdown dans le texte",
"cut-into-note": "Couper dans une note",
"add-include-note-to-text": "Ajouter une note inclusion au texte",
"edit-read-only-note": "Modifier une note en lecture seule",
"add-new-label": "Ajouter une nouvelle étiquette",
"add-new-relation": "Ajouter une nouvelle relation",
"toggle-ribbon-tab-classic-editor": "Basculer l'onglet Mise en forme de l'éditeur avec la barre d'outils fixe",
"toggle-ribbon-tab-basic-properties": "Afficher/masquer les Propriétés de base de la note",
"toggle-ribbon-tab-book-properties": "Afficher/masquer les Propriétés du Livre",
"toggle-ribbon-tab-file-properties": "Afficher/masquer les Propriétés du fichier",
"toggle-ribbon-tab-image-properties": "Afficher/masquer les Propriétés de l'image",
"toggle-ribbon-tab-owned-attributes": "Afficher/masquer les Attributs propres",
"toggle-ribbon-tab-inherited-attributes": "Afficher/masquer les Attributs hérités",
"toggle-right-pane": "Afficher le panneau de droite",
"print-active-note": "Imprimer la note active",
"export-active-note-as-pdf": "Exporter la note active en PDF",
"open-note-externally": "Ouvrir la note à l'extérieur",
"render-active-note": "Faire un rendu de la note active",
"run-active-note": "Lancer la note active",
"reload-frontend-app": "Recharger l'application Frontend",
"open-developer-tools": "Ouvrir les outils développeur",
"find-in-text": "Chercher un texte",
"toggle-left-pane": "Afficher le panneau de gauche",
"toggle-full-screen": "Passer en mode plein écran",
"zoom-out": "Dézoomer",
"zoom-in": "Zoomer",
"reset-zoom-level": "Réinitilaliser le zoom",
"copy-without-formatting": "Copier sans mise en forme",
"force-save-revision": "Forcer la sauvegarde de la révision",
"toggle-ribbon-tab-promoted-attributes": "Basculer les attributs promus de l'onglet du ruban",
"toggle-ribbon-tab-note-map": "Basculer l'onglet du ruban Note Map",
"toggle-ribbon-tab-note-info": "Basculer l'onglet du ruban Note Info",
"toggle-ribbon-tab-note-paths": "Basculer les chemins de notes de l'onglet du ruban",
"toggle-ribbon-tab-similar-notes": "Basculer l'onglet du ruban Notes similaires",
"toggle-note-hoisting": "Activer la focalisation sur la note",
"unhoist-note": "Désactiver la focalisation sur la note"
},
"sql_init": {
"db_not_initialized_desktop": "Base de données non initialisée, merci de suivre les instructions à l'écran.",
"db_not_initialized_server": "Base de données non initialisée, veuillez visitez - http://[your-server-host]:{{port}} pour consulter les instructions d'initialisation de Trilium."
},
"desktop": {
"instance_already_running": "Une instance est déjà en cours d'execution, ouverture de cette instance à la place."
},
"weekdayNumber": "Semaine {weekNumber}",
"quarterNumber": "Trimestre {quarterNumber}",
"share_theme": {
"site-theme": "Thème du site",
"search_placeholder": "Recherche...",
"image_alt": "Image de l'article",
"last-updated": "Dernière mise à jour le {{- date}}",
"subpages": "Sous-pages:",
"on-this-page": "Sur cette page",
"expand": "Développer"
},
"hidden_subtree_templates": {
"text-snippet": "Extrait de texte",
"description": "Description",
"list-view": "Vue en liste",
"grid-view": "Vue en grille",
"calendar": "Calendrier",
"table": "Tableau",
"geo-map": "Carte géographique",
"start-date": "Date de début",
"end-date": "Date de fin",
"start-time": "Heure de début",
"end-time": "Heure de fin",
"geolocation": "Géolocalisation",
"built-in-templates": "Modèles intégrés",
"board": "Tableau de bord",
"status": "État",
"board_note_first": "Premre note",
"board_note_second": "Deuxième note",
"board_note_third": "Troisième note",
"board_status_todo": "A faire",
"board_status_progress": "En cours",
"board_status_done": "Terminé",
"presentation": "Présentation",
"presentation_slide": "Diapositive de présentation",
"presentation_slide_first": "Première diapositive",
"presentation_slide_second": "Deuxième diapositive",
"background": "Arrière-plan"
}
"keyboard_actions": {
"open-jump-to-note-dialog": "Ouvrir la boîte de dialogue \"Aller à la note\"",
"search-in-subtree": "Rechercher des notes dans les sous-arbres de la note active",
"expand-subtree": "Développer le sous-arbre de la note actuelle",
"collapse-tree": "Réduire toute l'arborescence des notes",
"collapse-subtree": "Réduire le sous-arbre de la note actuelle",
"sort-child-notes": "Trier les notes enfants",
"creating-and-moving-notes": "Créer et déplacer des notes",
"create-note-into-inbox": "Créer une note dans l'emplacement par défaut (si défini) ou une note journalière",
"delete-note": "Supprimer la note",
"move-note-up": "Déplacer la note vers le haut",
"move-note-down": "Déplacer la note vers le bas",
"move-note-up-in-hierarchy": "Déplacer la note vers le haut dans la hiérarchie",
"move-note-down-in-hierarchy": "Déplacer la note vers le bas dans la hiérarchie",
"edit-note-title": "Passer de l'arborescence aux détails d'une note et éditer le titre",
"edit-branch-prefix": "Afficher la fenêtre Éditer le préfixe de branche",
"note-clipboard": "Note presse-papiers",
"copy-notes-to-clipboard": "Copier les notes sélectionnées dans le presse-papiers",
"paste-notes-from-clipboard": "Coller les notes depuis le presse-papiers dans la note active",
"cut-notes-to-clipboard": "Couper les notes sélectionnées dans le presse-papiers",
"select-all-notes-in-parent": "Sélectionner toutes les notes du niveau de la note active",
"add-note-above-to-the-selection": "Ajouter la note au-dessus de la sélection",
"add-note-below-to-selection": "Ajouter la note en dessous de la sélection",
"duplicate-subtree": "Dupliquer le sous-arbre",
"tabs-and-windows": "Onglets et fenêtres",
"open-new-tab": "Ouvrir un nouvel onglet",
"close-active-tab": "Fermer l'onglet actif",
"reopen-last-tab": "Rouvrir le dernier onglet fermé",
"activate-next-tab": "Basculer vers l'onglet à droite de l'onglet actif",
"activate-previous-tab": "Basculer vers l'onglet à gauche de l'onglet actif",
"open-new-window": "Ouvrir une nouvelle fenêtre vide",
"toggle-tray": "Afficher/masquer l'application dans la barre des tâches",
"first-tab": "Basculer vers le premier onglet dans la liste",
"second-tab": "Basculer vers le deuxième onglet dans la liste",
"third-tab": "Basculer vers le troisième onglet dans la liste",
"fourth-tab": "Basculer vers le quatrième onglet dans la liste",
"fifth-tab": "Basculer vers le cinquième onglet dans la liste",
"sixth-tab": "Basculer vers le sixième onglet dans la liste",
"seventh-tab": "Basculer vers le septième onglet dans la liste",
"eight-tab": "Basculer vers le huitième onglet dans la liste",
"ninth-tab": "Basculer vers le neuvième onglet dans la liste",
"last-tab": "Basculer vers le dernier onglet dans la liste",
"dialogs": "Boîtes de dialogue",
"show-note-source": "Affiche la boîte de dialogue Source de la note",
"show-options": "Afficher les Options",
"show-revisions": "Afficher la boîte de dialogue Versions de la note",
"show-recent-changes": "Afficher la boîte de dialogue Modifications récentes",
"show-sql-console": "Afficher la boîte de dialogue Console SQL",
"show-backend-log": "Afficher la boîte de dialogue Journal du backend",
"text-note-operations": "Opérations sur les notes textuelles",
"add-link-to-text": "Ouvrir la boîte de dialogue pour ajouter un lien dans le texte",
"follow-link-under-cursor": "Suivre le lien sous le curseur",
"insert-date-and-time-to-text": "Insérer la date et l'heure dans le texte",
"paste-markdown-into-text": "Coller du texte au format Markdown dans la note depuis le presse-papiers",
"cut-into-note": "Couper la sélection depuis la note actuelle et créer une sous-note avec le texte sélectionné",
"add-include-note-to-text": "Ouvrir la boîte de dialogue pour Inclure une note",
"edit-readonly-note": "Éditer une note en lecture seule",
"attributes-labels-and-relations": "Attributs (labels et relations)",
"add-new-label": "Créer un nouveau label",
"create-new-relation": "Créer une nouvelle relation",
"ribbon-tabs": "Onglets du ruban",
"toggle-basic-properties": "Afficher/masquer les Propriétés de base de la note",
"toggle-file-properties": "Afficher/masquer les Propriétés du fichier",
"toggle-image-properties": "Afficher/masquer les Propriétés de l'image",
"toggle-owned-attributes": "Afficher/masquer les Attributs propres",
"toggle-inherited-attributes": "Afficher/masquer les Attributs hérités",
"toggle-promoted-attributes": "Afficher/masquer les Attributs promus",
"toggle-link-map": "Afficher/masquer la Carte de la note",
"toggle-note-info": "Afficher/masquer les Informations de la note",
"toggle-note-paths": "Afficher/masquer les Emplacements de la note",
"toggle-similar-notes": "Afficher/masquer les Notes similaires",
"other": "Autre",
"toggle-right-pane": "Afficher/masquer le volet droit, qui inclut la Table des matières et les Accentuations",
"print-active-note": "Imprimer la note active",
"open-note-externally": "Ouvrir la note comme fichier avec l'application par défaut",
"render-active-note": "Rendre (ou re-rendre) la note active",
"run-active-note": "Exécuter le code JavaScript (frontend/backend) de la note active",
"toggle-note-hoisting": "Activer le focus sur la note active",
"unhoist": "Désactiver tout focus",
"reload-frontend-app": "Recharger l'application",
"open-dev-tools": "Ouvrir les outils de développement",
"toggle-left-note-tree-panel": "Basculer le panneau gauche (arborescence des notes)",
"toggle-full-screen": "Basculer en plein écran",
"zoom-out": "Dézoomer",
"zoom-in": "Zoomer",
"note-navigation": "Navigation dans les notes",
"reset-zoom-level": "Réinitialiser le niveau de zoom",
"copy-without-formatting": "Copier le texte sélectionné sans mise en forme",
"force-save-revision": "Forcer la création / sauvegarde d'une nouvelle version de la note active",
"show-help": "Affiche le guide de l'utilisateur intégré",
"toggle-book-properties": "Afficher/masquer les Propriétés du Livre",
"toggle-classic-editor-toolbar": "Activer/désactiver l'onglet Mise en forme de l'éditeur avec la barre d'outils fixe",
"export-as-pdf": "Exporte la note actuelle en PDF",
"show-cheatsheet": "Affiche une fenêtre modale avec des opérations de clavier courantes",
"toggle-zen-mode": "Active/désactive le mode zen (interface réduite pour favoriser la concentration)",
"back-in-note-history": "Naviguer à la note précédente dans l'historique",
"forward-in-note-history": "Naviguer a la note suivante dans l'historique",
"open-command-palette": "Ouvrir la palette de commandes",
"clone-notes-to": "Cloner les nœuds sélectionnés",
"move-notes-to": "Déplacer les nœuds sélectionnés",
"scroll-to-active-note": "Faire défiler larborescence des notes jusquà la note active",
"quick-search": "Activer la barre de recherche rapide",
"create-note-after": "Créer une note après la note active",
"create-note-into": "Créer une note enfant de la note active",
"find-in-text": "Afficher/Masquer le panneau de recherche"
},
"login": {
"title": "Connexion",
"heading": "Connexion à Trilium",
"incorrect-password": "Le mot de passe est incorrect. Veuillez réessayer.",
"password": "Mot de passe",
"remember-me": "Se souvenir de moi",
"button": "Connexion",
"sign_in_with_sso": "Se connecter avec {{ ssoIssuerName }}",
"incorrect-totp": "TOTP incorrect. Veuillez réessayer."
},
"set_password": {
"title": "Définir un mot de passe",
"heading": "Définir un mot de passe",
"description": "Avant de pouvoir commencer à utiliser Trilium depuis le web, vous devez d'abord définir un mot de passe. Vous utiliserez ensuite ce mot de passe pour vous connecter.",
"password": "Mot de passe",
"password-confirmation": "Confirmation du mot de passe",
"button": "Définir le mot de passe"
},
"setup": {
"heading": "Configuration de Trilium Notes",
"new-document": "Je suis un nouvel utilisateur et je souhaite créer un nouveau document Trilium pour mes notes",
"sync-from-desktop": "J'ai déjà l'application de bureau et je souhaite configurer la synchronisation avec celle-ci",
"sync-from-server": "J'ai déjà un serveur et je souhaite configurer la synchronisation avec celui-ci",
"next": "Suivant",
"init-in-progress": "Initialisation du document en cours",
"redirecting": "Vous serez bientôt redirigé vers l'application.",
"title": "Configuration"
},
"setup_sync-from-desktop": {
"heading": "Synchroniser depuis une application de bureau",
"description": "Cette procédure doit être réalisée depuis l'application de bureau :",
"step1": "Ouvrez l'application Trilium Notes.",
"step2": "Dans le menu Trilium, cliquez sur Options.",
"step3": "Cliquez sur la catégorie Synchroniser.",
"step4": "Remplacez l'adresse de l'instance de serveur par : {{- host}} et cliquez sur Enregistrer.",
"step5": "Cliquez sur le bouton 'Tester la synchronisation' pour vérifier que la connexion fonctionne.",
"step6": "Une fois que vous avez terminé ces étapes, cliquez sur {{- link}}.",
"step6-here": "ici"
},
"setup_sync-from-server": {
"heading": "Synchroniser depuis le serveur",
"instructions": "Veuillez saisir l'adresse du serveur Trilium et les informations d'identification ci-dessous. Cela téléchargera l'intégralité du document Trilium à partir du serveur et configurera la synchronisation avec celui-ci. En fonction de la taille du document et de votre vitesse de connexion, cela peut prendre un plusieurs minutes.",
"server-host": "Adresse du serveur Trilium",
"server-host-placeholder": "https://<nom d'hôte>:<port>",
"proxy-server": "Serveur proxy (facultatif)",
"proxy-server-placeholder": "https://<nom d'hôte>:<port>",
"note": "Note :",
"proxy-instruction": "Si vous laissez le paramètre de proxy vide, le proxy du système sera utilisé (s'applique uniquement à l'application de bureau)",
"password": "Mot de passe",
"password-placeholder": "Mot de passe",
"back": "Retour",
"finish-setup": "Terminer"
},
"setup_sync-in-progress": {
"heading": "Synchronisation en cours",
"successful": "La synchronisation a été correctement configurée. La synchronisation initiale prendra un certain temps. Une fois terminée, vous serez redirigé vers la page de connexion.",
"outstanding-items": "Éléments de synchronisation exceptionnels :",
"outstanding-items-default": "N/A"
},
"share_404": {
"title": "Page non trouvée",
"heading": "Page non trouvée"
},
"share_page": {
"parent": "parent :",
"clipped-from": "Cette note a été initialement extraite de {{- url}}",
"child-notes": "Notes enfants :",
"no-content": "Cette note n'a aucun contenu."
},
"weekdays": {
"monday": "Lundi",
"tuesday": "Mardi",
"wednesday": "Mercredi",
"thursday": "Jeudi",
"friday": "Vendredi",
"saturday": "Samedi",
"sunday": "Dimanche"
},
"months": {
"january": "Janvier",
"february": "Février",
"march": "Mars",
"april": "Avril",
"may": "Mai",
"june": "Juin",
"july": "Juillet",
"august": "Août",
"september": "Septembre",
"october": "Octobre",
"november": "Novembre",
"december": "Décembre"
},
"special_notes": {
"search_prefix": "Recherche :"
},
"test_sync": {
"not-configured": "L'hôte du serveur de synchronisation n'est pas configuré. Veuillez d'abord configurer la synchronisation.",
"successful": "L'établissement de liaison du serveur de synchronisation a été réussi, la synchronisation a été démarrée."
},
"hidden-subtree": {
"root-title": "Notes cachées",
"search-history-title": "Historique de recherche",
"note-map-title": "Carte de la Note",
"sql-console-history-title": "Historique de la console SQL",
"shared-notes-title": "Notes partagées",
"bulk-action-title": "Action groupée",
"backend-log-title": "Journal Backend",
"user-hidden-title": "Utilisateur masqué",
"launch-bar-templates-title": "Modèles de barre de raccourcis",
"base-abstract-launcher-title": "Raccourci Base abstraite",
"command-launcher-title": "Raccourci Commande",
"note-launcher-title": "Raccourci Note",
"script-launcher-title": "Raccourci Script",
"built-in-widget-title": "Widget intégré",
"spacer-title": "Séparateur",
"custom-widget-title": "Widget personnalisé",
"launch-bar-title": "Barre de lancement",
"available-launchers-title": "Raccourcis disponibles",
"go-to-previous-note-title": "Aller à la note précédente",
"go-to-next-note-title": "Aller à la note suivante",
"new-note-title": "Nouvelle note",
"search-notes-title": "Rechercher des notes",
"calendar-title": "Calendrier",
"recent-changes-title": "Modifications récentes",
"bookmarks-title": "Signets",
"open-today-journal-note-title": "Ouvrir la note du journal du jour",
"quick-search-title": "Recherche rapide",
"protected-session-title": "Session protégée",
"sync-status-title": "État de la synchronisation",
"settings-title": "Réglages",
"options-title": "Options",
"appearance-title": "Apparence",
"shortcuts-title": "Raccourcis",
"text-notes": "Notes de texte",
"code-notes-title": "Notes de code",
"images-title": "Images",
"spellcheck-title": "Correcteur orthographique",
"password-title": "Mot de passe",
"etapi-title": "ETAPI",
"backup-title": "Sauvegarde",
"sync-title": "Synchronisation",
"other": "Autre",
"advanced-title": "Avancé",
"visible-launchers-title": "Raccourcis visibles",
"user-guide": "Guide de l'utilisateur",
"jump-to-note-title": "Aller à...",
"multi-factor-authentication-title": "MFA",
"localization": "Langue et région",
"inbox-title": "Boîte de réception",
"command-palette": "Ouvrir la palette de commandes",
"zen-mode": "Mode Zen"
},
"notes": {
"new-note": "Nouvelle note",
"duplicate-note-suffix": "(dup)",
"duplicate-note-title": "{{- noteTitle }} {{ duplicateNoteSuffix }}"
},
"backend_log": {
"log-does-not-exist": "Le fichier journal '{{ fileName }}' n'existe pas (encore).",
"reading-log-failed": "La lecture du fichier journal d'administration '{{ fileName }}' a échoué."
},
"content_renderer": {
"note-cannot-be-displayed": "Ce type de note ne peut pas être affiché."
},
"pdf": {
"export_filter": "Document PDF (*.pdf)",
"unable-to-export-message": "La note actuelle n'a pas pu être exportée en format PDF.",
"unable-to-export-title": "Impossible d'exporter au format PDF",
"unable-to-save-message": "Le fichier sélectionné n'a pas pu être écrit. Réessayez ou sélectionnez une autre destination.",
"unable-to-print": "Impossible d'imprimer la note"
},
"tray": {
"tooltip": "Trilium Notes",
"close": "Quitter Trilium",
"recents": "Notes récentes",
"bookmarks": "Signets",
"today": "Ouvrir la note du journal du jour",
"new-note": "Nouvelle note",
"show-windows": "Afficher les fenêtres",
"open_new_window": "Ouvrir une nouvelle fenêtre"
},
"migration": {
"old_version": "La migration directe à partir de votre version actuelle n'est pas prise en charge. Veuillez d'abord mettre à jour vers la version v0.60.4, puis vers cette nouvelle version.",
"error_message": "Erreur lors de la migration vers la version {{version}}: {{stack}}",
"wrong_db_version": "La version de la base de données ({{version}}) est plus récente que ce que l'application supporte actuellement ({{targetVersion}}), ce qui signifie qu'elle a été créée par une version plus récente et incompatible de Trilium. Mettez à jour vers la dernière version de Trilium pour résoudre ce problème."
},
"modals": {
"error_title": "Erreur"
},
"keyboard_action_names": {
"command-palette": "Palette de commandes",
"quick-search": "Recherche rapide",
"back-in-note-history": "Revenir dans lhistorique des notes",
"forward-in-note-history": "Suivant dans lhistorique des notes",
"jump-to-note": "Aller à…",
"scroll-to-active-note": "Faire défiler jusquà la note active",
"search-in-subtree": "Rechercher dans la sous-arborescence",
"expand-subtree": "Développer la sous-arborescence",
"collapse-tree": "Réduire larborescence",
"collapse-subtree": "Réduire la sous-arborescence",
"sort-child-notes": "Trier les notes enfants",
"create-note-after": "Créer une note après",
"create-note-into": "Créer une note dans",
"create-note-into-inbox": "Créer une note dans Inbox",
"delete-notes": "Supprimer les notes",
"move-note-up": "Remonter la note",
"move-note-down": "Descendre la note",
"move-note-up-in-hierarchy": "Monter la note dans la hiérarchie",
"move-note-down-in-hierarchy": "Descendre la note dans la hiérarchie",
"edit-note-title": "Modifier le titre de la note",
"edit-branch-prefix": "Modifier le préfixe de la branche",
"clone-notes-to": "Cloner les notes vers",
"move-notes-to": "Déplacer les notes vers",
"copy-notes-to-clipboard": "Copier les notes dans le presse-papiers",
"paste-notes-from-clipboard": "Coller les notes depuis le presse-papiers",
"cut-notes-to-clipboard": "Couper les notes vers le presse-papier",
"select-all-notes-in-parent": "Selectionner toutes les notes dans le parent",
"add-note-above-to-selection": "Ajouter la note au-dessus à la selection",
"add-note-below-to-selection": "Ajouter la note dessous à la selection",
"duplicate-subtree": "Dupliquer la sous-arborescence",
"open-new-tab": "Ouvrir un nouvel onglet",
"close-active-tab": "Fermer l'onglet actif",
"reopen-last-tab": "Réouvrir le dernier onglet",
"activate-next-tab": "Activer l'onglet suivant",
"activate-previous-tab": "Activer l'onglet précédent",
"open-new-window": "Ouvrir une nouvelle fenêtre",
"toggle-system-tray-icon": "Activer/Désactiver l'icone de la barre d'état",
"toggle-zen-mode": "Activer/Désactiver le mode Zen",
"switch-to-first-tab": "Aller au premier onglet",
"switch-to-second-tab": "Aller au second onglet",
"switch-to-third-tab": "Aller au troisième onglet",
"switch-to-fourth-tab": "Aller au quatrième onglet",
"switch-to-fifth-tab": "Aller au cinquième onglet",
"switch-to-sixth-tab": "Aller au sixième onglet",
"switch-to-seventh-tab": "Aller au septième onglet",
"switch-to-eighth-tab": "Aller au huitième onglet",
"switch-to-ninth-tab": "Aller au neuvième onglet",
"switch-to-last-tab": "Aller au dernier onglet",
"show-note-source": "Afficher la source de la note",
"show-options": "Afficher les options",
"show-revisions": "Afficher les révisions",
"show-recent-changes": "Afficher les changements récents",
"show-sql-console": "Afficher la console SQL",
"show-backend-log": "Afficher le journal du backend",
"show-help": "Afficher l'aide",
"show-cheatsheet": "Afficher la fiche de triche",
"add-link-to-text": "Ajouter un lien au texte",
"follow-link-under-cursor": "Suivre le lien en dessous du curseur",
"insert-date-and-time-to-text": "Insérer la date et l'heure dans le texte",
"paste-markdown-into-text": "Coller du Markdown dans le texte",
"cut-into-note": "Couper dans une note",
"add-include-note-to-text": "Ajouter une note inclusion au texte",
"edit-read-only-note": "Modifier une note en lecture seule",
"add-new-label": "Ajouter une nouvelle étiquette",
"add-new-relation": "Ajouter une nouvelle relation",
"toggle-ribbon-tab-classic-editor": "Basculer l'onglet Mise en forme de l'éditeur avec la barre d'outils fixe",
"toggle-ribbon-tab-basic-properties": "Afficher/masquer les Propriétés de base de la note",
"toggle-ribbon-tab-book-properties": "Afficher/masquer les Propriétés du Livre",
"toggle-ribbon-tab-file-properties": "Afficher/masquer les Propriétés du fichier",
"toggle-ribbon-tab-image-properties": "Afficher/masquer les Propriétés de l'image",
"toggle-ribbon-tab-owned-attributes": "Afficher/masquer les Attributs propres",
"toggle-ribbon-tab-inherited-attributes": "Afficher/masquer les Attributs hérités",
"toggle-right-pane": "Afficher le panneau de droite",
"print-active-note": "Imprimer la note active",
"export-active-note-as-pdf": "Exporter la note active en PDF",
"open-note-externally": "Ouvrir la note à l'extérieur",
"render-active-note": "Faire un rendu de la note active",
"run-active-note": "Lancer la note active",
"reload-frontend-app": "Recharger l'application Frontend",
"open-developer-tools": "Ouvrir les outils développeur",
"find-in-text": "Chercher un texte",
"toggle-left-pane": "Afficher le panneau de gauche",
"toggle-full-screen": "Passer en mode plein écran",
"zoom-out": "Dézoomer",
"zoom-in": "Zoomer",
"reset-zoom-level": "Réinitilaliser le zoom",
"copy-without-formatting": "Copier sans mise en forme",
"force-save-revision": "Forcer la sauvegarde de la révision",
"toggle-ribbon-tab-promoted-attributes": "Basculer les attributs promus de l'onglet du ruban",
"toggle-ribbon-tab-note-map": "Basculer l'onglet du ruban Note Map",
"toggle-ribbon-tab-note-info": "Basculer l'onglet du ruban Note Info",
"toggle-ribbon-tab-note-paths": "Basculer les chemins de notes de l'onglet du ruban",
"toggle-ribbon-tab-similar-notes": "Basculer l'onglet du ruban Notes similaires",
"toggle-note-hoisting": "Activer la focalisation sur la note",
"unhoist-note": "Désactiver la focalisation sur la note"
},
"sql_init": {
"db_not_initialized_desktop": "Base de données non initialisée, merci de suivre les instructions à l'écran.",
"db_not_initialized_server": "Base de données non initialisée, veuillez visitez - http://[your-server-host]:{{port}} pour consulter les instructions d'initialisation de Trilium."
},
"desktop": {
"instance_already_running": "Une instance est déjà en cours d'execution, ouverture de cette instance à la place."
},
"weekdayNumber": "Semaine {weekNumber}",
"quarterNumber": "Trimestre {quarterNumber}",
"share_theme": {
"site-theme": "Thème du site",
"search_placeholder": "Recherche...",
"image_alt": "Image de l'article",
"last-updated": "Dernière mise à jour le {{- date}}",
"subpages": "Sous-pages:",
"on-this-page": "Sur cette page",
"expand": "Développer"
},
"hidden_subtree_templates": {
"text-snippet": "Extrait de texte",
"description": "Description",
"list-view": "Vue en liste",
"grid-view": "Vue en grille",
"calendar": "Calendrier",
"table": "Tableau",
"geo-map": "Carte géographique",
"start-date": "Date de début",
"end-date": "Date de fin",
"start-time": "Heure de début",
"end-time": "Heure de fin",
"geolocation": "Géolocalisation",
"built-in-templates": "Modèles intégrés",
"board": "Tableau de bord",
"status": "État",
"board_note_first": "Première note",
"board_note_second": "Deuxième note",
"board_note_third": "Troisme note",
"board_status_todo": "A faire",
"board_status_progress": "En cours",
"board_status_done": "Terminé",
"presentation": "Présentation",
"presentation_slide": "Diapositive de présentation",
"presentation_slide_first": "Première diapositive",
"presentation_slide_second": "Deuxième diapositive",
"background": "Arrière-plan"
}
}

View File

@@ -337,7 +337,6 @@
"protected-session-title": "Seisiún faoi Chosaint",
"sync-status-title": "Stádas Sioncrónaithe",
"settings-title": "Socruithe",
"llm-chat-title": "Comhrá le Nótaí",
"options-title": "Roghanna",
"appearance-title": "Dealramh",
"shortcuts-title": "Aicearraí",
@@ -350,7 +349,6 @@
"etapi-title": "ETAPI",
"backup-title": "Cúltaca",
"sync-title": "Sioncrónaigh",
"ai-llm-title": "AI/LLM",
"other": "Eile",
"advanced-title": "Ardleibhéil",
"visible-launchers-title": "Lainseálaithe Infheicthe",

View File

@@ -109,7 +109,6 @@
"etapi-title": "ETAPI",
"backup-title": "Backup",
"sync-title": "Sincronizza",
"ai-llm-title": "IA/LLM",
"other": "Altro",
"advanced-title": "Avanzato",
"user-guide": "Guida utente",
@@ -145,11 +144,11 @@
"protected-session-title": "Sessione Protetta",
"sync-status-title": "Stato della sincronizzazione",
"settings-title": "Impostazioni",
"llm-chat-title": "Parla con Notes",
"note-launcher-title": "Scorciatoie delle note",
"script-launcher-title": "Scorciatoie degli script",
"command-palette": "Apri tavolozza comandi",
"zen-mode": "Modalità Zen"
"zen-mode": "Modalità Zen",
"tab-switcher-title": "Selettore scheda"
},
"notes": {
"new-note": "Nuova nota",

View File

@@ -302,7 +302,6 @@
"spellcheck-title": "スペルチェック",
"password-title": "パスワード",
"backup-title": "バックアップ",
"ai-llm-title": "AI/LLM",
"other": "その他",
"advanced-title": "高度",
"user-guide": "ユーザーガイド",
@@ -336,7 +335,6 @@
"protected-session-title": "保護されたセッション",
"sync-status-title": "同期状態",
"settings-title": "設定",
"llm-chat-title": "ノートとチャット",
"options-title": "設定",
"multi-factor-authentication-title": "多要素認証",
"etapi-title": "ETAPI",

View File

@@ -1,6 +1,6 @@
{
"keyboard_actions": {
"back-in-note-history": "기록 내 이전 노트로 이동하기",
"back-in-note-history": "히스토리의 이전 노트로 이동하기",
"open-command-palette": "명령어 팔레트 열기",
"delete-note": "노트 삭제",
"quick-search": "빠른 검색바 활성화",
@@ -60,7 +60,50 @@
"show-help": "내장 사용자 설명서 열기",
"show-cheatsheet": "일반적인 키보드 형식의 팝업 표시",
"text-note-operations": "텍스트 노트 작업",
"add-link-to-text": "텍스트에 링크 추가를 위한 대화 상자 열기"
"add-link-to-text": "텍스트에 링크 추가를 위한 대화 상자 열기",
"follow-link-under-cursor": "커서가 있는 링크 대상으로 이동",
"insert-date-and-time-to-text": "현재 날짜와 시간을 텍스트로 삽입",
"attributes-labels-and-relations": "속성 (라벨 & 관계)",
"add-new-label": "새 라벨 작성",
"create-new-relation": "새 관계 생성",
"ribbon-tabs": "리본 탭",
"toggle-basic-properties": "기본 속성 토글",
"toggle-file-properties": "파일 속성 토글",
"toggle-image-properties": "이미지 속성 토글",
"toggle-owned-attributes": "소유 속성 토글",
"toggle-inherited-attributes": "상속 속성 토글",
"toggle-promoted-attributes": "주요 속성 토글",
"render-active-note": "활성 노트를 렌더링(다시 렌더링)",
"run-active-note": "활성 JavaScript(프런트엔드/백엔드) 코드 노트 실행",
"toggle-note-hoisting": "활성 노트를 최상단으로 올리기 토글",
"unhoist": "최상단으로 올린 노트 해제",
"reload-frontend-app": "프론트엔드 리로드",
"open-dev-tools": "개발자 도구 열기",
"find-in-text": "검색 패널 토글",
"toggle-left-note-tree-panel": "좌측(노트 트리) 패널 토글",
"toggle-full-screen": "전체 화면 토글",
"paste-markdown-into-text": "클립보드에서 마크다운 파일을 텍스트 노트에 붙여넣습니다",
"cut-into-note": "현재 노트에서 선택 영역을 잘라내어 하위 노트를 생성합니다",
"add-include-note-to-text": "노트 추가 대화 상자를 열기",
"edit-readonly-note": "읽기 전용 메모를 편집",
"toggle-link-map": "링크 맵 토글",
"toggle-note-info": "노트 정보 토글",
"toggle-note-paths": "노트 경로 토글",
"toggle-similar-notes": "유사 노트 토글",
"other": "기타",
"toggle-right-pane": "오른쪽 창(목차와 하이라이트) 표시 여부 전환",
"print-active-note": "활성 노트 인쇄",
"open-note-externally": "노트를 파일 형식으로 열기(기본 애플리케이션 사용)",
"zoom-out": "축소",
"zoom-in": "확대",
"note-navigation": "노트 내비게이션",
"reset-zoom-level": "확대/축소 초기화",
"copy-without-formatting": "선택한 텍스트를 서식 없이 복사",
"force-save-revision": "활성 노트의 새 버전을 강제로 생성/저장",
"toggle-book-properties": "컬렉션 속성 토글",
"toggle-classic-editor-toolbar": "고정 도구 모음 에디터의 서식 탭을 전환",
"export-as-pdf": "현재 노트를 PDF로 내보내기",
"toggle-zen-mode": "젠 모드 활성화/비활성화(편집에 집중하기 위한 최소한의 UI)"
},
"hidden-subtree": {
"zen-mode": "젠 모드",
@@ -69,7 +112,6 @@
"protected-session-title": "보호된 세션",
"sync-status-title": "동기화 상태",
"settings-title": "설정",
"llm-chat-title": "기록과 대화하기",
"options-title": "옵션",
"appearance-title": "모양",
"shortcuts-title": "바로가기",
@@ -82,8 +124,92 @@
"etapi-title": "ETAPI",
"backup-title": "백업",
"sync-title": "동기화",
"ai-llm-title": "AI/LLM",
"other": "기타",
"advanced-title": "고급"
},
"keyboard_action_names": {
"back-in-note-history": "노트 기록으로 돌아가기",
"forward-in-note-history": "노트 기록 앞으로 이동",
"command-palette": "명령 팔레트",
"scroll-to-active-note": "활성 노트로 스크롤",
"quick-search": "빠른 검색",
"search-in-subtree": "하위트리에서 검색",
"expand-subtree": "하위트리 펼치기",
"collapse-tree": "트리 접기",
"collapse-subtree": "하위트리 접기",
"sort-child-notes": "자식 노트 정렬",
"create-note-into-inbox": "인박스에 노트 만들기",
"delete-notes": "노트 삭제",
"edit-note-title": "노트 제목 편집",
"clone-notes-to": "다음으로 복사",
"move-notes-to": "다음으로 노트 이동",
"copy-notes-to-clipboard": "노트를 클립보드로 복사",
"paste-notes-from-clipboard": "클립보드에서 노트 붙이기",
"cut-notes-to-clipboard": "클립보드로 노트 잘라내기",
"add-note-above-to-selection": "선택 위에 새로운 노트 추가",
"add-note-below-to-selection": "선택 아래에 새로운 노트 추가",
"duplicate-subtree": "하위트리 복제",
"open-new-tab": "새로운탭 열기",
"jump-to-note": "이동하기...",
"move-note-down": "노트 아래로 이동",
"move-note-up": "노트 위로 이동",
"close-active-tab": "활성탭 닫기",
"reopen-last-tab": "마지막 탭 다시 열기",
"activate-next-tab": "다음 탭 활성화",
"activate-previous-tab": "이전 탭 활성화",
"open-new-window": "새창 열기",
"toggle-system-tray-icon": "시스템 트레이 아이콘 토글",
"toggle-zen-mode": "젠 모드 토글",
"show-note-source": "노트 소스 보기",
"show-options": "옵션 보기",
"show-revisions": "리비전 보기",
"show-recent-changes": "최근 변경사항 보기",
"show-sql-console": "SQL 콘솔 보기",
"show-backend-log": "백엔드 로그 보기",
"show-help": "도움말 보기",
"follow-link-under-cursor": "커서 아래 링크 따라 가기",
"insert-date-and-time-to-text": "날짜와 시간 텍스트로 추가",
"paste-markdown-into-text": "마크다운을 텍스트로 붙여넣기",
"edit-read-only-note": "읽기 전용 노트 편집",
"add-new-label": "새로운 라벨 추가",
"add-new-relation": "새로운 관계 추가",
"toggle-ribbon-tab-classic-editor": "클래식 에디터 리본 탭 토글",
"toggle-ribbon-tab-basic-properties": "기본 설정 리본탭 토글",
"print-active-note": "활성 노트 프린트",
"export-active-note-as-pdf": "활성 노트를 PDF로 내보내기",
"reload-frontend-app": "프론트엔드 앱 다시 로드",
"open-developer-tools": "개발자 툴 열기",
"find-in-text": "텍스트에서 찾기",
"toggle-full-screen": "전체화면 토글",
"zoom-out": "축소",
"zoom-in": "확대",
"reset-zoom-level": "확대/축소 다시 설정",
"copy-without-formatting": "일반 텍스트로 복사",
"force-save-revision": "리비전 강제 저장"
},
"login": {
"title": "로그인",
"heading": "Trilium 로그인",
"incorrect-password": "암호가 맞지 않습니다. 다시 입력해 주세요.",
"password": "암호",
"button": "로그인",
"sign_in_with_sso": "{{ ssoIssuerName }}로 로그인"
},
"set_password": {
"title": "암호 설정",
"heading": "암호 설정",
"description": "Trilium을 웹에서 사용하기 전에 암호를 먼저 설정해야 합니다. 이 암호로 로그인하세요.",
"password": "암호",
"password-confirmation": "암호 확인",
"button": "암호 설정"
},
"setup": {
"heading": "Trilium 노트 셋업",
"next": "다음",
"init-in-progress": "문서 초기화 진행 중",
"title": "셋업"
},
"setup_sync-from-desktop": {
"step5": "연결 설정이 성공적인지 확인을 위해 \"Test sync\" 버튼을 클릭하세요."
}
}

View File

@@ -307,13 +307,11 @@
"quick-search-title": "Szybkie wyszukiwanie",
"protected-session-title": "Chroniona sesja",
"sync-status-title": "Status synchronizacji",
"llm-chat-title": "Czat z notatkami",
"text-notes": "Notatki tekstowe",
"code-notes-title": "Notatki kodowe",
"images-title": "Obrazy",
"multi-factor-authentication-title": "MFA",
"etapi-title": "ETAPI",
"ai-llm-title": "AI/LLM",
"other": "Inne",
"visible-launchers-title": "Widoczne launchery",
"user-guide": "Podręcznik użytkownika",

View File

@@ -335,7 +335,6 @@
"protected-session-title": "Sessão Protegida",
"sync-status-title": "Estado de Sincronização",
"settings-title": "Configurações",
"llm-chat-title": "Conversar com as Notas",
"options-title": "Opções",
"appearance-title": "Aparência",
"shortcuts-title": "Atalhos",
@@ -348,7 +347,6 @@
"etapi-title": "ETAPI",
"backup-title": "Backup",
"sync-title": "Sincronizar",
"ai-llm-title": "AI/LLM",
"other": "Outros",
"advanced-title": "Avançado",
"visible-launchers-title": "Atalhos Visíveis",

View File

@@ -329,7 +329,6 @@
"protected-session-title": "Sessão Protegida",
"sync-status-title": "Status de Sincronização",
"settings-title": "Configurações",
"llm-chat-title": "Conversar com as Notas",
"options-title": "Opções",
"appearance-title": "Aparência",
"shortcuts-title": "Atalhos",
@@ -342,7 +341,6 @@
"etapi-title": "ETAPI",
"backup-title": "Backup",
"sync-title": "Sincronizar",
"ai-llm-title": "AI/LLM",
"other": "Outros",
"advanced-title": "Avançado",
"user-guide": "Guia do Usuário",

View File

@@ -251,9 +251,7 @@
"visible-launchers-title": "Lansatoare vizibile",
"user-guide": "Ghidul de utilizare",
"jump-to-note-title": "Sari la...",
"llm-chat-title": "Întreabă Notes",
"multi-factor-authentication-title": "Autentificare multi-factor",
"ai-llm-title": "AI/LLM",
"localization": "Limbă și regiune",
"inbox-title": "Inbox",
"command-palette": "Deschide paleta de comenzi",

View File

@@ -121,7 +121,6 @@
"multi-factor-authentication-title": "MFA",
"backup-title": "Резервное копирование",
"sync-title": "Синхронизация",
"ai-llm-title": "AI/LLM",
"other": "Прочее",
"advanced-title": "Расширенные настройки",
"inbox-title": "Входящие",
@@ -156,9 +155,9 @@
"go-to-previous-note-title": "К предыдущей заметке",
"go-to-next-note-title": "К следующей заметке",
"open-today-journal-note-title": "Открыть сегодняшнюю заметку в журнале",
"llm-chat-title": "ИИ чат с заметками",
"zen-mode": "Режим \"Дзен\"",
"command-palette": "Открыть панель команд"
"command-palette": "Открыть панель команд",
"tab-switcher-title": "Переключатель вкладок"
},
"tray": {
"bookmarks": "Закладки",
@@ -315,7 +314,7 @@
"title": "Настройка",
"heading": "Настройка Trilium",
"new-document": "Я новый пользователь и хочу создать новый документ Trilium для своих заметок",
"sync-from-desktop": "У меня уже есть приложение ПК, и я хочу настроить синхронизацию с ним",
"sync-from-desktop": "У меня уже есть настольное приложение, и я хочу настроить синхронизацию с ним",
"sync-from-server": "У меня уже есть сервер, и я хочу настроить синхронизацию с ним",
"init-in-progress": "Идет инициализация документа",
"redirecting": "Вскоре вы будете перенаправлены на страницу приложения."
@@ -399,8 +398,8 @@
"clipped-from": "Эта заметка изначально была вырезана из {{- url}}"
},
"setup_sync-from-desktop": {
"heading": "Синхронизация с приложения ПК",
"description": "Эту настройку необходимо инициировать из приложения для ПК:",
"heading": "Синхронизация с настольной версией",
"description": "Это настройку нужно выполнить с помощью настольной версии:",
"step1": "Откройте приложение Trilium Notes на ПК.",
"step2": "В меню Trilium выберите «Параметры».",
"step3": "Нажмите на категорию «Синхронизация».",

View File

@@ -2,6 +2,24 @@
"keyboard_actions": {
"back-in-note-history": "Gå till föregående anteckning i historiken",
"forward-in-note-history": "Gå till nästa anteckning i historiken",
"open-jump-to-note-dialog": "Öppna \"Hoppa till anteckning\" dialog"
"open-jump-to-note-dialog": "Öppna \"Hoppa till anteckning\" dialog",
"open-command-palette": "Öppna kommandomenyn",
"quick-search": "Öppna snabbsökning",
"search-in-subtree": "Sök anteckningar nedåt i anteckningshierarkin",
"expand-subtree": "Expandera hierarkin under denna anteckning",
"collapse-tree": "Stänger anteckningshierarkin",
"collapse-subtree": "Stänger hierarkin under aktuell anteckning",
"sort-child-notes": "Sortera underordnade anteckningar",
"creating-and-moving-notes": "Skapa och flytta anteckningar",
"create-note-after": "Skapa ny anteckning efter aktiv anteckning",
"create-note-into": "Skapa ny anteckning underordnad aktiv anteckning",
"create-note-into-inbox": "Skapa en anteckning i inboxen (om angiven) eller som daganteckning",
"delete-note": "Radera anteckning",
"move-note-up": "Flytta anteckning uppåt",
"move-note-down": "Flytta anteckning nedåt",
"scroll-to-active-note": "Bläddra i anteckningshierarkin till aktiv anteckning",
"move-note-up-in-hierarchy": "Flytta anteckning uppåt i hierarkin",
"move-note-down-in-hierarchy": "Flytta anteckning neråt i hierarkin",
"edit-note-title": "Hoppa från träd till anteckning och redigera titel"
}
}

View File

@@ -16,6 +16,9 @@
"create-note-into": "Aktif nota bağlı alt not oluştur",
"create-note-after": "Aktif nottan sonra yeni bir not oluştur",
"delete-note": "Notu sil",
"move-note-down": "Notu aşağıya kaydır"
"move-note-down": "Notu aşağıya kaydır",
"create-note-into-inbox": "Eğer tanımlandıysa gelen kutusunda bir not veya günlük not oluşturun",
"move-note-up-in-hierarchy": "Notu hiyerarşide yukarı taşı",
"move-note-down-in-hierarchy": "Notu hiyerarşide aşağı taşı"
}
}

View File

@@ -335,7 +335,6 @@
"protected-session-title": "受保護的作業階段",
"sync-status-title": "同步狀態",
"settings-title": "設定",
"llm-chat-title": "與筆記聊天",
"options-title": "選項",
"appearance-title": "外觀",
"shortcuts-title": "快捷鍵",
@@ -348,7 +347,6 @@
"etapi-title": "ETAPI",
"backup-title": "備份",
"sync-title": "同步",
"ai-llm-title": "AI/LLM",
"other": "其他",
"advanced-title": "進階",
"visible-launchers-title": "可見啟動器",

View File

@@ -334,7 +334,6 @@
"protected-session-title": "Захищений Сеанс",
"sync-status-title": "Статус синхронізації",
"settings-title": "Налаштування",
"llm-chat-title": "Чат з Нотатками",
"options-title": "Параметри",
"appearance-title": "Зовнішній вигляд",
"shortcuts-title": "Комбінації клавіші",
@@ -347,7 +346,6 @@
"etapi-title": "ETAPI",
"backup-title": "Резервне копіювання",
"sync-title": "Синхронізація",
"ai-llm-title": "AI/LLM",
"other": "Інше",
"advanced-title": "Розширені",
"visible-launchers-title": "Видимі Лаунчери",

Some files were not shown because too many files have changed in this diff Show More