back to school

main
iOS 1 year ago
parent a61372ac2f
commit 859dc4857b

@ -95,6 +95,6 @@
"repelStrength": 10, "repelStrength": 10,
"linkStrength": 1, "linkStrength": 1,
"linkDistance": 250, "linkDistance": 250,
"scale": 0.16329213495643313, "scale": 0.11010452134496902,
"close": true "close": true
} }

@ -19,7 +19,7 @@
"601d1cc7-a4f3-4f19-aa9f-3bddd7ab6b1d": { "601d1cc7-a4f3-4f19-aa9f-3bddd7ab6b1d": {
"locked": false, "locked": false,
"lockedDeviceName": "iPhone", "lockedDeviceName": "iPhone",
"lastRun": "2023-07-13T08:27:58+02:00" "lastRun": "2023-08-07T10:12:22+02:00"
} }
} }
} }

@ -41,6 +41,10 @@ var MailBlockPlugin = class extends import_obsidian.Plugin {
} }
try { try {
const rootEl = el.createEl("div", { cls: "email-block" }); const rootEl = el.createEl("div", { cls: "email-block" });
if (parameters.from !== void 0) {
rootEl.createEl("div", { cls: "email-block-info", text: "From:" });
rootEl.createEl("div", { cls: "email-block-info-value", text: this.renderAddress(parameters.from) });
}
if (parameters.to !== void 0) { if (parameters.to !== void 0) {
rootEl.createEl("div", { cls: "email-block-info", text: "To:" }); rootEl.createEl("div", { cls: "email-block-info", text: "To:" });
rootEl.createEl("div", { cls: "email-block-info-value", text: this.renderAddress(parameters.to) }); rootEl.createEl("div", { cls: "email-block-info-value", text: this.renderAddress(parameters.to) });

@ -1,7 +1,7 @@
{ {
"id": "email-block-plugin", "id": "email-block-plugin",
"name": "Email code block", "name": "Email code block",
"version": "0.4.0", "version": "0.5.0",
"minAppVersion": "0.15.0", "minAppVersion": "0.15.0",
"description": "This plugin renders an email code block.", "description": "This plugin renders an email code block.",
"author": "JoLeaf", "author": "JoLeaf",

@ -4,9 +4,12 @@
"historyPriority": true, "historyPriority": true,
"historyLimit": 100, "historyLimit": 100,
"history": [ "history": [
":fork_and_knife:", ":racehorse:",
":plate_with_cutlery:",
":tv:", ":tv:",
":car:",
":train2:",
":plate_with_cutlery:",
":fork_and_knife:",
":hot_pepper:", ":hot_pepper:",
":palm_tree:", ":palm_tree:",
":candy:", ":candy:",
@ -14,9 +17,7 @@
":wine_glass:", ":wine_glass:",
":coffee:", ":coffee:",
":mountain:", ":mountain:",
":train2:",
":cityscape:", ":cityscape:",
":racehorse:",
":soccer:", ":soccer:",
":iphone:", ":iphone:",
":blue_car:", ":blue_car:",
@ -33,7 +34,6 @@
":warning:", ":warning:",
":musical_score:", ":musical_score:",
":clapper:", ":clapper:",
":car:",
":crocodile:", ":crocodile:",
":ferris_wheel:", ":ferris_wheel:",
":cake:", ":cake:",

@ -12,8 +12,8 @@
"checkpointList": [ "checkpointList": [
{ {
"path": "/", "path": "/",
"date": "2023-07-13", "date": "2023-08-07",
"size": 16518721 "size": 17379217
} }
], ],
"activityHistory": [ "activityHistory": [
@ -2214,7 +2214,103 @@
}, },
{ {
"date": "2023-07-13", "date": "2023-07-13",
"value": 1514 "value": 4008
},
{
"date": "2023-07-14",
"value": 3547
},
{
"date": "2023-07-15",
"value": 1313
},
{
"date": "2023-07-16",
"value": 1344
},
{
"date": "2023-07-17",
"value": 340164
},
{
"date": "2023-07-18",
"value": 3359
},
{
"date": "2023-07-19",
"value": 1333
},
{
"date": "2023-07-20",
"value": 1503
},
{
"date": "2023-07-21",
"value": 1355
},
{
"date": "2023-07-22",
"value": 5096
},
{
"date": "2023-07-24",
"value": 3451
},
{
"date": "2023-07-25",
"value": 1420
},
{
"date": "2023-07-26",
"value": 1538
},
{
"date": "2023-07-27",
"value": 23974
},
{
"date": "2023-07-28",
"value": 1793
},
{
"date": "2023-07-29",
"value": 200519
},
{
"date": "2023-07-30",
"value": 3576
},
{
"date": "2023-07-31",
"value": 252055
},
{
"date": "2023-08-01",
"value": 1289
},
{
"date": "2023-08-02",
"value": 15
},
{
"date": "2023-08-03",
"value": 6893
},
{
"date": "2023-08-04",
"value": 3686
},
{
"date": "2023-08-05",
"value": 6372
},
{
"date": "2023-08-06",
"value": 1284
},
{
"date": "2023-08-07",
"value": 1521
} }
] ]
} }

@ -106,7 +106,7 @@
}, },
"syntaxHighlight": false, "syntaxHighlight": false,
"copyButton": true, "copyButton": true,
"version": "9.3.2", "version": "9.3.3",
"autoCollapse": false, "autoCollapse": false,
"defaultCollapseType": "open", "defaultCollapseType": "open",
"injectColor": true, "injectColor": true,

File diff suppressed because one or more lines are too long

@ -1,7 +1,7 @@
{ {
"id": "obsidian-admonition", "id": "obsidian-admonition",
"name": "Admonition", "name": "Admonition",
"version": "9.3.2", "version": "9.3.3",
"minAppVersion": "1.1.0", "minAppVersion": "1.1.0",
"description": "Enhanced callouts for Obsidian.md", "description": "Enhanced callouts for Obsidian.md",
"author": "Jeremy Valentine", "author": "Jeremy Valentine",

File diff suppressed because one or more lines are too long

@ -5,7 +5,7 @@
"isDesktopOnly": false, "isDesktopOnly": false,
"js": "main.js", "js": "main.js",
"fundingUrl": "https://ko-fi.com/vinzent", "fundingUrl": "https://ko-fi.com/vinzent",
"version": "1.36.2", "version": "1.36.5",
"author": "Vinzent", "author": "Vinzent",
"authorUrl": "https://github.com/Vinzent03" "authorUrl": "https://github.com/Vinzent03"
} }

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

@ -1,7 +1,7 @@
{ {
"id": "obsidian-dice-roller", "id": "obsidian-dice-roller",
"name": "Dice Roller", "name": "Dice Roller",
"version": "8.15.1", "version": "9.3.0",
"minAppVersion": "0.12.15", "minAppVersion": "0.12.15",
"description": "Inline dice rolling for Obsidian.md", "description": "Inline dice rolling for Obsidian.md",
"author": "Jeremy Valentine", "author": "Jeremy Valentine",

File diff suppressed because one or more lines are too long

@ -1,7 +1,7 @@
{ {
"id": "obsidian-map-view", "id": "obsidian-map-view",
"name": "Map View", "name": "Map View",
"version": "3.1.1", "version": "4.0.0",
"minAppVersion": "0.15.3", "minAppVersion": "0.15.3",
"description": "An interactive map view.", "description": "An interactive map view.",
"isDesktopOnly": false "isDesktopOnly": false

@ -58,6 +58,17 @@
display: inline; display: inline;
} }
/* An icon button on the map, e.g. lock */
.mv-icon-button {
display: flex !important;
align-items: center;
justify-content: center;
}
a.mv-icon-button.on {
background-color: var(--background-modifier-border-focus) !important;
}
.controls-toggle:checked .controls-toggle:checked
+ .lbl-triangle + .lbl-triangle
+ .lbl-toggle + .lbl-toggle

File diff suppressed because one or more lines are too long

@ -1,7 +1,7 @@
{ {
"id": "obsidian-metatable", "id": "obsidian-metatable",
"name": "Metatable", "name": "Metatable",
"version": "0.14.4", "version": "0.14.6",
"minAppVersion": "0.15.9", "minAppVersion": "0.15.9",
"description": "Displays the full frontmatter as a table.", "description": "Displays the full frontmatter as a table.",
"author": "Arnau Siches", "author": "Arnau Siches",

File diff suppressed because one or more lines are too long

@ -1,8 +1,8 @@
{ {
"id": "obsidian-minimal-settings", "id": "obsidian-minimal-settings",
"name": "Minimal Theme Settings", "name": "Minimal Theme Settings",
"version": "6.3.1", "version": "6.3.2",
"minAppVersion": "0.16.0", "minAppVersion": "1.1.9",
"description": "Change the colors, fonts and features of Minimal Theme.", "description": "Change the colors, fonts and features of Minimal Theme.",
"author": "@kepano", "author": "@kepano",
"authorUrl": "https://www.twitter.com/kepano", "authorUrl": "https://www.twitter.com/kepano",

File diff suppressed because one or more lines are too long

@ -1,7 +1,7 @@
{ {
"id": "obsidian-read-it-later", "id": "obsidian-read-it-later",
"name": "ReadItLater", "name": "ReadItLater",
"version": "0.3.0", "version": "0.3.1",
"minAppVersion": "0.15.9", "minAppVersion": "0.15.9",
"description": "Saves the clipboard to a new note.", "description": "Saves the clipboard to a new note.",
"author": "Dominik Pieper", "author": "Dominik Pieper",

@ -2,15 +2,10 @@
"scanned": true, "scanned": true,
"reminders": { "reminders": {
"05.01 Computer setup/Storage and Syncing.md": [ "05.01 Computer setup/Storage and Syncing.md": [
{
"title": ":iphone: Backup [[Storage and Syncing#Instructions for iPhone|iPhone]] %%done_del%%",
"time": "2023-07-11",
"rowNumber": 176
},
{ {
"title": ":cloud: [[Storage and Syncing|Storage & Sync]]: Backup Volumes to [[Sync|Sync.com]] %%done_del%%", "title": ":cloud: [[Storage and Syncing|Storage & Sync]]: Backup Volumes to [[Sync|Sync.com]] %%done_del%%",
"time": "2023-09-11", "time": "2023-09-11",
"rowNumber": 181 "rowNumber": 182
}, },
{ {
"title": "Backup [[Storage and Syncing#Instructions for Anchor|Anchor Wallet]] %%done_del%%", "title": "Backup [[Storage and Syncing#Instructions for Anchor|Anchor Wallet]] %%done_del%%",
@ -20,24 +15,29 @@
{ {
"title": ":floppy_disk: Backup [[Storage and Syncing#Instructions for FV|Folder Vault]] %%done_del%%", "title": ":floppy_disk: Backup [[Storage and Syncing#Instructions for FV|Folder Vault]] %%done_del%%",
"time": "2023-10-06", "time": "2023-10-06",
"rowNumber": 178 "rowNumber": 179
},
{
"title": ":iphone: Backup [[Storage and Syncing#Instructions for iPhone|iPhone]] %%done_del%%",
"time": "2023-10-10",
"rowNumber": 176
}, },
{ {
"title": ":camera: [[Storage and Syncing|Storage & Sync]]: Transfer pictures to ED %%done_del%%", "title": ":camera: [[Storage and Syncing|Storage & Sync]]: Transfer pictures to ED %%done_del%%",
"time": "2023-10-12", "time": "2023-10-12",
"rowNumber": 183 "rowNumber": 184
} }
], ],
"06.01 Finances/hLedger.md": [ "06.01 Finances/hLedger.md": [
{
"title": ":heavy_dollar_sign: [[hLedger]]: Update current ledger %%done_del%%",
"time": "2023-07-07",
"rowNumber": 421
},
{ {
"title": ":heavy_dollar_sign: [[hLedger]]: Update Price file %%done_del%%", "title": ":heavy_dollar_sign: [[hLedger]]: Update Price file %%done_del%%",
"time": "2023-10-06", "time": "2023-10-06",
"rowNumber": 418 "rowNumber": 418
},
{
"title": ":heavy_dollar_sign: [[hLedger]]: Update current ledger %%done_del%%",
"time": "2023-10-06",
"rowNumber": 421
} }
], ],
"05.02 Networks/Server Cloud.md": [ "05.02 Networks/Server Cloud.md": [
@ -53,15 +53,15 @@
} }
], ],
"05.02 Networks/Server Alias.md": [ "05.02 Networks/Server Alias.md": [
{
"title": ":email: [[Selfhosting]], [[Server Alias|Email Alias]]: Upgrader & Health checks %%done_del%%",
"time": "2023-07-31",
"rowNumber": 338
},
{ {
"title": ":email: [[Server Alias]]: Backup server %%done_del%%", "title": ":email: [[Server Alias]]: Backup server %%done_del%%",
"time": "2023-09-05", "time": "2023-09-05",
"rowNumber": 343 "rowNumber": 344
},
{
"title": ":email: [[Selfhosting]], [[Server Alias|Email Alias]]: Upgrader & Health checks %%done_del%%",
"time": "2023-11-30",
"rowNumber": 338
} }
], ],
"05.02 Networks/Server Tools.md": [ "05.02 Networks/Server Tools.md": [
@ -123,11 +123,6 @@
} }
], ],
"04.01 lebv.org/lebv Research Tasks.md": [ "04.01 lebv.org/lebv Research Tasks.md": [
{
"title": ":fleur_de_lis: [[lebv Research Tasks|Research]]: <mark style=\"Background:grey\">membres de la famille</mark>: éplucher les mentions du Nobiliaire de Guyenne & Gascogne",
"time": "2023-07-31",
"rowNumber": 71
},
{ {
"title": ":fleur_de_lis: [[lebv Research Tasks|Research]]: <mark style=\"background:grey\">membres de la famille</mark>: reprendre les citations militaires (promotion/décoration)", "title": ":fleur_de_lis: [[lebv Research Tasks|Research]]: <mark style=\"background:grey\">membres de la famille</mark>: reprendre les citations militaires (promotion/décoration)",
"time": "2023-08-31", "time": "2023-08-31",
@ -137,6 +132,11 @@
"title": ":fleur_de_lis: [[lebv Research Tasks|Research]]: <mark style=\"background:grey\">Lieux</mark>: que sont devenus Fleurimont & Le Pavillon aujourd'hui?", "title": ":fleur_de_lis: [[lebv Research Tasks|Research]]: <mark style=\"background:grey\">Lieux</mark>: que sont devenus Fleurimont & Le Pavillon aujourd'hui?",
"time": "2023-10-31", "time": "2023-10-31",
"rowNumber": 69 "rowNumber": 69
},
{
"title": ":fleur_de_lis: [[lebv Research Tasks|Research]]: <mark style=\"Background:grey\">membres de la famille</mark>: éplucher les mentions du Nobiliaire de Guyenne & Gascogne",
"time": "2023-12-31",
"rowNumber": 71
} }
], ],
"01.03 Family/Amaury de Villeneuve.md": [ "01.03 Family/Amaury de Villeneuve.md": [
@ -194,7 +194,7 @@
"01.03 Family/Opportune de Villeneuve.md": [ "01.03 Family/Opportune de Villeneuve.md": [
{ {
"title": ":birthday: **[[Opportune de Villeneuve|Opportune]]** %%done_del%%", "title": ":birthday: **[[Opportune de Villeneuve|Opportune]]** %%done_del%%",
"time": "2023-07-14", "time": "2024-07-14",
"rowNumber": 105 "rowNumber": 105
} }
], ],
@ -346,40 +346,40 @@
} }
], ],
"01.02 Home/Household.md": [ "01.02 Home/Household.md": [
{
"title": "♻ [[Household]]: *Cardboard* recycling collection %%done_del%%",
"time": "2023-08-08",
"rowNumber": 84
},
{ {
"title": "🛎 🧻 REMINDER [[Household]]: check need for toilet paper %%done_del%%", "title": "🛎 🧻 REMINDER [[Household]]: check need for toilet paper %%done_del%%",
"time": "2023-07-17", "time": "2023-08-14",
"rowNumber": 99 "rowNumber": 103
}, },
{ {
"title": "♻ [[Household]]: *Paper* recycling collection %%done_del%%", "title": "♻ [[Household]]: *Paper* recycling collection %%done_del%%",
"time": "2023-07-18", "time": "2023-08-15",
"rowNumber": 75 "rowNumber": 75
}, },
{ {
"title": ":bed: [[Household]] Change bedsheets %%done_del%%", "title": ":bed: [[Household]] Change bedsheets %%done_del%%",
"time": "2023-07-22", "time": "2023-08-19",
"rowNumber": 112 "rowNumber": 120
},
{
"title": "♻ [[Household]]: *Cardboard* recycling collection %%done_del%%",
"time": "2023-07-25",
"rowNumber": 82
}, },
{ {
"title": "🛎️ :house: [[Household]]: Pay rent %%done_del%%", "title": "🛎️ :house: [[Household]]: Pay rent %%done_del%%",
"time": "2023-07-31", "time": "2023-08-31",
"rowNumber": 95 "rowNumber": 98
}, },
{ {
"title": ":blue_car: [[Household]]: Change to Winter tyres %%done_del%%", "title": ":blue_car: [[Household]]: Change to Winter tyres %%done_del%%",
"time": "2023-10-15", "time": "2023-10-15",
"rowNumber": 125 "rowNumber": 135
}, },
{ {
"title": ":blue_car: [[Household]]: Change to Summer tyres %%done_del%%", "title": ":blue_car: [[Household]]: Change to Summer tyres %%done_del%%",
"time": "2024-04-15", "time": "2024-04-15",
"rowNumber": 124 "rowNumber": 134
} }
], ],
"01.03 Family/Pia Bousquié.md": [ "01.03 Family/Pia Bousquié.md": [
@ -460,15 +460,20 @@
} }
], ],
"05.02 Networks/Configuring UFW.md": [ "05.02 Networks/Configuring UFW.md": [
{
"title": "🖥 [[Selfhosting]], [[Configuring UFW|Firewall]]: Update the Blocked IP list %%done_del%%",
"time": "2023-07-29",
"rowNumber": 269
},
{ {
"title": "🖥 [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix %%done_del%%", "title": "🖥 [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix %%done_del%%",
"time": "2023-07-15", "time": "2023-08-12",
"rowNumber": 239 "rowNumber": 239
}, },
{ {
"title": "🖥 [[Selfhosting]], [[Configuring UFW|Firewall]]: Update the Blocked IP list %%done_del%%", "title": "🖥 [[Selfhosting]], [[Configuring UFW|Firewall]] Get IP addresses caught by Postfix %%done_del%%",
"time": "2023-07-15", "time": "2023-08-12",
"rowNumber": 263 "rowNumber": 266
} }
], ],
"01.03 Family/Amélie Solanet.md": [ "01.03 Family/Amélie Solanet.md": [
@ -488,15 +493,15 @@
"00.08 Bookmarks/Bookmarks - Media.md": [ "00.08 Bookmarks/Bookmarks - Media.md": [
{ {
"title": ":label: [[Bookmarks - Media]]: review bookmarls", "title": ":label: [[Bookmarks - Media]]: review bookmarls",
"time": "2023-08-07", "time": "2023-11-07",
"rowNumber": 80 "rowNumber": 80
} }
], ],
"00.08 Bookmarks/Bookmarks - Admin & services.md": [ "00.08 Bookmarks/Bookmarks - Admin & services.md": [
{ {
"title": ":label: [[Bookmarks - Admin & services]]: Review bookmarks", "title": ":label: [[Bookmarks - Admin & services]]: Review bookmarks %%done_del%%",
"time": "2023-07-30", "time": "2023-10-30",
"rowNumber": 96 "rowNumber": 113
} }
], ],
"00.08 Bookmarks/Bookmarks - Obsidian.md": [ "00.08 Bookmarks/Bookmarks - Obsidian.md": [
@ -670,6 +675,11 @@
} }
], ],
"01.07 Animals/@Sally.md": [ "01.07 Animals/@Sally.md": [
{
"title": ":racehorse: [[@Sally|Sally]]: Pay for horseshoes (150 CHF) %%done_del%%",
"time": "2023-08-10",
"rowNumber": 127
},
{ {
"title": ":racehorse: [[@Sally|Sally]]: Vet check %%done_del%%", "title": ":racehorse: [[@Sally|Sally]]: Vet check %%done_del%%",
"time": "2023-09-30", "time": "2023-09-30",
@ -682,10 +692,15 @@
} }
], ],
"02.03 Zürich/Juan Bautista Bossio.md": [ "02.03 Zürich/Juan Bautista Bossio.md": [
{
"title": ":horse_racing: [[Juan Bautista Bossio|Juan]]: Bring a bottle of fernet + normal coca cola %%done_del%%",
"time": "2023-08-20",
"rowNumber": 102
},
{ {
"title": ":birthday: :horse_racing: [[Juan Bautista Bossio|Juan]]s birthday %%done_del%%", "title": ":birthday: :horse_racing: [[Juan Bautista Bossio|Juan]]s birthday %%done_del%%",
"time": "2024-04-19", "time": "2024-04-19",
"rowNumber": 112 "rowNumber": 114
} }
], ],
"00.01 Admin/Calendars/2023-05-08.md": [ "00.01 Admin/Calendars/2023-05-08.md": [
@ -735,6 +750,20 @@
"time": "2023-07-07", "time": "2023-07-07",
"rowNumber": 103 "rowNumber": 103
} }
],
"00.08 Bookmarks/Bookmarks - Investments.md": [
{
"title": ":label: [[Bookmarks - Investments]]: Review bookmarks %%done_del%%",
"time": "2023-11-07",
"rowNumber": 76
}
],
"00.08 Bookmarks/Bookmarks - Social Media.md": [
{
"title": ":label: [[Bookmarks - Social Media]]: Review bookmarks %%done_del%%",
"time": "2023-11-14",
"rowNumber": 79
}
] ]
}, },
"debug": false, "debug": false,

@ -27,57 +27,254 @@ __export(main_exports, {
default: () => ScrollToTopPlugin default: () => ScrollToTopPlugin
}); });
module.exports = __toCommonJS(main_exports); module.exports = __toCommonJS(main_exports);
var import_obsidian = require("obsidian"); var import_obsidian2 = require("obsidian");
// src/command.ts
var addPluginCommand = (plugin, id, name, callback) => {
plugin.addCommand({
id,
name,
callback
});
};
// utils/index.ts
var isPreview = (markdownView) => {
const mode = markdownView.getMode();
return mode === "preview";
};
var isSource = (markdownView) => {
const mode = markdownView.getMode();
return mode === "source";
};
// src/setting.ts // src/setting.ts
var import_obsidian = require("obsidian");
var scrollToTopSetting = { var scrollToTopSetting = {
enabledScrollToTop: true, enabledScrollToTop: true,
enabledScrollToBottom: true, enabledScrollToBottom: true,
enabledScrollToCursor: true,
iconScrollToTop: "arrow-up", iconScrollToTop: "arrow-up",
iconScrollToBottom: "arrow-down", iconScrollToBottom: "arrow-down",
iconScrollToCursor: "text-cursor-input",
showTooltip: true, showTooltip: true,
scrollTopTooltipText: "Scroll to top", scrollTopTooltipText: "Scroll to top",
scrollBottomTooltipText: "Scroll to bottom" scrollBottomTooltipText: "Scroll to bottom",
scrollCursorTooltipText: "Scroll to cursor position",
enableSurfingPlugin: false,
resizeButton: 1
};
var ScrollToTopSettingTab = class extends import_obsidian.PluginSettingTab {
constructor(app, plugin) {
super(app, plugin);
this.plugin = plugin;
}
createSpanWithLinks(text, href, linkText) {
const span = activeDocument.createElement("span");
span.innerText = text;
const link = activeDocument.createElement("a");
link.href = href;
link.innerText = linkText;
span.appendChild(link);
return span;
}
rebuildButton() {
this.plugin.removeButton("__C_scrollToTop");
this.plugin.removeButton("__C_scrollToBottom");
this.plugin.removeButton("__C_scrollToCursor");
this.plugin.createButton();
if (this.plugin.windowSet.size > 0) {
this.plugin.windowSet.forEach((window2) => {
this.plugin.removeButton("__C_scrollToTop", window2);
this.plugin.removeButton("__C_scrollToBottom", window2);
this.plugin.removeButton("__C_scrollToCursor", window2);
this.plugin.createButton(window2);
});
}
}
display() {
const { containerEl } = this;
containerEl.empty();
containerEl.createEl("h2", { text: "Scroll To Top Settings" });
new import_obsidian.Setting(containerEl).setName("Show scroll to top button").setDesc("Show scroll to top button in the right bottom corner.").addToggle((value) => {
value.setValue(this.plugin.settings.enabledScrollToTop).onChange(async (value2) => {
this.plugin.settings.enabledScrollToTop = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Show scroll to bottom button").setDesc("Show scroll to bottom button in the right bottom corner.").addToggle((value) => {
value.setValue(this.plugin.settings.enabledScrollToBottom).onChange(async (value2) => {
this.plugin.settings.enabledScrollToBottom = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Show scroll to cursor button").setDesc("Show scroll to cursor button in the right bottom corner.").addToggle((value) => {
value.setValue(this.plugin.settings.enabledScrollToCursor).onChange(async (value2) => {
this.plugin.settings.enabledScrollToCursor = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Show Tooltip").setDesc("Show tooltip when hover on the button.").addToggle((value) => {
value.setValue(this.plugin.settings.showTooltip).onChange(async (value2) => {
this.plugin.settings.showTooltip = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Scroll on WebView (Beta)").setDesc("Scroll on WebView (Should work with Surfing Plugin).").addToggle((value) => {
value.setValue(this.plugin.settings.enableSurfingPlugin).onChange(async (value2) => {
this.plugin.settings.enableSurfingPlugin = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Resize buttons").setDesc("Change size of buttons.").addSlider((slider) => {
slider.setLimits(0.7, 1.4, 0.1).setValue(this.plugin.settings.resizeButton).setDynamicTooltip().onChange(async (value) => {
this.plugin.settings.resizeButton = value;
await this.plugin.saveSettings();
this.rebuildButton();
});
}).addExtraButton((btn) => {
btn.setIcon("reset").setTooltip("Reset to default").onClick(async () => {
this.plugin.settings.resizeButton = scrollToTopSetting.resizeButton;
await this.plugin.saveSettings();
this.rebuildButton();
this.display();
});
});
new import_obsidian.Setting(containerEl).setName("tooltip config for top button").setDesc("Change tooltip text of scroll to top button.").addText((value) => {
value.setValue(this.plugin.settings.scrollTopTooltipText).onChange(async (value2) => {
this.plugin.settings.scrollTopTooltipText = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("tooltip config for bottom button").setDesc("Change tooltip text of scroll to bottom button.").addText((value) => {
value.setValue(this.plugin.settings.scrollBottomTooltipText).onChange(async (value2) => {
this.plugin.settings.scrollBottomTooltipText = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("tooltip config for cursor button").setDesc("Change tooltip text of scroll to cursor button.").addText((value) => {
value.setValue(this.plugin.settings.scrollCursorTooltipText).onChange(async (value2) => {
this.plugin.settings.scrollCursorTooltipText = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Change icon of scroll to top button").setDesc(this.createSpanWithLinks("Change icon of scroll to top button. You can visit available icons here: ", "https://lucide.dev/", "lucide.dev")).addText((value) => {
value.setValue(this.plugin.settings.iconScrollToTop).onChange(async (value2) => {
this.plugin.settings.iconScrollToTop = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Change icon of scroll to bottom button").setDesc(this.createSpanWithLinks("Change icon of scroll to bottom button. You can visit available icons here: ", "https://lucide.dev/", "lucide.dev")).addText((value) => {
value.setValue(this.plugin.settings.iconScrollToBottom).onChange(async (value2) => {
this.plugin.settings.iconScrollToBottom = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Change icon of scroll to cursor button").setDesc(this.createSpanWithLinks("Change icon of scroll to cursor button. You can visit available icons here: ", "https://lucide.dev/", "lucide.dev")).addText((value) => {
value.setValue(this.plugin.settings.iconScrollToCursor).onChange(async (value2) => {
this.plugin.settings.iconScrollToCursor = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
}
};
// plugins/surfing.ts
var isContainSurfingWebview = (settings) => {
return settings.enableSurfingPlugin && (activeDocument.querySelector(".wb-frame") || activeDocument.querySelector(".wb-page-search-bar"));
};
var injectSurfingComponent = (top = true) => {
const webViewList = activeDocument.querySelectorAll("webview");
const webView = Array.from(webViewList).find((item) => {
var _a;
const workspaceLeafElem = item.parentElement.parentElement.parentElement;
const display = (_a = workspaceLeafElem.style) == null ? void 0 : _a.display;
const modActive = workspaceLeafElem.classList.contains("mod-active");
return display != "none" && modActive;
});
if (webView) {
if (top) {
webView.executeJavaScript(`window.scrollTo(0,0)`);
} else {
webView.executeJavaScript(`window.scrollTo(0,document.body.scrollHeight)`);
}
}
}; };
// main.ts // main.ts
var ROOT_WORKSPACE_CLASS = ".mod-vertical.mod-root"; var ROOT_WORKSPACE_CLASS = ".mod-vertical.mod-root";
var ScrollToTopPlugin = class extends import_obsidian.Plugin { var globalMarkdownView = null;
var ScrollToTopPlugin = class extends import_obsidian2.Plugin {
constructor() { constructor() {
super(...arguments); super(...arguments);
this.windowSet = /* @__PURE__ */ new Set(); this.windowSet = /* @__PURE__ */ new Set();
this.scrollToBottom = async () => {
const markdownView = this.getCurrentViewOfType();
if (markdownView) {
const file = this.app.workspace.getActiveFile();
const content = await this.app.vault.cachedRead(file);
const lines = content.split("\n");
let numberOfLines = lines.length;
if (markdownView.getMode() === "preview") {
while (numberOfLines > 0 && lines[numberOfLines - 1].trim() === "") {
numberOfLines--;
}
}
markdownView.currentMode.applyScroll(numberOfLines - 1);
} else if (isContainSurfingWebview(this.settings)) {
injectSurfingComponent(false);
}
};
} }
addPluginCommand(id, name, callback) { scrollToCursor() {
this.addCommand({ const markdownView = this.getCurrentViewOfType();
id,
name,
callback
});
}
scrollToTop() {
const markdownView = this.app.workspace.getActiveViewOfType(import_obsidian.MarkdownView);
if (markdownView) { if (markdownView) {
const editor = markdownView.editor; const editor = markdownView.editor;
const preview = markdownView.previewMode; const anchor = editor.getCursor("anchor");
editor.scrollTo(0, 0); const head = editor.getCursor("head");
preview && preview.applyScroll(0); setTimeout(async () => {
editor.setSelection(anchor, head);
}, 200);
editor.scrollIntoView({
from: anchor,
to: head
}, true);
this.app.workspace.setActiveLeaf(markdownView.leaf, {
focus: true
});
} else if (isContainSurfingWebview(this.settings)) {
injectSurfingComponent(false);
} }
} }
scrollToBottom() { scrollToTop() {
const markdownView = this.app.workspace.getActiveViewOfType(import_obsidian.MarkdownView); const markdownView = this.getCurrentViewOfType();
if (markdownView) { if (markdownView) {
const editor = markdownView.editor;
const preview = markdownView.previewMode; const preview = markdownView.previewMode;
editor.exec("goEnd"); if (isSource(markdownView)) {
if (preview) { const editor = markdownView.editor;
let timer = setInterval(() => { setTimeout(async () => {
const prevScroll = preview.getScroll(); editor.setCursor(0, 0);
preview.applyScroll(preview.getScroll() + 10); }, 200);
if (prevScroll >= preview.getScroll()) { editor.scrollTo(0, 0);
clearInterval(timer); this.app.workspace.setActiveLeaf(markdownView.leaf, {
} focus: true
}); });
} else {
isPreview(markdownView) && preview.applyScroll(0);
} }
} else if (isContainSurfingWebview(this.settings)) {
injectSurfingComponent(true);
} }
} }
createScrollElement(config, fn) { createScrollElement(config, fn) {
@ -85,38 +282,50 @@ var ScrollToTopPlugin = class extends import_obsidian.Plugin {
let topWidget = createEl("div"); let topWidget = createEl("div");
topWidget.setAttribute("class", `div-${config.className}`); topWidget.setAttribute("class", `div-${config.className}`);
topWidget.setAttribute("id", config.id); topWidget.setAttribute("id", config.id);
let button = new import_obsidian.ButtonComponent(topWidget); document.body.style.setProperty("--size-ratio", this.settings.resizeButton.toString());
let button = new import_obsidian2.ButtonComponent(topWidget);
button.setIcon(config.icon).setClass("buttonItem").onClick(fn); button.setIcon(config.icon).setClass("buttonItem").onClick(fn);
if (config.tooltipConfig.showTooltip) { if (config.tooltipConfig.showTooltip) {
button.setTooltip(config.tooltipConfig.tooltipText); button.setTooltip(config.tooltipConfig.tooltipText);
} }
let curWindow = config.curWindow || window; let curWindow = config.curWindow || window;
const markdownView = this.getCurrentViewOfType();
(_a = curWindow.document.body.querySelector(ROOT_WORKSPACE_CLASS)) == null ? void 0 : _a.insertAdjacentElement("afterbegin", topWidget); (_a = curWindow.document.body.querySelector(ROOT_WORKSPACE_CLASS)) == null ? void 0 : _a.insertAdjacentElement("afterbegin", topWidget);
curWindow.document.addEventListener("click", function(event) { if (!markdownView && !isContainSurfingWebview(this.settings)) {
const activeLeaf = app.workspace.getActiveViewOfType(import_obsidian.MarkdownView); topWidget.style.visibility = "hidden";
if (activeLeaf) { }
topWidget.style.visibility = "visible";
} else {
topWidget.style.visibility = "hidden";
}
});
} }
removeButton(id, curWindow) { removeButton(id, curWindow) {
let curWin = curWindow || window; let curWin = curWindow || window;
const element = curWin.document.getElementById(id); const element = curWin.activeDocument.getElementById(id);
if (element) { if (element) {
element.remove(); element.remove();
} }
} }
getCurrentViewOfType() {
let markdownView = this.app.workspace.getActiveViewOfType(import_obsidian2.MarkdownView);
let currentView = this.app.workspace.getActiveViewOfType(import_obsidian2.View);
if (markdownView !== null) {
globalMarkdownView = markdownView;
} else {
if (currentView == null || currentView.file.extension == "md") {
markdownView = globalMarkdownView;
}
}
return markdownView;
}
createButton(window2) { createButton(window2) {
const { const {
enabledScrollToTop, enabledScrollToTop,
enabledScrollToBottom, enabledScrollToBottom,
enabledScrollToCursor,
iconScrollToTop, iconScrollToTop,
iconScrollToBottom, iconScrollToBottom,
iconScrollToCursor,
showTooltip, showTooltip,
scrollTopTooltipText, scrollTopTooltipText,
scrollBottomTooltipText scrollBottomTooltipText,
scrollCursorTooltipText
} = this.settings; } = this.settings;
if (enabledScrollToTop) { if (enabledScrollToTop) {
this.createScrollElement({ this.createScrollElement({
@ -142,22 +351,68 @@ var ScrollToTopPlugin = class extends import_obsidian.Plugin {
} }
}, this.scrollToBottom.bind(this)); }, this.scrollToBottom.bind(this));
} }
if (enabledScrollToCursor) {
this.createScrollElement({
id: "__C_scrollToCursor",
className: "scrollToCursor",
icon: iconScrollToCursor,
curWindow: window2,
tooltipConfig: {
showTooltip,
tooltipText: scrollCursorTooltipText
}
}, this.scrollToCursor.bind(this));
}
}
toggleIconView() {
let BottomButton = activeDocument.querySelector(".div-scrollToBottom");
let TopButton = activeDocument.querySelector(".div-scrollToTop");
let CursorButton = activeDocument.querySelector(".div-scrollToCursor");
const markdownView = this.getCurrentViewOfType();
if (!markdownView && !isContainSurfingWebview(this.settings)) {
if (BottomButton)
BottomButton.style.visibility = "hidden";
if (TopButton)
TopButton.style.visibility = "hidden";
if (CursorButton)
CursorButton.style.visibility = "hidden";
} else {
if (BottomButton)
BottomButton.style.visibility = "visible";
if (TopButton)
TopButton.style.visibility = "visible";
if (markdownView && isSource(markdownView)) {
if (CursorButton)
CursorButton.style.visibility = "visible";
} else {
if (CursorButton)
CursorButton.style.visibility = "hidden";
}
}
} }
async onload() { async onload() {
await this.loadSettings(); await this.loadSettings();
this.addSettingTab(new ScrollToTopSettingTab(this.app, this)); this.addSettingTab(new ScrollToTopSettingTab(this.app, this));
this.app.workspace.onLayoutReady(() => { this.app.workspace.onLayoutReady(() => {
this.createButton(); this.createButton();
this.registerEvent(this.app.workspace.on("file-open", () => {
this.toggleIconView();
}));
this.registerEvent(this.app.workspace.on("window-open", (win, window2) => {
this.windowSet.add(window2);
this.createButton(window2);
this.toggleIconView();
}));
this.registerEvent(this.app.workspace.on("window-close", (win, window2) => {
this.windowSet.delete(window2);
}));
this.registerEvent(this.app.workspace.on("layout-change", () => {
this.toggleIconView();
}));
}); });
this.addPluginCommand("scroll-to-top", "Scroll to Top", this.scrollToTop.bind(this)); addPluginCommand(this, "scroll-to-top", "Scroll to Top", this.scrollToTop.bind(this));
this.addPluginCommand("scroll-to-bottom", "Scroll to Bottom", this.scrollToBottom.bind(this)); addPluginCommand(this, "scroll-to-bottom", "Scroll to Bottom", this.scrollToBottom.bind(this));
this.app.workspace.on("window-open", (win, window2) => { addPluginCommand(this, "scroll-to-cursor", "Scroll to Cursor", this.scrollToCursor.bind(this));
this.windowSet.add(window2);
this.createButton(window2);
});
this.app.workspace.on("window-close", (win, window2) => {
this.windowSet.delete(window2);
});
setTimeout(() => { setTimeout(() => {
this.app.workspace.trigger("css-change"); this.app.workspace.trigger("css-change");
}, 300); }, 300);
@ -171,92 +426,13 @@ var ScrollToTopPlugin = class extends import_obsidian.Plugin {
onunload() { onunload() {
this.removeButton("__C_scrollToTop"); this.removeButton("__C_scrollToTop");
this.removeButton("__C_scrollToBottom"); this.removeButton("__C_scrollToBottom");
this.removeButton("__C_scrollToCursor");
if (this.windowSet.size > 0) { if (this.windowSet.size > 0) {
this.windowSet.forEach((window2) => { this.windowSet.forEach((window2) => {
this.removeButton("__C_scrollToTop", window2); this.removeButton("__C_scrollToTop", window2);
this.removeButton("__C_scrollToBottom", window2); this.removeButton("__C_scrollToBottom", window2);
this.removeButton("__C_scrollToCursor", window2);
}); });
} }
} }
}; };
var ScrollToTopSettingTab = class extends import_obsidian.PluginSettingTab {
constructor(app2, plugin) {
super(app2, plugin);
this.plugin = plugin;
}
createSpanWithLinks(text, href, linkText) {
const span = document.createElement("span");
span.innerText = text;
const link = document.createElement("a");
link.href = href;
link.innerText = linkText;
span.appendChild(link);
return span;
}
rebuildButton() {
this.plugin.removeButton("__C_scrollToTop");
this.plugin.removeButton("__C_scrollToBottom");
this.plugin.createButton();
if (this.plugin.windowSet.size > 0) {
this.plugin.windowSet.forEach((window2) => {
this.plugin.removeButton("__C_scrollToTop", window2);
this.plugin.removeButton("__C_scrollToBottom", window2);
this.plugin.createButton(window2);
});
}
}
display() {
const { containerEl } = this;
containerEl.empty();
containerEl.createEl("h2", { text: "Scroll To Top Settings" });
new import_obsidian.Setting(containerEl).setName("Show scroll to top button").setDesc("Show scroll to top button in the right bottom corner.").addToggle((value) => {
value.setValue(this.plugin.settings.enabledScrollToTop).onChange(async (value2) => {
this.plugin.settings.enabledScrollToTop = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Show scroll to bottom button").setDesc("Show scroll to bottom button in the right bottom corner.").addToggle((value) => {
value.setValue(this.plugin.settings.enabledScrollToBottom).onChange(async (value2) => {
this.plugin.settings.enabledScrollToBottom = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Show Tooltip").setDesc("Show tooltip when hover on the button.").addToggle((value) => {
value.setValue(this.plugin.settings.showTooltip).onChange(async (value2) => {
this.plugin.settings.showTooltip = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("tooltip config for top button").setDesc("Change tooltip text of scroll to top button.").addText((value) => {
value.setValue(this.plugin.settings.scrollTopTooltipText).onChange(async (value2) => {
this.plugin.settings.scrollTopTooltipText = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("tooltip config for bottom button").setDesc("Change tooltip text of scroll to bottom button.").addText((value) => {
value.setValue(this.plugin.settings.scrollBottomTooltipText).onChange(async (value2) => {
this.plugin.settings.scrollBottomTooltipText = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Change icon of scroll to top button").setDesc(this.createSpanWithLinks("Change icon of scroll to top button. You can visit available icons here: ", "https://lucide.dev/", "lucide.dev")).addText((value) => {
value.setValue(this.plugin.settings.iconScrollToTop).onChange(async (value2) => {
this.plugin.settings.iconScrollToTop = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
new import_obsidian.Setting(containerEl).setName("Change icon of scroll to bottom button").setDesc(this.createSpanWithLinks("Change icon of scroll to bottom button. You can visit available icons here: ", "https://lucide.dev/", "lucide.dev")).addText((value) => {
value.setValue(this.plugin.settings.iconScrollToBottom).onChange(async (value2) => {
this.plugin.settings.iconScrollToBottom = value2;
await this.plugin.saveSettings();
this.rebuildButton();
});
});
}
};

@ -1,7 +1,7 @@
{ {
"id": "obsidian-scroll-to-top-plugin", "id": "obsidian-scroll-to-top-plugin",
"name": "Scroll to Top Plugin", "name": "Scroll to Top Plugin",
"version": "1.5.0", "version": "2.1.2",
"minAppVersion": "0.15.0", "minAppVersion": "0.15.0",
"description": "This is a plugin for Obsidian that adds a button to scroll to the top of the current note.", "description": "This is a plugin for Obsidian that adds a button to scroll to the top of the current note.",
"author": "cloudhao1999", "author": "cloudhao1999",

@ -26,6 +26,18 @@ settings:
type: variable-number type: variable-number
default: 2.05 default: 2.05
format: em format: em
-
id: scroll-to-cursor-bottom
title: Scroll to cursor bottom position placement
type: variable-number
default: 15.05
format: em
-
id: scroll-to-cursor-left
title: Scroll to cursor right position placement
type: variable-number
default: 2.05
format: em
- -
id: scroll-to-top-width id: scroll-to-top-width
title: Scroll to top button width title: Scroll to top button width
@ -50,32 +62,58 @@ settings:
type: variable-number type: variable-number
default: 1.875 default: 1.875
format: em format: em
-
id: scroll-to-cursor-width
title: Scroll to cursor button width
type: variable-number
default: 1.875
format: em
-
id: scroll-to-cursor-height
title: Scroll to cursor button height
type: variable-number
default: 1.875
format: em
*/ */
/* In case not using the style settings plugin */ /* In case not using the style settings plugin */
:root { :root {
--size-ratio: 1;
--scroll-to-cursor-bottom: 15.05em;
--scroll-to-cursor-left: 2.05em;
--scroll-to-bottom-bottom: 2.65em; --scroll-to-bottom-bottom: 2.65em;
--scroll-to-bottom-left: 2.05em; --scroll-to-bottom-left: 2.05em;
--scroll-to-top-bottom: 5.75em; --scroll-to-top-bottom: 5.75em;
--scroll-to-top-left: 2.05em; --scroll-to-top-left: 2.05em;
--scroll-input-width: 1.875em; --scroll-input-width: 1.875em;
--scroll-to-top-width: var(--scroll-input-width); --scroll-to-top-width: var(--scroll-input-width);
--scroll-to-top-height: var(--scroll-input-width); --scroll-to-top-height: var(--scroll-input-width);
--scroll-to-bottom-width: var(--scroll-input-width); --scroll-to-bottom-width: var(--scroll-input-width);
--scroll-to-bottom-height: var(--scroll-input-width); --scroll-to-bottom-height: var(--scroll-input-width);
--scroll-to-cursor-width: var(--scroll-input-width);
--scroll-to-cursor-height: var(--scroll-input-width);
} }
.div-scrollToTop { .div-scrollToTop {
position: absolute; position: absolute;
bottom: var(--scroll-to-top-bottom); bottom: calc(var(--scroll-to-top-bottom) * var(--size-ratio));
right: var(--scroll-to-top-left); right: calc(var(--scroll-to-top-left) * var(--size-ratio));
z-index: 99; z-index: 99;
} }
.div-scrollToBottom { .div-scrollToBottom {
position: absolute; position: absolute;
bottom: var(--scroll-to-bottom-bottom); bottom: calc(var(--scroll-to-bottom-bottom) * var(--size-ratio));
right: var(--scroll-to-bottom-left); right: calc(var(--scroll-to-bottom-left) * var(--size-ratio));
z-index: 99;
}
.div-scrollToCursor {
position: absolute;
bottom: calc(var(--scroll-to-cursor-bottom) * var(--size-ratio));
right: calc(var(--scroll-to-cursor-left) * var(--size-ratio));
z-index: 99; z-index: 99;
} }
@ -102,8 +140,8 @@ settings:
margin-left: 3px; margin-left: 3px;
margin-right: 3px; margin-right: 3px;
border-radius: 3px; border-radius: 3px;
width: var(--scroll-to-top-width); width: calc(var(--scroll-to-top-width) * var(--size-ratio));
height: var(--scroll-to-top-height); height: calc(var(--scroll-to-top-height) * var(--size-ratio));
font-size: initial !important; font-size: initial !important;
background-color: var(--background-primary-alt); background-color: var(--background-primary-alt);
} }
@ -134,8 +172,38 @@ settings:
box-shadow: none; box-shadow: none;
margin-left: 3px; margin-left: 3px;
margin-right: 3px; margin-right: 3px;
width: var(--scroll-to-bottom-width); width: calc(var(--scroll-to-bottom-width) * var(--size-ratio));
height: var(--scroll-to-bottom-height); height: calc(var(--scroll-to-bottom-height) * var(--size-ratio));
border-radius: 3px;
font-size: initial !important;
background-color: var(--background-primary-alt);
}
#__C_scrollToCursor {
width: auto;
height: auto;
padding: 3px;
display: grid;
user-select: none;
border-radius: 6px;
transition: 200ms ease;
min-width: fit-content;
justify-content: space-around;
z-index: var(--layer-status-bar);
box-shadow: 0px 3px 32px rgb(31 38 135 / 15%);
border: 1px solid var(--background-modifier-border);
}
#__C_scrollToCursor .buttonItem {
margin: 2px;
border: none;
cursor: pointer;
padding: 5px 6px;
box-shadow: none;
margin-left: 3px;
margin-right: 3px;
width: calc(var(--scroll-to-cursor-width) * var(--size-ratio));
height: calc(var(--scroll-to-cursor-height) * var(--size-ratio));
border-radius: 3px; border-radius: 3px;
font-size: initial !important; font-size: initial !important;
background-color: var(--background-primary-alt); background-color: var(--background-primary-alt);

File diff suppressed because one or more lines are too long

@ -1,7 +1,7 @@
{ {
"id": "obsidian-tasks-plugin", "id": "obsidian-tasks-plugin",
"name": "Tasks", "name": "Tasks",
"version": "4.0.0", "version": "4.4.0",
"minAppVersion": "1.1.1", "minAppVersion": "1.1.1",
"description": "Task management for Obsidian", "description": "Task management for Obsidian",
"author": "Martin Schenck and Clare Macrae", "author": "Martin Schenck and Clare Macrae",

@ -83,6 +83,11 @@
white-space: nowrap; white-space: nowrap;
} }
/* Hide tags that Obsidian recognises, if `hide tags` instruction was used. */
.tasks-layout-hide-tags .task-description a.tag {
display: none;
}
.tasks-setting-important { .tasks-setting-important {
color: red; color: red;
font-weight: bold; font-weight: bold;

@ -1,7 +1,7 @@
/* /*
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
if you want to view the source, please visit the github repository of this plugin if you want to view the source, please visit the github repository of this plugin
https://github.com/joethei/obsidian-rss https://github.com/joethei/obsidian-tts
*/ */
var __create = Object.create; var __create = Object.create;
@ -895,6 +895,8 @@ var TTSServiceImplementation = class {
} }
if (!this.plugin.settings.speakLinks) { if (!this.plugin.settings.speakLinks) {
content = content.replace(/(?:__|[*#])|\[(.*?)]\(.*?\)/gm, "$1"); content = content.replace(/(?:__|[*#])|\[(.*?)]\(.*?\)/gm, "$1");
content = content.replace(/http[s]:\/\/[^\s]*/gm, "");
console.log(content);
} }
if (!this.plugin.settings.speakCodeblocks) { if (!this.plugin.settings.speakCodeblocks) {
content = content.replace(/```[\s\S]*?```/g, ""); content = content.replace(/```[\s\S]*?```/g, "");
@ -944,12 +946,8 @@ var TTSServiceImplementation = class {
play(view) { play(view) {
return __async(this, null, function* () { return __async(this, null, function* () {
const isPreview = view.getMode() === "preview"; const isPreview = view.getMode() === "preview";
const previewText = view.previewMode.containerEl.innerText;
const selectedText = view.editor.getSelection().length > 0 ? view.editor.getSelection() : window.getSelection().toString(); const selectedText = view.editor.getSelection().length > 0 ? view.editor.getSelection() : window.getSelection().toString();
let content = selectedText.length > 0 ? selectedText : view.getViewData(); let content = selectedText.length > 0 ? selectedText : view.getViewData();
if (isPreview) {
content = previewText;
}
const title = selectedText.length > 0 ? null : view.getDisplayText(); const title = selectedText.length > 0 ? null : view.getDisplayText();
let language = this.getLanguageFromFrontmatter(view); let language = this.getLanguageFromFrontmatter(view);
if (language === "") { if (language === "") {
@ -1036,6 +1034,25 @@ var TTSPlugin = class extends import_obsidian5.Plugin {
return this.ttsService.isPaused(); return this.ttsService.isPaused();
} }
}); });
this.addCommand({
id: "start-pause-resume-tts-playback",
name: "Start/Pause/Resume playback",
checkCallback: (checking) => {
const markdownView = this.app.workspace.getActiveViewOfType(import_obsidian5.MarkdownView);
if (!checking) {
if (markdownView) {
if (this.ttsService.isSpeaking() && !this.ttsService.isPaused()) {
this.ttsService.pause();
} else if (this.ttsService.isPaused()) {
this.ttsService.resume();
} else {
this.ttsService.play(markdownView);
}
}
}
return !!markdownView;
}
});
this.registerInterval(window.setInterval(() => { this.registerInterval(window.setInterval(() => {
if (!this.ttsService.isSpeaking()) { if (!this.ttsService.isSpeaking()) {
this.statusbar.setText("TTS"); this.statusbar.setText("TTS");

@ -1,7 +1,7 @@
{ {
"id": "obsidian-tts", "id": "obsidian-tts",
"name": "Text to Speech", "name": "Text to Speech",
"version": "0.5.1", "version": "0.5.2",
"minAppVersion": "0.12.0", "minAppVersion": "0.12.0",
"description": "Text to speech for Obsidian. Hear your notes.", "description": "Text to speech for Obsidian. Hear your notes.",
"author": "Johannes Theiner", "author": "Johannes Theiner",

@ -48,7 +48,7 @@
"devMode": false, "devMode": false,
"templateFolderPath": "00.01 Admin/Templates", "templateFolderPath": "00.01 Admin/Templates",
"announceUpdates": true, "announceUpdates": true,
"version": "1.1.0", "version": "1.2.1",
"disableOnlineFeatures": true, "disableOnlineFeatures": true,
"ai": { "ai": {
"OpenAIApiKey": "", "OpenAIApiKey": "",

File diff suppressed because it is too large Load Diff

@ -1,7 +1,7 @@
{ {
"id": "quickadd", "id": "quickadd",
"name": "QuickAdd", "name": "QuickAdd",
"version": "1.1.0", "version": "1.2.1",
"minAppVersion": "0.13.19", "minAppVersion": "0.13.19",
"description": "Quickly add new pages or content to your vault.", "description": "Quickly add new pages or content to your vault.",
"author": "Christian B. B. Houmann", "author": "Christian B. B. Houmann",

File diff suppressed because one or more lines are too long

@ -6,7 +6,12 @@
"description": "Improved table navigation, formatting, manipulation, and formulas", "description": "Improved table navigation, formatting, manipulation, and formulas",
"isDesktopOnly": false, "isDesktopOnly": false,
"minAppVersion": "1.0.0", "minAppVersion": "1.0.0",
"version": "0.18.1", "version": "0.19.1",
"js": "main.js", "js": "main.js",
"fundingUrl": {
"Github Sponsor": "https://github.com/sponsors/tgrosinger",
"Buy me a Coffee": "https://buymeacoffee.com/tgrosinger",
"Paypal": "https://paypal.me/tgrosinger"
},
"donation": "https://buymeacoffee.com/tgrosinger" "donation": "https://buymeacoffee.com/tgrosinger"
} }

@ -1,6 +1,6 @@
{ {
"name": "AnuPpuccin", "name": "AnuPpuccin",
"version": "1.4.2", "version": "1.4.4",
"minAppVersion": "0.16.0", "minAppVersion": "0.16.0",
"author": "Anubis", "author": "Anubis",
"authorUrl": "https://github.com/AnubisNekhet" "authorUrl": "https://github.com/AnubisNekhet"

@ -370,6 +370,9 @@ settings:
- -
label: Highlight + Border label: Highlight + Border
value: anp-current-line-border value: anp-current-line-border
-
label: Border Only
value: anp-current-line-border-only
# File Editor & Markdown Elements :: Callouts # File Editor & Markdown Elements :: Callouts
- -
@ -557,6 +560,70 @@ settings:
type: variable-number type: variable-number
default: 0.075 default: 0.075
format: em format: em
-
id: list-marker-color
title: Unordered list bullet color
type: variable-themed-color
default-light: '#'
default-dark: '#'
format: 'hex'
-
id: list-numbered-style
title: Ordered list style
type: variable-select
default: decimal
options:
-
label: "Decimal"
value: decimal
-
label: "Decimal with leading zeroes"
value: decimal-leading-zero
-
label: "Lowercase alphabetical"
value: lower-alpha
-
label: "Uppercase alphabetical"
value: upper-alpha
-
label: "Lowercase Roman Numerals"
value: lower-roman
-
label: "Uppercase Roman Numerals"
value: upper-roman
-
label: "Lowercase Latin"
value: lower-latin
-
label: "Uppercase Latin"
value: upper-latin
-
label: "Lowercase Greek"
value: lower-greek
-
label: "Uppercase Greek"
value: upper-greek
-
label: "Hiragana"
value: hiragana
-
label: "Hiragana Iroha"
value: hiragana-iroha
-
label: "Katakana"
value: armenian
-
label: "Katakana Iroha"
value: katakana-iroha
-
label: "Armenian"
value: armenian
-
label: "CJK Ideographic"
value: cjk-ideographic
-
label: "Hebrew"
value: hebrew
# File Editor & Markdown Elements :: Tables # File Editor & Markdown Elements :: Tables
@ -582,7 +649,7 @@ settings:
description: Use anp-table-auto for yaml syntax description: Use anp-table-auto for yaml syntax
type: class-toggle type: class-toggle
- -
id: anp-th-highlight id: anp-table-th-highlight
title: <th> Highlight title: <th> Highlight
type: class-toggle type: class-toggle
- -
@ -594,19 +661,19 @@ settings:
options: options:
- -
label: None label: None
value: anp-td-none value: none
- -
label: Alternate Rows label: Alternate Rows
value: anp-td-alt-rows value: anp-table-row-alt
- -
label: Alternate Columns label: Alternate Columns
value: anp-td-alt-cols value: anp-table-col-alt
- -
label: Checkered label: Checkered
value: anp-td-checkered value: anp-table-checkered
- -
label: Full label: Full
value: anp-td-full value: anp-table-full
- -
id: anp-table-highlight-opacity id: anp-table-highlight-opacity
title: Highlight Opacity title: Highlight Opacity
@ -1172,7 +1239,7 @@ settings:
min: 0 min: 0
max: 30 max: 30
step: 2 step: 2
default: 20 default: 15
format: px format: px
# Typography :: Headings :: H1 # Typography :: Headings :: H1
@ -1869,7 +1936,7 @@ settings:
- -
id: anp-custom-background-header id: anp-custom-background-header
title: Background title: Background
description: Custom workspace bacgkrounds description: Custom workspace backgrounds
type: heading type: heading
level: 2 level: 2
collapsed: true collapsed: true
@ -2041,6 +2108,26 @@ settings:
label: Left label: Left
value: 0 value: 0
# Workspace :: PDF Viewer
-
id: anp-pdf-viewer-header
title: PDF Viewer
description:
type: heading
level: 2
collapsed: true
-
id: anp-pdf-blend-toggle-dark
title: Toggle PDF background blending - Dark Mode
desc: Blends PDF viewer background with obsidian background in dark mode
type: class-toggle
-
id: anp-pdf-blend-toggle-light
title: Toggle PDF background blending - Light Mode
desc: Blends PDF viewer background with obsidian background in light mode
type: class-toggle
# Workspace :: Rainbow Folders # Workspace :: Rainbow Folders
- -
@ -3095,7 +3182,7 @@ body {
--anp-rainbow-folder-collapse-border-custom: #00000044; --anp-rainbow-folder-collapse-border-custom: #00000044;
--anp-preview-width-pct: 95%; --anp-preview-width-pct: 95%;
--anp-preview-width-max: 800px; --anp-preview-width-max: 800px;
--anp-header-margin-value: 10px; --anp-header-margin-value: 15px;
--anp-header-font: "Noto Serif"; --anp-header-font: "Noto Serif";
--tab-stacked-pane-width: calc(var(--anp-tab-stacked-pane-width, 1)*var(--file-line-width)); --tab-stacked-pane-width: calc(var(--anp-tab-stacked-pane-width, 1)*var(--file-line-width));
--anp-table-width-pct: 100%; --anp-table-width-pct: 100%;
@ -3109,6 +3196,11 @@ body {
--callout-title-padding: var(--size-4-2); --callout-title-padding: var(--size-4-2);
--callout-content-padding: var(--size-4-2); --callout-content-padding: var(--size-4-2);
--background-modifier-active: hsla(var(--color-accent-hsl), 0.1); --background-modifier-active: hsla(var(--color-accent-hsl), 0.1);
--pdf-background: var(--background-primary);
--pdf-dark-opacity: 1;
--pdf-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15), 0 2px 8px transparent;
--pdf-sidebar-background: var(--background-primary);
--pdf-thumbnail-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15), 0 2px 8px transparent;
} }
body.theme-light { body.theme-light {
--anp-background-image: var(--anp-background-image-light); --anp-background-image: var(--anp-background-image-light);
@ -3134,6 +3226,19 @@ body.theme-dark {
background-color: rgba(var(--ctp-surface1), 0.4); background-color: rgba(var(--ctp-surface1), 0.4);
} }
.anp-current-line-border-only .markdown-source-view .cm-active.cm-line::before {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: -1.5rem;
width: 2px;
background-color: rgba(var(--interactive-accent-rgb), 0.3);
}
.anp-current-line-border-only .markdown-source-view .cm-focused .cm-active.cm-line::before {
background-color: var(--interactive-accent);
}
/*-Custom editor font-*/ /*-Custom editor font-*/
.markdown-source-view:not(.is-live-preview) { .markdown-source-view:not(.is-live-preview) {
--font-text: var(--anp-editor-font-source, var(--font-text-override)), var(--font-text-theme), var(--font-interface); --font-text: var(--anp-editor-font-source, var(--font-text-override)), var(--font-text-theme), var(--font-interface);
@ -3195,42 +3300,6 @@ body.theme-dark {
font-family: var(--font-monospace); font-family: var(--font-monospace);
} }
/*-LaTeX color implementation-*/
/* Syntax highlighting */
.cm-math.token.comment, .cm-math.token.prolog, .cm-math.token.doctype, .cm-math.token.cdata, .cm-math.cm-comment, .cm-math.cm-meta {
color: var(--code-comment);
}
.cm-math.token.namespace {
opacity: 0.7;
}
.cm-math.token.tag, .cm-math.token.constant, .cm-math.token.symbol, .cm-math.token.deleted, .cm-math.cm-tag {
color: var(--code-tag);
}
.cm-math.token.punctuation, .cm-math.cm-punctuation, .cm-math.cm-bracket, .cm-math.cm-hr {
color: var(--code-punctuation);
}
.cm-math.token.boolean, .cm-math.token.number, .cm-math.cm-number {
color: var(--code-value);
}
.cm-math.token.selector, .cm-math.token.attr-name, .cm-math.token.string, .cm-math.token.char, .cm-math.token.inserted, .cm-math.cm-qualifier, .cm-math.cm-string, .cm-math.cm-string-2 {
color: var(--code-string);
}
.cm-math.token.operator, .cm-math.cm-operator {
color: var(--code-operator);
}
.cm-math.token.entity, .cm-math.token.parameter, .cm-math.token.property, .cm-math.token.url, .cm-math.language-css .token.string, .cm-math.style .token.string, .cm-math.token.variable, .cm-math.cm-link, .cm-math.cm-variable, .cm-math.cm-variable-2, .cm-math.cm-variable-3 {
color: var(--code-property);
}
.cm-math.token.atrule, .cm-math.token.attr-value, .cm-math.token.builtin, .cm-math.token.function, .cm-math.token.class-name, .cm-math.token.property-access, .cm-math.cm-builtin, .cm-math.cm-property, .cm-math.cm-attribute, .cm-math.cm-type {
color: var(--code-function);
}
.cm-math.token.keyword, .cm-math.cm-keyword {
color: var(--code-keyword);
}
.cm-math.token.regex, .cm-math.token.important {
color: var(--code-important);
}
.workspace-tab-header, .workspace-tab-header,
.clickable-icon, .clickable-icon,
.dropdown, .dropdown,
@ -3421,6 +3490,33 @@ input.slider,
color: rgb(var(--ctp-text)); color: rgb(var(--ctp-text));
} }
} }
.theme-dark.anp-pdf-blend-toggle-dark,
.theme-light.anp-pdf-blend-toggle-light {
--pdf-background: var(--background-secondary);
--pdf-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 8px transparent;
--pdf-thumbnail-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 8px transparent;
}
.theme-dark.anp-pdf-blend-toggle-dark .pdf-viewer .canvasWrapper,
.theme-dark.anp-pdf-blend-toggle-dark .pdf-thumbnail-view .thumbnailImage,
.theme-light.anp-pdf-blend-toggle-light .pdf-viewer .canvasWrapper,
.theme-light.anp-pdf-blend-toggle-light .pdf-thumbnail-view .thumbnailImage {
filter: invert(1) hue-rotate(180deg);
mix-blend-mode: screen;
}
.theme-dark.anp-pdf-blend-toggle-dark .pdf-viewer,
.theme-light.anp-pdf-blend-toggle-light .pdf-viewer {
background-color: var(--pdf-background);
}
.theme-dark.anp-pdf-blend-toggle-dark .pdf-viewer .page,
.theme-light.anp-pdf-blend-toggle-light .pdf-viewer .page {
background-color: var(--background-primary);
border-color: var(--pdf-background);
}
.textLayer ::selection {
background: var(--color-accent);
}
.canvas-card-menu { .canvas-card-menu {
box-shadow: none; box-shadow: none;
border: 1px solid var(--background-modifier-border); border: 1px solid var(--background-modifier-border);
@ -3661,7 +3757,9 @@ body.is-translucent {
.anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header { .anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header {
margin-top: calc(var(--title-bar-translate-y) * -1); margin-top: calc(var(--title-bar-translate-y) * -1);
position: relative; position: relative;
transition: transform var(--title-bar-duration) var(--title-bar-delay), margin-right 0s calc(var(--title-bar-duration) + var(--title-bar-delay)), padding 0s calc(var(--title-bar-duration) + var(--title-bar-delay)); transition: transform var(--title-bar-duration) var(--title-bar-delay), margin-right 0s calc(var(--title-bar-duration) + var(--title-bar-delay)), margin-right 0s calc(var(--title-bar-duration) + var(--title-bar-delay)), margin-left 0s calc(var(--title-bar-duration) + var(--title-bar-delay)), padding 0s calc(var(--title-bar-duration) + var(--title-bar-delay));
margin-left: 80px;
margin-right: 80px;
} }
.anp-autohide-titlebar:not(.is-mobile):not(.mod-macos) .workspace-tabs:is(.mod-top-right-space, .mod-top-left-space) .workspace-leaf-content .view-header { .anp-autohide-titlebar:not(.is-mobile):not(.mod-macos) .workspace-tabs:is(.mod-top-right-space, .mod-top-left-space) .workspace-leaf-content .view-header {
margin-right: calc(var(--title-bar-windows-fix) * var(--frame-right-space)); margin-right: calc(var(--title-bar-windows-fix) * var(--frame-right-space));
@ -3679,21 +3777,26 @@ body.is-translucent {
.anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header::before { .anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header::before {
bottom: calc(var(--title-bar-target-translate-y) * -1); bottom: calc(var(--title-bar-target-translate-y) * -1);
content: ""; content: "";
left: 0; left: -80px;
position: absolute; position: absolute;
top: 0; top: 0;
transition: transform var(--title-bar-duration) var(--title-bar-delay); transition: transform var(--title-bar-duration) var(--title-bar-delay);
width: 100%; width: calc(100% + 160px);
} }
.anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-content { .anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-content {
transition: transform var(--title-bar-duration) var(--title-bar-delay); transition: transform var(--title-bar-duration) var(--title-bar-delay);
} }
.anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header:is(:hover, :focus-within)::before { .anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header:is(:hover, :focus-within)::before {
transform: translateY(var(--title-bar-target-translate-y)); transform: translateY(var(--title-bar-target-translate-y));
left: 0px;
width: 100%;
} }
.anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header:is(:hover, :focus-within), .anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header:is(:hover, :focus-within),
.anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header:is(:hover, :focus-within) + .view-content { .anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header:is(:hover, :focus-within) + .view-content {
transition: transform var(--title-bar-duration) var(--title-bar-delay), margin-right 0s, margin-left 0s, padding 0s calc(var(--title-bar-duration) + var(--title-bar-delay));
transform: translateY(var(--title-bar-translate-y)); transform: translateY(var(--title-bar-translate-y));
margin-left: 0;
margin-right: 0;
} }
.anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header:not(:hover, :focus-within) .clickable-icon { .anp-autohide-titlebar:not(.is-mobile) .workspace-leaf-content .view-header:not(:hover, :focus-within) .clickable-icon {
app-region: drag; app-region: drag;
@ -3973,6 +4076,9 @@ body.anp-card-layout {
body.anp-card-layout.anp-hide-borders { body.anp-card-layout.anp-hide-borders {
--tab-outline-color: transparent; --tab-outline-color: transparent;
} }
body.anp-card-layout.anp-hide-borders .menu {
border: 0px !important;
}
body.anp-card-layout .sidebar-toggle-button, body.anp-card-layout .workspace-tabs.mod-top { body.anp-card-layout .sidebar-toggle-button, body.anp-card-layout .workspace-tabs.mod-top {
--tab-container-background: var(--card-background-color); --tab-container-background: var(--card-background-color);
} }
@ -4110,7 +4216,7 @@ body.anp-border-layout .workspace {
body.anp-border-layout .workspace:not(.is-left-sidedock-open) .workspace-split.mod-vertical .workspace-tabs .workspace-tab-container { body.anp-border-layout .workspace:not(.is-left-sidedock-open) .workspace-split.mod-vertical .workspace-tabs .workspace-tab-container {
border-left: var(--border-border-style); border-left: var(--border-border-style);
} }
body.anp-border-layout .workspace:not(.is-left-sidedock-open) .workspace-split.mod-vertical .workspace-tabs.mod-top .workspace-tab-container { body.anp-border-layout .workspace:not(.is-left-sidedock-open) .workspace-split.mod-vertical .workspace-tabs.mod-top-left-space .workspace-tab-container {
border-top-left-radius: var(--anp-border-radius, var(--radius-xl)); border-top-left-radius: var(--anp-border-radius, var(--radius-xl));
} }
body.anp-border-layout .workspace:not(.is-left-sidedock-open) .workspace-split.mod-vertical .workspace-tabs:last-child .workspace-tab-container { body.anp-border-layout .workspace:not(.is-left-sidedock-open) .workspace-split.mod-vertical .workspace-tabs:last-child .workspace-tab-container {
@ -4218,6 +4324,9 @@ body.anp-border-layout .workspace-ribbon.mod-left:before {
body.anp-border-layout .workspace-ribbon.mod-left, body.anp-border-layout .workspace-ribbon.mod-left.is-focused { body.anp-border-layout .workspace-ribbon.mod-left, body.anp-border-layout .workspace-ribbon.mod-left.is-focused {
border-right-color: var(--card-background-color); border-right-color: var(--card-background-color);
} }
body.anp-border-layout.is-popout-window .workspace {
margin-left: var(--anp-border-padding, 20px);
}
.anp-bg-fix .workspace, .anp-bg-fix .workspace,
.anp-bg-fix .app-container, .anp-bg-fix .app-container,
@ -4507,14 +4616,6 @@ Support me: https://buymeacoffee.com/AnubisNekhet
--text-highlight-bg: rgba(var(--anp-highlight-color, var(--ctp-yellow)), 0.2); --text-highlight-bg: rgba(var(--anp-highlight-color, var(--ctp-yellow)), 0.2);
} }
/*-Make it so that mark overwrites italic and bold colors-*/
.markdown-rendered mark {
--italic-color: rgb(var(--ctp-text));
--bold-color: rgb(var(--ctp-text));
border-radius: 4px;
padding: 2px;
}
.markdown-rendered .internal-link { .markdown-rendered .internal-link {
text-decoration-line: none; text-decoration-line: none;
} }
@ -4526,6 +4627,12 @@ Support me: https://buymeacoffee.com/AnubisNekhet
color: var(--text-normal); color: var(--text-normal);
} }
.cm-hmd-internal-link {
--link-decoration: none;
--link-decoration-hover: none;
--link-decoration-active: none;
}
.external-link, .external-link,
.external-link:hover { .external-link:hover {
background-image: none; background-image: none;
@ -5009,11 +5116,40 @@ sup[data-footnote-id] {
color: var(--h6-color); color: var(--h6-color);
} }
.anp-header-toggle.anp-header-margin-toggle :is(h1, h2, h3, h4, h5, h6) { .anp-header-margin-toggle .cm-header-1, .anp-header-margin-toggle .markdown-preview-view h1 {
margin-block-start: var(--anp-header-margin-value); margin-block-start: var(--anp-header-margin-value);
margin-block-end: var(--anp-header-margin-value); margin-block-end: var(--anp-header-margin-value);
} }
.anp-header-margin-toggle .cm-header-2, .anp-header-margin-toggle .markdown-preview-view h2 {
margin-block-start: var(--anp-header-margin-value);
margin-block-end: var(--anp-header-margin-value);
}
.anp-header-margin-toggle .cm-header-3, .anp-header-margin-toggle .markdown-preview-view h3 {
margin-block-start: var(--anp-header-margin-value);
margin-block-end: var(--anp-header-margin-value);
}
.anp-header-margin-toggle .cm-header-4, .anp-header-margin-toggle .markdown-preview-view h4 {
margin-block-start: var(--anp-header-margin-value);
margin-block-end: var(--anp-header-margin-value);
}
.anp-header-margin-toggle .cm-header-5, .anp-header-margin-toggle .markdown-preview-view h5 {
margin-block-start: var(--anp-header-margin-value);
margin-block-end: var(--anp-header-margin-value);
}
.anp-header-margin-toggle .cm-header-6, .anp-header-margin-toggle .markdown-preview-view h6 {
margin-block-start: var(--anp-header-margin-value);
margin-block-end: var(--anp-header-margin-value);
}
.cm-header {
display: inline-block;
}
.anp-editor-font-toggle .markdown-source-view:not(.is-live-preview) { .anp-editor-font-toggle .markdown-source-view:not(.is-live-preview) {
--h1-font: var(--anp-editor-font); --h1-font: var(--anp-editor-font);
--h2-font: var(--anp-editor-font); --h2-font: var(--anp-editor-font);
@ -5030,20 +5166,20 @@ hr {
} }
.anp-list-toggle div.el-ul > ul.has-list-bullet > li > ul.has-list-bullet > li > .list-bullet::after { .anp-list-toggle div.el-ul > ul.has-list-bullet > li > ul.has-list-bullet > li > .list-bullet::after {
border: 1px solid var(--list-marker-color); --list-bullet-border: 1px solid var(--list-marker-color);
background-color: transparent; background-color: transparent;
width: calc(var(--list-bullet-size) - 1px); width: calc(var(--list-bullet-size) - 1px);
height: calc(var(--list-bullet-size) - 1px); height: calc(var(--list-bullet-size) - 1px);
} }
.anp-list-toggle div.el-ul > ul.has-list-bullet > li > ul.has-list-bullet > li > ul.has-list-bullet > li > .list-bullet::after { .anp-list-toggle div.el-ul > ul.has-list-bullet > li > ul.has-list-bullet > li > ul.has-list-bullet > li > .list-bullet::after {
border-radius: 0; --list-bullet-radius: 0;
background-color: var(--list-marker-color); background-color: var(--list-marker-color);
} }
.anp-list-toggle div.el-ul > ul.has-list-bullet > li > ul.has-list-bullet > li > ul.has-list-bullet > li > ul.has-list-bullet > li > .list-bullet::after { .anp-list-toggle div.el-ul > ul.has-list-bullet > li > ul.has-list-bullet > li > ul.has-list-bullet > li > ul.has-list-bullet > li > .list-bullet::after {
width: calc(var(--list-bullet-size) - 1px); width: calc(var(--list-bullet-size) - 1px);
height: calc(var(--list-bullet-size) - 1px); height: calc(var(--list-bullet-size) - 1px);
border-radius: 0; --list-bullet-radius: 0;
border: 1px solid var(--list-marker-color); --list-bullet-border: 1px solid var(--list-marker-color);
background-color: transparent; background-color: transparent;
} }
@ -5058,12 +5194,18 @@ hr {
.anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th:first-child, .anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th:first-child,
.anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th, .anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th,
.anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th:last-child, .anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th:last-child,
.anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) .anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table, .anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview),
.anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) .anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table td, .anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) td,
.anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) .anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table th, .anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) th,
.anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) .anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th:first-child, .anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) thead tr > th:first-child,
.anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) .anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th, .anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) thead tr > th,
.anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) .anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th:last-child, .anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) thead tr > th:last-child,
.anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table,
.anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table td,
.anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table th,
.anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th:first-child,
.anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th,
.anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th:last-child,
.anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview), .anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview),
.anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) td, .anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) td,
.anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) th, .anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) th,
@ -5076,10 +5218,14 @@ hr {
.anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th:first-child:not([align]), .anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th:first-child:not([align]),
.anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th:not([align]), .anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th:not([align]),
.anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th:last-child:not([align]), .anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table thead tr > th:last-child:not([align]),
.anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) .anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table th:not([align]), .anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) th:not([align]),
.anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) .anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th:first-child:not([align]), .anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) thead tr > th:first-child:not([align]),
.anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) .anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th:not([align]), .anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) thead tr > th:not([align]),
.anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) .anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th:last-child:not([align]), .anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) thead tr > th:last-child:not([align]),
.anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table th:not([align]),
.anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th:first-child:not([align]),
.anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th:not([align]),
.anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table thead tr > th:last-child:not([align]),
.anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) th:not([align]), .anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) th:not([align]),
.anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) thead tr > th:first-child:not([align]), .anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) thead tr > th:first-child:not([align]),
.anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) thead tr > th:not([align]), .anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) thead tr > th:not([align]),
@ -5087,7 +5233,8 @@ hr {
text-align: var(--anp-table-align-th, center); text-align: var(--anp-table-align-th, center);
} }
.anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table td:not([align]), .anp-table-toggle .markdown-preview-view:not(.cards):not(.table-disable) table td:not([align]),
.anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) .anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table td:not([align]), .anp-table-toggle .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) td:not([align]),
.anp-table-toggle .is-live-preview:not(.cards):not(.table-disable) table td:not([align]),
.anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) td:not([align]) { .anp-table-toggle .is-live-preview.cards:not(.table-disable) table:not(.dataview) td:not([align]) {
text-align: var(--anp-table-align-td, center); text-align: var(--anp-table-align-td, center);
} }
@ -5096,28 +5243,77 @@ table.dataview.table-view-table > tbody > tr:hover {
background-color: rgba(var(--ctp-surface1), 0.1) !important; background-color: rgba(var(--ctp-surface1), 0.1) !important;
} }
.anp-table-toggle.anp-th-highlight .markdown-preview-view:not(.cards):not(.table-disable) th, .anp-table-toggle.anp-th-highlight .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) th, .anp-table-toggle.anp-th-highlight .is-live-preview:not(.cards):not(.table-disable) th, .anp-table-toggle.anp-th-highlight .is-live-preview.cards:not(.table-disable) table:not(.dataview) th { .anp-table-toggle.anp-table-th-highlight .markdown-preview-view:not(.cards):not(.table-disable) th,
.anp-table-toggle.anp-table-th-highlight .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) th,
.anp-table-toggle.anp-table-th-highlight .is-live-preview:not(.cards):not(.table-disable) th,
.anp-table-toggle.anp-table-th-highlight .is-live-preview.cards:not(.table-disable) table:not(.dataview) th {
background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5)); background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5));
} }
.anp-table-toggle.anp-td-alt-rows .markdown-preview-view:not(.cards):not(.table-disable) table tr:nth-child(2n) td, .anp-table-toggle.anp-td-alt-rows .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td, .anp-table-toggle.anp-td-alt-rows .is-live-preview:not(.cards):not(.table-disable) table tr:nth-child(2n) td, .anp-table-toggle.anp-td-alt-rows .is-live-preview.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td {
.th-highlight.markdown-preview-view:not(.cards):not(.table-disable) th, .th-highlight.markdown-preview-view.cards:not(.table-disable) table:not(.dataview) th, .th-highlight.is-live-preview:not(.cards):not(.table-disable) th, .th-highlight.is-live-preview.cards:not(.table-disable) table:not(.dataview) th {
background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5));
}
.anp-table-toggle.anp-table-row-alt .markdown-preview-view:not(.cards):not(.table-disable) tr:nth-child(2n) td,
.anp-table-toggle.anp-table-row-alt .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td,
.anp-table-toggle.anp-table-row-alt .is-live-preview:not(.cards):not(.table-disable) tr:nth-child(2n) td,
.anp-table-toggle.anp-table-row-alt .is-live-preview.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td {
background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5));
}
.row-alt.markdown-preview-view:not(.cards):not(.table-disable) tr:nth-child(2n) td, .row-alt.markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td, .row-alt.is-live-preview:not(.cards):not(.table-disable) tr:nth-child(2n) td, .row-alt.is-live-preview.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td {
background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5));
}
.anp-table-toggle.anp-table-col-alt .markdown-preview-view:not(.cards):not(.table-disable) tr td:nth-child(2n),
.anp-table-toggle.anp-table-col-alt .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n),
.anp-table-toggle.anp-table-col-alt .is-live-preview:not(.cards):not(.table-disable) tr td:nth-child(2n),
.anp-table-toggle.anp-table-col-alt .is-live-preview.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n) {
background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5));
}
.col-alt.markdown-preview-view:not(.cards):not(.table-disable) tr td:nth-child(2n), .col-alt.markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n), .col-alt.is-live-preview:not(.cards):not(.table-disable) tr td:nth-child(2n), .col-alt.is-live-preview.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n) {
background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5));
}
.anp-table-toggle.anp-table-full .markdown-preview-view:not(.cards):not(.table-disable) td,
.anp-table-toggle.anp-table-full .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) td,
.anp-table-toggle.anp-table-full .is-live-preview:not(.cards):not(.table-disable) td,
.anp-table-toggle.anp-table-full .is-live-preview.cards:not(.table-disable) table:not(.dataview) td {
background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5)); background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5));
} }
.anp-table-toggle.anp-td-alt-cols .markdown-preview-view:not(.cards):not(.table-disable) table tr td:nth-child(2n), .anp-table-toggle.anp-td-alt-cols .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n), .anp-table-toggle.anp-td-alt-cols .is-live-preview:not(.cards):not(.table-disable) table tr td:nth-child(2n), .anp-table-toggle.anp-td-alt-cols .is-live-preview.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n) {
.table-full.markdown-preview-view:not(.cards):not(.table-disable) td, .table-full.markdown-preview-view.cards:not(.table-disable) table:not(.dataview) td, .table-full.is-live-preview:not(.cards):not(.table-disable) td, .table-full.is-live-preview.cards:not(.table-disable) table:not(.dataview) td {
background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5)); background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5));
} }
.anp-table-toggle.anp-td-checkered .markdown-preview-view:not(.cards):not(.table-disable) table tr td:nth-child(2n),
.anp-table-toggle.anp-td-checkered .markdown-preview-view:not(.cards):not(.table-disable) table tr:nth-child(2n) td, .anp-table-toggle.anp-td-checkered .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n), .anp-table-toggle.anp-table-checkered .markdown-preview-view:not(.cards):not(.table-disable) tr td:nth-child(2n),
.anp-table-toggle.anp-td-checkered .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td, .anp-table-toggle.anp-td-checkered .is-live-preview:not(.cards):not(.table-disable) table tr td:nth-child(2n), .anp-table-toggle.anp-table-checkered .markdown-preview-view:not(.cards):not(.table-disable) tr:nth-child(2n) td,
.anp-table-toggle.anp-td-checkered .is-live-preview:not(.cards):not(.table-disable) table tr:nth-child(2n) td, .anp-table-toggle.anp-td-checkered .is-live-preview.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n), .anp-table-toggle.anp-table-checkered .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n),
.anp-table-toggle.anp-td-checkered .is-live-preview.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td { .anp-table-toggle.anp-table-checkered .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td,
.anp-table-toggle.anp-table-checkered .is-live-preview:not(.cards):not(.table-disable) tr td:nth-child(2n),
.anp-table-toggle.anp-table-checkered .is-live-preview:not(.cards):not(.table-disable) tr:nth-child(2n) td,
.anp-table-toggle.anp-table-checkered .is-live-preview.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n),
.anp-table-toggle.anp-table-checkered .is-live-preview.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td {
background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5)); background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5));
} }
.anp-table-toggle.anp-td-checkered .markdown-preview-view:not(.cards):not(.table-disable) table tr:nth-child(2n) td:nth-child(2n), .anp-table-toggle.anp-td-checkered .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td:nth-child(2n), .anp-table-toggle.anp-td-checkered .is-live-preview:not(.cards):not(.table-disable) table tr:nth-child(2n) td:nth-child(2n), .anp-table-toggle.anp-td-checkered .is-live-preview.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td:nth-child(2n) { .anp-table-toggle.anp-table-checkered .markdown-preview-view:not(.cards):not(.table-disable) tr:nth-child(2n) td:nth-child(2n),
.anp-table-toggle.anp-table-checkered .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td:nth-child(2n),
.anp-table-toggle.anp-table-checkered .is-live-preview:not(.cards):not(.table-disable) tr:nth-child(2n) td:nth-child(2n),
.anp-table-toggle.anp-table-checkered .is-live-preview.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td:nth-child(2n) {
background-color: rgba(var(--ctp-crust), var(--anp-table-highlight-opacity, 0.5)); background-color: rgba(var(--ctp-crust), var(--anp-table-highlight-opacity, 0.5));
} }
.anp-table-toggle.anp-td-full .markdown-preview-view:not(.cards):not(.table-disable) table td, .anp-table-toggle.anp-td-full .markdown-preview-view.cards:not(.table-disable) table:not(.dataview) td, .anp-table-toggle.anp-td-full .is-live-preview:not(.cards:not(.table-disable)) table td, .anp-table-toggle.anp-td-full .is-live-preview.cards:not(.table-disable) table:not(.dataview) td {
.checkered.markdown-preview-view:not(.cards):not(.table-disable) tr td:nth-child(2n),
.checkered.markdown-preview-view:not(.cards):not(.table-disable) tr:nth-child(2n) td, .checkered.markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n),
.checkered.markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td, .checkered.is-live-preview:not(.cards):not(.table-disable) tr td:nth-child(2n),
.checkered.is-live-preview:not(.cards):not(.table-disable) tr:nth-child(2n) td, .checkered.is-live-preview.cards:not(.table-disable) table:not(.dataview) tr td:nth-child(2n),
.checkered.is-live-preview.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td {
background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5)); background-color: rgba(var(--ctp-mantle), var(--anp-table-highlight-opacity, 0.5));
} }
.checkered.markdown-preview-view:not(.cards):not(.table-disable) tr:nth-child(2n) td:nth-child(2n), .checkered.markdown-preview-view.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td:nth-child(2n), .checkered.is-live-preview:not(.cards):not(.table-disable) tr:nth-child(2n) td:nth-child(2n), .checkered.is-live-preview.cards:not(.table-disable) table:not(.dataview) tr:nth-child(2n) td:nth-child(2n) {
background-color: rgba(var(--ctp-crust), var(--anp-table-highlight-opacity, 0.5));
}
.anp-table-auto.markdown-rendered:not(.cards):not(.table-disable) table, .anp-table-auto.markdown-rendered:not(.cards):not(.table-disable) table,
.anp-table-auto.markdown-rendered.cards:not(.table-disable) table:not(.dataview) { .anp-table-auto.markdown-rendered.cards:not(.table-disable) table:not(.dataview) {
@ -5189,7 +5385,8 @@ body.rainbow-tags {
--r7-color-light: rgba(var(--ctp-mauve), var(--rainbow-tags-opacity)); --r7-color-light: rgba(var(--ctp-mauve), var(--rainbow-tags-opacity));
} }
.anp-collapse-folders .nav-folder .nav-folder-collapse-indicator { .anp-collapse-folders .nav-folder .nav-folder-collapse-indicator,
.anp-collapse-folders [data-type=bookmarks] .tree-item .collapse-icon {
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 24' fill='none' stroke='currentColor' stroke-linejoin='round' stroke-linecap='round' stroke-width='2'%3E%3Cpath d='M6 14l1.45-2.9A2 2 0 0 1 9.24 10H22a2 2 0 0 1 1.94 2.5l-1.55 6a2 2 0 0 1-1.94 1.5H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2h3.93a2 2 0 0 1 1.66.9l.82 1.2a2 2 0 0 0 1.66.9H20a2 2 0 0 1 2 2v2'/%3E%3C/svg%3E%0A"); -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 24' fill='none' stroke='currentColor' stroke-linejoin='round' stroke-linecap='round' stroke-width='2'%3E%3Cpath d='M6 14l1.45-2.9A2 2 0 0 1 9.24 10H22a2 2 0 0 1 1.94 2.5l-1.55 6a2 2 0 0 1-1.94 1.5H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2h3.93a2 2 0 0 1 1.66.9l.82 1.2a2 2 0 0 0 1.66.9H20a2 2 0 0 1 2 2v2'/%3E%3C/svg%3E%0A");
-webkit-mask-repeat: no-repeat; -webkit-mask-repeat: no-repeat;
background-color: currentColor; background-color: currentColor;
@ -5197,12 +5394,12 @@ body.rainbow-tags {
width: 17px; width: 17px;
margin-right: 4px; margin-right: 4px;
} }
.anp-collapse-folders .nav-folder.is-collapsed .nav-folder-collapse-indicator,
.anp-collapse-folders .nav-folder.is-collapsed .nav-folder-collapse-indicator { .anp-collapse-folders [data-type=bookmarks] .tree-item.is-collapsed .collapse-icon {
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 24' fill='none' stroke='currentColor' stroke-linejoin='round' stroke-linecap='round' stroke-width='2'%3E%3Cpath d='M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2z'/%3E%3Cpath d='M2 10h20' /%3E%3C/svg%3E%0A"); -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 24' fill='none' stroke='currentColor' stroke-linejoin='round' stroke-linecap='round' stroke-width='2'%3E%3Cpath d='M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2z'/%3E%3Cpath d='M2 10h20' /%3E%3C/svg%3E%0A");
} }
.anp-collapse-folders .nav-folder-collapse-indicator svg.svg-icon,
.anp-collapse-folders .nav-folder-collapse-indicator svg.svg-icon { .anp-collapse-folders [data-type=bookmarks] .collapse-icon svg.svg-icon {
color: transparent !important; color: transparent !important;
} }
@ -5223,14 +5420,14 @@ body.rainbow-tags {
--h4-font: var(--font-text); --h4-font: var(--font-text);
--h5-font: var(--font-text); --h5-font: var(--font-text);
--h6-font: var(--font-text); --h6-font: var(--font-text);
--h1-color: var(--font-normal); --h1-color: var(--text-normal);
--h2-color: var(--font-normal); --h2-color: var(--text-normal);
--h3-color: var(--font-normal); --h3-color: var(--text-normal);
--h4-color: var(--font-normal); --h4-color: var(--text-normal);
--h5-color: var(--font-normal); --h5-color: var(--text-normal);
--h6-color: var(--font-normal); --h6-color: var(--text-normal);
--italic-color: var(--font-normal); --italic-color: var(--text-normal);
--bold-color: var(--font-normal); --bold-color: var(--text-normal);
} }
.callout[data-callout=capacities-index] { .callout[data-callout=capacities-index] {
@ -6169,8 +6366,6 @@ Icons were taken from Font Awesome: https://fontawesome.com/
margin-inline-start: -15px; margin-inline-start: -15px;
padding: 3px 10px !important; padding: 3px 10px !important;
border-radius: 3px 10px 10px 10px; border-radius: 3px 10px 10px 10px;
margin-top: 8px;
margin-bottom: 8px;
max-width: fit-content; max-width: fit-content;
color: var(--text-normal); color: var(--text-normal);
--bold-color: var(--text-normal); --bold-color: var(--text-normal);
@ -6271,8 +6466,6 @@ Icons were taken from Font Awesome: https://fontawesome.com/
/* Dirty Speech Bubble Fix */ /* Dirty Speech Bubble Fix */
.anp-speech-bubble .HyperMD-task-line[data-task="0"], .anp-speech-bubble .HyperMD-task-line[data-task="1"], .anp-speech-bubble .HyperMD-task-line[data-task="2"], .anp-speech-bubble .HyperMD-task-line[data-task="3"], .anp-speech-bubble .HyperMD-task-line[data-task="4"], .anp-speech-bubble .HyperMD-task-line[data-task="5"], .anp-speech-bubble .HyperMD-task-line[data-task="6"], .anp-speech-bubble .HyperMD-task-line[data-task="7"], .anp-speech-bubble .HyperMD-task-line[data-task="8"], .anp-speech-bubble .HyperMD-task-line[data-task="9"] { .anp-speech-bubble .HyperMD-task-line[data-task="0"], .anp-speech-bubble .HyperMD-task-line[data-task="1"], .anp-speech-bubble .HyperMD-task-line[data-task="2"], .anp-speech-bubble .HyperMD-task-line[data-task="3"], .anp-speech-bubble .HyperMD-task-line[data-task="4"], .anp-speech-bubble .HyperMD-task-line[data-task="5"], .anp-speech-bubble .HyperMD-task-line[data-task="6"], .anp-speech-bubble .HyperMD-task-line[data-task="7"], .anp-speech-bubble .HyperMD-task-line[data-task="8"], .anp-speech-bubble .HyperMD-task-line[data-task="9"] {
text-indent: 0px !important; text-indent: 0px !important;
margin-top: 8px !important;
margin-bottom: 8px !important;
} }
.anp-speech-bubble [data-task="0"] { .anp-speech-bubble [data-task="0"] {
@ -6526,41 +6719,53 @@ None of the original code was used and the feature was implemented from scratch.
/*------------RAINBOW FOLDERS-------------*/ /*------------RAINBOW FOLDERS-------------*/
/* Rainbow colors */ /* Rainbow colors */
.nav-folder-children > .nav-folder:nth-child(11n+2) { .nav-folder-children > .nav-folder:nth-child(11n+2),
[data-type=bookmarks] .tree-item:nth-child(11n+2) {
--rainbow-folder-color: var(--ctp-red); --rainbow-folder-color: var(--ctp-red);
} }
.nav-folder-children > .nav-folder:nth-child(11n+3) { .nav-folder-children > .nav-folder:nth-child(11n+3),
[data-type=bookmarks] .tree-item:nth-child(11n+3) {
--rainbow-folder-color: var(--ctp-maroon); --rainbow-folder-color: var(--ctp-maroon);
} }
.nav-folder-children > .nav-folder:nth-child(11n+4) { .nav-folder-children > .nav-folder:nth-child(11n+4),
[data-type=bookmarks] .tree-item:nth-child(11n+4) {
--rainbow-folder-color: var(--ctp-peach); --rainbow-folder-color: var(--ctp-peach);
} }
.nav-folder-children > .nav-folder:nth-child(11n+5) { .nav-folder-children > .nav-folder:nth-child(11n+5),
[data-type=bookmarks] .tree-item:nth-child(11n+5) {
--rainbow-folder-color: var(--ctp-yellow); --rainbow-folder-color: var(--ctp-yellow);
} }
.nav-folder-children > .nav-folder:nth-child(11n+6) { .nav-folder-children > .nav-folder:nth-child(11n+6),
[data-type=bookmarks] .tree-item:nth-child(11n+6) {
--rainbow-folder-color: var(--ctp-green); --rainbow-folder-color: var(--ctp-green);
} }
.nav-folder-children > .nav-folder:nth-child(11n+7) { .nav-folder-children > .nav-folder:nth-child(11n+7),
[data-type=bookmarks] .tree-item:nth-child(11n+7) {
--rainbow-folder-color: var(--ctp-teal); --rainbow-folder-color: var(--ctp-teal);
} }
.nav-folder-children > .nav-folder:nth-child(11n+8) { .nav-folder-children > .nav-folder:nth-child(11n+8),
[data-type=bookmarks] .tree-item:nth-child(11n+8) {
--rainbow-folder-color: var(--ctp-sky); --rainbow-folder-color: var(--ctp-sky);
} }
.nav-folder-children > .nav-folder:nth-child(11n+9) { .nav-folder-children > .nav-folder:nth-child(11n+9),
[data-type=bookmarks] .tree-item:nth-child(11n+9) {
--rainbow-folder-color: var(--ctp-sapphire); --rainbow-folder-color: var(--ctp-sapphire);
} }
.nav-folder-children > .nav-folder:nth-child(11n+10) { .nav-folder-children > .nav-folder:nth-child(11n+10),
[data-type=bookmarks] .tree-item:nth-child(11n+10) {
--rainbow-folder-color: var(--ctp-blue); --rainbow-folder-color: var(--ctp-blue);
} }
.nav-folder-children > .nav-folder:nth-child(11n+11) { .nav-folder-children > .nav-folder:nth-child(11n+11),
[data-type=bookmarks] .tree-item:nth-child(11n+11) {
--rainbow-folder-color: var(--ctp-lavender); --rainbow-folder-color: var(--ctp-lavender);
} }
.nav-folder-children > .nav-folder:nth-child(11n+12) { .nav-folder-children > .nav-folder:nth-child(11n+12),
[data-type=bookmarks] .tree-item:nth-child(11n+12) {
--rainbow-folder-color: var(--ctp-mauve); --rainbow-folder-color: var(--ctp-mauve);
} }
.anp-rainbow-subfolder-color-toggle .nav-folder.mod-root .nav-folder.nav-folder .nav-folder { .anp-rainbow-subfolder-color-toggle .nav-folder.mod-root .nav-folder.nav-folder .nav-folder,
.anp-rainbow-subfolder-color-toggle [data-type=bookmarks] .tree-item .tree-item {
--rainbow-folder-color: inherit; --rainbow-folder-color: inherit;
} }
@ -6640,13 +6845,14 @@ None of the original code was used and the feature was implemented from scratch.
} }
/*-Simple rainbow theme-*/ /*-Simple rainbow theme-*/
.anp-simple-rainbow-color-toggle.anp-simple-rainbow-title-toggle .nav-folder.mod-root > .nav-folder-children > .nav-folder .nav-folder-title { .anp-simple-rainbow-color-toggle.anp-simple-rainbow-title-toggle .nav-folder.mod-root > .nav-folder-children > .nav-folder .nav-folder-title,
.anp-simple-rainbow-color-toggle.anp-simple-rainbow-title-toggle [data-type=bookmarks] > .view-content > div > .tree-item .tree-item-inner {
transition: color 0.4s; transition: color 0.4s;
color: rgba(var(--rainbow-folder-color), var(--anp-simple-rainbow-opacity, 1)); color: rgba(var(--rainbow-folder-color), var(--anp-simple-rainbow-opacity, 1));
--nav-item-background-hover: rgba(var(--rainbow-folder-color), 0.1); --nav-item-background-hover: rgba(var(--rainbow-folder-color), 0.1);
--nav-item-background-active: rgba(var(--rainbow-folder-color), 0.1) ; --nav-item-background-active: rgba(var(--rainbow-folder-color), 0.1) ;
} }
.anp-simple-rainbow-color-toggle.anp-simple-rainbow-icon-toggle .nav-folder.mod-root > .nav-folder-children > .nav-folder .nav-folder-title:after { .anp-simple-rainbow-color-toggle.anp-simple-rainbow-icon-toggle .nav-folder.mod-root > .nav-folder-children > .nav-folder .nav-folder-title:after, .anp-simple-rainbow-color-toggle.anp-simple-rainbow-icon-toggle [data-type=bookmarks] > .view-content > div > .tree-item .tree-item-inner:after {
transition: color 0.4s; transition: color 0.4s;
color: rgba(var(--rainbow-folder-color), var(--anp-simple-rainbow-opacity, 1)); color: rgba(var(--rainbow-folder-color), var(--anp-simple-rainbow-opacity, 1));
content: "⬤"; content: "⬤";
@ -6655,12 +6861,14 @@ None of the original code was used and the feature was implemented from scratch.
top: 1px; top: 1px;
opacity: 0.5; opacity: 0.5;
} }
.anp-simple-rainbow-color-toggle.anp-simple-rainbow-indentation-toggle .nav-folder.mod-root .nav-folder > .nav-folder-children { .anp-simple-rainbow-color-toggle.anp-simple-rainbow-indentation-toggle .nav-folder.mod-root .nav-folder > .nav-folder-children, .anp-simple-rainbow-color-toggle.anp-simple-rainbow-indentation-toggle [data-type=bookmarks] > .view-content > div > .tree-item .tree-item-children {
transition: color 0.4s; transition: color 0.4s;
border-color: rgba(var(--rainbow-folder-color), 0.5); border-color: rgba(var(--rainbow-folder-color), 0.5);
} }
.anp-simple-rainbow-color-toggle.anp-simple-rainbow-collapse-toggle .tree-item-self .tree-item-icon { .anp-simple-rainbow-color-toggle.anp-simple-rainbow-collapse-toggle .tree-item-self .tree-item-icon {
--icon-color: rgba(var(--rainbow-folder-color), var(--anp-simple-rainbow-opacity, 1)); --icon-color: rgba(var(--rainbow-folder-color), var(--anp-simple-rainbow-opacity, 1));
--nav-collapse-icon-color: rgba(var(--rainbow-folder-color), var(--anp-simple-rainbow-opacity, 1));
--nav-collapse-icon-color-collapsed: rgba(var(--rainbow-folder-color), var(--anp-simple-rainbow-opacity, 1));
} }
.modal { .modal {
@ -7908,5 +8116,3 @@ body.theme-dark.theme-dark {
padding-bottom: 0; padding-bottom: 0;
padding-top: 0; padding-top: 0;
} }
/*# sourceMappingURL=theme.css.map */

@ -1,7 +1,7 @@
{ {
"name": "Minimal", "name": "Minimal",
"version": "6.3.3", "version": "7.1.1",
"minAppVersion": "1.1.0", "minAppVersion": "1.1.9",
"author": "@kepano", "author": "@kepano",
"authorUrl": "https://twitter.com/kepano", "authorUrl": "https://twitter.com/kepano",
"fundingUrl": "https://www.buymeacoffee.com/kepano" "fundingUrl": "https://www.buymeacoffee.com/kepano"

File diff suppressed because one or more lines are too long

@ -1,6 +1,6 @@
{ {
"name": "Things", "name": "Things",
"version": "2.1.10", "version": "2.1.11",
"minAppVersion": "1.0.0", "minAppVersion": "1.0.0",
"author": "@colineckert", "author": "@colineckert",
"authorUrl": "https://twitter.com/colineckert" "authorUrl": "https://twitter.com/colineckert"

@ -1,6 +1,6 @@
/* /*
THINGS THINGS
Version 2.1.10 Version 2.1.11
Created by @colineckert Created by @colineckert
Readme: Readme:
@ -342,7 +342,8 @@ body:not(.default-font-color) mark em {
/* Completed checkboxes */ /* Completed checkboxes */
.markdown-preview-view ul > li.task-list-item.is-checked, .markdown-preview-view ul > li.task-list-item.is-checked,
.markdown-source-view.mod-cm6 .HyperMD-task-line[data-task='x'], .markdown-source-view.mod-cm6 .HyperMD-task-line[data-task='x'],
.markdown-source-view.mod-cm6 .HyperMD-task-line[data-task='X'] { .markdown-source-view.mod-cm6 .HyperMD-task-line[data-task='X'],
.markdown-source-view.mod-cm6 .HyperMD-task-line[data-task='M'] {
text-decoration: none; text-decoration: none;
color: var(--text-faint); color: var(--text-faint);
} }
@ -391,134 +392,6 @@ body:not(.is-mobile)
) !important; ) !important;
} }
/* Code blocks */
.cm-inline-code,
.cm-s-obsidian .HyperMD-codeblock,
.markdown-preview-view.markdown-preview-view :is(pre, code) {
--codeblock-border: var(--color-base-30);
--codeblock-roundness: var(--radius-s);
--code-block-alt-bg: var(--color-base-30);
--slight-code-roundish: var(--radius-xs);
}
.cm-s-obsidian .HyperMD-codeblock {
line-height: 1.4em;
}
body .markdown-source-view.mod-cm6 .cm-line.HyperMD-codeblock {
padding-left: var(--size-2-2);
}
body:not(.no-codeblock-line-numbers) .HyperMD-codeblock-begin {
counter-reset: codeblock-line-numbers;
}
body:not(.no-codeblock-line-numbers)
.HyperMD-codeblock:not(
.HyperMD-codeblock-begin,
.HyperMD-codeblock-end
)::before {
counter-increment: codeblock-line-numbers;
content: counter(codeblock-line-numbers);
font-size: 0.75em;
line-height: 2;
text-align: right;
height: 100%;
width: 1.7em;
color: var(--text-muted);
/* background-color: #1e2029; */
background-color: var(--code-background);
position: absolute;
left: 0;
padding-right: 1.4em;
}
body:not(.no-codeblock-line-numbers)
.HyperMD-codeblock.cm-line:not(
.HyperMD-codeblock-begin,
.HyperMD-codeblock-end
) {
padding-left: 2.8em;
}
body:not(.no-codeblock-line-numbers)
.cm-s-obsidian
div.HyperMD-codeblock-begin-bg {
background-color: var(--code-block-alt-bg);
border: var(--codeblock-border);
border-bottom: none;
border-top-right-radius: var(--codeblock-roundness);
border-top-left-radius: var(--codeblock-roundness);
}
div.HyperMD-codeblock-bg:not(.HyperMD-codeblock-begin-bg) {
border-right: var(--codeblock-border);
border-left: var(--codeblock-border);
}
body:not(.no-codeblock-line-numbers)
.cm-line.HyperMD-codeblock
.code-block-flair {
font-size: calc(var(--code-size) * 0.9);
color: var(--text-muted);
padding: 0 1px;
top: 0;
}
body:not(.no-codeblock-line-numbers)
.markdown-reading-view
pre[class*='language-']::before {
display: block;
content: ' ';
line-height: 1.5em;
background-color: var(--code-block-alt-bg);
border-top-right-radius: calc(var(--codeblock-roundness) * 0.8);
border-top-left-radius: calc(var(--codeblock-roundness) * 0.8);
}
body:not(.no-codeblock-line-numbers) pre[class*='language-']::after {
content: attr(class);
font-size: 0.9rem;
text-shadow: none;
color: var(--text-muted);
position: absolute;
top: 2px;
right: 5px;
}
.markdown-reading-view .markdown-preview-view pre:not(.frontmatter) code {
white-space: pre;
}
body:not(.no-codeblock-line-numbers) .markdown-preview-view pre code {
padding: var(--size-4-1) var(--size-4-2);
}
body:not(.no-codeblock-line-numbers)
.copy-code-button.copy-code-button.copy-code-button {
background-color: var(--interactive-normal);
top: unset;
bottom: 0;
padding: 0 var(--size-2-2);
}
body:not(.no-codeblock-line-numbers)
.markdown-preview-view.markdown-preview-view
pre {
padding: 0;
margin-top: var(--size-4-2);
border: var(--codeblock-border);
border-radius: var(--codeblock-roundness);
}
.markdown-reading-view .markdown-preview-view pre code {
display: block;
}
body:not(.no-codeblock-line-numbers) .markdown-preview-view pre code {
padding: var(--size-4-1) var(--size-4-5);
}
/* ------------------- */ /* ------------------- */
/* One Dark Syntax Coloring */ /* One Dark Syntax Coloring */
/* Source: https://github.com/AGMStudio/prism-theme-one-dark */ /* Source: https://github.com/AGMStudio/prism-theme-one-dark */
@ -962,7 +835,7 @@ body:not(.tasks) li[data-task='w'].task-list-item.is-checked,
body:not(.tasks) li[data-task='u'].task-list-item.is-checked, body:not(.tasks) li[data-task='u'].task-list-item.is-checked,
body:not(.tasks) li[data-task='d'].task-list-item.is-checked, body:not(.tasks) li[data-task='d'].task-list-item.is-checked,
body:not(.tasks) li[data-task='P'].task-list-item.is-checked, body:not(.tasks) li[data-task='P'].task-list-item.is-checked,
body:not(.tasks) li[data-task='M'].task-list-item.is-checked { body:not(.tasks) li[data-task='D'].task-list-item.is-checked {
color: var(--text-normal); color: var(--text-normal);
} }
@ -1198,12 +1071,6 @@ settings:
id: active-line id: active-line
type: class-toggle type: class-toggle
default: false default: false
-
title: Disable enhanced code blocks
description: Remove line numbers and additional styling to code blocks
id: no-codeblock-line-numbers
type: class-toggle
default: false
- -
title: Disable Kanban board styles title: Disable Kanban board styles
description: Remove minimalist styling to the Kanban plugin description: Remove minimalist styling to the Kanban plugin

@ -69,7 +69,7 @@
"state": { "state": {
"type": "markdown", "type": "markdown",
"state": { "state": {
"file": "01.02 Home/@Main Dashboard.md", "file": "00.01 Admin/Calendars/2023-08-07.md",
"mode": "preview", "mode": "preview",
"source": false "source": false
} }
@ -158,7 +158,7 @@
"state": { "state": {
"type": "backlink", "type": "backlink",
"state": { "state": {
"file": "01.02 Home/@Main Dashboard.md", "file": "00.01 Admin/Calendars/2023-08-07.md",
"collapseAll": false, "collapseAll": false,
"extraContext": false, "extraContext": false,
"sortOrder": "alphabetical", "sortOrder": "alphabetical",
@ -175,7 +175,7 @@
"state": { "state": {
"type": "outgoing-link", "type": "outgoing-link",
"state": { "state": {
"file": "01.02 Home/@Main Dashboard.md", "file": "00.01 Admin/Calendars/2023-08-07.md",
"linksCollapsed": false, "linksCollapsed": false,
"unlinkedCollapsed": false "unlinkedCollapsed": false
} }
@ -206,7 +206,7 @@
} }
}, },
{ {
"id": "d321a1a4b4178be2", "id": "853a98ec18db79f0",
"type": "leaf", "type": "leaf",
"state": { "state": {
"type": "DICE_ROLLER_VIEW", "type": "DICE_ROLLER_VIEW",
@ -217,10 +217,7 @@
}, },
"left-ribbon": { "left-ribbon": {
"hiddenItems": { "hiddenItems": {
"obsidian-metatable:Metatable": false,
"table-editor-obsidian:Advanced Tables Toolbar": false,
"templater-obsidian:Templater": false, "templater-obsidian:Templater": false,
"obsidian-tts:Text to Speech": false,
"obsidian-camera:Obsidian Camera": false, "obsidian-camera:Obsidian Camera": false,
"obsidian-open-weather:OpenWeather": false, "obsidian-open-weather:OpenWeather": false,
"switcher:Open quick switcher": false, "switcher:Open quick switcher": false,
@ -238,40 +235,44 @@
"meld-encrypt:Create new encrypted note": false, "meld-encrypt:Create new encrypted note": false,
"obsidian-book-search-plugin:Create new book note": false, "obsidian-book-search-plugin:Create new book note": false,
"obsidian-rich-links:Rich Links": false, "obsidian-rich-links:Rich Links": false,
"obsidian-read-it-later:ReadItLater: Save clipboard": false,
"obsidian-map-view:Open map view": false,
"obsidian-media-db-plugin:Add new Media DB entry": false, "obsidian-media-db-plugin:Add new Media DB entry": false,
"table-editor-obsidian:Advanced Tables Toolbar": false,
"obsidian-metatable:Metatable": false,
"obsidian-map-view:Open map view": false,
"obsidian-read-it-later:ReadItLater: Save clipboard": false,
"obsidian-tts:Text to Speech": false,
"obsidian-memos:Memos": false "obsidian-memos:Memos": false
} }
}, },
"active": "6f345aaa1a4d9f07", "active": "1f6a6b4151d812b3",
"lastOpenFiles": [ "lastOpenFiles": [
"00.01 Admin/Calendars/2023-07-13.md", "00.08 Bookmarks/Bookmarks - Media.md",
"01.02 Home/@Main Dashboard.md", "00.01 Admin/Calendars/2023-08-07.md",
"00.01 Admin/Calendars/2023-07-12.md", "00.01 Admin/Calendars/2023-08-06.md",
"03.03 Food & Wine/@Main dishes.md", "00.01 Admin/Calendars/2023-08-05.md",
"03.03 Food & Wine/Loup de Mer Citron.md",
"00.01 Admin/Calendars/2023-07-11.md",
"03.03 Food & Wine/Korean Barbecue-Style Meatballs.md",
"00.01 Admin/Calendars/2023-07-10.md",
"03.03 Food & Wine/Beef Noodles with Beans.md",
"00.01 Admin/Calendars/2023-07-09.md",
"00.01 Admin/Calendars/2023-07-08.md",
"00.01 Admin/Calendars/2023-07-07.md",
"02.03 Zürich/Fischer Fritz.md",
"01.07 Animals/@Sally.md", "01.07 Animals/@Sally.md",
"06.01 Finances/hLedger.md", "01.02 Home/@Main Dashboard.md",
"00.01 Admin/Calendars/2023-07-06.md", "00.01 Admin/Calendars/2023-08-04.md",
"01.02 Home/Entertainment.md",
"00.01 Admin/Calendars/2023-07-05.md",
"00.01 Admin/Calendars/2023-07-04.md",
"03.04 Cinematheque/@Cinematheque.md", "03.04 Cinematheque/@Cinematheque.md",
"03.04 Cinematheque/John Wick - Chapter 4 (2023).md", "03.04 Cinematheque/One Night in Miami (2020).md",
"03.04 Cinematheque/Fight Club (1999).md", "03.04 Cinematheque/Black Girl (1966).md",
"00.01 Admin/Calendars/2023-07-01.md", "03.04 Cinematheque/Beau travail (1999).md",
"00.01 Admin/Calendars/2023-07-02.md", "02.03 Zürich/Luigia.md",
"00.01 Admin/Calendars/2023-07-03.md", "00.01 Admin/Calendars/2023-08-03.md",
"00.03 News/The Great Grift How billions in COVID-19 relief aid was stolen or wasted.md", "01.03 Family/Arnaud Chapal.md",
"03.04 Cinematheque/Operation Corned Beef (1991).md",
"03.04 Cinematheque/Breathless (1960).md",
"03.02 Travels/@Dubaï.md",
"00.01 Admin/Calendars/2023-08-02.md",
"03.04 Cinematheque/Lock Stock and Two Smoking Barrels (1998).md",
"03.04 Cinematheque/Lock Stock and Two Smoking Barrels (1998) 1.md",
"00.01 Admin/Calendars/2023-08-01.md",
"01.02 Home/Bandes Dessinées.md",
"00.01 Admin/Calendars/2023-07-31.md",
"02.03 Zürich/@@Zürich.md",
"00.03 News/We Are All Animals at Night Hazlitt.md",
"00.03 News/How Larry Gagosian Reshaped the Art World.md",
"00.01 Admin/Pictures/Sally/IMG_3367.jpg",
"00.01 Admin/Pictures/Sally/IMG_3149.jpg", "00.01 Admin/Pictures/Sally/IMG_3149.jpg",
"00.01 Admin/Pictures/Sally/IMG_3152.jpg", "00.01 Admin/Pictures/Sally/IMG_3152.jpg",
"00.01 Admin/Pictures/Sally/IMG_3142.jpg", "00.01 Admin/Pictures/Sally/IMG_3142.jpg",
@ -281,7 +282,6 @@
"00.01 Admin/Pictures/Sally/ima1232190353310690185 1.jpeg", "00.01 Admin/Pictures/Sally/ima1232190353310690185 1.jpeg",
"00.01 Admin/Pictures/Sally/ima1232190353310690185.jpeg", "00.01 Admin/Pictures/Sally/ima1232190353310690185.jpeg",
"00.01 Admin/Pictures/Sally/IMG_2984.jpg", "00.01 Admin/Pictures/Sally/IMG_2984.jpg",
"00.01 Admin/Pictures/Sally/IMG_3024.jpg",
"00.01 Admin/Test Canvas.canvas", "00.01 Admin/Test Canvas.canvas",
"00.01 Admin/Pictures/Sally", "00.01 Admin/Pictures/Sally",
"01.07 Animals", "01.07 Animals",

@ -116,6 +116,8 @@ This section does serve for quick memos.
🍴: [[Beef Noodles with Beans]] 🍴: [[Beef Noodles with Beans]]
🐎: S&B at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;
--- ---

@ -114,7 +114,7 @@ This section does serve for quick memos.
&emsp; &emsp;
Loret ipsum 🐎: S&B with [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;

@ -116,6 +116,8 @@ This section does serve for quick memos.
☕: [[Toto]] ☕: [[Toto]]
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;
--- ---

@ -118,6 +118,8 @@ This section does serve for quick memos.
🍽: [[Spicy Szechuan Noodles with Garlic Chilli Oil]] 🍽: [[Spicy Szechuan Noodles with Garlic Chilli Oil]]
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
📺: [[Succession (2018)]] 📺: [[Succession (2018)]]
&emsp; &emsp;

@ -116,6 +116,8 @@ This section does serve for quick memos.
🍽: [[Korean Barbecue-Style Meatballs]] 🍽: [[Korean Barbecue-Style Meatballs]]
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;
--- ---

@ -116,6 +116,8 @@ This section does serve for quick memos.
🚆: [[@@Paris|Paris]] to [[@@Zürich|Zürich]] 🚆: [[@@Paris|Paris]] to [[@@Zürich|Zürich]]
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
[[@@MRCK|Megan Rose]] moved out. [[@@MRCK|Megan Rose]] moved out.
&emsp; &emsp;

@ -114,7 +114,7 @@ This section does serve for quick memos.
&emsp; &emsp;
Loret ipsum 🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;

@ -114,6 +114,8 @@ This section does serve for quick memos.
&emsp; &emsp;
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
📺: [[House of the Dragon (2022)]] 📺: [[House of the Dragon (2022)]]
&emsp; &emsp;

@ -114,6 +114,8 @@ This section does serve for quick memos.
&emsp; &emsp;
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
📺: [[House of the Dragon (2022)]] 📺: [[House of the Dragon (2022)]]
&emsp; &emsp;

@ -114,7 +114,7 @@ This section does serve for quick memos.
&emsp; &emsp;
Loret ipsum 🐎: S&B at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;

@ -116,6 +116,8 @@ This section does serve for quick memos.
🍽: [[Big Shells With Spicy Lamb Sausage and Pistachios]] 🍽: [[Big Shells With Spicy Lamb Sausage and Pistachios]]
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;
--- ---

@ -114,7 +114,7 @@ This section does serve for quick memos.
&emsp; &emsp;
Loret ipsum 🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;

@ -116,6 +116,8 @@ This section does serve for quick memos.
🍽: [[Spicy Szechuan Noodles with Garlic Chilli Oil]] 🍽: [[Spicy Szechuan Noodles with Garlic Chilli Oil]]
🐎: S&B at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;
--- ---

@ -114,7 +114,7 @@ This section does serve for quick memos.
&emsp; &emsp;
Loret ipsum 🐎: S&B at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;

@ -117,6 +117,8 @@ This section does serve for quick memos.
🍴: [[Big Shells With Spicy Lamb Sausage and Pistachios]] 🍴: [[Big Shells With Spicy Lamb Sausage and Pistachios]]
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;
--- ---

@ -116,6 +116,8 @@ This section does serve for quick memos.
☕: [[Kafi Paradiesli]] ☕: [[Kafi Paradiesli]]
🐎: S&B at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;
--- ---

@ -114,6 +114,8 @@ This section does serve for quick memos.
&emsp; &emsp;
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
📺: [[Fight Club (1999)]] 📺: [[Fight Club (1999)]]
&emsp; &emsp;

@ -114,7 +114,7 @@ This section does serve for quick memos.
&emsp; &emsp;
Loret ipsum 🐎: S&B at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;

@ -114,6 +114,8 @@ This section does serve for quick memos.
&emsp; &emsp;
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
🍴: [[Café des Amis]] with Benjamin Ferrand 🍴: [[Café des Amis]] with Benjamin Ferrand
&emsp; &emsp;

@ -116,6 +116,8 @@ This section does serve for quick memos.
🍴: [[Korean Barbecue-Style Meatballs]] 🍴: [[Korean Barbecue-Style Meatballs]]
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp; &emsp;
--- ---

@ -16,13 +16,13 @@ Stress: 25
FrontHeadBar: 5 FrontHeadBar: 5
EarHeadBar: 20 EarHeadBar: 20
BackHeadBar: 30 BackHeadBar: 30
Water: Water: 4
Coffee: 1 Coffee: 4
Steps: Steps: 6426
Weight: Weight:
Ski: Ski:
IceSkating: IceSkating:
Riding: Riding: 1
Racket: Racket:
Football: Football:
Swim: Swim:
@ -114,7 +114,11 @@ This section does serve for quick memos.
&emsp; &emsp;
Loret ipsum 🍽: [[Big Shells With Spicy Lamb Sausage and Pistachios]]
🐎: S&B at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
📺: [[The Stronghold (2020)]]
&emsp; &emsp;

@ -0,0 +1,136 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-14
Date: 2023-07-14
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 4.5
Coffee: 3
Steps: 2260
Weight:
Ski:
IceSkating:
Riding: 2
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-13|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-15|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-14Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-14NSave
&emsp;
# 2023-07-14
&emsp;
> [!summary]+
> Daily note for 2023-07-14
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-14
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
🍽: [[Big Shells With Spicy Lamb Sausage and Pistachios]]
🐎: Chukkas at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-14]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-15
Date: 2023-07-15
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 5.5
Coffee: 3
Steps: 13045
Weight:
Ski:
IceSkating:
Riding: 2
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-14|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-16|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-15Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-15NSave
&emsp;
# 2023-07-15
&emsp;
> [!summary]+
> Daily note for 2023-07-15
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-15
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
🐎: Chukkas at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]]
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-15]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-16
Date: 2023-07-16
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 6
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 2.7
Coffee: 2
Steps: 7930
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-15|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-17|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-16Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-16NSave
&emsp;
# 2023-07-16
&emsp;
> [!summary]+
> Daily note for 2023-07-16
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-16
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
🚆: [[@@Zürich|Zürich]] to [[@@Paris|Paris]]
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-16]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-17
Date: 2023-07-17
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 3.43
Coffee: 5
Steps: 11805
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-16|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-18|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-17Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-17NSave
&emsp;
# 2023-07-17
&emsp;
> [!summary]+
> Daily note for 2023-07-17
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-17
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-17]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-18
Date: 2023-07-18
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7.5
Happiness: 80
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 3.66
Coffee: 5
Steps: 12665
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-17|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-19|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-18Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-18NSave
&emsp;
# 2023-07-18
&emsp;
> [!summary]+
> Daily note for 2023-07-18
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-18
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
🚆: [[@@Paris|Paris]] to [[@@Zürich|Zürich]]
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-18]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-19
Date: 2023-07-19
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7.5
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 2
Coffee: 2
Steps: 4999
Weight: 91.1
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-18|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-20|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-19Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-19NSave
&emsp;
# 2023-07-19
&emsp;
> [!summary]+
> Daily note for 2023-07-19
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-19
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
🚆: [[@@Zürich|Zürich]] to [[Geneva|Genève]]
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-19]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-20
Date: 2023-07-20
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7.5
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 3.33
Coffee: 5
Steps: 6676
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-19|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-21|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-20Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-20NSave
&emsp;
# 2023-07-20
&emsp;
> [!summary]+
> Daily note for 2023-07-20
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-20
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-20]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-21
Date: 2023-07-21
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 6
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 4.5
Coffee: 0
Steps: 10777
Weight:
Ski:
IceSkating:
Riding: 4
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-20|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-22|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-21Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-21NSave
&emsp;
# 2023-07-21
&emsp;
> [!summary]+
> Daily note for 2023-07-21
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-21
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]] & Comanche
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-21]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-22
Date: 2023-07-22
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 8
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 4.19
Coffee: 3
Steps:
Weight:
Ski:
IceSkating:
Riding: 4
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-21|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-23|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-22Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-22NSave
&emsp;
# 2023-07-22
&emsp;
> [!summary]+
> Daily note for 2023-07-22
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-22
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
🐎: Chukkers at [[Polo Park Zürich|PPZ]] with [[@Sally|Sally]] and Comanche
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-22]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-23
Date: 2023-07-23
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 3
Coffee: 2
Steps: 5746
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-22|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-24|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-23Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-23NSave
&emsp;
# 2023-07-23
&emsp;
> [!summary]+
> Daily note for 2023-07-23
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-24
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
🚗: [[@@Zürich|Zürich]] à [[$Basville|Basville]]
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-23]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-24
Date: 2023-07-24
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7.5
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 2
Coffee: 2
Steps: 9041
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-23|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-25|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-24Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-24NSave
&emsp;
# 2023-07-24
&emsp;
> [!summary]+
> Daily note for 2023-07-24
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-24
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-24]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-25
Date: 2023-07-25
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 8
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 2.5
Coffee: 3
Steps: 5831
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-24|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-26|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-25Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-25NSave
&emsp;
# 2023-07-25
&emsp;
> [!summary]+
> Daily note for 2023-07-25
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-25
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-25]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-26
Date: 2023-07-26
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7.5
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 2.5
Coffee: 3
Steps: 12714
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-25|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-27|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-26Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-26NSave
&emsp;
# 2023-07-26
&emsp;
> [!summary]+
> Daily note for 2023-07-26
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-26
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-26]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-27
Date: 2023-07-27
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7.5
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 2
Coffee: 4
Steps: 6369
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-26|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-28|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-27Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-27NSave
&emsp;
# 2023-07-27
&emsp;
> [!summary]+
> Daily note for 2023-07-27
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-27
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-27]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-28
Date: 2023-07-28
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 8
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 2.25
Coffee: 3
Steps: 8234
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-27|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-29|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-28Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-28NSave
&emsp;
# 2023-07-28
&emsp;
> [!summary]+
> Daily note for 2023-07-28
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-28
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-28]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-29
Date: 2023-07-29
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 8
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 1.4
Coffee: 3
Steps: 3091
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-28|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-30|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-29Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-29NSave
&emsp;
# 2023-07-29
&emsp;
> [!summary]+
> Daily note for 2023-07-29
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-29
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-29]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-30
Date: 2023-07-30
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7.5
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 4
Coffee: 4
Steps: 11048
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-29|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-07-31|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-30Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-30NSave
&emsp;
# 2023-07-30
&emsp;
> [!summary]+
> Daily note for 2023-07-30
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-30
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
🚗: [[$Basville|Basville]] à [[@@Zürich|Zürich]]
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-30]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-07-31
Date: 2023-07-31
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7.5
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 3
Coffee: 3
Steps: 9416
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-30|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-08-01|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-07-31Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-07-31NSave
&emsp;
# 2023-07-31
&emsp;
> [!summary]+
> Daily note for 2023-07-31
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-07-31
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-07-31]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-08-01
Date: 2023-08-01
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 0.33
Coffee: 1
Steps: 7617
Weight: 90.7
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-07-31|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-08-02|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-08-01Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-08-01NSave
&emsp;
# 2023-08-01
&emsp;
> [!summary]+
> Daily note for 2023-08-01
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-08-01
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-08-01]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-08-02
Date: 2023-08-02
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7.5
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 3
Coffee: 3
Steps: 12611
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-08-01|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-08-03|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-08-02Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-08-02NSave
&emsp;
# 2023-08-02
&emsp;
> [!summary]+
> Daily note for 2023-08-02
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-08-02
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
📺: [[Lock Stock and Two Smoking Barrels (1998)]]
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-08-02]]
```
&emsp;
&emsp;

@ -0,0 +1,136 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-08-03
Date: 2023-08-03
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7.5
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 3.375
Coffee: 3
Steps: 8603
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-08-02|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-08-04|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-08-03Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-08-03NSave
&emsp;
# 2023-08-03
&emsp;
> [!summary]+
> Daily note for 2023-08-03
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-08-03
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
📺: [[Breathless (1960)]]
📺: [[Operation Corned Beef (1991)]]
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-08-03]]
```
&emsp;
&emsp;

