--- ChildrenType: ["Note", "Task", "Recipe"] JSXExample: "Hello JSX!" Number1: 1 Number2: 3 TimeStamp: 2022-01-15 --- `$= DateTime.now().toFormat("MMMM yyyy")` await dv.io.load(dv.page("02.02 Paris/Abri")) > [!command] test > ``` > Command line test > ``` Syntax Description --- ### Calendar rendering (dataview x full calendar) \```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() \``` --- ### Multi-column \>[!multi-column] \>>[!blank-container] > >> [!infobox] >> # SELF >>![[175008.jpg|cover]] >> ##### >> | | >> | -- | >> | [[000. Obsidian\|Obsidian]] - #:inbox_tray: | >> | [[100 Personal\|Personal]] - #Personal:crown: | >> | [[200 PKM Library\|PKM Library]] - #PKM | >> | [[300 MOCS\|MOC Library]] - #MOC:map: | > >> [!infobox|] >> # PERSONAL >>![[174897.jpg|cover]] >>##### >> || >> | -- | >> | [[900 Work\|Work]] - #Work >> | [[600 Life Areas\|Life Areas]] - #Life | >> | - | >> | - | > >>[!blank-container] > >>[!infobox] >># Activity >>![[168494.jpg|cover landscape]] >>![[Activity|clean]] > >>[!blank-container] \=== 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





  --- ### Squares (dataview) \```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); \```   --- ### Football formation \```lineup formation: 433 players: Donnarumma,Bernat,Marquinhos,Kimpembe,Hakimi,Villeneuve,Verratti,St Hilaire,MBappe,Solanet,Messi \``` --- ### dataview habit tracker - [ ] Habit_1 - [ ] Habit_2 - [ ] Habit_3 - [ ] Habit_4 - [ ] this is seq task 1 ^seqtask1 - [ ] this is seq task 2 [[Test sheet#^seqtask1|๐Ÿ”—]] ^seqtask2 - [ ] this is seq task 3 [[Test sheet#^seqtask2|๐Ÿ”—]] - [x] tast test โœ… 2022-09-04 - [ ] sub-task test - [ ] Sub-task test 2 - [ ] sub-task test 3 --- ### Checkboxes - [ ] Unchecked `- [ ]` - [x] Checked `- [x]` - [>] Rescheduled `- [>]` - [<] Scheduled `- [<]` - [!] Important `- [!]` - [-] Cancelled `- [-]` - [x] In Progress `- [/]` โœ… 2024-01-20 - [?] Question `- [?]` - [*] Star `- [*]` - [n] Note `- [n]` - [l] Location `- [l]` - [i] Information `- [i]` - [I] Idea `- [I]` - [S] Amount `- [S]` - [p] Pro `- [p]` - [c] Con `- [c]` - [b] Bookmark `- [b]` - [f] Fire `- [ f ]` - [w] Win `- [w]` - [k] Key `- [k]` - [u] Up `- [u]` - [d] down `- [d]` - [F] Feature `- [F]` - [r] Rule `- [r]` - [m] Measurement `- [m]` - [M] Medical `- [M]` - [L] Language `- [L]` - [t] Clock `- [t]` - [T] Telephone `- [T]` - [P] Person `- [P]` - [#] Tags `- [#]` - [W] World `- [W]` - [U] Universe `- [U]` โ†ฐย โ†ฑย โ†ฒย โ†ณย ย โ†ดย โ†ต ### Box Drawing | Symbol | Alt Code | |:------:|:--------:| | โ”€ | +2500 | | โ”‚ | +2502 | | โ”Œ | +250c | | โ” | +2501 | | โ”” | +2514 | | โ”˜ | +2518 | | โ”œ | +251c | | โ”ค | +2524 | | โ”ฌ | +252c | | โ”ด | +2534 | | โ”ผ | +253c | ### Callouts > [!quote] Quote, Cite > [!note] > [!shopping] Shopping List > [!tldr] > [!example] > [!help] > [!Related] Related > [!Backstory] Backstory > [!question] Question/FAQ > [!abstract] Abstract > [!Links] Links > [!Translation] Translation > [!info] Info > [!todo] > [!backlog] Backlog > [!morning] Morning > [!Meditate] Meditate > [!currently] Currently > [!tip] Tip > [!hint] > [!check] Check, Done > [!money] Money > [!pro] Pro > [!World] World > [!summary] > [!doing] Doing, In Progress > [!warning] Warning, Caution, Attention > [!idea] Idea > [!Feature] Feature > [!target] Target > [!con] Con > [!important] > [!failure] Failure, Fail, Missing > [!Conflict] Conflict, Challenge, Encounter > [!danger] Danger, Error > [!error] > [!bug] > [!Resources] Resources > [!celebrate] Celebrate > [!success] Success ### Loading 10% `` 20% ` 30% `` 40% `` 50% `` 60% `` 70% `` 80% `` 90% `` 100% `` --- ```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: true 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); } ```