---
ChildrenType: ["Note", "Task", "Recipe"]
JSXExample: "Hello JSX!"
Number1: 1
Number2: 3
TimeStamp: 2022-01-15
---
await dv.io.load(dv.page("02.02 Paris/Abri"))
`jsx-`
`jsx- The value of hello is "{JSXExample}"
}/>`
`jsx- (Number1 + Number2) * 100
}/>`
> [!command] test
> ```
> Command line test
> ```
not found: โ๏ธ ๐ก๏ธ-7ยฐC ๐ฌ๏ธโ3km/h
not found: โ๏ธ ๐ก๏ธ-7ยฐC ๐ฌ๏ธโ3km/h
Syntax
Description
- [ ] to-do
- [/] incomplete
- [x] done
- [-] canceled
- [>] forwarded
- [<] scheduling
- [?] question
- [!] important
- [*] star
- ["] quote
- [l] location
- [b] bookmark
- [i] information
- [S] savings
- [I] idea
- [p] pros
- [c] cons
- [f] fire
- [k] key
- [w] win
- [u] up
- [d] down
```dataviewjs
this.container.style.minHeight = "500px"; const { renderCalendar } = app.plugins.plugins["obsidian-full-calendar"]; let calendar = renderCalendar(this.container, [[{start: new Date(), id: "id", title: "Now and for an hour"}]]); calendar.render()
```
=== start-multi-column: Testlist
```column-settings
number of columns: 2
largest column: standard
border: disabled
```
My Meggi-mo is never going to give up on me
[Forum](https://forum.obsidian.md)
- [b] bookmark checklist item
=== end-column ===
> citation example
> ~ Melchior de Villeneuve
=== end-multi-column
- [b] ff
Comment
```dataviewjs
let stepSize = 40;
let bigStepSize = 200;
if (app.isMobile) {
stepSize = 15;
bigStepSize = 100;
}
let completeSquare = '๐ฉ';
let notCompleteSquare = 'โฌ';
let results = [];
let pages = dv.pages('"00.01 Admin"');
for (let page of pages) {
let link = page.file.link;
link.display = completeSquare;
let rank = parseInt(page.file.name.slice(0, 4));
if (rank) {
results.push({
rank: rank,
name: page.file.name,
link: page.file.link
});
}
}
results.sort((a, b) => a.rank - b.rank);
let current = 2000;
let mapList = [];
for (let result of results) {
for (let i = 0; i < result.rank - current - 1; i++) {
mapList.push(notCompleteSquare);
}
mapList.push(result.link);
current = result.rank;
}
let displayString = '';
for (let i = 0; i < mapList.length; i = i + stepSize) {
let startBigStep = Math.ceil((i) / bigStepSize);
let endBigStep = Math.ceil((i + stepSize) / bigStepSize);
if (endBigStep > startBigStep) {
displayString += ((endBigStep - 1) * bigStepSize).toString().padStart(4, ' ');
} else {
displayString += ' '.repeat(4);
}
displayString += ' ' + mapList.slice(i, i + stepSize).join('') + '
';
}
dv.el('pre', displayString);
```
```lineup
formation: 433
players: Donnarumma,Bernat,Marquinhos,Kimpembe,Hakimi,Villeneuve,Verratti,St Hilaire,MBappe,Solanet,Messi
```
```dataviewjs
const {shoppingFunc} = customJS
shoppingFunc.getItems2Change({app: app, dv: dv, luxon: luxon, that:this, theme: "to0"})
```
```button
name Create Note
type append template
action SendMail
color blue
templater true
```
const subject = tp.file.title
const body = tp.file.content
tR += "[Send as email](readdle-spark://compose?body=" + encodeURI(body) + ""&subject=" + encodeURI(subject) + ")"
%>
const {templaterFunc} = this.app.plugins.plugins["customjs"].api
templaterFunc.createNewFile(tp, tp.frontmatter.ChildrenType)
%>
tR += const {templaterFunc} = this.app.plugins.plugins["customJS"]
templaterFunc.createNewFile(tp, tp.frontmatter.ChildrenType)
%>
tR += const {templaterFunc} = this.app.plugins.plugins["customJS"].api
templaterFunc.createNewFile(tp, tp.frontmatter.ChildrenType)
%>
tR += const {templaterFunc} = this.app.plugins.plugins["CustomJS"].api
templaterFunc.createNewFile(tp, tp.frontmatter.ChildrenType)
%>
tR += const {templaterFunc} = tp.obsidian.plugins.plugins.CustomJS
%>
<% templaterFunc.createNewFile(tp, tp.frontmatter.ChildrenType) %>
tR += const {templaterFunc} = customJS
%>
<% templaterFunc.createNewFile(tp, tp.frontmatter.ChildrenType) %>
const templaterFunc = customJS
tR += templaterFunc.createNewFile(tp, tp.frontmatter.ChildrenType)
%>
const templaterFunc = tp.obsidian.plugins.plugins.CustomJS
tR += templaterFunc.createNewFile(tp, tp.frontmatter.ChildrenType)
%>
const {templaterFunc} = tp.obsidian.plugins.plugins.CustomJS
tR += templaterFunc.createNewFile(tp, tp.frontmatter.ChildrenType)
%>
CollapseMetaTable: yes
Groceries: ["๐ถ 6 bottle(s) Coke 0", "๐ฟ 1 whole Snacks", "๐ง packet(s) Beurre", "๐ซ 0 bottle(s) Olive oil", "๐บ 0 bottle(s) Beers", "๐ฅฏ 0 packet(s) Bagels", "๐ฏ 1 jar(s) Bonne Maman", "๐ 6 whole Bananas", "๐ง 0 packet(s) Fromage rape", "๐ฅฉ 2 packet(s) Cured meat", "๐ 6 whole Fruit", "๐ 2 packet(s) Pasta", "๐ถ๏ธ 1 bottle(s) Tabasco"]
Health:
- ๐ฟ 1 whole shower gel
- ๐งด 1 whole shampoo
- ๐ชฅ whole toothbrush
- ๐ฆท 1 whole toothpaste
- ๐ whole earbuds
- ๐ช 1 whole razor blades (mach3)
- ๐ฆ whole shaving cream
- ๐งป 6 whole loo rolls
- ๐ฆจ whole deo
Household:
- ๐ 1 whole Washing gel
- ๐งป 4 whole Kitchen towel
- ๐งฝ whole Sponge
- ๐ 2 whole Softener
- ๐ฝ๏ธ whole Dishwasher tablets
- ๐ง 1 whole Dishwasher salt
- ๐ฐ 0 whole Dishwasher rinsing aid
```dataviewjs
const app = this.app;
const metaedit = app.plugins.plugins["metaedit"];
const init_dom = (row) => { const sel = `table.dataview.table-view-table td > span > a[data-href='${row.file.path}']`;
const tr = dv.container.querySelector(sel).closest("tr");
const labels = tr.querySelectorAll("._dataview-labels"); for (let i = 0; i < labels.length; i++) { const data = labels[i].data
const file = app.vault.getAbstractFileByPath(row.file.path);
const prop = {key: data.name, content:data.actual, type: data.type};
labels[i].addEventListener('click', async (evt) => { metaedit.controller.editMetaElement(prop, [], file); }); } }
const field = (row, name, type) => {
let data = {};
data.row = row;
data.name = name;
data.actual = row[name];
data.value = row[name];
data.type = type || 1;
const el = this.container.createEl('span', {"text": row[name] || "-"});
el.classList.add("_dataview-labels");
el.data = data; return el; };
try { var workspace = dv.container.closest("div.workspace-leaf");
var title = workspace.querySelector("div.view-header-title");
let pages = dv.pages('"03.03 Food & Wine"') .sort(t => t.file.name) .where(t => field(t, 'DocType') == "Recipe");
dv.table( ["Name", "Course", "Category", "Collection", "Cooking Time", "Rating", ""], pages .map(t => [ t.file.link, field(t, 'Recipe.Course'), field(t, 'Recipe.Category'), field(t, 'Recipe.Collection'), field(t, 'Recipe.CookingTime'), field(t, 'Meta.Rating') ]) );
setTimeout(function(){
for (let i = 0; i < pages.length; i++) {
init_dom(pages[i]); } }, 0);
}
catch (err) { window.console.info(err); }
```