@ -0,0 +1,138 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-08-04
Date: 2023-08-04
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 8
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 5
Coffee: 4
Steps: 11061
Weight:
Ski:
IceSkating:
Riding: 1
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-08-03|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-08-05|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-08-04Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-08-04NSave
&emsp;
# 2023-08-04
&emsp;
> [!summary]+
> Daily note for 2023-08-04
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-08-04
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
📺: [[Beau travail (1999)]]
🐎: S&B with [[@Sally|Sally]] at [[Polo Park Zürich|PPZ]]
📺: [[Black Girl (1966)]]
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-08-04]]
```
&emsp;
&emsp;

@ -0,0 +1,136 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-08-05
Date: 2023-08-05
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 7
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 4.25
Coffee: 1
Steps: 12584
Weight:
Ski:
IceSkating:
Riding: 2
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-08-04|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-08-06|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-08-05Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-08-05NSave
&emsp;
# 2023-08-05
&emsp;
> [!summary]+
> Daily note for 2023-08-05
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-08-05
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
📺: [[One Night in Miami (2020)]]
🐎: Chukkas with [[@Sally|Sally]] at [[Polo Park Zürich|PPZ]]
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-08-05]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-08-06
Date: 2023-08-06
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 8
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 2.5
Coffee: 2
Steps: 23631
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-08-05|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-08-07|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-08-06Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-08-06NSave
&emsp;
# 2023-08-06
&emsp;
> [!summary]+
> Daily note for 2023-08-06
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-08-06
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-08-06]]
```
&emsp;
&emsp;

