Aller dans
Paramètres > Modules principaux >
vérifier que le module Bases
est activé.
Les requêtes Bases peuvent porter sur :
```base
views:
- type: table
name: "Ma table"
```
crée un index de toutes vos notes Obsidian.
On peut choisir de filtrer sur un champ :
```base
filters:
and:
- file.hasTag("tag")
```
où "tag" est un mot-clé de la note.
C’est la commande filters qui permet d’exclure les notes
qui ne remplissent pas le(s) condition(s) voulue(s).
La commande filters s’applique à l’ensemble des champs
requêtables, à savoir :
| Nom du champ | Type de données | Description |
|---|---|---|
file.name |
Texte | Le nom de la note. |
file.folder |
Texte | Le chemin du dossier dans lequel se trouve la note. |
file.path |
Texte | Le chemin complet de la note, y compris le nom du fichier. |
file.ext |
Texte | L’extension de la note, généralement
md. |
file.size |
Nombre | La taille (en octets) de la note. |
file.ctime |
Date avec heure | La date à laquelle la note a été créée. |
file.mtime |
Date avec heure | La date à laquelle la note a été modifiée pour la dernière fois. |
file.tags |
Liste | Une liste de tous les tags uniques dans la note. |
file.backlinks |
Liste | Une liste de tous les liens entrants vers cette note, c’est-à-dire toutes les notes contenant un lien vers cette note. |
file.links |
Liste | Une liste de tous les liens sortants de cette note, c’est-à-dire tous les liens que la note contient. |
file.embeds |
Liste | Une liste de tous les fichiers encapsulés dans la note (images, fichiers PDF…). |
file.properties |
Objet | Toutes les propriétés de la note. |
Pour manipuler des dates (champs file.ctime,
file.mtime) il est généralement utile de les comparer à la
date du jour. Par exemple
```base
filters:
and:
- file.mtime > now() - "1 week"
```
exclut les notes qui n’ont pas été modifiées dans la semaine écoulée (littéralement : la requête ne garde que les notes dont la dernière modification est postérieure à la date du jour moins 1 semaine).
Toutes les options permettant de manier les dates et les durées sont décrites dans la documentation Bases.
Il est possible de combiner plusieurs filtres, comme dans l’exemple suivant :
```base
filters:
or:
- file.hasTag("tag")
- and:
- file.hasTag("livre")
- file.hasLink("Manuel")
- not:
- file.hasTag("livre")
- file.inFolder("Cours")
```
Dans cet exemple, trois sous-parties sont introduites par un
opérateur or, ce qui signifie que les notes doivent remplir
au moins un des trois critères suivants :
file.hasTag("tag")file.hasTag("livre") et
file.hasLink("Manuel")file.hasTag("livre") ni
file.inFolder("Cours").L’affichage des résultats peut prendre deux formes :
La commande table affiche les résultats de la requête
sous forme de tableau, avec une ou plusieurs colonnes. Par exemple, la
requête ci-dessous affiche la liste des notes sous la forme d’un tableau
avec une unique colonne (le nom des notes) :
```base
views:
- type: table
name: "Ma table"
```
Pour avoir plusieurs colonnes, il suffit d’utiliser la commande
order, qui définit le contenu et l’ordre des colonnes :
```base
views:
- type: table
name: "Ma table"
order:
- file.name
- file.ctime
- file.folder
- file.tags
```
Il est également possible de modifier l’en-tête des colonnes en
utilisant la commande properties :
```base
properties:
file.name:
displayName: "Nom"
file.ctime:
displayName: "Date de création"
file.folder:
displayName: "Dossier"
file.tags:
displayName: "Tags"
views:
- type: table
name: Table
order:
- file.name
- file.ctime
- file.folder
- file.tags
```
Sur le même principe, la requête ci-dessous affiche la liste des notes sous la forme d’une galerie de cartes :
```base
views:
- type: cards
name: "Ma galerie"
```
Des paramètres spécifiques à la galerie peuvent s’appliquer :
cardSize détermine la largeur des cartesimage détermine l’image à afficher en couverture de
chaque carte : soit une URL, soit un fichier attaché, soit une
couleurimageFit détermine comment l’image doit s’adapter à la
taille de la carte (soit contain pour que l’image conserve
ses proportions, soit cover pour qu’elle soit rognée et
remplisse tout l’espace)imageAspectRatio détermine la proportion de l’image
(1.1 pour une image carrée).Par exemple :
```base
views:
- type: cards
name: "Ma galerie"
image: file.attachment
imageFit: contain
cardSize: 100
imageAspectRatio: 1.7
```
Pour n’afficher que les 5, 10, 20 premiers résultats, il est possible
d’utiliser la commande limit de la façon suivante :
```base
views:
- type: table
name: "Ma table"
limit: 10
```
La commande sort permet de trier les résultats à
afficher selon un ou plusieurs champs, dans l’ordre des champs (en cas
d’ex-aequo).
Le tri peut se faire dans l’ordre croissant (ASC) ou
décroissant (DESC) :
```base
views:
- type: table
name: "Ma table"
order:
- file.name
- file.ctime
- file.folder
- file.tags
sort:
- property: file.name
direction: ASC
- property: file.ctime
direction: DESC
```
Rédigé par Antoine Blanchard en octobre 2025