@ -0,0 +1,134 @@
---
title: "🗒 Daily Note"
allDay: true
date: 2023-08-07
Date: 2023-08-07
DocType: Note
Hierarchy:
TimeStamp:
location:
CollapseMetaTable: true
Sleep: 8
Happiness: 85
Gratefulness: 90
Stress: 25
FrontHeadBar: 5
EarHeadBar: 20
BackHeadBar: 30
Water: 1.5
Coffee: 3
Steps:
Weight:
Ski:
IceSkating:
Riding:
Racket:
Football:
Swim:
---
%% Parent:: [[@Life Admin]] %%
---
[[2023-08-06|<< 🗓 Previous ]] &emsp; &emsp; &emsp; [[@Main Dashboard|Back]] &emsp; &emsp; &emsp; [[2023-08-08|🗓 Next >>]]
---
&emsp;
```button
name Record today's health
type command
action MetaEdit: Run MetaEdit
id EditMetaData
```
^button-2023-08-07Edit
```button
name Save
type command
action Save current file
id Save
```
^button-2023-08-07NSave
&emsp;
# 2023-08-07
&emsp;
> [!summary]+
> Daily note for 2023-08-07
&emsp;
```toc
style: number
```
&emsp;
---
&emsp;
### ✅ Tasks of the day
&emsp;
```tasks
not done
due on 2023-08-07
path does not include Templates
hide backlinks
hide task count
```
&emsp;
---
&emsp;
### 📝 Memos
&emsp;
This section does serve for quick memos.
&emsp;
%% --- %%
&emsp;
---
&emsp;
### 🗒 Notes
&emsp;
Loret ipsum
&emsp;
---
&emsp;
### :link: Linked activity
&emsp;
```dataview
Table from [[2023-08-07]]
```
&emsp;
&emsp;

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 MiB

@ -0,0 +1,159 @@
---
Tag: ["🤵🏻", "🇺🇸", "🔫", "🚔"]
Date: 2023-07-31
DocType: "WebClipping"
Hierarchy:
TimeStamp: 2023-07-31
Link: https://www.newyorker.com/magazine/2023/07/31/a-small-town-paper-lands-a-very-big-story
location:
CollapseMetaTable: true
---
Parent:: [[@News|News]]
Read:: 🟥
---
&emsp;
```button
name Save
type command
action Save current file
id Save
```
^button-ASmall-TownPaperLandsaVeryBigStoryNSave
&emsp;
# A Small-Town Paper Lands a Very Big Story
Listen to this article.
Bruce Willingham, fifty-two years a newspaperman, owns and publishes the McCurtain *Gazette,* in McCurtain County, Oklahoma, a rolling sweep of timber and lakes that forms the southeastern corner of the state. McCurtain County is geographically larger than Rhode Island and less populous than the average Taylor Swift concert. Thirty-one thousand people live there; forty-four hundred buy the *Gazette*, which has been in print since 1905, before statehood. At that time, the paper was known as the Idabel *Signal*, referring to the county seat. An early masthead proclaimed “*INDIAN TERRITORY, CHOCTAW NATION*.”
Willingham bought the newspaper in 1988, with his wife, Gwen, who gave up a nursing career to become the *Gazettes* accountant. They operate out of a storefront office in downtown Idabel, between a package-shipping business and a pawnshop. The staff parks out back, within sight of an old Frisco railway station, and enters through the “morgue,” where the bound archives are kept. Until recently, no one had reason to lock the door during the day.
Three days a week (five, before the pandemic), readers can find the latest on rodeo queens, school cafeteria menus, hardwood-mill closings, heat advisories. Some headlines: “Large Cat Sighted in Idabel,” “Two of States Three Master Bladesmiths Live Here,” “Local Singing Group Enjoys Tuesdays.” Anyone whos been cited for speeding, charged with a misdemeanor, applied for a marriage license, or filed for divorce will see his or her name listed in the “District Court Report.” In Willinghams clutterbucket of an office, a hulking microfiche machine sits alongside his desktop computer amid lunar levels of dust; he uses the machine to unearth and reprint front pages from long ago. In 2017, he transported readers to 1934 via a banner headline: “*NEGRO SLAYER OF WHITE MAN KILLED*.” The area has long been stuck with the nickname Little Dixie.
*Gazette* articles can be shorter than recipes, and what they may lack in detail, context, and occasionally accuracy, they make up for by existing at all. The paper does more than probe the past or keep tabs on the local felines. “Weve investigated county officials *a lot*,” Willingham, who is sixty-eight, said the other day. The *Gazette* exposed a county treasurer who allowed elected officials to avoid penalties for paying their property taxes late, and a utilities company that gouged poor customers while lavishing its executives with gifts. “To most people, its Mickey Mouse stuff,” Willingham told me. “But the problem is, if you let them get away with it, it gets worse and worse and worse.”
[](https://www.newyorker.com/cartoon/a27929)
“And how long till they start saying the Great after my name?”
Cartoon by Maddie Dai
The Willinghams oldest son, Chris, and his wife, Angie, work at the *Gazette*, too. They moved to Idabel from Oklahoma City in the spring of 2005, not long after graduating from college. Angie became an editor, and Chris covered what is known in the daily-news business as cops and courts. Absurdity often made the front page—a five-m.p.h. police “chase” through town, a wayward snake. Three times in one year, the paper wrote about assaults in which the weapon was chicken and dumplings. McCurtain County, which once led the state in homicides, also produces more sinister blotter items: a man cashed his dead mothers Social Security checks for more than a year; a man killed a woman with a hunting bow and two arrows; a man raped a woman in front of her baby.
In a small town, a dogged reporter is inevitably an unpopular one. It isnt easy to write about an old friends felony drug charge, knowing that youre going to see him at church. When Chris was a teen-ager, his father twice put *him* in the paper, for the misdemeanors of stealing beer, with buddies, at a grocery store where one of them worked, and parking illegally—probably with those same buddies, definitely with beer—on a back-road bridge, over a good fishing hole.
Chris has a wired earnestness and a voice that carries. Listening to a crime victims story, he might boom, “*Gollll-ly!*” Among law-enforcement sources, “Chris was respected because he always asked questions about how the system works, about proper procedure,” an officer said. Certain cops admired his willingness to pursue uncomfortable truths even if those truths involved one of their own. “If I was to do something wrong—on purpose, on accident—Chris Willingham one hundred per cent would write my butt in the paper, on the front page, in bold letters,” another officer, who has known him for more than a decade, told me.
In the summer of 2021, Chris heard that there were morale problems within the McCurtain County Sheriffs Office. The sheriff, Kevin Clardy, who has woolly eyebrows and a mustache, and often wears a cowboy hat, had just started his second term. The first one had gone smoothly, but now, according to some colleagues, Clardy appeared to be playing favorites.
The current discord stemmed from two recent promotions. Clardy had brought in Larry Hendrix, a former deputy from another county, and, despite what some considered to be weak investigative skills, elevated him to undersheriff—second-in-command. Clardy had also hired Alicia Manning, who had taken up law enforcement only recently, in her forties. Rookies typically start out on patrol, but Clardy made Manning an investigator. Then he named her captain, a newly created position, from which she oversaw the departments two dozen or so deputies and managed cases involving violence against women and children. Co-workers were dismayed to see someone with so little experience rise that quickly to the third most powerful rank. “Never patrolled one night, never patrolled one day, in any law-enforcement aspect, anywhere in her life, and youre gonna bring her in and stick her in high crimes?” one officer who worked with her told me.
Chris was sitting on a tip that Clardy favored Manning because the two were having an affair. Then, around Thanksgiving, 2021, employees at the county jail, whose board is chaired by the sheriff, started getting fired, and quitting. The first to go was the jails secretary, who had worked there for twenty-six years. The jails administrator resigned on the spot rather than carry out the termination; the secretarys husband, the jails longtime handyman, quit, too. When Chris interviewed Clardy about the unusual spate of departures, the sheriff pointed out that employment in Oklahoma is at will. “It is what it is,” he said. In response to a question about nepotism, involving the temporary promotion of his stepdaughters husband, Clardy revealed that he had been divorced for a few months and separated for more than a year. Chris asked, “Are you and Alicia having sex?” Clardy repeatedly said no, insisting, “Were good friends. Me and Larrys good friends, but Im not having sex with Larry, either.”
Meanwhile, someone had sent Chris photographs of the departments evidence room, which resembled a hoarders nest. The mess invited speculation about tainted case material. In a front-page story, branded “first of a series,” the *Gazette* printed the images, along with the news that Hendrix and Manning were warning deputies to stop all the “backdoor talk.” The sheriff told staffers that anyone who spoke to the *Gazette* would be fired.
Manning has thick, ash-streaked hair, a direct manner, and what seems to be an unwavering loyalty to Clardy. She offered to help him flush out the leakers, and told another colleague that she wanted to obtain search warrants for cell phones belonging to deputies. When Chris heard that Manning wanted to confiscate *his* phone, he called the Oklahoma Press Association—and a lawyer. (Oklahoma has a shield law, passed in the seventies, which is designed to protect journalists sources.) The lawyer advised Chris to leave his phone behind whenever he went to the sheriffs department. Angie was prepared to remotely wipe the device if Chris ever lost possession of it.
John Jones, a narcotics detective in his late twenties, cautioned Manning against abusing her authority. Jones was the sheriffs most prolific investigator, regarded as a forthright and talented young officer—a “velociraptor,” according to one peer. He had documented the presence of the Sinaloa cartel in McCurtain County, describing meth smuggled from Mexico in shipments of pencils, and cash laundered through local casinos. Jones had filed hundreds of cases between 2019 and most of 2021, compared with a couple of dozen by Manning and Hendrix combined. The *Gazette* reported that, on December 1st—days after confronting Manning—Jones was bumped down to patrol. The next day, he quit.
Within the week, Hendrix fired the departments second most productive investigator, Devin Black. An experienced detective in his late thirties, Black had just recovered nearly a million dollars worth of stolen tractors and construction equipment, a big deal in a county whose economy depends on agriculture and tourism. (At Broken Bow Lake, north of Idabel, newcomers are building hundreds of luxury cabins in Hochatown, a resort area known as the Hamptons of Dallas-Fort Worth.) Black said nothing publicly after his departure, but Jones published an open letter in the *Gazette*, accusing Hendrix of neglecting the case of a woman who said that she was raped at gunpoint during a home invasion. The woman told Jones that she had been restrained with duct tape during the attack, and that the tape might still be at her house. Hendrix, Jones wrote, “never followed up or even reached out to the woman again.” Curtis Fields, a jail employee who had recently been fired, got a letter of his own published in the *Gazette*. He wrote that the sheriffs “maladministration” was “flat-out embarrassing to our entire county,” and, worse, put “many cases at risk.”
Around this time, Hendrix was moved over to run the jail, and Clardy hired Alicia Mannings older brother, Mike, to be the new undersheriff. Mike, who had long worked part time as a local law-enforcement officer, owned IN-Sight Technologies, a contractor that provided CCTV, security, and I.T. services to the county, including the sheriffs department. The Willinghams observed that his new position created a conflict of interest. In late December, the day after Mikes appointment, Chris and Bruce went to ask him about it. Mike said that he had resigned as IN-Sights C.E.O. that very day and, after some prodding, acknowledged that he had transferred ownership of the company—to his wife. He assured the Willinghams that IN-Sights business with McCurtain County was “minuscule.” According to records that I requested from the county clerk, McCurtain County has issued at least two hundred and thirty-nine thousand dollars in purchase orders to the company since 2016. The county commissioners have authorized at least eighty thousand dollars in payments to IN-Sight since Mike became undersheriff.
Mike urged the Willinghams to focus on more important issues. When he said, “Im not here to be a whipping post, because theres a lot of crime going on right now,” Chris replied, “Oh, yeah, I agree.” The undersheriff claimed to have no problem with journalists, saying, “Im a constitutional guy.”
State “sunshine” laws require government officials to do the peoples business in public: most records must be accessible to anyone who wishes to see them, and certain meetings must be open to anyone who would like to attend. Bruce Willingham once wrote, “We are aggressive about protecting the publics access to records and meetings, because we have found that if we dont insist on both, often no one else will.” The Center for Public Integrity grades each state on the quality of its open-government statutes and practices. At last check, Oklahoma, along with ten other states, got an F.
In January, 2022, Chris noticed a discrepancy between the number of crimes listed in the sheriffs logbook and the correlating reports made available to him. Whereas he once saw thirty to forty reports per week, he now saw fewer than twenty. “The ones that I get are like loose cattle on somebodys land, all very minor stuff,” he told me. He often didnt find out about serious crime until it was being prosecuted. In his next article, he wrote that fifty-three reports were missing, including information about “a shooting, a rape, an elementary school teacher being unknowingly given marijuana cookies by a student and a deputy allegedly shooting out the tires” of a car. The headline was “*Sheriff Regularly Breaking Law Now*.”
Two weeks later, the sheriffs department landed back on page 1 after four felons climbed through the roof of the jail, descended a radio tower, and fled—the first escape in twenty-three years. Chris reported that prisoners had been sneaking out of the jail throughout the winter to pick up “drugs, cell phones and beer” at a nearby convenience store.
Three of the escapees were still at large when, late one Saturday night in February, Alyssa Walker-Donaldson, a former Miss McCurtain County, vanished after leaving a bar in Hochatown. When the sheriffs department did not appear to be exacting in its search, volunteers mounted their own. It was a civilian in a borrowed Cessna who spotted Walker-Donaldsons white S.U.V. at the bottom of Broken Bow Lake. An autopsy showed that she had suffered acute intoxication by alcohol and drowned in what was described as an accident. The findings failed to fully explain how Walker-Donaldson, who was twenty-four, wound up in the water, miles from where she was supposed to be, near a boat ramp at the end of a winding road. “Even the U.P.S. man cant get down there,” Walker-Donaldsons mother, Carla Giddens, told me. Giddens wondered why all five buttons on her daughters high-rise jeans were undone, and why her shirt was pushed above her bra. She told a local TV station, “Nothing was handled right when it came to her.” Giddens suspected that the sheriffs disappointing search could be attributed to the fact that her daughter was Black and Choctaw. (She has since called for a new investigation.)
Not long after that, the sheriffs department responded to a disturbance at a roadside deli. A deputy, Matt Kasbaum, arrived to find a man hogtied on the pavement; witnesses, who said that the man had broken a door and was trying to enter peoples vehicles, had trussed him with cord. “Well, this is interesting,” Kasbaum remarked. He handcuffed the man, Bobby Barrick, who was forty-five, then cut loose the cord and placed him in the back seat of a patrol unit. An E.M.S. crew arrived to examine Barrick. “Hes doped up *hard*,” Kasbaum warned. When he opened the door, Barrick tried to kick his way out, screaming “Help me!” and “Theyre gonna kill me!” As officers subdued him, Barrick lost consciousness. Several days later, he died at a hospital in Texas.
The public initially knew little of this because the sheriff refused to release information, on the ground that Barrick belonged to the Choctaw Nation and therefore the arrest fell under the jurisdiction of tribal police. The Willinghams turned to the Reporters Committee for Freedom of the Press, a nonprofit, headquartered in Washington, D.C., that provides pro-bono legal services to journalists. (The Reporters Committee has also assisted *The New Yorker*.) The organization had recently assigned a staff attorney to Oklahoma, an indication of how difficult it is to pry information from public officials there. Its attorneys helped the *Gazette* sue for access to case documents; the paper then reported that Kasbaum had tased Barrick three times on his bare hip bone. Barricks widow filed a lawsuit, alleging that the taser was not registered with the sheriffs department and that deputies had not been trained to use it. The suit also alleged that Kasbaum and other officers had turned off their lapel cameras during the encounter and put “significant pressure on Barricks back while he was in a face-down prone position and handcuffed.” Kasbaum, who denied the allegations, left the force. The *Gazette* reported that the F.B.I. and the Oklahoma State Bureau of Investigation were looking into the death.
Chris and Angie got married soon after joining the *Gazette*. By the time Chris began publishing his series on the sheriffs department, they were in their late thirties, with small children, two dogs, and a house on a golf course. They once had a bluegrass band, Succotash, in which Angie played Dobro and Chris played everything, mainly fiddle. He taught music lessons and laid down tracks for clients at his in-home studio. Angie founded McCurtain Mosaics, working with cut glass. The couple, who never intended to become journalists, suppressed the occasional urge to leave the *Gazette*, knowing that they would be hard to replace. Bruce lamented, “Everybody wants to work in the big city.”
Five days a week, in the newsroom, Chris and Angie sit in high-walled cubicles, just outside Bruces office. The *Gazettes* other full-time reporters include Bob West, who is eighty-one and has worked at the paper for decades. An ardent chronicler of museum events, local schools, and the weather, West is also known, affectionately, as the staffer most likely to leave his car running, with the windows down, in the rain, or to arrive at work with his toothbrush in his shirt pocket. He once leaned on his keyboard and accidentally deleted the newspapers digital Rolodex. One afternoon in May, he ambled over to Angies desk, where the Willinghams and I were talking, and announced, “Hail, thunderstorms, damaging winds!” A storm was coming.
Bruce and Gwen Willingham own commercial real estate, and they rent several cabins to vacationers in Hochatown. Chris said, “If we didnt have tourism to fall back on, we couldnt run the newspaper. The newspaper *loses* money.” An annual subscription costs seventy-one bucks; the rack price is fifty cents on weekdays, seventy-five on the weekend. During the pandemic, the Willinghams reduced both the publishing schedule and the size of the broadsheet, to avoid layoffs. The papers receptionist, who is in her sixties, has worked there since she was a teen-ager; a former pressman, who also started in his teens, left in his nineties, when his doctor demanded that he retire. In twenty-five paces, a staffer can traverse the distance between the newsroom and the printing press—the *Gazette* is one of the few American newspapers that still publish on-site, or at all. Since 2005, more than one in four papers across the country have closed; according to the Medill School of Journalism, at Northwestern University, two-thirds of U.S. counties dont have a daily paper. When Chris leads tours for elementary-school students, he schedules them for afternoons when theres a print run, though he isnt one to preach about journalisms vital role in a democracy. Hes more likely to jiggle one of the thin metal printing plates, to demonstrate how stagehands mimic thunder.
As the Walker-Donaldson case unfolded, Chris got a tip that the sheriff used meth and had been “tweaking” during the search for her. Bruce asked the county commissioners to require Clardy to submit to a drug test. Urinalysis wasnt good enough—the *Gazette* wanted a hair-follicle analysis, which has a much wider detection window. The sheriff peed in a cup. Promptly, prominently, the *Gazette* reported the results, which were negative, but noted that Clardy had declined the more comprehensive test.
“This has to stop!” the sheriff posted on the departments Facebook page. Complaining about “the repeated attacks on law enforcement,” he wrote, “We have a job to do and that is to protect people. We cant cater to the newspaper or social media every day of the week.” Clardy blamed the *Gazettes* reporting on “former employees who were terminated or resigned.”
Locals who were following the coverage and the reactions couldnt decide what to make of the devolving relationship between the *Gazette* and county leadership. Was their tiny newspaper needlessly antagonizing the sheriff, or was it insisting on accountability in the face of misconduct? Craig Young, the mayor of Idabel, told me that he generally found the papers reporting to be accurate; he also said that the county seemed to be doing a capable job of running itself. He just hoped that nothing would disrupt Idabels plans to host an upcoming event that promises to draw thousands of tourists. On April 8, 2024, a solar eclipse will arc across the United States, from Dallas, Texas, to Caribou, Maine. McCurtain County lies in one of the “totality zones.” According to *NASA*, between one-forty-five and one-forty-nine that afternoon, Idabel will experience complete darkness.
In October, 2022, Chris got another explosive tip—about himself. A local law-enforcement officer sent him audio excerpts of a telephone conversation with Captain Manning. The officer did not trust Manning, and had recorded their call. (Oklahoma is a one-party-consent state.) They discussed office politics and sexual harassment. Manning recalled that, after she was hired, a detective took bets on which co-worker would “hit it,” or sleep with her, first. Another colleague gossiped that she “gave a really good blow job.”
The conversation turned to Clardys drug test. As retribution, Manning said that she wanted to question Chris in one of her sex-crime investigations—at a county commissioners meeting, “in front of everybody.” She went on, “We will see if they want to write about that in the newspaper. Thats just the way I roll. O.K., you dont wanna talk about it? Fine. But its “public record.” Yall made mine and Kevins business public record.’ ”
At the time, Manning was investigating several suspected pedophiles, including a former high-school math teacher who was accused of demanding nude photographs in exchange for favorable grades. (The teacher is now serving thirteen years in prison.) Manning told a TV news station that “possibly other people in the community” who were in a “position of power” were involved. On the recorded call, she mentioned pedophilia defendants by name and referred to Chris as “one of them.” Without citing evidence, she accused him of trading marijuana for videos of children.
Chris, stunned, suspected that Manning was just looking for an excuse to confiscate his phone. But when he started to lose music students, and his kids friends stopped coming over, he feared that rumors were spreading in the community. A source warned him that Mannings accusations could lead to his children being forensically interviewed, which happens in child-abuse investigations. He developed such severe anxiety and depression that he rarely went out; he gave his firearms to a relative in case he felt tempted to harm himself. Angie was experiencing panic attacks and insomnia. “We were not managing,” she said.
That fall, as Chris mulled his options, a powerful tornado struck Idabel. Bruce and Gwen lost their home. They stored their salvaged possessions at the *Gazette* and temporarily moved in with Chris and Angie. In December, the *Gazette* announced that Chris planned to sue Manning. On March 6th, he did, in federal court, alleging “slander and intentional infliction of emotional distress” in retaliation for his reporting. Clardy was also named as a defendant, for allowing and encouraging the retaliation to take place. (Neither he nor Manning would speak with me.)
In May, both Clardy and Manning answered the civil complaint in court. Clardy denied the allegations against him. Manning cited protection under the legal doctrine of qualified immunity, which is often used to indemnify law-enforcement officers from civil action and prosecution. She denied the allegations and asserted that, if Chris Willingham suffered severe emotional distress, it fell within the limits of what “a reasonable person could be expected to endure.”
On the day that Chris filed his lawsuit, the McCurtain County Board of Commissioners held its regular Monday meeting, at 9 *A*.*M*., in a red brick building behind the jail. Commissioners—there are three in each of Oklahomas seventy-seven counties—oversee budgets and allocate funding. Their meeting agendas must be public, so that citizens can scrutinize government operations. Bruce, who has covered McCurtains commissioners for more than forty years, suspected the board of discussing business not listed on the agenda—a potential misdemeanor—and decided to try to catch them doing it.
Two of the three commissioners—Robert Beck and Mark Jennings, the chairman—were present, along with the boards executive assistant, Heather Carter. As they neared the end of the listed agenda, Bruce slipped a recording device disguised as a pen into a cup holder at the center of the conference table. “Right in front of em,” he bragged. He left, circling the block for the next several hours as he waited for the commissioners to clear out. When they did, he went back inside, pretended to review some old paperwork, and retrieved the recording device.
That night, after Gwen went to bed, Bruce listened to the audio, which went on for three hours and thirty-seven minutes. He heard other county officials enter the room, one by one—“Like, Now is your time to see the king.’ ”
In came Sheriff Clardy and Larry Hendrix. Jennings, whose family is in the timber business, brought up the 2024 race for sheriff. He predicted numerous candidates, saying, “They dont have a goddam clue what theyre getting into, not in this day and age.” It used to be, he said, that a sheriff could “take a damn Black guy and whup their ass and throw em in the cell.”
“Yeah, well, its not like that no more,” Clardy said.
“I know,” Jennings said. “Take em down there on Mud Creek and hang em up with a damn rope. But you cant do that anymore. They got more rights than *we* got.”
After a while, Manning joined the meeting. She arrived to a boisterous greeting from the men in the room. When she characterized a colleagues recent comment about her legs as sexual harassment, Beck replied, “I thought sexual harassment was only when they held you down and pulled you by the hair.” They joked about Manning mowing the courthouse lawn in a bikini.
Manning continually steered the conversation to the *Gazette*. Jennings suggested procuring a “worn-out tank,” plowing it into the newspapers office, and calling it an accident. The sheriff told him, “Youll have to beat my son to it.” (Clardys son is a deputy sheriff.) They laughed.
Manning talked about the possibility of bumping into Chris Willingham in town: “Im not worried about what hes gonna do to me, Im worried about what I might do to him.” A couple of minutes later, Jennings said, “I know where two big deep holes are here, if you ever need them.”
“Ive got an excavator,” the sheriff said.
“Well, these are already pre-dug,” Jennings said. He went on, “Ive known two or three hit men. Theyre very quiet guys. And would cut no fucking mercy.”
Bruce had been threatened before, but this felt different. According to the U.S. Press Freedom Tracker, forty-one journalists in the country were physically assaulted last year. Since 2001, at least thirteen have been killed. That includes Jeff German, a reporter at the Las Vegas *Review-Journal*, who, last fall, was stabbed outside his home in Clark County. The countys former administrator, Robert Telles, has been charged with his murder. Telles had been voted out of office after German reported that he contributed to a hostile workplace and had an inappropriate relationship with an employee. (Telles denied the reporting and has pleaded not guilty.)
When Bruce urged Chris to buy more life insurance, Chris demanded to hear the secret recording. The playback physically sickened him. Bruce took the tape to the Idabel Police Department. Mark Matloff, the district attorney, sent it to state officials in Oklahoma City, who began an investigation.
Chris started wearing an AirTag tracker in his sock when he played late-night gigs. He carried a handgun in his car, then stopped—he and Angie worried that an officer could shoot him and claim self-defense. He talked incessantly about “disappearing” to another state. At one point, he told his dad, “I cursed our lives by deciding to move here.”
It was tempting to think that everybody was watching too much “Ozark.” But one veteran law-enforcement official took the meeting remarks seriously enough to park outside Chris and Angies house at night, to keep watch. “Theres an undertone of violence in the whole conversation,” this official told me. “Were hiring a hit man, were hanging people, were driving vehicles into the McCurtain *Gazette*. These are the people that are *running* your sheriffs office.”
On Saturday, April 15th, the newspaper published a front-page article, headlined “*County officials discuss killing, burying Gazette reporters*.” The revelation that McCurtain Countys leadership had been caught talking wistfully about lynching and about the idea of murdering journalists became global news. “Both the FBI and the Oklahoma Attorney Generals Office now have the full audio,” the *Gazette* reported. (The McCurtain County Board of Commissioners declined to speak with me. A lawyer for the sheriffs office wrote, in response to a list of questions, that “numerous of your alleged facts are inaccurate, embellished or outright untrue.”)
On the eve of the storys publication, Chris and his family had taken refuge in Hot Springs, Arkansas. They were still there when, that Sunday, Kevin Stitt, the governor of Oklahoma, publicly demanded the resignations of Clardy, Manning, Hendrix, and Jennings. The next day, protesters rallied at the McCurtain County commissioners meeting. Jennings, the boards chairman, resigned two days later. No one else did. The sheriffs department responded to the *Gazettes* reporting by calling Bruces actions illegal and the audio “altered.” (Chris told me that he reduced the background noise in the audio file before Bruce took it to the police.)
People wanted to hear the recording, not just read about it, but the *Gazette* had no Web site. No one had posted on the newspapers Facebook page since 2019, when Kiara Wimbley won the Little Miss Owa Chito pageant. The Willinghams published an oversized QR code on the front page of the April 20th issue, linking to a Dropbox folder that contained the audio and Angies best attempt at a transcript. They eventually put Chriss articles online.
In a rare move, the seventeen-member board of the Oklahoma Sheriffs Association voted unanimously to suspend the memberships of Clardy, Manning, and Hendrix. The censure blocked them from conferences and symbolically ostracized them from Oklahomas seventy-six other sheriffs. “When one goes bad, it has a devastating effect on everybody,” Ray McNair, the executive director, told me. Craig Young, Idabels mayor, said, “It kind of hurt everyone to realize weve had these kind of leaders in place.”
Young was among those who hoped that Gentner Drummond, the attorney general, would depose the sheriff “so we can start to recover.” But, on June 30th, Drummond ended his investigation by informing Governor Stitt that although the McCurtain County officials conversation was “inflammatory” and “offensive,” it wasnt criminal. There would be no charges. If Clardy were to be removed from office, voters would have to do it.
Decades ago, Bruce launched “Call the Editor,” a regular feature on the *Gazettes* opinion page. Readers vent anonymously to the newspapers answering machine, and Bruce publishes some of the transcribed messages. When the world ran out of answering machines, he grudgingly upgraded to digital, which requires plugging the fax cable into his computer every afternoon at five and switching it back the next morning. A caller might refer to Nancy Pelosi and Chuck Schumer as “buffoons,” or ask, Why is the Fire Department charging me a fifty-cent fee? There have been many recent messages about the sheriff and the commissioners, including direct addresses to Clardy: “The people arent supposed to be scared . . . of you or others that wear a badge.”
Bruce and Gwen worried that the ongoing stress would drive Chris and Angie away from the *Gazette*—and from McCurtain County. Sure enough, theyre moving to Tulsa. Angie told me, “Were forty years old. Weve been doing this half our lives. At some point, we need to think of our own happiness, and our familys welfare.” Bruce protested, but he couldnt much blame them. ♦
The newspaper managed to secretly record a county meeting and caught officials talking about the idea of killing *Gazette* reporters.
&emsp;
&emsp;
---
`$= dv.el('center', 'Source: ' + dv.current().Link + ', ' + dv.current().Date.toLocaleString("fr-FR"))`

@ -0,0 +1,91 @@
---
Tag: ["🥉", "⚽️", "🇺🇸", "🇦🇷", "🐊"]
Date: 2023-07-29
DocType: "WebClipping"
Hierarchy:
TimeStamp: 2023-07-29
Link: https://nymag.com/intelligencer/2023/07/american-soccer-has-never-seen-a-spectacle-like-lionel-messi.html
location:
CollapseMetaTable: true
---
Parent:: [[@News|News]]
Read:: 🟥
---
&emsp;
```button
name Save
type command
action Save current file
id Save
```
^button-AmericaHasNeverSeenaSpectacleLikeMessiNSave
&emsp;
# America Has Never Seen a Spectacle Like Messi
![](https://pyxis.nymag.com/v1/imgs/66d/783/625db3e68cbcdc50f04bb8a9dc7e158b0a-miami-soccer-01.rhorizontal.w700.jpg)
Photo: Giorgio Viera/AFP via Getty Images
Weve been asked to believe before. When the bombastic Swede Zlatan Ibrahimovic came to play in Los Angeles in 2018, it was going to herald a new era for soccer in North America, just as it would when the legendary Ivorian Didier Drogba arrived in Montreal in 2015, and the mercurial Brazilian Kaká in Orlando, and the generationally talented Frenchman Thierry Henry in New York, or the superstar Brit Wayne Rooney in D.C., all of them having followed David Beckhams lead. The sport was about to take over *any second now* thanks to demographic transformations, a TV-rights revolution, the sheer energy visible in bars and parks and playgrounds every four years during the mens [World Cup](https://nymag.com/intelligencer/2022/12/the-last-world-cup.html) — not to mention the [American womens multiple championship runs](https://nymag.com/intelligencer/2023/07/fifa-world-cup-2023-u-s-womens-team-aims-for-glory-again.html). The era of Pelés ill-fated 1975 arrival in Manhattan was ancient history.
In a way, it was all true. American soccer has grown rapidly, and those stars all had something to do with it, as have the improvement of schoolyard culture, increasingly aggressive broadcast deals for the major European leagues, and better-organized training regimes. It just hasnt been true *enough*.
This time is different.
This months arrival of [Lionel Messi](https://nymag.com/intelligencer/2023/06/messi-to-miami-shows-that-major-league-soccer-has-arrived.html) to Miami is already something entirely new. This time, sports in America have shifted, the worlds biggest superstar and most recent World Cup hero having touched down not just in search of an easy career denouement but — as his [debut goal](https://www.youtube.com/watch?v=K6fltq0dn_E), a stunning long-range, game-winning free kick that felt almost scripted, demonstrated — a new paradigm. At minimum, its a real reordering of American athletic attention. At least, as long as he stays.
Sometime between his familys heavily photographed arrival in Fort Lauderdale and the moment his inch-perfect free kick spun into the back of the net as his debut game ended last Friday, it became clear that we are now witness to something novel: a genuine American soccer spectacle.
This Messi is no longer the one who twists world-class opponents into dust for 90 minutes, but still one whose routine moments of transcendent grace and precision force the other 21 players on the field to shape their every movement around him. Before that ball bounced off the nets pink twine and hit the grass with the final whistle in South Florida, it was evident that this Messi was one who could ensure that even if soccer never comes to dominate in this country like it does elsewhere, it will no longer be ignorable. And if — *if* — he stays long enough to make the spectacle a fixture, and if his glow is as durable as it now seems, the best to ever play the sport could stand to inspire a sea change in the way his new home views it, and how the soccer world views that new home.
There was not ultimately much romance to the 36-year-old Messis arrival. His new teams owners, Beckham and the billionaire Cuban American Mas brothers, had been [pursuing him since 2019](https://theathletic.com/4667336/2023/07/15/lionel-messi-inter-miami-contract/), before his new team Inter Miami even formally existed. Their long-standing promise to Messis entourage was that he would forever change the sport by landing in America. They explained their plan to build a new stadium near Miamis airport, replacing their underwhelming temporary structure in Fort Lauderdale, and to bring some of his old superstar buddies over, too. And they laid out an unheard-of contract reportedly consisting of eventual part ownership of the team on top of a cut of Adidass merchandise revenues and of Apples broadcasting money — up to $70 million per year, in a league with an average salary of under half a million. Even then, Messi only signed once his relationship with his Qatar-owned superteam in Paris had soured beyond redemption and once it was clear that his old club in Catalonia could no longer afford him. And no one is under any illusions that this experiment would last much more than two years; it may run out after one.
But for the moment, Major League Soccer, the top American league, is suddenly what its been trying to become ever since its advent in 1993: one (just not *the*) power center of the soccer world. In recent years, it had come to embrace a new kind of influence, as young, mostly Latin American talents combined with older Euro castoffs and all sorts of Americans to make the league surprisingly competitive, at least enough to regularly ship promising players over to established clubs in Europe. No longer was it so reliant on once-great, near-retirement European players to draw fans. As recently as December, the league was celebrating the news that for the first time, one of its players had won a World Cup: Thiago Almada, a young star for Atlanta United surely headed for a big-money move to Europe soon, had played a few meaningless minutes for Argentina at last years World Cup in Qatar.
But now theres Messi, whose first minutes in Miami pink immediately made the game the most-watched American one ever, by far. Miamis No. 10 jerseys are on backorder through October; every single ticket for every one of the teams games for the remainder of the season has seen its price balloon.
1. ![](https://pyxis.nymag.com/v1/imgs/ed1/91d/2b5c4a1219d245c78983fb0e70969b0e76-miami-soccer-08.rhorizontal.w670.jpg)
Celebrating with his family during the Leagues Cup 2023 match between Cruz Azul and Inter Miami. (Tap or click to see
2.
3. Shirts for sale in the Wynwood Art District of Miami.
4.
5. Celebrating last weeks game-winner.
6.
If the non-soccer media has had a hard time explaining the magnitude of Messis move, thats because no clear parallel exists. Messis path from too-tiny prodigy in Rosario to once-in-a-lifetime phenom in Barcelona is well known by now even to casual fans. So is his redemption arc for Argentines, his determination to apply his singular sorcery one last time, winning his country its first major trophies in almost 30 years — first the brutal continental Copa America in 2021, then the pyrotechnically dramatic World Cup in 2022. Thus, he completed his journey from “just a little too cold and Spanish” to “deity on the level of Diego Maradona.”
The toxic debates that once dominated soccers online fever swamps, over whether Messi or the Portuguese star Cristiano Ronaldo was better, have mostly faded since Messi won the World Cup, occasionally replaced by half-hearted bait: *Okay, but is Messi bigger than Taylor Swift or Beyoncé?* Even those arguments tend to end with images of Argentinas World Cup celebrations, when an estimated 4 million Porteños [filled the streets of Buenos Aires](https://www.washingtonpost.com/world/2022/12/18/argentina-world-cup-win-celebration/). Those revelries werent just limited to South America; some of the most buoyant street parties were reported as far afield as [Bangladesh](https://www.marca.com/en/world-cup/2022/12/01/6388c9bcca47413a1f8b459a.html). Within weeks of the news that Messi would be joining Inter Miami, his previously mostly anonymous club became Instagrams fourth-most-followed American team in any sport, topping every single MLB and NFL franchise. Its [12 million new fans](https://www.instagram.com/intermiamicf/) lapped even the [original Inter](https://www.instagram.com/inter/?hl=en), the historic Milanese side that just this spring finished as the second-best in all of Europe.
And it was not immediately obvious what American viewers, or Messi, could expect when he arrived. Rooney, for one, predicted a rough welcome. Now the coach of D.C. United, the former striker [warned](https://www.espn.com/soccer/story/_/id/38020665/lionel-messi-find-easy-mls-wayne-rooney) that Messi “wont find it easy here. It sounds mad, but players who come in find its a tough league — the traveling, the different conditions in different cities, and theres a lot of energy and intensity on the pitch.” The young Argentine Álvaro Barreal, of FC Cincinnati, meanwhile, [predicted](https://tntsports.com.ar/internacional/messi-tres-goles-por-partido-20230713-0078.html) Messi would score three or four goals per game.
The MLS is a physically demanding league, but not a particularly skilled or fast one compared to the Spanish or French leagues hed been winning for years. His new team, too, was terrible — when Messi and his former Barcelona teammate Sergio Busquets arrived, Inter Miami hadnt won since May. But on this question, at least, we have a preliminary answer. Messi scored thrice in his first hour on the pitch (including two goals in his second game on Tuesday night), completely transforming his suddenly high-flying squad and looking a bit like a high-schooler ripping through a middle-school recess game.
What makes his arrival different on the field is the sheer entertainment value of what he can routinely create. With a team geared toward supporting him, he is capable of brilliance that comes from nowhere and which can almost seem routine if you watch enough of him but looks alien if you dont. Beckham didnt have that, nor did Rooney. None of their ilk dominated a World Cup half a year before landing Stateside.
Miami, it seems, knew what it was getting. The capital of Latin America has been bathed in the teams pink, its walls covered in new murals of his face, the Messi familys every move being tracked minutely enough to cause a social-media and real-life stampede on a Publix in Sea Ranch Lakes when he was spotted shopping for cereal upon arriving.
The city appears intent on projecting to the rest of the country how lucky it should feel that Messi opted for it over the Saudi Arabian siren song thats luring scores of his would-be peers. That countrys [Public Investment Fund has plowed unprecedented cash](https://www.nytimes.com/2023/06/02/sports/soccer/saudi-soccer-messi-benzema-ronaldo.html) into its league following Ronaldos arrival last year, all in an attempt to improve the countrys reputation by associating it with a popular sport, [like it did with golf](https://nymag.com/intelligencer/2023/06/the-pgas-liv-merger-shows-it-never-had-any-principles.html). Messi, who already had a [$25 million tourism deal](https://www.nytimes.com/2023/06/18/sports/soccer/lionel-messi-saudi-arabia.html) with the kingdom, was considering one local clubs offer that was reported to reach $1.6 billion over three years. Meanwhile, other teams have spent the summer luring a surprising number of high-level players from England, Spain, Italy, France, and Germany, likely considerably raising the local level of play and significantly destabilizing soccers finances and market structure. As I type, Messis former team in Paris has been considering an unprecedented Saudi offer of around $300 million for the young French supernova Kylian Mbappe, who would rake in nearly $800 million for one year of work.
Even if Messi vaults the MLS into prime time, the league might not reach elite status on the international stage — not when its effectively up against an effectively unlimited cash pit in the Gulf. But some players have already suggested theyd prefer living in Miami or L.A. or New York for a fraction of the ludicrous salaries on offer, and perhaps Messi can hasten that trend. In opting for (still wildly lucrative) Miami, he did not appear to be seeking a role in a geopolitical tug-of-war, but basic happiness, if the smiles that plaster his face every time hes seen in public now are any indication. The honeymoon period will end eventually, but as rumors fly about which of his other former teammates and friends might soon join him in Florida, he appears more at ease by the minute. ([Jordi Alba? Confirmed.](https://www.intermiamicf.com/news/inter-miami-cf-signs-spanish-international-defender-jordi-alba) Andres Iniesta and Luis Suarez? Well see.) As his fans know, a Messi who feels no need to prove anything, who feels appreciated by his team and his teammates, is a Messi at his best, or at least his most entertaining.
And what do Americans want out of their sports if not a great story punctuated by acts of superhuman athleticism? The entertainment we now have on our shores — the glamour and the celebrity and the show — may feel a bit valedictory, a bit too into itself. (As his second game started, DJ Khaled made sure Messi walked out onto the pitch with the producers young son at his side, while P. Diddy, Camila Cabello, and Rauw Alejandro watched.) But theres no doubting [all the eyeballs](https://apnews.com/article/lionel-messi-inter-miami-debut-fan-reaction-0635845e03cc8ad476aa01d47b1d2b44). There, as Messi lined up that final kick on Friday in front of a crowd two-thirds dressed in the teams pink and one-third in Argentinas signature sky blue and white, was LeBron James, not far from Kim Kardashian, gaping and filming on his iPhone. As the ball nestled into the upper corner of the net, there was Serena Williams, looking nothing short of astonished. And as the final whistle blew, there was Beckham himself, trying hard not to tear up as Messi beamed.
America Has Never Seen a Spectacle Like Messi
&emsp;
&emsp;
---
`$= dv.el('center', 'Source: ' + dv.current().Link + ', ' + dv.current().Date.toLocaleString("fr-FR"))`

@ -0,0 +1,365 @@
---
Tag: ["🫀", "🥉", "🎾", "🚺"]
Date: 2023-07-17
DocType: "WebClipping"
Hierarchy:
TimeStamp: 2023-07-17
Link: https://www.washingtonpost.com/sports/interactive/2023/chris-evert-martina-navratilova-cancer
location:
CollapseMetaTable: true
---
Parent:: [[@News|News]]
Read:: 🟥
---
&emsp;
```button
name Save
type command
action Save current file
id Save
```
^button-BitterrivalsBelovedfriendsSurvivorsNSave
&emsp;
# Bitter rivals. Beloved friends. Survivors.
*Deep Reads features The Washington Posts best immersive reporting and narrative writing.*
There is an audible rhythm to a Grand Slam tennis tournament, a *thwock-tock, tock-thwock* of strokes, like beats per minute, that steadily grows fainter as the field diminishes. At first the locker room is a hive of 128 competitors, milling and chattering, but each day their numbers ebb, until just two people are left in that confrontational hush known as the final. For so many years, Chris Evert and Martina Navratilova were almost invariably the last two, left alone in a room so empty yet intimate that they could practically hear what was inside the others chest. *Thwock-tock*.
They dressed side by side. They waited together, sometimes ate together and entered the arena together. Then they would play a match that seemed like a personal cross-examination, running each other headlong into emotional confessions, concessions. And afterward they would return to that small room of two, where they showered and changed, observing with sidelong glances the others triumphalism or tears, states beyond mere bare skin. No one else could possibly understand it.
Except for the other.
“She knew me better than I knew me,” Navratilova says.
They have known each other for 50 years now, outlasting most marriages. Aside from blood kin, Navratilova points out, “Ive known Chris longer than anybody else in my life, and so it is for her.” Lately, they have never been closer — a fact they refuse to cheapen with sentimentality. “Its been up and down, the friendship,” Evert says. At the ages of 68 and 66, respectively, Evert and Navratilova have found themselves more intertwined than ever, by an unwelcome factor. You want to meet an opponent who draws you nearer in mutual understanding? Try having cancer at the same time.
“It was like, are you *kidding* me?” Evert says.
The shape of the relationship is an hourglass. They first met as teenagers in 1973, became friends and then split apart as each rose to No. 1 in the world at the direct expense of the other. They contested 80 matches — 60 of them finals — riveting for their contrasts in tactics and temperament. After a 15-year rivalry, they somehow reached a perfect equipoise of 18 Grand Slam victories each.
On some slow or rainy day, when the tennis at Wimbledon is banging and artless as a metronome or suspended by weather, do yourself a favor. Call up highlights of Evert and Navratilovas match at the 1981 U.S. Open. They are 26 and 24 years old, respectively, honed to fine edges. Its as if they were purposely constructed to test each other — and to whip up intense reactions from their audiences, the adorable blond American middle-class heroine with the frictionless grace against the flurrying Eastern European with sculpted muscles who played like a sword fighter.
Evert played from a restrained conventional demeanor, with ribbons in her hair, earrings in her ears. Yet she was utterly new. Audiences had never seen anything quite like the compressed lethality of this two-fisted young woman, who knocked off the legendary Margaret Court at the age of just 15 in 1970. She was a squinteyed, firm-chinned executioner who delivered strokes like milled steel.
She had mystique. And she refused to be hemmed in. As she held the No. 1 ranking for five straight years, she reserved the right to court romantic danger with a bewildering array of famous men, not all of them suitable for a nice Catholic girl, from the surly Jimmy Connors to superstar actor Burt Reynolds — and to put them second to her career. Her composure cloaked one of the toughest minds in the annals of sport, and her .900 winning percentage remains virtually unrivaled in tennis history.
Navratilova was her inverse, a gustily emotional left-handed serve-and-volleyer who challenged every traditional definition of heroine with an edgy militancy. Her game had an acrobatic suppleness that was also entirely novel — never had a female athlete moved with such airborne ease. Or acted so honestly. Navratilova was as overtly political as Evert was popular. Her defection from communist Czechoslovakia in 1975 was an act of unimaginable bravery, and her struggle to win acceptance from Western crowds was compounded by her defiant inability to censor herself or mask her homosexuality. Advised to put a man in her box at Wimbledon, she refused. Once, when asked whether she was “openly” gay, she shot back, “As opposed to closedly?”
More prideful generations cant comprehend how in the vanguard Navratilova was when she came out in 1981 or the price she paid in lost endorsements. The New York Times that year announced that homosexuality was “the most sensitive issue in the sports marketplace, more delicate than drugs, more controversial than violence.” Male sportswriters fixated on the veins in her arms. Newsweek veered out of its way to accuse her of “accentuating some lifestyle manifesto.” She repaid them all by becoming the first female athlete to win a million dollars in prize money in a single year.
Small wonder Evert and Navratilovas matches seemed like such colossal encounters. As they competed, the TV cameras zeroed in on their faces and found mother-of-dragons expressions, a willingness to play to ashes. That too was new.
It once had been considered “unnatural” for a woman to contend with such unembarrassed intensity. As Everts own agent said in 1981, female sports stars were expected to be “ladylike” and not too “greedy” in their negotiations, while their male counterparts could win “every nickel and feel quite comfortable about it.” Not anymore. Evert and Navratilova had established their common right “to go to the ends of the earth, the absolute ends of the earth, to achieve something,” Evert says.
By the time Evert and Navratilova retired from singles play, in 1989 and 1994, respectively, they had reached a mutual understanding. Not only were they level with an equal number of major titles, but the rivalry was so transcendent, it had become a kind of joint accomplishment.
![](https://img.washingtonpost.com/wp-apps/imrs.php?src=https://arc-anglerfish-washpost-prod-washpost.s3.amazonaws.com/public/LPR6MTCAYFA3DG6OPUBGSZQVSE.jpg&high_res=true&w=2048)
Martina Navratilova, left, won her first U.S. Open title over Chris Evert in 1983. (Bettmann Archive)
After their retirements, they followed strangely similar courses. They were neighbors in Aspen, Colo., and Florida, at times living just minutes from each other. Everts longtime base is Boca Raton, while Navratilova has a home in Miami Beach as well as a small farm just up the road in Everts birthplace of Fort Lauderdale, where she keeps a multitude of chickens. “She brings me eggs,” Evert says. Each eventually went into tennis broadcasting, which meant they continued to meet at Grand Slam fortnights. “Our lives are so parallel, its eerie when you think about it,” Navratilova says.
They became the kind of friends who talked and texted weekly, sometimes exchanging black-box confidences deep in the night. And who could tease each other with a mischief they wouldnt tolerate from anyone else. On Navratilovas 60th birthday, she received a Cartier box from Evert. Inside was a necklace with three rings of white gold, signifying the two and their long friendship. “I guess Im kind of the guy in our relationship, giving her jewelry,” Evert cracks.
The parallels were funny, until they werent.
In January 2022, Evert learned that she had Stage 1C ovarian cancer. As Evert embarked on a grueling six cycles of chemotherapy, Navratilova pulled the Cartier necklace from her jewelry box and put it on, a talisman. “I wore it all the time when I wanted her to get well,” Navratilova says. For months, she never took it off.
Only one thing made her remove it: radiation. In December 2022, Navratilova received her own diagnosis: She had not one but two early-stage cancers, in her throat and breast.
“I finally had to take it off when I got zapped,” Navratilova says.
On a late spring day, Evert and Navratilova sat together in an elegant Miami hotel, both finally cancer-free at the end of long dual sieges. Evert was just a few weeks removed from her fourth surgery in 16 months, a reconstruction following a mastectomy she underwent in late January. Navratilova had just finished the last session of a scorching protocol of radiation and chemo, during which she lost 29 pounds. She toyed with a plate of gluten-free pasta, happy to be able to swallow without pain.
They were finally ready to look over their shoulders and tell some stories. New stories but also some old ones that felt fresh again or came with a new frankness.
Evert recalled the day she phoned Navratilova to tell her she had cancer.
“She was one of the very first people I told,” she says.
Wait a second.
Is Evert saying that the rival who dealt her the deepest professional cuts of her life, whose mere body language on the court once made her seethe, was among the very *first* people she wanted to talk to when she got cancer? Its one thing to share a rich history and be neighbors and swap gifts and teasing, but they are *those* kinds of confidantes?
And is the same true for Navratilova, that Evert — whose mere existence meant that no matter how much she won, she could never really win, who at one point dominated her with an infuriating superciliousness — was among the *first people* she called when she got *cancer*? Is that what they are saying?
Indeed, it is.
“When I called her, it was a feeling of, like, coming home,” Evert says.
Hang on, you say.
Go back.
![](https://img.washingtonpost.com/wp-apps/imrs.php?src=https://arc-anglerfish-washpost-prod-washpost.s3.amazonaws.com/public/3LO26XIIW55YQS7RH2CCTISDJY.JPG&high_res=true&w=2048)
Evert and Navratilova won the Wimbledon women's doubles title in 1976. (Popperfoto/Getty Images)
### Guts and glory, together and apart
They met Feb. 25, 1973, in the player lounge of a Florida tour stop. Evert, 18, was playing backgammon with a tournament official at a table by a wall. Though she had been a top player for two years by then, she was by nature shy and felt isolated by her fame and the circumscribing stereotype that came with it. Sports Illustrated would paint her as a “composite of Sandra Dee, the Carpenters, and yes, apple pie,” which she dealt with by cultivating a clamped, sardonic purse of the mouth.
Evert glanced up and saw a new girl approaching, pale and plump as a dumpling, with a guileless face beneath a mop of hair. “Hi, Chris!” she recalls Navratilova blurting.
From the 16-year-old Navratilovas point of view, it was Evert who spoke first, giving her a sweet murmured “Hi” and a small wave. *Oh, my God, Chris Evert said hello to me*, Navratilova thought. Navratilova recognized Evert from the pictures she pored over in World Tennis magazine, one of the few subscriptions she could get in her home village of Revnice, outside of Prague.
Lets stipulate that the greetings were simultaneous, the reflexive reactions of two girls who were the antithetical of mean, more sensitive than their other competitors ever realized, “both always underestimated in our empathy,” as Navratilova says. And who had the mutual desire to break the “taboo” of competition, as Evert once called it, that inhibited so many girls.
Later in the tournament, Evert spotted Navratilova again. “Picture this,” Evert says. Navratilova was walking straight through the grounds in a one-piece bathing suit and flip flops, oblivious to stares at her crisscrossing tan lines. It was Navratilovas first trip to the United States; she was granted an eight-week leave by the communist Czechoslovakian government to try her game against the Western elites, and she was determined to luxuriate in it. *Shes got guts*, Evert thought.
Their first match a month later, in Akron, Ohio, on March 22, 1973, is crystal to them both a half-century later. Though Evert won in straight sets, Navratilova pushed her to 7-6 in the first. “Five-four in the tiebreaker,” Navratilova says instantly, as soon as its mentioned, bristling, “And I actually had a set point.”
Evert had never faced anything like it. The curving lefty serve caromed away from her, and so did the charging volleys. “She had weapons that I hadnt seen in a young player — ever,” Evert says. Two things gave Evert relief: Navratilovas lack of fitness — she had put on 20 pounds in four weeks on American pancakes — and her emotionalism. “She was almost crying on the court in the match, you know, just moaning,” Evert says. Nevertheless, Evert had never felt such a formidableness from a new opponent and never would again. “Overwhelming” is the word Evert searches for — and finds. “More than any player coming up in the last 40 years.”
To Navratilova, it was equally memorable, for the simple reason that she had nearly taken a set off Evert. “For me, that was unforgettable. But, yeah, I made an impression. … I was pretty confident that I would beat her one day. I just didnt know how long it would take.”
Friendship was easy enough at first — so long as Evert was winning. She won 16 of their first 20 matches. In their first Grand Slam final, at the 1975 French Open, she smoked Navratilova 6-2, 6-1 in the second and third sets after casually sharing a lunch of roasted chicken with her.
![](https://img.washingtonpost.com/wp-apps/imrs.php?src=https://arc-anglerfish-washpost-prod-washpost.s3.amazonaws.com/public/7Z4RI7BLZ27LGNLH6SM55IN6OM.JPG&high_res=true&w=2048)
Evert defeated Navratilova in the 1975 French Open final, her second straight title in Paris. (AP)
Evert was so utterly regnant and aloof in those days she seemed to Navratilova like a castle with a moat. She had a forbidding self-containment, a stony demeanor that one competitor from the 1970s, Lesley Hunt, likened in Sports Illustrated to “playing a blank wall.”
Navratilova could not fathom how Evert cast such a huge projection with such an unprepossessing figure. “I was like, Holy s---, how does she do it? ” Navratilova remembers. Evert stood just 5-foot-6 and weighed a slim-shouldered 125 pounds. But she had a superb economy of motion — and something else. One day Navratilova watched fascinated as Evert practiced against her younger sister Jeanne Evert, who also played on the tour. Both Everts had two-handed backhands, and they wore skirts with no pockets. Which meant that to hit a backhand, someone had to drop the ball she carried in her left hand and it would bounce distractingly around her feet. As Navratilova watched, she realized with growing amusement that Chris was engaged in a subtle contest of will.
“It was kind of a mental fight,” Navratilova recalls. “Who was going to hit the first ball? Because whoever didnt hit first would have to drop their ball.” Chris never missed the chance to hit first. “It was a small thing, but it took a steely determination,” Navratilova says. “And she never missed.” It registered. By the end of the session Navratilova understood that Everts greatest weapon was “her brain.”
Navratilova herself was so mentally distractible that she would follow the flight of a bird across the stadium sky. Her thoughts and feelings seemed to blow straight through her, unfiltered. Evert could not help but be disarmed by this openhearted, unconstrained young woman who seemed hungry to experience … everything. Pancakes. Pool time. Freedom. Friendship. Fast cars.
![](https://img.washingtonpost.com/wp-apps/imrs.php?src=https://arc-anglerfish-washpost-prod-washpost.s3.amazonaws.com/public/Z6TYF425ZENMBQ7AXONPFOK6XY_size-normalized.JPG&high_res=true&w=2048)
Navratilova took the 1978 Wimbledon title by defeating Evert. (Professional Sport/Popperfoto/Getty Images)
Everts urge to befriend Navratilova won out over her reserve. Evert invited her to be her doubles partner and even took her on a double date, with Dean Martin Jr., son of the entertainer, and Desi Arnaz Jr., Martins actor friend and pop-band collaborator. The teen idols squired Evert and Navratilova to a drive-in movie.
Evert and Navratilova traveled together, practiced together, even brunched before they met in finals. “I was a tough nut to crack,” Evert observes. “But she was so innocent and almost vulnerable when she was young, I trusted being safe with her.”
Over dinners and glasses of wine, Navratilova discovered the mutinous side of Evert, which expressed itself with an unsuspected saltiness. Evert delighted in telling Navratilova scandalously dirty jokes. The outward banality of the girl hurling herself off the pedestal compounded Navratilovas outbursts of laughter. “The curtain would fall,” Navratilova says, “and the funny Chris came out. The filter was gone. The walls were gone. And thats when I realized she just kept the cards close to her chest. But she was soooo mischievous underneath it all.”
By 1976, however, Navratilova began to score more victories over Evert. In that years Wimbledon semifinals, it was all Evert could do to hold her off, 6-3, 4-6, 6-4. “I was nipping at her heels,” Navratilova says. “I was becoming a threat.”
![](https://img.washingtonpost.com/wp-apps/imrs.php?src=https://arc-anglerfish-washpost-prod-washpost.s3.amazonaws.com/public/NZCPX7ZV64WXZOW2M67N2CD47Y.JPG&high_res=true&w=2048)
Evert was No. 1 in the world in early 1977, while Navratilova was ranked second. (AP)
Which is when all the trouble started and they entered the narrowest part of the hourglass. Evert believed she had gotten too close to Navratilova. She broke up their doubles partnership. “She ditched me,” Navratilova says.
Evert did it politely, telling Navratilova she would have to find another partner because she wanted to focus on her singles. But it stung. And Navratilova knew the real reason. “Chris, by her own admission, could only be close friends with people who never had a chance of beating her,” Navratilova says.
Evert hated to play someone she cared about — hated it. “I thought, God, I cant be emotional towards these people, ” Evert says now. “… It was easier not to even know them.”
Everts on-court demeanor was a facade, developed to please her father and coach, Jimmy Evert, a renowned teaching pro at the public Holiday Park in Fort Lauderdale. Jimmy was a man of such rigor and unbending rectitude that he refused to raise his $6 hourly fee for lessons because of his daughters success. But he was not right about everything. He demanded that Chris commit to tennis to the exclusion of all else — friends were incompatible with rivals, he told her. “I was raised in a house that did not encourage relationships,” she says. And he brooked no dissent. “It was a fearful sort of upbringing,” she adds. The result was a young woman who beneath her stoicism roiled with insecurity and anxiety.
Navratilova observes that, in its way, Everts childhood was as stifling as her own had been in Czechoslovakia. “We are much more the same than different, really,” she says. “So much of it was imposed on both of us, one way or the other, with her Catholic, proper girl upbringing and me being suppressed by communism.”
Evert convinced herself that she and Navratilova had become too familiar with each other and that it cost her an edge.
So “I separated myself from her,” Evert says.
It was bad timing for Navratilova, who was feeling doubly cut off. A year earlier, she had defected. Czech authorities had increasingly expressed the ominous sentiment that Navratilova was getting too Americanized — partly thanks to her budding friendship with Evert — and she feared they were about to choke off her career.
Navratilova struggled with homesickness; concern for her family, whom she would not see for almost five years; mastering a new language (she studied English by watching “I Love Lucy” reruns); and the stresses of hiding her homosexuality. As she related in her autobiography, by the time Evert ditched her at the U.S. Open, “I was a walking candidate for a nervous breakdown.” She lost in the opening round to a grossly inferior player, Janet Newberry, and dissolved into sobs on national television.
But Navratilova emerged from the catharsis a firmer character. She watched with a mounting, gnawing dissatisfaction as Evert dominated the Grand Slams, challenged only by Evonne Goolagong. At one point, Navratilova heard Evert talk in an interview about how her rivalry with Goolagong was “defining” her.
Navratilova bridled at the statement. “I remember thinking, what about *me*?” Navratilova recalls.
When it finally came, Navratilovas breakthrough — and the role reversal — was breath-snatching. By 1981 she had developed some armor. Training with Nancy Lieberman, the former basketball great, she dropped her body fat to 8 percent. Lieberman told her she had to get “mean” about Evert and showed what she meant by being intentionally rude to Evert in player lounges. Evert would start to greet them, and Lieberman would turn her back or say frostily, “Are you talking to me?” It quietly infuriated Evert. “They werent very nice to me,” Evert says. “I mean, Nancy taught her to hate me.”
From 1982 to 1984, it was Navratilovas turn to be cold. She reached 10 Grand Slam finals — and won eight of them. In that stretch, she beat Evert 14 straight times, with an abbreviating serve-and-volley power that seemed almost dismissive. “She was in the way of me getting to No. 1,” Navratilova says. “So I kind of created that distance. She was my carrot when I was training. You know, I would imagine beating Chris. She became the villain, even though she really wasnt.”
Evert struggled not to lose heart, especially when Navratilova beat her by 6-1, 6-3 in the 1983 U.S. Open. “It was not a good feeling to know that I wasnt even in the game,” Evert says. About to turn 30, she had fallen behind in a variety of ways, from her fitness to the fact that Navratilova was using a graphite racket while she still used wood. She was also trying to sort her personal life and separated from her husband of five years, British player John Lloyd.
Navratilova paraded her triumph by whipping around in a white Rolls-Royce convertible, one of six cars in her garage. She won so much that by 1984 it made her generous again. She now trained with a more amiable tennis tactician named Mike Estep, and her partner, Judy Nelson, a former Texas beauty contestant, liked Evert and worked to repair the relationship. At Wimbledon that July, after beating Evert, 7-6 (7-5), 6-2, to even their all-time match record at 30-30, Navratilova was sensitive to Everts quiet devastation. Navratilova said sweetly into the victors microphone, “I wish we could just quit right now and never play each other again because its not right for one of us to say were better.”
“So does that mean shes retiring now?” Evert said in a news conference afterward, wisecrackery intact.
Navratilovas dominance of Evert that summer made her more of an antiheroine than she had ever been — and resulted in one of the most wounding days of her career. On the afternoon of the 1984 U.S. Open final, they had an interminably tense wait as Pat Cash and Ivan Lendl engaged in a five-set mens semifinal that went to two tiebreakers and lasted nearly four hours. There was nothing to do but stare into space or chat. Evert became starving. Navratilova, who had a bagel, split it and handed her half.
![](https://img.washingtonpost.com/wp-apps/imrs.php?src=https://arc-anglerfish-washpost-prod-washpost.s3.amazonaws.com/public/RANEGEVFECNGRS4ZK26RZEZG64_size-normalized.JPG&high_res=true&w=2048)
The 1984 U.S. Open final was one of their classic battles. (Leo Mason/Popperfoto/Getty Images)
When they finally took the court, they needed a while to find their form — and then they suddenly went into full classic mode. When Evert began to lace the court with passing shots as if she was running out clotheslines, taking the opening set 6-4, the crowd leaped to its feet and roared like jet engines.
But when Navratilova took the second set 6-4, there came a smattering of boos. As Navratilova turned the match in her favor, some grew surly. They began to applaud her errors and cheered when she double-faulted. When she won it with a knifing volley, 4-6, 6-4, 6-4, there was a barely polite ovation.
Navratilova was unstrung by the rejection. As Estep gave her a congratulatory hug, she burst into tears in his arms. “Why were they so against me?” she asked Estep. The answer: Because she had won too much against Evert. It was Navratilovas sixth straight Grand Slam victory — and the most ambivalent feeling she ever had. She buried her head in a towel, shoulders quivering.
One person knew how Navratilova felt that day: Evert. For years she had lived with the “ice maiden” label and frigidness from crowds that considered her too impassive. Goolagong, the wispy, ethereal Australian, had always been more favored by fans, to the point that on one occasion Evert came back into the locker room after a loss and flung her rackets to the floor and spat bitterly, “Now I hope theyre happy.”
[Press Enter to skip to end of carousel](https://www.washingtonpost.com/sports/interactive/2023/chris-evert-martina-navratilova-cancer/?pwapi_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWJpZCI6IjM2NTY2MzMiLCJyZWFzb24iOiJnaWZ0IiwibmJmIjoxNjg4NzAyNDAwLCJpc3MiOiJzdWJzY3JpcHRpb25zIiwiZXhwIjoxNjg5OTk4Mzk5LCJpYXQiOjE2ODg3MDI0MDAsImp0aSI6Ijk1MjgxZDU2LTc3MDMtNDI3Ny1hYTc5LTc0YTY0Zjk4ZjBhOSIsInVybCI6Imh0dHBzOi8vd3d3Lndhc2hpbmd0b25wb3N0LmNvbS9zcG9ydHMvaW50ZXJhY3RpdmUvMjAyMy9jaHJpcy1ldmVydC1tYXJ0aW5hLW5hdnJhdGlsb3ZhLWNhbmNlci8ifQ.ME7ZnnAS4VhPX9dzymxryvk2QcP44DyAegtbH8K_CDM&itid=gfta#end-react-aria296517925-1)
###### Covering two tennis giants, on and off the court
1/3
End of carousel
Evert and Navratilova wanted to be appreciated for who they were. But it felt impossible with all the media caricatures of them as princesses, robots, “Chris America” vs. the foreigner, the delicate sweetheart vs. the bulging lesbian. “All that stuff hurt,” Navratilova says.
Evert refused to play into any of the tropes that day — or any other day. For which Navratilova felt deeply grateful. “Chris *never* did anything to make it worse, you know?” Navratilova says.
At some point in the wake of that difficult year, they struck a private agreement: They would not respond to the stereotypes or any egging on from the media or their own audiences. If either had a question about something, she would speak directly to the other, “so that we knew where we stand,” Navratilova says.
Early in 1985, Evert beat Navratilova for the first time in over two years, at the Virginia Slims of Florida. “Nobody beats Chris Evert 15 times in a row,” she deadpanned.
The renewal set up another masterpiece, the 1985 French Open final. The match is a fascinating revisit — and reveal. After they took the court, whats striking is how they had borrowed from each other, forced the other to adapt. Its Navratilova who wins some of the longest baseline rallies and Evert who presses the net first on some points. Navratilova has fully appropriated imperiousness, blond and bejeweled, diamonds in her ears, gold bracelets and rings. Evert is the one who is stripped down — her hair is shorn short, and there is nothing on her wrist but a sweatband. Its clear she had gone back to work, developed ropes of muscle in her arms and stealthily broadened her game over those two seasons of losses.
Right hand against left, they went at each other like flashing sabers.
As their rallies wore on, they played with apparent curiosity. “There had been so many matches. How do you surprise one another?” Navratilova says. “How do you find something new or different? When you know everything already?” Sometimes, as the ball flew, one of them would just nod before it landed and acknowledge that it was too good with a “Yep.”
Evert would never be better; she found ways to wrong-foot the charging, slashing Navratilova. She always had been irritated by the shoulder swagger Navratilova could show after a great point, but she was fully capable of her own show of supremacy, and she showed it here, with the head tossing of an empress and a mincy little walk that could only be called a sashay.
A point-blank volley exchange at the net, won by Evert, had broadcaster Bud Collins screaming: “OHHHHHH! Eyeball to eyeball!” On one exchange, the force of Everts shot knocked the racket from Navratilovas hand and sent her sprawling to the red clay. On match point, she lured Navratilova to the net with a short forehand, then pivoted to deliver an unfurling backhand winner up the line past a diving Navratilova, through an opening as narrow as one of her old hair ribbons. And it was over. Evert had won, 6-3, 6-7 (7-4), 7-5.
The embrace at the net is one of their enduringly favorite pictures. They threw their arms over each others shoulders, mutually exhausted yet beaming over the quality of the tennis they had just played. “You cant tell who won,” Navratilova says.
![](https://img.washingtonpost.com/wp-apps/imrs.php?src=https://arc-anglerfish-washpost-prod-washpost.s3.amazonaws.com/public/USA2SDF3ISU4MEA6OFNWJEY2FI.JPG&high_res=true&w=2048)
Their embrace at the net after the 1985 French Open final is one of their favorite images. (Jacqueline Duvoisin/Sports Illustrated/Getty Images)
It seemed as if they no longer were playing against each other so much as *with* each other. And thats how it stayed. From then on, their locker room atmosphere became more than just companionable. It was … consoling. Someone would win and someone would lose, and the loser would sit on a bench, head dangling, and the other, unable to look away, would drift over and sit down. Sometimes, hours afterward, one of them would open her tennis bag and find a sweet note in it.
“We were the last two left standing,” Evert says. “… I saw her at her highest and at her lowest. And I think because we saw each other that way, the vulnerable part, thats another level of friendship.”
In 1986, Navratilova was scheduled to return to Czechoslovakia for the first time since her defection to play a match for the U.S. Federation Cup team. “Will you come?” she asked Evert. “I dont know how theyll treat me.” Evert was nursing a knee injury, but she went. Navratilova was overjoyed to be teammates for a change. “We could be happy at the same time for once,” she says. Evert was rewarded with an extraordinary experience: She watched her friend get a standing ovation from crowds standing three deep while Czech officials stared at their shoes.
At Everts final Wimbledon in 1989, one more remarkable scene played out between them. Evert by then was flagging, her intensity worn thin. In the quarterfinals she was in danger of an undignified loss to unseeded, 87th-ranked Laura Golarsa. She trailed 5-2 in the third set, just two points from defeat. *This isnt how I want to go out*, she thought grimly. Navratilova, watching on TV in the player lounge, stood up and dashed out to courtside. She took a seat in the grandstand.
“*Come on*, Chrissie!” Navratilovas voice rang out.
Evert had just a moment to feel moved. Touched. Just then Golarsa delivered a volley. On a dead run, Evert chased it. Stretched out, pulled nearly into the stands, her backhand fully extended, Evert drove a screaming pass down the alley that curled around the net post and checked the opposite corner, a clean winner. Navratilova shrieked with the thrill of it like a little girl. Evert swept the rest of the set and won it 7-5, arguably the most astonishing comeback of her life.
“Shes got my back,” Evert says now. “Ive got hers.”
![](https://img.washingtonpost.com/wp-apps/imrs.php?src=https://arc-anglerfish-washpost-prod-washpost.s3.amazonaws.com/public/BP4KSEAU34I6HMRAFSKQY7ZSMM&high_res=true&w=2048)
The players joked with Police Constable Les Bowie at Wimbledon in 1985, when Navratilova defeated Evert in the final. (Dave Caulkin/AP)
### Cancer makes you feel alone
Friendship is arguably the most wholly voluntary relationship. It reflects a mutual decision to keep pasting something back together, no matter how far it gets pulled apart, even when there is no obligatory reason, no justice-of-the-peace vow or chromosomal tie.
Evert and Navratilova just kept finding reasons to hang on to the relationship. To the point that they became hilariously entangled in each others personal affairs. Its a fact that Navratilova set up Evert with the man who remains the most important one in her life, Andy Mill. Toward the close of Everts playing career, Navratilova knew Evert was lonely and depressed after her divorce from Lloyd, which caused Jimmy Evert to briefly stop speaking to his daughter. Navratilova invited Evert to spend Christmas with her in Aspen. She took her skiing and to a New Years party at the Hotel Jerome, where she knew there would be good-looking men in droves. That night Evert met the impossibly handsome Mill, who the next day gallantly coached Evert down a steep slope, skiing backward and holding her hands.
At the end of the week, as Navratilova packed to leave for the Australian Open, Evert appeared in her doorway. “Do you mind if I stay on for a few days?” Evert asked. Navratilova arched an eyebrow and smiled. “Sure.” With the house to herself, Evert had her first tryst with Mill, causing the gentleman to exclaim the next morning, “My God, Im with Chris Evert in Martina Navratilovas bed.” Everts 1988 wedding to Mill marked the rare occasion when Navratilova wore a skirt. Years later, Navratilova was still teasing Evert. “I should have put that bed on eBay.”
In 2014, when Navratilova wed longtime partner Julia Lemigova, she did not have to debate whom to choose as maid of honor. Evert was by her side. “But of course,” Navratilova says.
Navratilova had never properly told Evert how much her unwavering support against homophobia had meant. Especially in crucial moments such as 1990, when Australian champion Margaret Court called Navratilova a “bad role model” for being gay. “Martina is a role model to *me*,” Evert snapped back publicly. As Navratilova put it, Evert was “gay-friendly before it was okay to be.” It made Navratilovas public life incalculably more bearable. “It was more than nice,” Navratilova says now of Everts stance. “It was *huge*.” On matters of character, Navratilova says, Evert “underrates herself.”
Heres where they stood when the cancers came. Evert had just finished rearing three adored sons to adulthood and was resolutely single again, after a psychological reckoning. Her long emotional containment finally imploded in 2006: She left Mill for former pro golfer Greg Norman; a terrible mistake, the union lasted just 15 months. Determined to know herself better, she went into counseling “to figure out what makes me tick and how Im wired, why Im wired the way I am and why I have made mistakes the way I have” and emerged with a piercing self-honesty. She reestablished a closeness with Mill and reinvested herself in her second calling as a mentor to young prodigies at the developmental tennis camp she founded, the Evert Tennis Academy. At over 60, she could still go for two hours on a court with women a third her age.
Just down the freeway from her, Navratilova had found her “anchor” with Lemigova, with whom she step-mothered two daughters and cared for an assortment of animals: donkeys, goats, dogs and exotic birds, including a talkative parrot named Pushkin. One of the most broadly read great athletes who ever lived, she absorbed tomes such as Timothy Snyders account of encroaching fascism, “The Road to Unfreedom,” with a lightning intelligence that could light up a hillside.
In February 2020, a funeral notice appeared in the Fort Lauderdale papers: Mass for Jeanne Evert Dubin would be said at 10 a.m. at St. Anthonys Church. Evert had watched with mounting grief as her precious younger sister fought ovarian cancer until her arms were bruised by needles and ports and she wasted to less than 80 pounds.
Sitting in a pew was Navratilova, who would spend the next 12 hours by Everts side. She attended the graveside services, then sat with Evert and her family at home until 10 that night.
Nearly two years after Jeannes death, in November 2021, Evert got a call out of the blue from the Cleveland Clinic. Genetic testing that Jeanne had undergone during her illness had been reappraised with new study, and she had a BRCA1 variant that was pathogenic. The doctor recommended that Evert get tested immediately. The very next day Evert got a test — and she, too, was positive for the BRCA1 mutation. Her doctor, Joe Cardenas, recommended an immediate hysterectomy.
Evert called Navratilova and told her about the test and that she was scheduled for surgery and further testing. “Its preventive,” Evert told her reassuringly. On the other end of the phone, she heard Navratilova exhale, “Ohhhhhhhhh,” a long sigh of inarticulate dismay. In 2010, Navratilova had been diagnosed with a noninvasive breast cancer after making the mistake of going four years without a mammogram. Her cancer was contained — but still. Navratilova wouldnt feel comfortable for Evert until all the tests had come back.
“The first thing, the very first thing I thought of was, if Im going to go through these trenches with anybody, Martina would be the person Id want to go through them with,” Evert says. “Because shes … strong. She doesnt take any nonsense from people. She just gets the job done. And I think thats the mentality I had.”
When Everts pathology report came back after the surgery, however, she felt anything but strong: Surgery revealed high-grade malignancy in her fallopian tubes. Evert would have to undergo a second surgery, to harvest lymph nodes and test fluid in her stomach cavity, to determine what stage she was. Jeannes cancer had not been discovered until she was Stage 3; “I knew that anything Stage 3 or 4, you dont have a good chance,” Evert says.
For three days, Evert waited for the results with the understanding that they were life-or-death. “Humble moment,” Evert says. “You know, just because I was No. 1 in the world, it doesnt — Im just like everyone else.”
Evert got unfathomably lucky. The cancer hadnt progressed. Had she waited even three more months to be tested, it probably would have spread. As soon as she was able, Evert would go public with her diagnosis to encourage testing. An estimated 25 million people carry a BRCA mutation, and like her, 90 percent of them have no idea. “I had felt fine, I was working out, and I had cancer in my body,” she says.
Evert still had a hard road ahead, with six cycles of chemo, but her chances of recovery were 90 percent. Her eldest son, Alex, moved in to support her daily care and even designed a workout regimen so she could sweat out the poisons. Mill took her to every chemo treatment and held her hand. Her good friend Christiane Amanpour, also diagnosed with ovarian cancer, sent her healing ointments from Paris. Her youngest sister, Clare, flew in monthly to nurse her through the sickish aftereffects, even climbing into bed with her.
But nothing can really make cancer a collective experience; its an experiential impasse. Everyone responds differently to the treatment and the accompanying dread. Late at night, Evert would be sleepless from the queasiness and a strange sense of small electric shocks biting into her bones. She would have to slip out of bed and walk around the house, by herself with it. “Cancer makes you feel alone,” Evert says. “Because its like, nobody can take that pain from you.”
Compounding Everts sense of aloneness was the abruptness with which she had toppled from a sense of supreme athletic command to feebleness. There was one person who could understand that. “What can I do for you?” Navratilova asked. They were in a room of just two, all over again. “I can tell her my fears,” Evert says. “I can be 100 percent honest with her.”
Navratilova came by the house and called regularly, but she also knew how to “lay back.” Sometimes she would call and Evert would answer right away. And sometimes it would take three or four days before she answered. It felt, in a way, like the old locker room days when she knew Evert was laboring with a loss. “I think because we were there for each other before, we kind of knew what to do or what not to do, instinctively, even though this was a first,” Navratilova says.
In the middle of Everts treatments, a gift arrived from Navratilova. It was a large piece of art. The canvas was lacquered with Everts favorite playing surface, red clay, and painted with white tennis lines, on which a series of ball marks were embedded, including one that had ticked the white line. The piece was by Navratilova herself, who in retirement took up art. The canvas was really a portrait — of Evert, of the exquisite, measured precision of her game. A tribute. Evert immediately hung it in a primary place in her living room.
After every cycle of treatment, Evert would rebound with a tenacity that astounded Navratilova. She would plead with her doctors, “Can I get on a treadmill?” Just days removed from an IV, she would start power walking again or riding her beloved Peloton bike until she was slick with sweat. She even did light CrossFit workouts with weights. “Shes an *animal*,” Navratilova observes admiringly.
By the summer 2022, Evert was healthy enough to go back to work as a broadcaster (although with a wig), and in November she joined Navratilova in a public appearance at the season-ending WTA Finals in Fort Worth. The pair went shopping together for cowboy boots and hats, strolling through the Fort Worth Stockyards historic district. And thats when Evert delivered a piece of news that undid Navratilova. “Im having a double mastectomy,” Evert said. She explained that her BRCA mutation meant she was at high risk of developing breast cancer on top of the ovarian.
Navratilova was so affected, she burst into tears. “It was such a shock to me because I thought she was done,” she says, and as she retells the story, she weeps again. She had watched Evert go public with her diagnosis and slug her way through chemo, and she hoped she was past it. Now she would face more months of convalescence. “I knew what she was going through publicly and privately,” Navratilova says, “and it just knocked me on my ass.”
Navratilova was still grappling with Everts news when she was floored by her own cancer diagnosis. During the Fort Worth trip, Navratilova felt a sore lump in her neck. She wasnt taking any chances and underwent a biopsy when she got home. Evert got a text from Navratilova. *Can you call me as soon as possible? I need to talk to you*. Evert checked her phone and saw that Navratilova had also tried to call her. Evert thought, *Oh, s--t. Thats not good.*
Navratilovas sore lump proved to be a cancerous lymph node. Like Evert, she had to undergo multiple lumpectomies and further tests, with a frightening three days waiting for the results, worried that it had advanced into her organs. “Im thinking, I could be dead in a year, ” she says. She distracted herself by thinking about her favorite subject, beautiful cars, and browsing them online.
Which car am I going to drive in the last year of my life, she asked herself. A Bentley? A Ferrari?
The verdict when the testing came back was a combination of relief and gut punch. The throat cancer was a highly curable Stage 1, but the follow-up screening also revealed she had an early-stage breast cancer, unrelated to her previous bout. She was so stunned she had a hard time even driving herself home. But by the time Evert reached her by phone, Navratilova was in an incredulous, fear-fueled rage. “I sensed that it really pissed her off more than anything,” Evert says. “She was *mad* about it.”
“Can you believe it!” Navratilova stormed. “Its in my throat. And then they found something in my breast.”
For a minute, the two of them considered the bizarreness of both fighting cancer at the same time. Navratilova had always chased Evert, but she didnt want to chase her in this pursuit. “Jesus. I guess were taking this to a whole new level,” Navratilova said.
And then they both started giggling.
“Because it was just so ironic,” Evert says.
But then Navratilova grew serious again. She admitted to Evert, “Im scared.”
It was the same sudden whiff of mortality, the same *youre not so special after all* jolt that Evert had gotten. “As a top-level athlete, you think youre going to live to a hundred and that you can rehab it all,” Navratilova says. “And then you realize, I cant rehab this. So sharing that fear was easy — easier with her than anybody else.”
Navratilovas cancer was not as dangerous as Everts, but it was more arduous. It required three cycles of chemo, 15 sessions of targeted proton therapy on her throat, 35 more proton treatments on the lymph nodes in her neck and five sessions of conventional radiation on her breast. Navratilova arranged to do it at Memorial Sloan Kettering hospital in New York, hunkering down at a friends vacant apartment.
Unbelievably, Navratilova chose to undergo most of it alone. She wanted to protect her family from worry over her. “You just keep it in because you dont want to affect the people around you.” She also wanted to cultivate her former big-match mentality, to focus on the fight. “Even just answering the question when somebody says, Can I get you anything? it takes energy,” Navratilova says now. “And its just easier to not have to think what youre going to say or to deny help 10 times.”
The proton treatments were a series of slow singes. Her sense of taste turned to ashes, and swallowing felt like an acid rinse. As her weight plunged, she shivered on the cold medical tables, unable to get warm, to the point that she wore a ski vest to the hospital. She developed deep circles under her eyes from insomnia.
![](https://img.washingtonpost.com/wp-apps/imrs.php?src=https://arc-anglerfish-washpost-prod-washpost.s3.amazonaws.com/public/I4G6UOJNHYNTWUISMWYSS3H55M_size-normalized.JPG&high_res=true&w=2048)
Navratilova took on Mount Kilimanjaro to raise money for Laureus Sport for Good in 2010. (Chris Jackson/Getty Images for Laureus)
As the poisons mounted in her, it was as if she aged 50 years overnight. “Everything felt just *wrong*,” she says. This was a woman who had trekked up Mount Kilimanjaro at the age of 54, reaching 14,000 feet before she was felled with a case of pulmonary edema. At 65, she could still do 30 push-ups in a row. Now she needed two hands to drink a glass of water.
Evert had an almost intuitive sense of when to check up on Navratilova. Just when she would be near despair, not trusting herself to drink from a glass with one quivering hand, the phone would buzz, and it would be Evert. “What stands out is the timing,” Navratilova says. “It was always spot on. Like she knew I was at a low point. I dont know how she knew, but she did. It was like some kind of cosmic connection. Because it was uncanny.”
Evert would be briskly sympathetic and to the point. “Dont tough it out,” she would say, then just listen. There was no need for question or explanation. There was just understanding. “It was always there,” Navratilova says. “So we didnt have to, like, try to find it.”
Sometimes the only sound on the line would be two people breathing, wordless with mutual comprehension.
Evert says, “With all the experiences we had, winning and losing and comforting each other, I think we ended up having more compassion for each other than anybody in the world could have.”
![](https://img.washingtonpost.com/wp-apps/imrs.php?src=https://arc-anglerfish-washpost-prod-washpost.s3.amazonaws.com/public/NQG74HDR4W2UWEU6EBPEBUGI7Q_size-normalized.jpg&high_res=true&w=2048)
“I think we ended up having more compassion for each other than anybody in the world could have,” Evert said. (Marvin Joseph/The Washington Post)
### Their finest rally
As Evert and Navratilova finish picking over lunch salads, their senses of renewal in the Miami sunshine make them seem almost radiant. Life feels clearer, “uncluttered,” Evert says. From a distance, they cut the figures of teenagers. Evert is as neatly trim as ever, an impression enhanced by her newly grown pixie-length platinum hair. Navratilova, too, is slender as a youth. Only up close do you see lingering creases of fatigue around their eyes and sense the scars beneath their clothes and the tentativeness of their confidence.
Evert admits she is “hesitant” to say her cancer is really gone. “It could come back. Look, it could come back. Its cancer, right? Its always peripheral.” Navratilova agrees. She compares it to waking up on the morning of an important match, a Wimbledon final, with the reverse of anticipation. For the first few seconds of semiconsciousness after opening her eyes she feels peace, and then the awareness of something important and pending seeps in. And then it hits her: *cancer*. “Its always hovering,” Navratilova says. “You just put it out of sight. You go on with what youre doing.”
The way they go on is as follows. They go public with their diagnoses and accounts of treatment because all those years that they were clashing over trophies, they also had a sense of a larger public responsibility, to “the game or women athletes or women,” as Navratilova says. A sense that it wasnt enough just to be great; they also had to be good for something. “To help,” Evert says.
They work out as much as the doctors allow, maybe even a little more than they advise, at first provisionally and then with growing defiance, even though each of their bodies is “still fighting the crap thats inside it,” as Navratilova says, in her case doing just two push-ups and going skiing before her radiation was done. (“Skiing! During radiation!” Evert crows in disbelief.) They lift weights above their shoulders though the sore scars in their chests arent entirely healed, and they hit on the tennis court, though in Navratilovas case, the effort to chase a ball even two steps leaves her winded, and in Everts, it makes her feel clumsy-footed and angry, until she reminds herself, *Chrissie, who do you think are*? And then she calls Navratilova, and they both laugh at themselves in this companionable frailty.
There are statues of Arthur Ashe at the U.S. Open, Fred Perry at Wimbledon, Rod Laver at the Australian Open and Rafael Nadal at the French Open. The blazers who run the major championships have not yet commissioned sculptures of these two women, who so unbound their sport and gave the gift of professional aspiration to so many. Yet who exemplify, perhaps more than any champions in the annals of their sport, the deep internal mutual grace called sportsmanship.
But then, they dont need bronzing. They have something much warmer than that. Each other.
![](https://img.washingtonpost.com/wp-apps/imrs.php?src=https://arc-anglerfish-washpost-prod-washpost.s3.amazonaws.com/public/OB2LL7IJUFQBQEQXXXP3KQDLUQ.JPG&high_res=true&w=2048)
Evert and Navratilova traveled to Boston for an award banquet in June 2023. (Courtesy of Chris Evert)
&emsp;
&emsp;
---
`$= dv.el('center', 'Source: ' + dv.current().Link + ', ' + dv.current().Date.toLocaleString("fr-FR"))`

@ -12,7 +12,7 @@ CollapseMetaTable: true
--- ---
Parent:: [[@News|News]] Parent:: [[@News|News]]
Read:: 🟥 Read:: [[2023-07-19]]
--- ---

@ -0,0 +1,125 @@
---
Tag: ["🗳️", "🇺🇸", "🐘"]
Date: 2023-07-27
DocType: "WebClipping"
Hierarchy:
TimeStamp: 2023-07-27
Link: https://nymag.com/intelligencer/2023/07/long-march-through-institutions-conservatives-rufo-milikh-claremont-desantis-trump.html
location:
CollapseMetaTable: true
---
Parent:: [[@News|News]]
Read:: 🟥
---
&emsp;
```button
name Save
type command
action Save current file
id Save
```
^button-ConservativesHaveaMasterTheoryofPoliticsNSave
&emsp;
# Conservatives Have a New Master Theory of American Politics
> “The long march through the institutions” is a self-fulfilling prophecy.
By , whos been a New York political columnist since 2011.  He writes the newsletter &c.
Earlier this year, I was introduced to a Republican at a small gathering. I asked him what he made of the new theory sweeping the right, which held that radical leftists had conducted a “long march through the institutions,” seizing control of American culture, education, and business, and thus forcing Republicans to use government to dislodge their power.
This theory has largely been associated with the new, Trumpier factions of the right that have risen up as alternatives to traditional conservatism. Since the man I met was exactly the sort of Republican the Trumpists are plotting to displace from power — (Jewish coastal elitist, donor, mortified by Donald Trump, vocally progay marriage yet intrigued by Ron DeSantis, etc.) — I assumed he would express either ignorance of the long-march theory or else outright opposition.
Instead, to my surprise, the only portion of my account he questioned was the word “theory.” To his mind, the long march and its grim implications for the partys strategy were simply an obvious truism. The idea has spread so rapidly through the conservative elite that, before it has even gotten a name, the segments of the party most predisposed against it have adopted it.
[Ron DeSantis](https://nymag.com/intelligencer/article/ron-desantis-trumpism.html) has placed this theory at the center of his governing vision (“elected officials who do nothing more than get out of the way are essentially greenlighting these institutions to continue their unimpeded march through society,” he writes in his campaign book.) [Donald Trump](https://nymag.com/intelligencer/2023/06/gop-republican-party-fbi-authoritarian-acceleration.html) is personally sub-ideological, but the intellectuals around him have embraced it too.
Two new books expound upon Longmarchism, as you might call it. *Americas Cultural Revolution: How the Radical Left Conquered Everything*, by [Christopher Rufo](https://nymag.com/intelligencer/2021/07/christopher-rufo-and-the-critical-race-theory-moral-panic.html), attempts a sweeping historical theory tracing the ascent of a brand of left-wing identity politics from the 1960s New Left to its present position (according to Rufo) of dominance of the commanding heights of American society.
*Up From Conservatism: Revitalizing the Right After a Generation of Decay*, a collection of essays edited by the Claremont Institutes Arthur Milikh, uses the long march as its premise and proposes an array of retaliatory actions.
Rufos version, which is the most developed iteration of the theory, posits that the 1960s far left hit a wall when the working class failed to support its revolutionary program, and instead decided to gain control of society from above by burrowing into its elite sectors. Rufo initially, [erroneously](https://www.city-journal.org/article/laying-siege-to-the-institutions), attributed this strategy to the Italian communist Antonio Gramsci, before correctly crediting his disciple Rudi Dutschke, who proposed a “long march through the institutions.”
The notion that ex-hippies have burrowed into the Establishment (especially universities) has been floating around the right for many years. But it was only at the tail end of the Trump administration that a more comprehensive version of the idea suddenly burst forth into the frontal cortex of the conservative mind. Longmarchism served as an all-purpose explanation of everything that angered the right during the Trump era: the belligerence of the news media, increasingly overt hostility from respectable Americans, and the final collapse into failure of the Trump administration. All these vexing developments could be explained by the single phenomenon of the left having successfully taken over Americas institutions.
And accepting this theory, in turn, implied a new focus for Republicans if and when they next gained control of government. The lefts long march had given it control of nongovernmental organs of power, from which position it had waged relentless guerrilla war that had rendered Trump impotent and finally defeated. The rights new task was to use government power to strike back.
We should begin by acknowledging that the theory contains elements of reality. Conservatives are not fantasizing when they perceive that their beliefs are being anathematized by elites and elite institutions. Over the last couple decades, polarization has injected politics into peoples lives to a much greater extent — during the 1990s, it was common, even in Washington, D.C, to attend a party and never discuss politics. Simultaneously, the increasingly liberal cast of college-educated Americans has made all sorts of elite institutions more liberal even as they have grown more political. It is a real sea change in American life for giant corporations to endorse a left-wing group like Black Lives Matter.
This trend exploded during the Trump administration. From a liberal point of view, the mobilization of Blue America looked like a necessary response to the national emergency of a bigoted authoritarian running loose through the West Wing. But it is easy to see how conservatives could perceive the same thing as something like a hostile conspiracy. “Conservatives have come to feel that practically everything that can reasonably be called an institution — from sports journalism to the federal bureaucracy — is against them,” writes Richard Hanania in Milikhs compendium.
Since 2020, Rufo has done a fair amount of legwork digging up documentation of the [often-ridiculous Diversity, Equity, and Inclusion programs](https://www.thecut.com/article/diversity-equity-inclusion-industrial-companies.html) spreading through corporate, educational, and government human-resources departments. He fleshes out his theory with a series of historical synopses of left-wing theorists like Herbert Marcuse and Derrick Bell that take their ideas seriously. Rufo is also at least intermittently capable of recognizing deep disagreements within the left, a refreshing counterpoint to the common practice among right-wing polemicists of lumping together everything to the left of the Republican Party.
But Longmarchism suffers three serious defects which, working in conjunction, transform a reasonable set of objections to left-wing social-justice fads run amok into a paranoid, authoritarian ideology.
First, the Longmarchers are prone to catastrophizing. It is not just that left-wing ideas are spreading — those ideas are literally tantamount to Soviet-imposed totalitarianism. “Although the left-wing cultural revolution had self-destructed in the Third World,” writes Rufo, “over time it found a new home in America.” And not only have these ideas gained currency, they formed “a new ideological regime.”
“The Constitution cannot be said to be governing the nation when there is no real presidency (but rather an intelligence apparatus and an administrative state that operates, more or less, on their own); no real Congress (which delegates its powers away to the administrative state); and no real independence of the states (which, with the aid of the Supreme Court, have become mere federal fiefdoms,)” claims Milkh, arguing along similar lines. “In terms of political and moral power, the Left currently rules every consequential sector of society, from the nations educational institutions (K12 and higher education), to large parts of the media, corporate America, Big Tech, and the federal administrative apparatus.”
Rufos analysis, despite its depth and specificity, relies upon a sleight-of-hand technique: He assumes that any organization that has adapted left-wing rhetoric in its training or branding has been wholly captured by the ideology of the activists who devised their underlying concepts.
So, for instance, he proclaims, “The final conquest in the long march through the institutions is the extension of the critical theories into Americas largest corporations.” How did critical theorists gain control of corporate America? Well, after George Floyds murder, they made supportive statements toward the Black Lives Matter movement, and “The largest fifty companies in America immediately pledged $50 billion toward racial equity.’”
That certainly sounds like an ideological commitment that has redirected the priorities of corporate America. But if you look at the [footnotes](https://www.washingtonpost.com/business/interactive/2021/george-floyd-corporate-america-racial-justice/), 90 percent of those funds are loans or mortgages, and almost all of the sum comes from two banks, JPMorgan Chase and Bank of America. Of the grants, just $70 million went to groups promoting criminal-justice reform.
Likewise, when reporting on defense contractors employing some loopy DEI training materials in 2020, he asserts, “Even federal defense contractors have submitted to the new ideology.” And when he notes the same thing happening at the Treasury Department the same year, he arrives at the sweeping conclusion,  “After fifty years, the long march had been completed. The radical left had finally won its Gramscian war of position and attained ideological power within the American state.”
Of course, the military-industrial complex and the Treasury Department are massive bureaucracies. The fact their human-resources departments circulated some wild left-wing rhetoric hardly means those agencies were enlisted in the cause of left-wing revolution. Their general operations have not appreciably changed. It is safe to assume that, if they were actually under the control of Angela Daviss disciples, the Pentagon and Treasury would probably be acting very differently than they are now.
The second flaw in the long-march theory is that it fails to understand how social-justice ideology exploded specifically in reaction to events that are now receding.
The most striking thing about both Rufo and Milikhs books is that the events they cite as evidence of the lefts inexorable rise overwhelmingly took place during the Trump presidency. Primarily, they return again and again to the George Floyd protests and their aftermath. They also point to outrages like public-health guidance in 2020, a source of ongoing anger. Very little of the evidence they muster of a left-wing march through the institutions takes place since Trump left office.
One reason, of course, is that the murder of George Floyd was a high-profile event that happened to occur in 2020. But Floyd was killed after Trump had spent several years engaging in [public displays](https://nymag.com/intelligencer/2019/07/trumps-no-racist-just-a-guy-who-keeps-saying-racist-things.html) of racist bullying. Trump repeatedly promised to roll back police reforms undertaken by his predecessor and unleash the cops to brutalize suspects. “The Obama administration and the handcuffing and oppression of police was despicable,” Minneapolis Police Union president Bob Kroll [announced](https://nymag.com/intelligencer/2020/05/trumps-george-floyd-obama-protest-police-violence-kneeling.html) at a Trump rally in Minneapolis, seven months before a Minneapolis cop killed Floyd. “The first thing President Trump did when he took office was turn that around, got rid of the Holder-Loretta Lynch regime and decided to start … letting the cops do their job, put the handcuffs on the criminals instead of us.” And Trump bullied protesters for police reform, like Colin Kaepernick, boasting that he had [blackballed](https://nymag.com/intelligencer/2020/08/trump-convention-speech-crime-rooting-violence-republican.html) the quarterback from being hired by the league again.
None of the Longmarchers mention this context. In their accounts, the explosion of protests instead spring directly from a 50-year-long left-wing plot.
There is a common psychological phenomenon called the fundamental attribution error. It describes the way in which people habitually assess their own actions within the context of their environment, but assess the actions of other people as if they represent an innate character trait.
The political version of the fundamental attribution error is that ideologues can easily perceive how the *other* sides extremists are radicalizing *us*, but fail to see how *our* sides extremists are radicalizing *them*. It is very obvious to the Longmarchers of the right that the excesses of the George Floyd protest era produced a backlash on the right. It doesnt seem to have occurred to them that these protests were spurred in large part not simply by the outrageous torture captured on video, but also the years of goading by the most famous person in the world that preceded it.
The Milikh volume has two essays specifically chastising conservatives for being *too anti-racist*. Not only can they not grasp that anti-racism protests draw more support when there is public evidence of racism, they argue that the movement has nothing to do with opposing actual racism. Indeed, at points they seem to deny its existence. “No amount of black outreach, Juneteenth celebrations, or expressions of sympathy for George Floyd will ever get them to stop calling us racists,” argues David Azzerad. “Their political movement thus *requires* the existence of racists. When they do not exist, they must be manufactured.” How would he know what progressives would do in the absence of actual racism, unless he thinks such a condition actually exists?
A more important corollary, which the Longmarchers ignore, is that Trumps defeat has drained the energy from the left.
Rufo draws an extended scene of racial-justice protesters confronting Minneapolis mayor Jacob Frey with a demand to endorse police abolition, then shaming him when he refuses. The narrative structure of the episode, as Rufo constructs it, depicts the protesters as triumphant, and Frey slinking away shamed and defeated. What Rufo does not mention is that Frey went on to win reelection in 2021 and then a city ballot initiative to reduce police funding lost. Indeed, after a brief flirtation, the Democratic Party turned sharply against defunding the police. Joe Biden has promised to “fund the police.”
The fact that so many of the horrors cited by the Longmarchers occurred under Trump confirms a finding by the sociologist Musa al-Gharbi. A critic of the far left on social issues, al-Gharbi has [compiled](https://heterodoxacademy.org/blog/the-great-awokening-of-scholarship-may-be-ending/) a number of metrics showing the “great awokening” has already begun winding down. University students are less fearful of discussing controversial topics, and professors are facing less retaliation on campus. Corporate DEI bureaucracy, whose growth Rufo portrays as an unstoppable terror, is collapsing; the *Wall Street* *Journal* [reports](https://www.wsj.com/articles/chief-diversity-officer-cdo-business-corporations-e110a82f) that chief-diversity-officer searches are down 75 percent over the previous year amid plummeting demand.
It is difficult to empirically prove something as amorphous as the rise and fall of an ideological tendency, but these findings paint the same picture as the Longmarchers reliance on circa-2020 anecdotes: The worst excesses of social-justice activism peaked under Trump, and Uncle Joe has managed to calm things down.
This problem is worth bearing in mind when you consider the third defect of Longmarchism: It implies a radical program that its advocates fail to articulate clearly.
Both tomes brim with militant sloganeering language exhorting their allies to take merciless, decisive action against the enemy. “We like to say that one must govern, but a truer expression is that one must learn to rule,” writes Milikh in one essay.
Rufo displays even more clearly Leninist thought patterns. Politics is a struggle of willpower, and the forces of his side (the counterrevolution) “must ruthlessly identify and exploit the vulnerabilities of the revolution, then construct its own logic for overcoming it … The task is to meet the forces of revolution with an equal and opposite force.” Having convinced himself of the success of the Marxist left, he believes the right must fashion itself as a mirror image.
Rufos self-conception as a reverse Leninist, agitating for his anti-revolution, even extends to constructing his own dialectical analysis. “The working class is more anti-revolutionary today than at any time during the upheaval,” he posits. “Their quality of life has plummeted into a revolving nightmare of addiction, violence and incarceration.” The proletariat in Joe Bidens Amerika, immiserated into radicalization, is ready to take to the barricades.
But exactly what this all means in practice is a little harder to say. Milikhs volume offers a series of mostly vague proposals to extend (or, the Longmarchers would say, join) political combat to almost every sphere of American life. Many of them point to DeSantiss campaign to punish Disney for the sin of criticizing his restrictions on gender education as a model.
“Destruction followed by reconquest is necessary and proper,” proposes Milikh in regard to the education system. One contributor suggests starting up a new clothing line to replace “woke Patagonias clothing” and creating dating apps that reject hookup culture. Another argues, “This rolling sexual revolution cultivates a new sexual ethic supporting that may be called the Queer Constitution (in contrast to our former Straight Constitution), which has become central to Americanism and its ruling class,” and thus, “the family must be self-consciously repoliticized.”
Of course, all these maneuvers would generate a backlash on the left. This response would obviously freak out conservatives even more, in turn promoting yet more panicked demands for another counteroffensive (or, perhaps, counter-counter-counteroffensive) in the culture war. If the militant language of the Longmarchers expresses anything cogent, it is that the mere existence of opposition is intolerable to them.
One notable characteristic of the Longmarchers, and the post-liberal movement on the right in general, is that every new escalation in tactics they demand serves as justification for the next one. [Michael Antons famous “Flight 93” essay](https://nymag.com/intelligencer/article/michael-antons-flight-93-election-trump-coup.html) justified a vote for Trump as a final, desperate gambit (akin to passengers on the doomed hijacked flight charging the cockpit) to save America from the left-wing takeover. Now Anton — who has contributed two essays to *Up From Conservatism* — needs an explanation for why Trumps presidency failed to save the country.
The long march supplies that explanation. It turns out, writes Anton, “the people we nominally elect do not hold real power.” So now, they must not only win control of government, but also extend its power into nearly every sphere of American life. They have abandoned completely the notion they can roll back left-wing excess through *persuasion* — the very thing that appears to be happening now, under a moderate Democratic president — and instead convinced themselves it can and must be accomplished through coercion.
Perhaps they will try this. If so, they will discover they have generated a backlash far more severe than they anticipated. Indeed, they will have brought about the very thing they had set out to destroy.
Conservatives Have a New Master Theory of American Politics
&emsp;
&emsp;
---
`$= dv.el('center', 'Source: ' + dv.current().Link + ', ' + dv.current().Date.toLocaleString("fr-FR"))`

@ -0,0 +1,201 @@
---
Tag: ["🎭", "🎵", "🇺🇸", "🪕"]
Date: 2023-07-29
DocType: "WebClipping"
Hierarchy:
TimeStamp: 2023-07-29
Link: https://www.newyorker.com/magazine/2023/07/24/country-musics-culture-wars-and-the-remaking-of-nashville
location:
CollapseMetaTable: true
---
Parent:: [[@News|News]]
Read:: 🟥
---
&emsp;
```button
name Save
type command
action Save current file
id Save
```
^button-CountryMusicWarstheRemakingofNashvilleNSave
&emsp;
# Country Musics Culture Wars and the Remaking of Nashville
On March 20th, at Nashvilles Bridgestone Arena, a block from the honky-tonks of Lower Broadway, [Hayley Williams](https://www.newyorker.com/culture/the-new-yorker-interview/hayley-williams-without-a-guidebook), the lead singer of the pop-punk band Paramore, strummed a country-music rhythm on her guitar. A drag queen in a ketchup-red wig and gold lamé boots bounded onstage. The two began singing in harmony, rehearsing a twangy, raucous cover of Deana Carters playful 1995 feminist anthem “[Did I Shave My Legs for This?](https://www.youtube.com/watch?v=TzWOa8loCDI)”—a twist on a Nashville classic, remade for the moment.
The singer-songwriter Allison Russell watched them, smiling. In just three weeks, she and a group of like-minded country progressives had pulled together “Love Rising,” a benefit concert meant to show resistance to Tennessees legislation targeting L.G.B.T.Q. residents—including a law, recently signed by the states Republican governor, Bill Lee, barring drag acts anywhere that kids could see them. Stars had texted famous friends; producers had worked for free. The organizers had even booked Nashvilles largest venue, the Bridgestone—only to have its board, spooked by the risk of breaking the law, nearly cancel the agreement. In the end, they had softened their promotional language, releasing a poster that said simply, in lavender letters, “*a celebration of life, liberty and the pursuit of happiness*”—no “drag,” no “trans,” no mention of policy. It was a small compromise, Russell told me, since their goal was broader and deeper than party politics: they needed their listeners to know that they werent alone in dangerous times. There was a Nashville that many people didnt realize existed, and it could fill the biggest venue in town.
The doors were about to open. Backstage, global stars like Sheryl Crow, Alabama Shakes [Brittany Howard](https://www.newyorker.com/magazine/2020/04/27/brittany-howards-transformation), and Julien Baker, the Tennessee-born member of the indie supergroup [boygenius](https://www.newyorker.com/magazine/2018/11/12/boygenius-is-driven-by-the-spirit-of-solidarity), milled around alongside the nonbinary country singer Adeem the Artist, who wore a slash of plum-colored lipstick and a beat-up denim jacket. The singer-songwriters Jason Isbell and Amanda Shires walked by, swinging their seven-year-old daughter, Mercy, between them. There were more than thirty performers, many of whom, like Russell, qualified as Americana, an umbrella term for country music outside the mainstream. In the Americana universe, Isbell and Shires were big stars—but not on Nashvilles Music Row, the corporate engine behind the music on country radio. It was a divide wide enough that, when Isbells biggest solo hit, the intimate post-sobriety love song “[Cover Me Up](https://www.youtube.com/watch?v=S-s3vuXopS4),” was covered by the country star Morgan Wallen, many of Wallens fans assumed that hed written it.
Shires, overwhelmed by the crush backstage, invited me to sit with her in her dressing room, where she poured each of us a goblet of red wine. A Texas-born fiddle player who is a member of the feminist supergroup the Highwomen, she had forest-green feathers clumped around her eyelids, as if she were a bird—her own form of drag, Shires joked. Surrounded by palettes of makeup, she talked about her ties to the cause: her aunt is trans, something that her grandmother had refused to acknowledge, even on her deathbed. Shiress adopted city was in peril, she told me, and shed started to think that more defiant methods might be required in the wake of the Tennessee legislatures recent redistricting, which amounted to voter suppression. “Jason, can I borrow you for a minute?” she called into the anteroom, where Isbell was hanging out with Mercy. “The gerrymandering—how do we get past that?”
“Local elections,” Isbell said.
[](https://www.newyorker.com/cartoon/a27661)
“You guys are ruining my origin story.”
Cartoon by Dahlia Gallin Ramirez
“You really dont think the answer is anarchy?” Shires remarked, bobbing one of her strappy heels like a lure.
“Well, you know, if youre the dirtiest fighter in a fight, youre gonna win,” Isbell said, mildly, slouching against the doorframe. “You bite somebodys ear off, youre probably gonna beat em. And if there are no rules—or if the rules keep changing according to whoever won the last fight—youre fucked. Because all of a sudden theyre, like, Hey, this guys a really good ear biter. *Lets make it where you can bite ears!* 
That night, the dominant emotion at “Love Rising” wasnt anarchy but reassurance—a therapeutic vibe, broken up by pleas to register to vote. Nashvilles mayor, John Cooper, a Democrat, spoke; stars from “RuPauls Drag Race” showed up via Zoom. The folky Americana singer Joy Oladokun, who had a “*keep hope alive*” sticker on their guitar, spoke gently about growing up in a small town while being Black and “queer, sort of femme, but not totally in the binary.” Jake Wesley Rogers, whose sequinned suit and big yellow glasses channelled Elton John, sang a spine-tingling version of his queer-positive pop anthem “[Pluto](https://www.youtube.com/watch?v=M3msogJaEII)”: “Hate on me, hate on me, hate on me! / You might as well hate the sun / for shining just a little too much.”
Before Adeem the Artist performed “[For Judas](https://www.youtube.com/watch?v=fM9BP_1ONFk),” a wry love song to a man, they summed up the mood nicely, describing it as “a weird juxtaposition of jubilance and fear.” Backstage, however, they struck a bleaker tone: Adeem was planning to move to Pittsburgh—“the Paris of Appalachia”—with their wife and young daughter. In Tennessee, the rent was too high, and the politics too cruel. As much as Adeem appreciated the solidarity of “Love Rising,” they viewed its message as existentially naïve: as Shires had suggested, the state was already so fully gerrymandered—“hard carved”—that, even if every ally they knew voted, the fix was in.
Only one mainstream country star played that night: Maren Morris, a Grammy-winning artist whose breakout 2016 hit, “[My Church](https://www.youtube.com/watch?v=ouWQ25O-Mcg),” was an irresistible pro-radio anthem that celebrated singing along in your car as a form of “holy redemption.” Morris, who has had hits on terrestrial radio—the regular, non-streaming kind that you listen to on a road trip—was an exception to the rules of Music Row, where liberal singers, even supernovas like [Dolly Parton](https://www.newyorker.com/magazine/2020/10/19/the-united-states-of-dolly-parton), kept their politics coded, supportive but soft. Performers who were too mouthy, particularly women, tended to get pushed off the Row—and often turned toward the more lenient world of pop, as had happened with [Taylor Swift](https://www.newyorker.com/tag/taylor-swift), Kacey Musgraves, and Brandi Carlile (who, along with Amanda Shires, Natalie Hemby, and Morris, is a member of the Highwomen). Decades later, everyone in Nashville still spoke in whispers about what had happened to the [Dixie Chicks](https://www.newyorker.com/magazine/2020/07/20/why-the-chicks-dropped-their-dixie), in 2003, when they got blackballed after speaking out against the Iraq War.
Morris had recently had a few skirmishes online with right-wing influencers—notably, Brittany Aldean, the *maga* wife of the singer Jason Aldean. Morris had called her “Insurrection Barbie”; in response, Jason Aldean had encouraged a concert audience to boo Morriss name. Both sides had sold merch off the clash. The Aldeans hawked Barbie shirts reading “*dont tread on our kids.*” Morris fans could buy a shirt that read “*lunatic country music person*”—[Tucker Carlson](https://www.newyorker.com/news/daily-comment/the-world-according-to-tucker-carlson)s nickname for her—and another bearing the slogan “*you have a seat at this table*.” (She donated the proceeds to L.G.B.T.Q. charities.) A few months before “Love Rising,” Morris had done an interview with one of the events organizers, Hunter Kelly—a host on Proud Radio, a queer-themed channel on Apple Music—and had told him that she wanted to be known for her songs, not her Twitter clapbacks. But, she added, she wouldnt apologize for having political opinions: “I cant just be this merch store on the Internet that sells you songs and T-shirts.” Within the context of Nashville, she explained, “I come across a lot louder than I actually am, because everyone else is so quiet.”
Near the end of the concert, Morris, a petite brunette in a floor-length tuxedo coat with a tiny skirt, sang “[Better Than We Found It](https://www.youtube.com/watch?v=U4rr6LewdIU),” a protest song, inspired by her newborn son, that shed written after the death of [George Floyd](https://www.newyorker.com/tag/george-floyd). During her opening banter, she had told a sweet, offhand story about watching her now three-year-old boy standing in awe as drag queens got ready backstage, amid clouds of glitter and hair spray. “And, yes, I introduced my son to some drag queens today,” Morris added, sassily. “So Tennessee, fucking *arrest* me!” The next day, Fox News fixated on the moment.
After the concert, Adeems Realpolitik echoed in my head. For all its warmth and energy, “Love Rising” hadnt sold out the Bridgestone Arena. And Adeem wasnt the only one leaving Tennessee: Hunter Kelly was moving to Chicago with his husband, frustrated that artists whose work he had celebrated for decades, like Parton and Miranda Lambert, werent speaking out. That night, I caught a glimpse of the other side of Nashville, down the street, at the honky-tonk bar Legends Corner. A rowdy crowd was dancing and drinking, screaming the lyrics to Toby Keiths old hit “[Courtesy of the Red, White and Blue](https://www.youtube.com/watch?v=ruNrdmjcNTc)”—an ass-kicking, jingoistic number that, twenty years ago, had helped knock the Chicks off the radio.
You notice certain things about a city when youre an outsider. There was the way everybody ended their description of Nashville the same way: “Its a small town inside a big city. Everyone knows everyone.” There was the fact that every other Uber driver was in a band. There were the pink stores, with names like Vowd, selling party supplies for bachelorettes. Above a coffee shop with a #BlackLivesMatter sign was a taunting billboard flacking a proudly “problematic” weekly. I had originally come to the city to meet a set of local singer-songwriters whose presence challenged an industry long dominated by bro country—slick, hollow songs about trucks and beer, sung by interchangeable white hunks. This new guard, made up of female songwriters, Black musicians, and queer artists, suggested a new kind of outlawism, expanding a genre that many outsiders assumed was bland and blinkered, conservative in multiple senses. What I found in Nashville was a messier story: a town midway through a bloody metamorphosis, one reflected in a struggle over who owned Music City.
Every city changes. But the transformation of Nashville—which began a decade ago, and accelerated exponentially during the pandemic—has stunned the people who love the city most. “None of this existed,” the music critic Ann Powers told me, pointing out swaths of new construction. There had been a brutal flood in 2010, and early in the pandemic a tornado had levelled many buildings, including music institutions like the Basement East. But the construction went far beyond rebuilding; it was a radical redesign, intended to attract a new demographic. In hip East Nashville, little houses had been bulldozed to build “tall and skinnies”—layer-cake buildings ideal for Airbnbs. The Gulch, a once industrial area where bluegrass fiddlers still meet at the humble Station Inn, was chockablock with luxury hotels. Broadway, formerly a rough neighborhood with a handful of honky-tonks, had become NashVegas, a strip lined with night clubs named for country stars. Only tourists went there now. Mayor Cooper, meanwhile, wanted to host the Super Bowl, which meant building a domed football stadium big enough for sixty thousand people, which meant that the city needed more parking lots, more hotels—*more*.
This physical renovation paralleled a political one. The city, a blue bubble in a red state, had long taken pride in its reputation for racial comity, for being a place where people with disagreements could coexist: the so-called Nashville Way. Then, in September, 2020, the right-wing provocateur Ben Shapiro and his media empire, the Daily Wire, moved in from Los Angeles, followed by a large posse that included the online influencer [Candace Owens](https://www.newyorker.com/news/annals-of-communications/the-gospel-of-candace-owens), who left Washington, D.C., for the wealthy Nashville suburb of Franklin. This crew, along with other alt-right figures—the commentator Tomi Lahren, executives at the social network Parler—joined forces with *maga*\-friendly country stars, such as Kid Rock and Jason Aldean, who owned clubs on Broadway. Under Governor Lee, who took office in 2019, Tennessee politics were blinking bright red: abortion was essentially banned; gun laws were lax; Moms for Liberty was terraforming school boards. Now the state wanted to ban drag acts and medical care for trans youth. When Nashvilles city council, which leans liberal, refused to host the 2024 Republican National Convention, Lee vowed payback—and tried to cut the size of the council in half. A week after the “Love Rising” concert, a shooter—whose gender identity was ambiguous—murdered six people, including three children, at a local Christian school. The gun-control protests that flooded the Capitol felt like a cathartic expression of a population that was already on edge. At one rally, the country singer Margo Price played [Bob Dylan](https://www.newyorker.com/magazine/2022/10/31/a-unified-field-theory-of-bob-dylan)s “[Tears of Rage](https://www.youtube.com/watch?v=c62HxxnRw3U).”
All through the pandemic, newcomers kept pouring in—a thousand a month, by some calculations. Sometimes it felt as if California had tilted, sending refugees rolling eastward like pinballs, and although some of these new Nashvillians were wealthy Angelenos fed up with living in a fire zone, there were more complex attractions. Tennessee had no state income tax, and Nashville had dropped its mask mandate. It was now possible to work from home, so why not try Music City? When Shapiro announced his move, he called himself “the tip of the spear”—and, if your politics leaned right, Nashville was a magnetic force, with the whiteness of country music part of that allure.
For Nashville musicians, 2020 became a dividing line. Big stars died, among them [John Prine](https://www.newyorker.com/culture/postscript/john-prines-perfect-songs), the flinty songwriter, and [Charley Pride](https://www.newyorker.com/culture/culture-desk/what-country-music-owes-to-charley-pride), the genres first Black star. With tours cancelled and recording stalled, artists had time to brood and reconsider. Some got sober, others got high, and many people rolled out projects reflecting the volatile national mood. After Maren Morris wrote “Better Than We Found It”—which has charged lyrics such as “When the wolfs at the door all covered in blue / Shouldnt we try something new?”—she released a video featuring images of Black Lives Matter posters and Nashville Dreamers. Tyler Childers, a raw, bluegrass-inflected singer-songwriter from rural Kentucky, made a video for his song “[Long Violent History](https://www.youtube.com/watch?v=T7lMq9ehC8k)” in which he encouraged poor white Southerners to view their fates as tied to Breonna Taylors. [Mickey Guyton](https://www.newyorker.com/magazine/2021/06/14/mickey-guyton-takes-on-the-overwhelming-whiteness-of-country-music), just about the only Black woman on country radio, released a song called “[Black Like Me](https://www.youtube.com/watch?v=BKximTk8JCM).” The Dixie Chicks dropped the “Dixie”; Lady Antebellum changed its name to Lady A. Everywhere, cracks were appearing in the Nashville Way.
The same year, [Morgan Wallen](https://www.newyorker.com/magazine/2020/12/28/how-morgan-wallen-became-the-most-wanted-man-in-country)—a native of Sneedville, Tennessee, who had been signed by the bro-country institution Big Loud Records in 2016, when he was twenty-three—got cancelled, briefly. In October, Wallen had been due to perform on “Saturday Night Live,” but after a video showed him out partying, in violation of *covid* restrictions, the invitation was revoked. Then, after he apologized and appeared on the show, a second video emerged, in which he used the N-word. Country radio dropped him; Big Loud suspended his contract; Jason Isbell donated profits from “Cover Me Up”—the song that Wallen had recorded—to the N.A.A.C.P. And then, in a perfect inverse of what had happened to the Chicks, Wallens album “Dangerous” shot up the charts. When I asked an Uber driver, a woman in her sixties with a scraped-back ponytail, what music she liked, she said, “Morgan Wallen, of course.” Asked what she thought about the scandal, she said, in a clipped voice, “He come back up real quick. They didnt get him for too long. Hes No. 1 again.” When she dropped me off, she added, sweetly, “You have a blessed day, Emily.”
Leslie Fram, a senior vice-president at Country Music Television and a former rock programmer who moved to Nashville in 2011, put it plainly to me: Wallen had split the city. To some, he was a symbol of Music Row bigotry; to others, of resistance to a woke world. Hed apologized, sort of, but he hadnt changed—not changing was a big part of his appeal. There was no denying his success, however, or the savvy of his handlers. His songs, starting with the 2018 hit “[Whiskey Glasses](https://www.youtube.com/watch?v=FjBp30kjzTc),” which opened with the line “Poor me—pour me another drink!,” were all about the desire to drink the past away. His latest album, “One Thing at a Time,” thirty-six songs deep, with lyrics by forty-nine writers—which followed a stand-alone single called “[Broadway Girls](https://www.youtube.com/watch?v=2CNl_CCtE-I),” a collaboration with the trap artist Lil Durk that contains repeated mentions of Aldeans bar—ruled the charts. In March, a few weeks before the “Love Rising” concert, Wallen announced a pop-up concert at the Bridgestone; it set an attendance record for the arena. In January, Wallen had headlined Governor Lees inaugural banquet.
When Holly G., a flight attendant, was grounded by the pandemic, she sank into a depression. For nine months, she holed up at her mothers house in Virginia, soaking in bad news. In December, 2020, she found herself watching a YouTube video of a shaggy-haired, sweet-faced Morgan Wallen, seated on a rural porch and crooning the song “[Talkin Tennessee](https://www.youtube.com/watch?v=PRcl5L11yjM)” to an acoustic guitar: “What you say we grab some tailgate underneath the stars / Catch a few fireflies in a moonshine jar.” Holly played the video on a loop, soothed by its gentleness. “It was what got me out of that funk, listening to music,” she told me. “And then, in February, he was caught saying the N-word.”
Before 2020, Holly had never thought deeply about what it meant to be a Black fan of country music: it was just a quirky taste that shed picked up as a kid, watching videos on CMT. Now the national racial reckoning had her questioning everything. Wallens behavior felt like a personal betrayal; shed started reading widely, learning more about the history of country music. The genre had started, in the early twentieth century, as a multiethnic product of the rural South, merging the sounds of the Irish fiddle, the Mexican guitar, and the African banjo. Then, in the early twenties, Nashville radio producers split that music into twin brands: race records, marketed to Black listeners (which became rhythm and blues and, later, rock and roll), and “hillbilly music,” which became country-and-Western. By the time Holly started listening, the genre had long been coded as the voice of the rural white Southerner, with a few Black stars, like Pride or Darius Rucker or Kane Brown, as exceptions to the rule.
In the spring of 2021, Holly created a Web site for Black country fans, Black Opry, hoping to find like-minded listeners. Unexpectedly, she discovered a different group: Black country artists, a world she knew less about. Among them was Jett Holden, whose song “[Taxidermy](https://www.youtube.com/watch?v=nUPO1gAijrM)” was a scathing response to hollow online activism, sung in the voice of a murdered Black man: “Ill believe that my life matters to you / When Im more than taxidermy for your Facebook wall.” Holly became an activist herself—and then, to her surprise, a promoter, compiling a list of hundreds of performers and booking them across the country, as a collective, under the Black Opry brand. On Twitter, she embraced her role as a mischief-maker—and when she moved to Nashville, in 2022, she changed her Twitter bio to “Nash Villain.” By then, she was embedded in the politics of Music City, meeting with executives at labels and at the Country Music Hall of Fame. Long-simmering debates about racial diversity had intensified in the Trump era. At the 2016 C.M.A. Awards, a week before the election, Beyoncé and the Chicks performed their red-hot country collaboration, “[Daddy Lessons](https://www.youtube.com/watch?v=6Mm9ae_qg9I)”; Alan Jackson, the traditionalist curmudgeon who popularized the nineties anti-pop anthem “[Murder on Music Row](https://www.youtube.com/watch?v=94gLc6o_TVI),” walked out.
[](https://www.newyorker.com/cartoon/a27582)
“Sounds delicious, but Im just going to grab some French fries.”
Cartoon by José Arroyo
In January, I visited Hollys home, in East Nashville, where members of Black Opry were gathering to pregame before heading to Dees, a local music venue. We sat on an overstuffed couch, and Holly showed me some videos on her TV. One was a song called “[Ghetto Country Streets](https://www.youtube.com/watch?v=ijYzDmzCTMM),” by Roberta Lea, a warm, twangy portrait of a Southern childhood. (“I can hear my momma say, get your butt outside and play / And dont come back until those lights are on.”) We all laughed and swayed to “[Whatever Youre Up For](https://www.youtube.com/watch?v=cByNChis1n0),” an infectious dance-party number by the Kentucky Gentlemen, stylish gay twins who shimmied around a stable wearing leather pants and leopard-print shirts. The twins had the commercial bop of country radio, Holly said, but they were in a definitional bind. White stars often fold trap beats or rap into their songs, but, as the scholar Tressie McMillan Cottom has noted, the music still counts as country—its “hick-hop.” When Black men sing that way, their music is often characterized as R. & B. or pop. And gay stars—particularly Black gay stars—are a rarity, even in the wake of a trickster like [Lil Nas X](https://www.newyorker.com/magazine/2021/10/04/the-unexpected-introspection-of-lil-nas-x), who hacked the country charts in 2019, with “[Old Town Road](https://www.youtube.com/watch?v=w2Ov5jzm3j8).”
After we finished some videos, a singer named Leon Timbo picked up his guitar. A big, bearded man with a warm smile, he harmonized with the Houston-raised singer Denitia on a slow version of a classic R. & B. song by Luther Vandross, “Never Too Much.” The [cover](https://www.youtube.com/watch?v=4oBl_s2Kimk), which he performed at Black Opry events, had been Hollys suggestion: an object lesson in musical alchemy. Timbo said, “Its difficult to take the song from its former glory, because in my house we know it by the beginning of it.” He imitated Vandrosss original, with its rowdy disco bounce—*boom, boom, boom*.
Holly said, “To me, a cover like this is bridging the exact gap that we need. Because Black people *love* some fucking Luther, and to take it and make it Americana—it takes it to a place they wouldnt have thought of. And, then again, it is also an example to white people, wondering what our place is in the genre.”
If genre distinctions werent so rigid, Timbo said, people might see Tracy Chapman—who was inspired to play the guitar by watching “Hee Haw” as a child—and [Bill Withers](https://www.newyorker.com/culture/postscript/bill-withers-was-always-there-if-you-needed-him) as country legends. They would know about Linda Martell, the first Black woman to play at the Grand Ole Opry. A purist nostalgia about country music was ultimately indistinguishable from a racist one: both were focussed on policing a narrow definition of who qualified as the real thing.
After the show at Dees, the group—several of whom were queer—hung out at the Lipstick Lounge, a queer bar with karaoke and drag shows. The queens did a rowdy call-and-response with the crowd: “Lesbians in the room, raise your hands!” In the vestibule to an upstairs cigar bar, I spoke with Aaron Vance, the son of a preacher with a radio ministry. Vance, a lanky man in his forties with a low drawl, was one of Black Oprys more old-school members. A [Merle Haggard](https://www.newyorker.com/culture/culture-desk/postscript-merle-haggard-1937-2016)\-influenced singer, hed written droll numbers such as “[Five Bucks Says](https://www.youtube.com/watch?v=qSrpFXWtn6c),” in which he imagined drinking with Abe Lincoln at a dive bar, talking about the racial divide. When Vance moved to Nashville, in 2014, he had been treated as an oddity, but in the farm community he came from, in Amory, Mississippi, it wasnt unusual to be a Black man who loved country. His grandfather, a truck driver, had introduced him to Haggard. Vance considered his music his ministry, he said, and the Black Opry collective had freed him to pursue his mission on his own terms. “You cant tell a wolf hes too much of a wolf,” he said with a laugh—in other words, you couldnt tell Vance that he was too country. When I asked him what his karaoke song was, he smiled: it was “[If Heaven Aint a Lot Like Dixie](https://www.youtube.com/watch?v=GAwlj9wqFnI),” by Hank Williams, Jr.
On a bright spring morning, Jay Knowles picked me up in his red truck and drove us to Fenwicks 300, a diner where Music Row executives take meetings over pancakes. A Gen X dad with messy hair, Knowles had grown up in Nashville, with country in his blood. His father, John Knowles, played guitar with the legendary Chet Atkins, who helped pioneer the Nashville Sound—the smooth, radio-friendly rival of Willie Nelsons gritty “outlaw” movement. In the early nineties, when Jay went to Wesleyan University, he felt inspired by the rise of “alt-country” stars, such as Steve Earle and Mary Chapin Carpenter, who had clever lyrics and distinctive voices full of feeling. It felt like a golden age for both mainstream and indie musicians, as each side sparred over who was a rebel and who was a sellout—a local tradition as old as the steel guitar.
Knowles returned home and went to work on Music Row, becoming a skilled craftsman who joked, in his Twitter bio, that he was “the best songwriter in Nashville in his price range.” He had scored some hits, including a 2012 Alan Jackson heartbreaker, “[So You Dont Have to Love Me Anymore](https://www.youtube.com/watch?v=mVGm93II-UA),” which was nominated for a Grammy. But, looking back, he was troubled by how the industry had changed since marketers rebranded alt-country as Americana, in 1999, and bro country took hold, a decade later. The genres deepening division had been damaging to both sides, in his view: Americana wasnt pushed by the market to speak more broadly, and Music Row wasnt pressured to get smarter. It was a split that replicated national politics in ugly ways.
Knowless job was, in large part, still a sweet one: he met each day with friends, scribbling in a notebook as younger collaborators tapped lyrics into the Notes app. His publisher paid him monthly for demos, and arranged pitches to stars. But no writers got rich off [Spotify](https://www.newyorker.com/tag/spotify) royalties. Knowles had watched, with frustration, as the tonal range of country lyrics had shrunk, getting more juvenile each year: for a while, every hit was a party anthem, with no darkness or story songs allowed. Recently, a small aperture had opened for songs about heartbreak, his favorite subject. But after years in the industry he was wary of false hope: when his friend Chris Stapleton, a gravel-throated roots rocker, rose to fame, in 2015, Knowles thought that the genre was entering a less contrived phase. But on the radio sameness got rewarded.
One of the worst shifts had followed the 2003 Dixie Chicks scandal. At the time, the group was a top act, a beloved trio from Texas who merged fiddle-heavy bluegrass verve with modern storytelling. Then, at a concert in London, just as the Iraq War was gearing up, the lead singer, Natalie Maines, told the crowd that she was ashamed to come from the same state as President George W. Bush. The backlash was instant: radio dropped the band, fans burned their albums, Toby Keith performed in front of a doctored image showing Maines alongside Saddam Hussein, and death threats poured in. Unnerved by the McCarthyist atmosphere, Knowles and other industry professionals gathered at an indie movie house for a sub-rosa meeting of a group called the Music Row Democrats. Knowles told me, “It was kind of like an A.A. meeting—*Oh, yall are drunks, too?*
But a meeting wasnt a movement. For the next two decades, the entire notion of a female country star faded away. There would always be an exception or two—a Carrie Underwood or a Miranda Lambert, or, lately, the spitfire Lainey Wilson, whose recent album “Bell Bottom Country” became a hit—just as there would always be one or two Black stars, usually male. But Knowles, now fifty-three, knew lots of talented women his age who had found the gates of Nashville locked. “Some of them sell real estate, some of them write songs,” he said. “Some sing backup. None became stars.”
Knowles felt encouraged by Nashvilles new wave, which had adopted a different strategy. Instead of competing, these artists collaborated. They pushed one another up the ladder rather than sparring to be “the one.” “This younger generation, they all help each other out,” he said. “It feels unfamiliar to me.”
Whenever I talked to people in Nashville, I kept getting hung up on the same questions. How could female singers be “noncommercial” when Musgraves packed stadiums? Was it easier to be openly gay now that big names like Brandi Carlile were out? What made a song with fiddles “Americana,” not “country”? And why did so many of the best tracks—lively character portraits like Josh Ritters “[Getting Ready to Get Down](https://www.youtube.com/watch?v=HnQ89jZvZD0),” trippy experiments like Margo Prices “[Been to the Mountain](https://www.youtube.com/watch?v=OoxGsS4PMd8),” razor-sharp commentaries like [Brandy Clark](https://www.newyorker.com/culture/culture-desk/no-one-is-writing-better-country-songs-than-brandy-clark-is)s “[Pray to Jesus](https://www.youtube.com/watch?v=nCP0y-mbaFo)”—rarely make it onto country radio? Id first fallen for the genre in the nineties, in Atlanta, where I drove all the time, singing along to radio hits by Garth Brooks and Reba McEntire, Randy Travis and Trisha Yearwood—the music that my Gen X Southern friends found corny, associating it with the worst people at their high schools. Decades later, quality and popularity seemed out of synch; Music Row and Americana felt somehow indistinguishable, cozily adjacent, and also at war.
People I spoke to in Nashville tended to define Americana as “roots” country, as “progressive-liberal” country, or, more recently, as “diverse” country. For some observers, the distinction was about fashion: vintage suits versus plaid shirts. For others, it was about celebrating the singular singer-songwriter. The label had always been a grab bag, incorporating everything from honky-tonk to bluegrass, gospel to blues, Southern rock, Western swing, and folk. But the name itself hinted at a provocative notion: that *this* was the real American music, three chords and the historical truth.
The blunter distinction was that, like independent film, Americana paid less. (The singer-songwriter Todd Snider has joked that Americana is “what they used to call unsuccessful country music. ”) Not everyone embraced the label, even some of its biggest stars: five years ago, when Tyler Childers was named Emerging Artist of the Year at the Americana Awards, he came onstage wearing a scraggly red beard, and growled, “As a man who identifies as a country-music singer, I feel Americana aint no part of nothin ”—a reference to the bluegrass legend Bill Monroes gruff dismissal of modern artists he disdained.
Maybe, as Childers later argued, Americana functioned as a ghetto for “good country music,” letting “bad” country off the hook. Or maybe it was a relief valve, a platform for musicians who otherwise had no infrastructure, given the biases of Music Row. Marcus K. Dowling, a Black music journalist who writes for the *Tennessean*, told me that, not long after the death of George Floyd, hed written a roundup of Black female country artists, highlighting talents like Brittney Spencer, a former backup singer for Carrie Underwood, in the hope that at least one of them would break into mainstream radio. “Almost all of them ended up in Americana,” he said, with a sigh.
Getting signed to Music Row demanded a different calculation: you became a brand, with millions of dollars invested in your career. The top country stars lived in wealthy Franklin, alongside the Daily Wire stars, or on isolated ranches whose luxe décor was shown off by their wives on Instagram. This was part of what made the bro-country phenomenon so galling to its critics: white male millionaires cosplayed as blue-collar rebels while the real rebels starved. The comedian [Bo Burnham](https://www.newyorker.com/magazine/2018/07/02/bo-burnhams-age-of-anxiety) nailed the problem in a scathing parody, “[Country Song](https://www.youtube.com/watch?v=y7im5LT09a0),” which mocked both bro countrys formulaic lyrics (“a rural noun, simple adjective”) and its phony authenticity: “I walk and talk like a field hand / But the boots Im wearing cost three grand / I write songs about riding tractors / From the comfort of a private jet.”
[](https://www.newyorker.com/cartoon/a27488)
“Shes cute and everything, but between you and me we have no common interests.”
Cartoon by Sophie Lucido Johnson and Sammi Skolmoski
When Leslie Fram first moved to Nashville, a decade ago, to run Country Music Television—the genres equivalent of MTV—she studied Music Row like a new language. “I understand why people who arent in it dont get it,” she told me, over a fancy omelette in the Gulch. “I didnt get it!” Fram, who has black hair and a frank, friendly manner, was born in Alabama but spent years working in rock radio in Atlanta and New York; she arrived in Tennessee familiar with Johnny Cash and a number of Americana types, like Lyle Lovett, but few others. It took her a while to grasp some structural problems, like the way certain songs never even got tested for airplay if the men in charge disapproved. Unlike a rock star, a country star required a radio hit to break into the touring circuit—so it didnt matter much if CMT repeatedly played videos by Brandy Clark or the African American trio Chapel Hart. Most maddeningly, if women in country wanted to get airplay, they needed to be sweet and bat their eyes at the male gatekeepers at local radio affiliates. According to “[Her Country](https://www.amazon.com/Her-Country-Became-Success-Supposed/dp/1250793599),” a book by Marissa R. Moss, Musgraves—who had made a spectacular major-label début in 2013, with her album “Same Trailer Different Park”—saw her country career derailed when she objected to a creepy d.j. named Broadway ogling her thighs during an interview. Then the nations biggest country d.j., Bobby Bones, called her “rude” and a “shit head.” After that, her path forked elsewhere.
In 2015, a radio consultant named Keith Hill gave [an interview](https://archive.countryaircheck.com/pdfs/current052615.pdf) to a trade publication, *Country Aircheck Weekly*, in which he made the implicit explicit: “If you want to make ratings in Country radio, take females out.” For a station to succeed, no more than fifteen per cent of its set list could feature women, he warned—and never two songs in a row. He described women as “the tomatoes of the salad,” to be used sparingly. Fury erupted on social media; advocacy organizations, like Change the Conversation, were formed. In 2019, the Highwomen released “[Crowded Table](https://www.youtube.com/watch?v=ZPfI8zBWub4),” a song that imagined a warmer, more open Nashville: “a house with a crowded table / and a place by the fire for everyone.”
Fram, who had recently launched Next Women of Country, a program aimed at promoting young female artists, was initially excited by what became known as Tomatogate. The controversy at least made the stakes clear. For the next decade, she met with other top brass, working to solve the gender puzzle. Did the proportions shift when Taylor Swift left the format? Was it residual resentment over the Chicks? Nothing that Fram or the others did made a difference—and radio play for women kept dropping. Finally, a top radio executive told Fram, “Leslie, A—the program directors are tired of hearing about this. Right? B—they dont care.”
Hill, who started working in country radio in 1974, has moved to Idaho, where he is thinking of retiring. During a recent phone call, he presented himself, as he had in the past, as the jocular id of country radio—the last honest man in a world of “woke jive.” The demographic for country stations was narrow, he told me: white, rural, and older, skewing female. He conducted focus groups in which he pinpointed people from specific Zip Codes who listened to at least two hours of a given radio station a day. Based on their feedback, his advice to programmers was firm: no more than fifteen per cent women, never two in a row. Country music was a meritocracy, Hill insisted. He was just presenting data.
Hill did love one hip-hop-inflected new artist, he told me: Jelly Roll, a heavily tattooed white singer from Nashville who had a moving life story about getting out of prison, kicking hard drugs, and finding God. He was countrys “most authentic” new artist, in Hills estimation, with an outlaw story to rival Merle Haggards. Could women be outlaws? “You know, in central casting? I have my doubts,” Hill said. He blamed one woman after another for blowing her chance at success. The Chicks had “opened their big mouths.” Musgraves had “self-inflicted wounds.” Morris had “injured herself significantly”—shed shift to pop, he predicted. He saw a cautionary tale in the divergent careers of two Black artists, Kane Brown and Mickey Guyton: Brown, a shrewd bro-country star, knew how to play the game, but Guyton had “hurt herself by being a complainer.”
The longer we talked, the more elusive Hills notion of merit became. When he praised someones authenticity, he didnt mean it literally—everybody faked that, he said, with a laugh. It wasnt about quality, either. Even if an artist was generic, and sounded like “seven Luke Bryans slurried in a blender,” his songs could become hits—if he knew how to act. “Repeat after me: I wrap myself in the flag, ” Hill said. “Whether you are religious or not, when theres September 11th or when train cars overturn, you better be part of the damn prayer.” He could have saved the Chicks career, he bragged: they should have talked about bringing the troops home safely. Such constraints applied only to liberals, he acknowledged. If you had “South in your mouth,” the way Aldean did, your highway had more lanes.
Eventually, Hill stopped speaking in code: “You got thugging in the hood for Black people, and you got redneck records for white people.” That was just natural, a matter of water flowing downward—why fight gravity? “Your diversity is the radio dial, from 88 to 108. *Theres* your fucking diversity.”
Jada Watson, an assistant professor of music at the University of Ottawa, began studying country radio after Tomatogate. What Hill called data Watson saw as musical redlining. The original sin of country music—the split between “race records” and “hillbilly”—had led to split radio formats, which then led to split charts. Never playing women back to back was an official recommendation dating to the eighties, formalized in a training document called the “Programming Operations Manual.” The situation worsened after 1996, when the Telecommunications Act permitted companies to buy up an unlimited number of radio stations; the dial is now ruled by the behemoth iHeartRadio, which has codified old biases into algorithms.
Since 2000, the proportion of women on country radio has sunk from thirty-three to eleven per cent. Black women currently represent just 0.03 per cent. (Ironically, Tracy Chapman recently became the first Black female songwriter to have a No. 1 country hit, when Luke Combs released a cover of her classic “Fast Car.”) Country is popular worldwide, performed by musicians from Africa to Australia, Watson told me. Its the voice of rural people everywhere—but youd never know it from the radio.
All parties agreed on only one point: you couldnt ignore country radio even if you wanted to—it drove every decision on Music Row. As Gary Overton, a former C.E.O. of Sony Nashville, had [put it](https://www.tennessean.com/story/money/industries/music/2015/02/20/sony-nashville-ceo-talks-importance-country-radio/23768711/) in 2015, “If youre not on country radio, you dont exist.” Not enough had changed since then, even with the rise of online platforms, like [TikTok](https://www.newyorker.com/tag/tiktok), that helped indie artists go viral. Streaming wasnt the solution: like terrestrial radio, it could be gamed. When I made a Spotify playlist called “Country Music,” the service suggested mostly tracks by white male stars.
One day, I walked down to Music Row, a beautiful, wide street of large houses with welcoming porches. On every block, there was evidence of prosperity: a wealth-management company, a massage studio. I passed Big Loud, which had a sign outside touting Wallens hit “You Proof”—one of the streets many billboards of buff dudes with No. 1 singles. Nearby, I wandered into a dive bar called Bobbys Idle Hour Tavern, which seemed appealingly ramshackle, as if it had been there forever. In fact, it had moved through the neighborhood; it was torn down to make way for new construction and then rebuilt to maintain its authentic look, with dog-eared set lists pinned to ratty walls. It felt like a decent metaphor for Nashville itself.
Inside, I ran into Jay Knowles, the Music Row songwriter. (It was a small town in a big city.) We talked about Nashvilles recent reputation as “Bachelorette City,” for which he offered a theory: although more than a quarter of Nashville was Black, the town was widely seen as “a white-coded city.” “Im not saying this is a good thing,” he emphasized, but tourists viewed Nashville as a safe space, a city where groups of young white women could freely get drunk in public—unlike, say, Memphis, New Orleans, or Atlanta.
At the bar, I also met two low-level Music Row employees, who worked in radio and helped companies handle V.I.P.s. They happily dished, off the record, about clashes on the Row, but added that there was no point bringing their own politics into their jobs. It was like working for Walmart—you had to stay neutral. The problem with country radio wasnt complicated, one of them said: the old generation still ran everything and would never change its mind. When I explained that I was headed to Broadway to meet bachelorettes, they rolled their eyes. Avoid Aldeans, they said.
They werent alone: every local I met had urged me to go only to old standbys like Roberts Western World, where Id spent a wonderful night with Tyler Mahan Coe—the rabble-rousing son of the outlaw-country artist David Allan Coe—who hosts a podcast about country history called “[Cocaine & Rhinestones](https://www.newyorker.com/culture/podcast-dept/cocaine-and-rhinestones-an-addictive-sparkling-podcast-about-country-music).” “I hate nostalgia,” Tyler told me, spooling out a theory that true country music derived from the troubadours, whose songs had satirical subtexts and were meant to be understood in multiple ways. Bro country lacked such nuance—and so did the new Broadway.
Even so, Broadway charmed me, for a practical reason: there were no velvet ropes. Each night club had at least three stories. On the ground floor, there was a bar and a stage where a skilled live musician covered hits. On the second floor, there was another bar, another musician (and, in one case, a group of women toasting me with grape vodka seltzers). Above that, things got wilder, with a rowdy dance floor and, often, a rooftop bar. There was a campy streak to the scene which sometimes echoed the Lipstick Lounge: when the d.j. played Shania Twains classic “[Man! I Feel Like a Woman!](https://www.youtube.com/watch?v=ZJL4UGSbeFg),” he shouted, “Do any of the ladies feel like a woman?” Loud cheers. “Do any of the men feel like a woman?” Deeper cheers. Call me basic, but I had a good time: in Manhattan, a slovenly middle-aged woman in jeans cant walk into a night club, order a Diet Coke, and go dancing for free.
Everywhere, there were brides in cowgirl hats or heart-shaped glasses, and in one case a majestic rhinestone bodysuit worthy of Dolly. On a bustling rooftop, I chatted with a group holding fans printed with the face of the groom—who, they insisted, looked like Prince Harry. At a club named for the band Florida Georgia Line, a screaming woman threw silver glitter into my hair. Every local whom Id spoken to loathed these interlopers, who clogged the streets with their party buses. But when youre hanging out with happy women celebrating their friends, its hard to see the problem.
The bar at the center of Jason Aldeans was built around a big green tractor. The bathroom doors said “*southern gentlemen*” and “*country girls*.” The night I went, the crowd was sedate—no bachelorettes, just middle-aged couples. The singer onstage was handsome and fun, excited to get a request for the Chicks “[Travelin Soldier](https://www.youtube.com/watch?v=AbfgxznPmZM).” When someone asked for “[Wagon Wheel](https://www.youtube.com/watch?v=VNTsYfjBcuQ),” a 2004 classic co-written by Bob Dylan and covered a decade later by Darius Rucker, the singer spoke nostalgically about passersby requesting the song when he busked on Broadway years ago, before the streets were jammed with tourists. “It just goes to show you that with a lot of dedication and hard work and about eleven years time, you can go about a hundred feet from where you started!” he said. “So heres a little Wagon Wheel for you!” Feeling affectionate, I looked up the singer online. His Twitter page was full of liked posts defending anti-vaxxers and January 6th rioters.
Taylor Swift got discovered at the Bluebird Café. So did Garth Brooks. A ninety-seat venue with a postage stamp of a stage, its tucked between a barbershop and a dry cleaner, but its a power center in Nashville—a place ruled by singer-songwriters. In January, Adeem the Artist wore a flowered button-down over a T-shirt that said “This Is a Great Day to Kill God.” They were playing their first Bluebird showcase, performing songs from their breakout sophomore album, “White Trash Revelry.” Some were stompers, like the hilarious “[Going to Hell](https://www.youtube.com/watch?v=goUWMpSv2xA),” in which Adeem fact-checks the lyrics to Charlie Danielss “[The Devil Went Down to Georgia](https://www.youtube.com/watch?v=wBjPAqmnvGA)” with the Devil himself: “He seemed puzzled, so I told him the story, and he said, None of that shits real / Its true I met Robert Johnson, he showed me how the blues could work / But white men would rather give the Devil praise than acknowledge a black mans worth.’ ” Other songs were reveries about growing up amid “methamphetamines and spiritual madness.” They were folky tunes played on acoustic guitar, with witty, pointed lyrics. The people in the crowd seemed to be into it, even when Adeem took jabs at them.
Adeem grew up in a poor evangelical household in Locust, North Carolina, singing along to Toby Keith—the self-declared “Angry American”—on the car radio, in the wake of 9/11. They dreamed about becoming a country star, but as their politics veered to the left they felt increasingly at odds with the genre. Then, in 2017, they won a ticket to the Americana Awards, and were struck by the sight of the singer-songwriter Alynda Segarra, of the band Hurray for the Riff Raff, sporting a hand-painted “Jail Arpaio” shirt, and by the Nashville bluegrass performer Jim Lauderdale taking shots at Trump. “I was just, like, Man, maybe *this* is it. Maybe this is where I belong, ” Adeem told me. Americana had another source of appeal for Adeem, a D.I.Y. artist with a punk mentality: you could break in on a shoestring budget. Adeem, who was barely scraping by painting houses in the Tennessee sun, had spent years building a following by uploading songs to Bandcamp. They budgeted what it would take to make a splash with an album: five thousand dollars for production, ten thousand for P.R. They held a “redneck fund-raiser” online, asking each donor for a dollar, then recorded “White Trash Revelry” independently. (The album was distributed by Thirty Tigers, a Nashville-based company that let them retain the rights.) Adeems strategy worked astoundingly well: in December, *Rolling Stone* [praised](https://www.rollingstone.com/music/music-country/adeem-the-artist-white-trash-revelry-1234651802/) “White Trash Revelry” as “the most empathetic country album of the year,” ranking it No. 7 on its year-end list of the twenty-five best albums in the genre. This year, Adeem was nominated for Emerging Act of the Year at the Americana Awards, and had their début at the Grand Ole Opry.
After the Bluebird gig, I joined Adeem at an Airbnb nearby, where they were experiencing some “visual distortions” from microdosing shrooms. Over pizza, they spoke about their complicated relationship with their extended family, back in North Carolina, some of whom believed in [QAnon](https://www.newyorker.com/tag/qanon) conspiracy theories. Adeems relatives were thrown by, but not unsupportive of, their choices: when their uncle insisted that Adeems gender identity was a rock-and-roll performance à la Ziggy Stardust, Adeems father defended his childs authenticity, in his own way. “He said, No, no, I think he really believes it! ” Adeem told me, with a laugh.
There had always been queer people in country music. In 1973, a band called Lavender Country put out an album with lyrics like “My belly turns to jelly / like some nelly ingenue.” But there were many more ugly stories of singers forced into the closet—and even now, after many top talents, including songwriters such as Brandy Clark and Shane McAnally, had come out, old taboos lingered. You could be a songwriter, not a singer; you could sing love songs, but not say whom you loved; you could come out, but lose your spot on the radio. When T. J. Osborne, of the popular duo Brothers Osborne, confirmed that he was gay, in 2021, his management company arranged a careful campaign: one profile, written by a sympathetic journalist, and one relevant single, the rueful but vague “[Younger Me](https://www.youtube.com/watch?v=wc5j50Xbvqs),” which felt designed to offend no one.
Adeem, who is inspired as much by Andy Kaufmans absurdism as by John Prines smarts, was part of a different breed. Queer Americana had plenty of outspoken artists, from River Shook, whose signature song is “[Fuck Up](https://www.youtube.com/watch?v=yLbmUXBwp9M),” to the bluegrass artist Justin Hiltner, who wrote about *AIDS* in his beautiful single “[1992](https://www.youtube.com/watch?v=zE0xt6ogyiU).” These artists, all left-wing, came from backgrounds like Adeems—small towns, evangelical families, abuse and addiction. It was Adeems biggest gripe: Music Row was marketing a patronizing parody of their “white trash” upbringing to the poor. Adeems own politics werent a simple matter. When they objected to Tennessee laws against trans youth, it wasnt as a liberal but as a parent and a redneck suspicious of government control: “Its, like, stay away from my kids! Stay out of my yard, you know?”
At the Airbnb, Adeems transmasculine accompanist, Ellen Angelico, known as Uncle Ellen, pulled out a deck of cards: a beta version of Bro Country, a Cards Against Humanity-style game based on actual country-radio lyrics. The group got loose and giggly, shouting out clichés—“tin roof,” “red truck”—to form silly combinations. In one way, the game mocked country radio; in another, it paid tribute to it—you couldnt play unless you had studied it. Like hip-hop, country had always been an aggressively meta-referential art form; even bro country had become increasingly self-aware.
On bad days, Adeem had told me, the two sides of Nashville seemed locked in a “W.W.E. wrestling match,” playing cartoon versions of themselves. Adeem had engaged in a few bouts themself, lobbing attention-getting songs online, such as “[I Wish You Wouldve Been a Cowboy](https://www.youtube.com/watch?v=GyIwRoPr728),” which slammed Toby Keith for wearing “my life like a costume on the TV.” Still, Adeem sometimes fantasized about what it would be like to meet Keith. They wanted not a fight but a real conversation—a chance to tell Keith how much his music had meant to them, and to ask if he had regrets.
In mid-May, at the Academy of Country Music Awards, Music Row was out in force. Bobby Bones, the d.j. whod insulted Musgraves, was backstage, interviewing stars. Wallen won Male Artist of the Year. Aldean sang “[Tough Crowd](https://www.youtube.com/watch?v=rtGX6eCNbEo),” dedicated to the “hell raisin . . . dirt turnin, diesel burnin, hard workin nine-to-fivers” who “make the red white and blue proud.” (A few weeks later, he released the repellent “Try That in a Small Town,” an ode to vigilantism.) The shows highlight was a fun come-on called “[Grease](https://www.youtube.com/watch?v=fwzgh7UUpjE),” by Lainey Wilson, who won four awards, including Female Artist and Album of the Year. Wilson, a farmers daughter from Louisiana, was Music Rows latest female supernova, a devotee of Dolly Parton (one of her early hits was “[WWDD](https://www.youtube.com/watch?v=V9VegfUmYYQ)”) whod moved to Nashville after high school. A decade of hustle had paid off: by 2023, she had a role on “Yellowstone” and a partnership with Wrangler jeans. Maren Morris wasnt around: that week, she was in New York, accepting a prize at the *glaad* Awards. On Instagram, shed posted a video of herself in a recording studio with the indie-pop guru [Jack Antonoff](https://www.newyorker.com/magazine/2022/05/23/jack-antonoff-pop-music-collaboration-lorde-taylor-swift). At a concert a few weeks later, she sang a duet with Taylor Swift.
The A.C.M. Awards final number was the live première of Partons new single, “[World on Fire](https://www.youtube.com/watch?v=MLIGxNZeW78),” from an upcoming rock album. When the lights came up, Parton was wearing an enormous, rippling parachute skirt printed with a black-and-white map of the globe—and then, when it tore away, she was in a black leather suit, chanting angrily as backup dancers strutted in Janet Jackson-esque formation. For a moment, it felt like a shocking departure—a political statement from a woman who never got political. Then that impression evaporated. Politicians were liars, Parton sang; people should be kinder, less ugly. What ever happened to “In God We Trust”? Four days later, on the “Today” show, Jacob Soboroff asked Parton which politicians she meant, and she replied, breezily, “All of them, any of them,” adding that if these unnamed figures tried “hard enough” and worked “from the heart,” matters would surely improve.
The performance reminded me of Keith Hills advice to the Chicks: they should have sprinkled some sugar. Parton had been the biggest letdown for Allison Russell and the organizers of the “Love Rising” benefit, who told me that theyd “begged and begged” her to sing at the Bridgestone, or plug the event, or Zoom in. Shed performed with drag queens many times; shed written an Oscar-nominated song, “[Travelin Thru](https://www.youtube.com/watch?v=mx_I-byng78),” for the 2005 film “Transamerica.” As Parton herself had joked, she *was* a kind of drag queen—a “herself impersonator,” as Russell had put it. If the most powerful country star on earth wouldnt speak out, it was hard to imagine others taking a risk.
Another song performed that night had a different feel: “[Bonfire at Tinas](https://www.youtube.com/watch?v=4i1JAjbpZG4),” an ensemble number from Ashley McBrydes pandemic project, a bold concept album called “Lindeville,” which featured numerous guest artists. The record had received critical praise but little radio play. During “Bonfire at Tinas,” a chorus of women sang, “Small town women aint built to get along / But you burn one, boy, you burn us all.” In its salty solidarity, the song conjured the collectives emerging across Nashville, from “Love Rising” to Black Opry, groups that embodied the Highwomens notion of the “crowded table.” You could also see this ideal reflected in “My Kind of Country,” a reality competition show on Apple TV+, produced by Musgraves and Reese Witherspoon, that focussed on global country acts and included the gay South African musician Orville Peck as a judge, and in “Shucked,” a new Broadway show with music by Brandy Clark and Shane McAnally, which offered up a sweet vision of a multiracial small town learning to open its doors. Mainstream country radio hadnt changed, but all around it people were busily imagining what would happen if it did.
McBryde, who grew up in a small town in Arkansas, had spent years working honky-tonks and country fairs, a journey she sang about in the anthemic number “[Girl Goin Nowhere](https://www.youtube.com/watch?v=-RhdqUFRUS8).” She was a distinctive figure in mainstream country, a brunette in a sea of blondes, with arms covered in tattoos. When we met backstage one night at the Grand Ole Opry, she was playing in a memorial concert for the character actor and pint-size Southern sissy [Leslie Jordan](https://www.newyorker.com/culture/culture-desk/leslie-jordan-perfectly-loopy-quarantine-videos), who had created a virtual crowded table during the pandemic, through ebullient Instagram videos, then recorded a gospel album with country stars such as Parton.
Unlike Jordans joyful quarantine, McBrydes pandemic had been “destructive,” she told me: unable to work, she drank too much, feeling like a “sheepdog that couldnt chase sheep.” “Lindeville” had been the solution. During a weeklong retreat at an Airbnb in Tennessee, she had written for up to eighteen hours a day with old friends, among them Brandy Clark and the Florida-born performer Pillbox Patti. The result was a set of songs about distinct characters—songs that were blunter and less sentimental than most music on country radio. The album, which was named for Dennis Linde, the songwriter behind the Chicks feminist revenge classic “Goodbye Earl,” had a spiritual edge, McBryde said. She had grown up in a “strange, strict, rigid” place where she was taught that “everything makes Jesus mad,” and it felt good to envision a different kind of small town. “The fact that God loves stray dogs, people like me, is so evident,” she said. “There are things that Ive survived, especially where alcohol was involved, that I shouldnt have.”
McBryde, who called herself as “country as a homemade sock,” had no plans to shift to pop, as peers had done. But she had a pragmatic view of the industry to which shed devoted her life. Making music in Nashville, she joked, could feel like adopting a street cat, only to have it bite you when it turned out to be a possum. “Hes a shitty cat, country radio—but hes a good possum,” she said. To build a big career, you had to keep a sense of humor: “I wont name her, but theres another female artist who has a very vertical backbone, like I do. And we joke with each other and go, What are they gonna do— *not play our songs*?’ ”
Id attended a staging of “Lindeville” at the Ryman Auditorium a few weeks earlier, shortly after Tennessees first anti-drag ordinance passed in the State Senate. The event was framed as an old-fashioned radio show, with an announcer and whimsical ad jingles. T. J. Osborne and Lainey Wilson were among the guest stars, creating a feeling of Music Row camaraderie. During McBrydes hilarious “[Brenda Put Your Bra On](https://www.youtube.com/watch?v=3GBcMbYP2ng),” in which women in a trailer park gossip about neighbors—“Well, did you hear that? There went the good dishes / I hope they dont knock out the cable”—fans threw bras onstage.
At one point, McBryde serenaded a small child, who was seated at her feet. The shows climax was “[Gospel Night at the Strip Club](https://www.youtube.com/watch?v=9O7ftZRNk2I).” Sung on an acoustic guitar by the Louisiana musician Benjy Davis, the tune was about having a spiritual experience in an unexpected place. As Davis sang the key line, “Jesus loves the drunkards and the whores and the queers,” spotlights illuminated part of the audience. The congregation of the Church of Country Music looked around for what had been revealed, then gasped: five drag queens, scattered among the Ryman crowd, stood up, their gowns glittering like sunlight. ♦
*An earlier version of this article misspelled T. J. Osbornes name and misstated the date of Governor Lees inaugural banquet and the title of a song by Adeem the Artist.*
&emsp;
&emsp;
---
`$= dv.el('center', 'Source: ' + dv.current().Link + ', ' + dv.current().Date.toLocaleString("fr-FR"))`

@ -12,7 +12,7 @@ CollapseMetaTable: true
--- ---
Parent:: [[@News|News]] Parent:: [[@News|News]]
Read:: 🟥 Read:: [[2023-07-19]]
--- ---

@ -12,7 +12,7 @@ CollapseMetaTable: true
--- ---
Parent:: [[@News|News]] Parent:: [[@News|News]]
Read:: 🟥 Read:: [[2023-07-18]]
--- ---

@ -12,7 +12,7 @@ CollapseMetaTable: true
--- ---
Parent:: [[@News|News]] Parent:: [[@News|News]]
Read:: 🟥 Read:: [[2023-07-19]]
--- ---

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

Loading…
Cancel
Save