vault backup: 2025-08-08 14:29:11

This commit is contained in:
2025-08-08 14:29:11 -04:00
parent baca4a962d
commit c11ae391f5
103 changed files with 32531 additions and 37142 deletions
Binary file not shown.
Binary file not shown.
+2 -1
View File
@@ -9,5 +9,6 @@
"alwaysUpdateLinks": true, "alwaysUpdateLinks": true,
"tabSize": 2, "tabSize": 2,
"vimMode": true, "vimMode": true,
"promptDelete": false "promptDelete": false,
"focusNewTab": true
} }
+4 -4
View File
@@ -2,14 +2,14 @@
"obsidian-git", "obsidian-git",
"homepage", "homepage",
"tag-wrangler", "tag-wrangler",
"obsidian-tasks-plugin",
"table-editor-obsidian", "table-editor-obsidian",
"dataview", "dataview",
"obsidian-linter", "obsidian-linter",
"templater-obsidian",
"obsidian-style-settings", "obsidian-style-settings",
"obsidian-tagfolder", "obsidian-tagfolder",
"obsidian-excalidraw-plugin", "obsidian-excalidraw-plugin",
"excalibrain", "obsidian-hover-editor",
"obsidian-hover-editor" "quickadd",
"recent-files-obsidian",
"obsidian-spaced-repetition"
] ]
File diff suppressed because one or more lines are too long
-10
View File
@@ -1,10 +0,0 @@
{
"id": "breadcrumbs",
"name": "Breadcrumbs",
"version": "3.6.11",
"minAppVersion": "0.15.2",
"description": "Visualise & navigate your vault's structure",
"author": "SkepticMystic",
"authorUrl": "https://github.com/SkepticMystic/breadcrumbs",
"isDesktopOnly": false
}
-113
View File
@@ -1,113 +0,0 @@
.BC-trail {
border: 1px solid var(--background-modifier-border);
border-radius: 5px;
padding: 5px;
margin-bottom: 5px !important;
}
/* completely hides the trail when "no path found message" is left empty and no path is found */
.BC-trail:empty {
display: none;
}
.BC-matrix-square li {
text-align: left;
}
/* ensure empty headers not leaving an element */
.BC-Matrix .BC-Matrix-square .BC-Matrix-header:empty {
display: none;
}
.internal-link.BC-Link {
color: var(--text-accent);
}
.internal-link.BC-Link:hover {
color: var(--text-accent-hover, var(--text-accent));
}
.vis-view-options > * {
padding: 5px;
}
/* Source: https://svelte.dev/repl/3153faf7584d40bd8ddebecf39f24ac1?version=3.41.0 */
[data-tooltip] {
position: relative;
/* z-index: 2; */
/* display: block; */
}
[data-tooltip]:before,
[data-tooltip]:after {
visibility: hidden;
opacity: 0;
pointer-events: none;
transition: 0.2s ease-out;
transform: translate(-50%, 5px);
}
[data-tooltip]:before {
position: absolute;
top: 80%;
/* bottom: 100%; */
left: 50%;
margin-bottom: 5px;
padding: 7px;
width: fit-content;
height: fit-content;
min-width: 200px;
min-height: 200px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
background-color: var(--background-primary);
color: var(--text-normal);
content: attr(data-tooltip);
text-align: center;
font-size: var(--font-medium);
line-height: 1.2;
transition: 0.2s ease-out;
white-space: pre-line;
z-index: 100;
}
/* [data-tooltip]:after {
position: absolute;
top: 80%;
left: 50%;
width: 0;
border-top: 5px solid #000;
border-top: 5px solid hsla(0, 0%, 20%, 0.9);
border-right: 5px solid transparent;
border-left: 5px solid transparent;
background-color: red;
content: " ";
font-size: 0;
line-height: 0;
} */
[data-tooltip]:hover:before,
[data-tooltip]:hover:after {
visibility: visible;
opacity: 1;
transform: translate(-50%, 0);
}
[data-tooltip="false"]:hover:before,
[data-tooltip="false"]:hover:after {
visibility: hidden;
opacity: 0;
}
.thread-dir-templates .setting-item-control {
display: flex;
flex-direction: column;
}
.juggl-hide {
display: none;
}
[data-type="BC-matrix"] div.view-content {
overflow: hidden !important;
}
-255
View File
@@ -1,255 +0,0 @@
{
"compactView": false,
"compactingFactor": 1.5,
"minLinkLength": 18,
"excalibrainFilepath": "excalibrain.md",
"indexUpdateInterval": 5000,
"hierarchy": {
"exclusions": [
"excalidraw-border-color",
"excalidraw-css",
"excalidraw-default-mode",
"excalidraw-export-dark",
"excalidraw-export-pngscale",
"excalidraw-export-svgpadding",
"excalidraw-export-transparent",
"excalidraw-font",
"excalidraw-font-color",
"excalidraw-link-brackets",
"excalidraw-link-prefix",
"excalidraw-linkbutton-opacity",
"excalidraw-onload-script",
"excalidraw-plugin",
"excalidraw-url-prefix",
"kanban-plugin"
],
"parents": [
"inception",
"North",
"origin",
"Parent",
"parent domain",
"Parents",
"source",
"u",
"up"
],
"children": [
"Child",
"Children",
"contributes to",
"d",
"down",
"leads to",
"nurtures",
"South"
],
"leftFriends": [
"advantages",
"alternatives",
"Friend",
"Friends",
"j",
"Jump",
"Jumps",
"pros",
"similar",
"supports"
],
"rightFriends": [
"cons",
"disadvantages",
"missing",
"opposes"
],
"previous": [
"Before",
"Prev",
"Previous",
"w",
"West"
],
"next": [
"After",
"e",
"East",
"n",
"Next"
],
"hidden": [
"hidden"
]
},
"inferAllLinksAsFriends": false,
"inverseInfer": false,
"inverseArrowDirection": true,
"renderAlias": true,
"nodeTitleScript": "",
"backgroundColor": "#0c3e6aff",
"excludeFilepaths": [
"templates"
],
"autoOpenCentralDocument": true,
"toggleEmbedTogglesAutoOpen": true,
"showInferredNodes": true,
"showAttachments": true,
"showURLNodes": true,
"showVirtualNodes": true,
"showFolderNodes": false,
"showTagNodes": false,
"showPageNodes": true,
"showNeighborCount": true,
"showFullTagName": false,
"maxItemCount": 30,
"renderSiblings": false,
"applyPowerFilter": false,
"baseNodeStyle": {
"prefix": "",
"backgroundColor": "#00000066",
"fillStyle": "solid",
"textColor": "#ffffffff",
"borderColor": "#00000000",
"fontSize": 20,
"fontFamily": 3,
"maxLabelLength": 30,
"roughness": 0,
"strokeShaprness": "round",
"strokeWidth": 1,
"strokeStyle": "solid",
"padding": 10,
"gateRadius": 5,
"gateOffset": 15,
"gateStrokeColor": "#ffffffff",
"gateBackgroundColor": "#ffffffff",
"gateFillStyle": "solid"
},
"centralNodeStyle": {
"fontSize": 30,
"backgroundColor": "#B5B5B5",
"textColor": "#000000ff"
},
"inferredNodeStyle": {
"backgroundColor": "#000005b3",
"textColor": "#95c7f3ff"
},
"urlNodeStyle": {
"prefix": "🌐 "
},
"virtualNodeStyle": {
"backgroundColor": "#ff000066",
"fillStyle": "hachure",
"textColor": "#ffffffff"
},
"siblingNodeStyle": {
"fontSize": 15
},
"attachmentNodeStyle": {
"prefix": "📎 "
},
"folderNodeStyle": {
"prefix": "📂 ",
"strokeShaprness": "sharp",
"borderColor": "#ffd700ff",
"textColor": "#ffd700ff"
},
"tagNodeStyle": {
"prefix": "#",
"strokeShaprness": "sharp",
"borderColor": "#4682b4ff",
"textColor": "#4682b4ff"
},
"tagNodeStyles": {},
"tagStyleList": [],
"primaryTagField": "Note type",
"primaryTagFieldLowerCase": "note-type",
"displayAllStylePrefixes": true,
"baseLinkStyle": {
"strokeColor": "#696969FF",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 0,
"startArrowHead": "none",
"endArrowHead": "none",
"showLabel": false,
"fontSize": 10,
"fontFamily": 3,
"textColor": "#ffffffff"
},
"inferredLinkStyle": {
"strokeStyle": "dashed"
},
"folderLinkStyle": {
"strokeColor": "#ffd700ff"
},
"tagLinkStyle": {
"strokeColor": "#4682b4ff"
},
"hierarchyLinkStyles": {
"hidden": {},
"inception": {},
"North": {},
"origin": {},
"Parent": {},
"parent domain": {},
"Parents": {},
"source": {},
"u": {},
"up": {},
"Child": {},
"Children": {},
"contributes to": {},
"d": {},
"down": {},
"leads to": {},
"nurtures": {},
"South": {},
"advantages": {},
"alternatives": {},
"Friend": {},
"Friends": {},
"j": {},
"Jump": {},
"Jumps": {},
"pros": {},
"similar": {},
"supports": {},
"cons": {},
"disadvantages": {},
"missing": {},
"opposes": {},
"Before": {},
"Prev": {},
"Previous": {},
"w": {},
"West": {},
"After": {},
"e": {},
"East": {},
"n": {},
"Next": {}
},
"navigationHistory": [
"README.md",
"systems.md",
"electrical.md",
"lighting-controls.md",
"full-takeoff.md"
],
"allowOntologySuggester": true,
"ontologySuggesterParentTrigger": "::p",
"ontologySuggesterChildTrigger": "::c",
"ontologySuggesterLeftFriendTrigger": "::l",
"ontologySuggesterRightFriendTrigger": "::r",
"ontologySuggesterPreviousTrigger": "::e",
"ontologySuggesterNextTrigger": "::n",
"ontologySuggesterTrigger": ":::",
"ontologySuggesterMidSentenceTrigger": "(",
"boldFields": false,
"allowAutozoom": true,
"maxZoom": 1,
"allowAutofocuOnSearch": true,
"defaultAlwaysOnTop": false,
"embedCentralNode": false,
"centerEmbedWidth": 550,
"centerEmbedHeight": 700
}
File diff suppressed because one or more lines are too long
-10
View File
@@ -1,10 +0,0 @@
{
"id": "excalibrain",
"name": "ExcaliBrain",
"version": "0.2.15",
"minAppVersion": "1.1.6",
"description": "A clean, intuitive and editable graph view for Obsidian",
"author": "Zsolt Viczian",
"authorUrl": "https://zsolt.blog",
"isDesktopOnly": false
}
-349
View File
@@ -1,349 +0,0 @@
/* Sets all the text color to red! */
.excalibrain-warning {
background-color: var(--text-highlight-bg);
color: var(--text-normal);
}
.excalibrain-prompt-center {
text-align: center;
}
.excalibrain-contentEl div.Island,
.excalibrain-contentEl button.help-icon {
display:none;
}
.excalibrain-contentEl {
overflow: hidden !important;
position: relative;
}
/* -----------
TOOLS PANEL
------------ */
.excalibrain-toolspanel-wrapper {
z-index: 3;
position: absolute;
top: 0.6em;
padding-left: 0.6em;
/* Set width to auto to fit its content */
width: 100%;
padding-right: 0.6em;
pointer-events: none;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.excalibrain-dropdown-wrapper,
.excalibrain-buttons {
pointer-events: none;
margin-top: 0.3em;
max-width: 37em;
justify-content: space-between;
}
.excalibrain-searchinput {
width: 26em;
vertical-align: middle;
pointer-events: all;
}
.excalibrain-buttons {
margin-left: -0.3em;
display: flex;
float: right;
flex: 1 0 30em;
}
.excalibrain-toolspanel-divider {
width: 0.15em;
background-color: var(--default-border-color);
margin-left: 0.5em;
margin-right: 0.2em;
}
.excalibrain-button {
pointer-events: all;
vertical-align: middle;
padding-left: 0.3em;
padding-right: 0.3em;
margin-left: 0.3em !important;
margin-right: 0px !important;
width: 2.4em !important;
justify-content: center !important;
box-shadow: none;
transition: box-shadow 0.3s ease;
}
.excalibrain-button.off {
background-color: var(--island-bg-color);
}
.excalibrain-button.on {
background-color: var(--color-primary-darker);
}
.excalibrain-button:hover {
box-shadow: 0 3px 6px rgba(0, 0, 0, 0.4);
}
.excalibrain-button:active {
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.6);
}
.excalibrain-button.disabled {
background-color: var(--island-bg-color);
pointer-events: none;
opacity: 0.5;
cursor: not-allowed;
}
/* -----------
HISTORY
------------ */
.excalibrain-history-wrapper {
z-index: 3;
position: absolute;
bottom: 0px;
padding-left: 7rem;
padding-bottom: 10px;
width: 100%;
padding-right: 10px;
overflow: hidden;
}
.excalibrain-history-container {
overflow-y: hidden;
display: -webkit-box;
overflow-x: scroll;
padding-left: 0.5em;
background-color: #00000030;
}
.excalibrain-history-divider {
color: gold;
margin-left: 5px;
margin-right: 5px;
font-size: smaller;
}
.excalibrain-history-item {
cursor: pointer;
color: silver;
font-size: smaller;
}
/* -----------
SETTINGS
------------ */
.excalibrain-settings-folding-L1 {
font-size: large;
font-weight: bold;
color: var(--text-title-h3);
}
.excalibrain-settings-h1 {
color: var(--text-title-h1);
}
.excalibrain-setting-style-section {
padding-left: 30px;
border-left: 10px solid var(--background-modifier-border);
}
.excalibrain-settings-demoimg {
max-width: 400px;
}
.excalibrain-setting-nameEl {
min-width: 10em;
max-width: 20em;
}
.excalibrain-setting-descEl {
min-width: 10em;
max-width: 20em;
}
.excalibrain-setting-controlEl {
width: 90%;
}
.excalibrain-settings-colorlabel {
padding-right: 5px;
min-width: 3em;
}
.excalibrain-settings-colorpicker {
max-width: 32px;
min-width: 32px;
width: 32px !important;
}
.excalibrain-settings-opacitylabel {
padding-right: 5px;
padding-left: 10px;
min-width: 5em;
}
.excalibrain-settings-sliderlabel {
min-width: 2em;
text-align: right;
}
.excalibrain-settings-toggle {
min-width: 2em;
margin-right: 5px;
}
.excalibrain-dropdown-wrapper {
display: inline-flex;
}
/* -----------
MULTISELECT
------------ */
.multiselect-container {
padding-left: 0.3em;
width:14.2em;
pointer-events: all;
}
.multiselect-container * {
box-sizing:border-box;
}
.multiselect-container .multiselect-header {
width:100%;
margin-bottom:6px;
}
.multiselect-container .multiselect-wrapper {
position:relative;
width:100%;
height:30px;
background: var(--island-bg-color); /*var(--background-modifier-form-field);*/
border:1px solid var(--background-modifier-border);
display:flex;
align-items:center;
padding:0 8px;
cursor:pointer
}
.multiselect-container .multiselect-wrapper:after {
content:"";
position:absolute;
width:8px;
height:8px;
right:12px;
top:8px;
border-right:2px solid var(--text-normal);
border-top:2px solid var(--text-normal);
transform:rotate(135deg);
transform-origin:center center;
transition:all .2s ease-in-out;
}
.multiselect-container .multiselect-wrapper .selected-value {
padding-right:30px;
text-overflow:ellipsis;
overflow:hidden;
white-space:nowrap;
}
.multiselect-container .multiselect-wrapper .options-wrapper {
position:absolute;
top:100%;
left:0;
width:100%;
max-height:300px;
overflow:auto;
background-color:var(--background-secondary);
border:1px solid var(--background-modifier-border);
display:none;
flex-direction:column;
}
.multiselect-container .multiselect-wrapper .option:hover {
cursor:pointer;
background-color:rgba(0,0,0,0.1);
}
.multiselect-container .multiselect-wrapper .option-text {
display:none;
padding:6px 12px;
}
.multiselect-container .multiselect-wrapper .checkbox-wrapper {
display:flex;
align-items:center;min-height:19px;
position:relative;
padding:6px 12px 6px 36px;
cursor:pointer;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none;
}
.multiselect-container .multiselect-wrapper .checkbox-wrapper .checkbox-checkmark {
position:absolute;
top:6px;
left:6px;
height:19px;
width:19px;
background-color:#eee;
border-radius:4px;
border:1px solid #000;
}
.multiselect-container .multiselect-wrapper .checkbox-wrapper .checkbox-checkmark:after {
content:'';
position:absolute;display:none;
left:6px;
top:2px;
width:4px;
height:8px;
border:solid white;
border-width:0 2px 2px 0;
transform:rotate(45deg);
}
.multiselect-container .multiselect-wrapper .checkbox-wrapper input {
position:absolute;
opacity:0;
cursor:pointer;
height:0;
width:0;
}
.multiselect-container .multiselect-wrapper .checkbox-wrapper input:checked ~ .checkbox-checkmark {
background-color:#2196F3;
}
.multiselect-container .multiselect-wrapper .checkbox-wrapper input:checked ~ .checkbox-checkmark:after {
display:block;
}
.multiselect-container .multiselect-wrapper.single-select .checkbox-wrapper {
display:none;
}
.multiselect-container .multiselect-wrapper.single-select .option-text {
display:block;
}
.multiselect-container .multiselect-wrapper.single-select .option-text.selected {
background-color:#2196F3;
}
.multiselect-container .multiselect-wrapper.opened:after {
top:12px;
transform:rotate(315deg);
}
.multiselect-container .multiselect-wrapper.opened .options-wrapper {
display:flex;
}
Binary file not shown.
+90
View File
@@ -0,0 +1,90 @@
{
"newNotePlaceholder": "Untitled",
"defaultInitialization": false,
"navigatorEnabled": true,
"filePreviewOnHover": false,
"blinkEnabled": true,
"datePickerTime": false,
"imageThumbnails": false,
"noteThumbnails": false,
"spacesMDBInHidden": true,
"cacheIndex": true,
"spacesRightSplit": false,
"contextEnabled": true,
"spaceViewEnabled": true,
"saveAllContextToFrontmatter": true,
"autoOpenFileContext": false,
"activeView": "/",
"hideFrontmatter": true,
"activeSpace": "",
"defaultDateFormat": "yyyy-MM-dd",
"defaultTimeFormat": "h:mm a",
"spacesEnabled": true,
"syncFormulaToFrontmatter": true,
"spacesPerformance": false,
"currentWaypoint": 0,
"enableFolderNote": true,
"folderIndentationLines": true,
"revealActiveFile": false,
"spacesStickers": true,
"spaceRowHeight": 29,
"mobileSpaceRowHeight": 40,
"bannerHeight": 200,
"spacesDisablePatch": false,
"folderNoteInsideFolder": true,
"folderNoteName": "",
"sidebarTabs": true,
"showRibbon": true,
"vaultSelector": true,
"deleteFileOption": "trash",
"expandedSpaces": [
"//Tags",
"/"
],
"expandFolderOnClick": true,
"spacesFolder": "Tags",
"suppressedWarnings": [],
"spaceSubFolder": ".space",
"hiddenFiles": [],
"hiddenExtensions": [
".mdb",
"_assets",
"_blocks"
],
"inlineBacklinks": false,
"inlineContext": true,
"inlineBacklinksExpanded": false,
"inlineContextExpanded": true,
"inlineContextProperties": true,
"inlineContextSectionsExpanded": true,
"banners": true,
"inlineContextNameLayout": "vertical",
"spacesUseAlias": false,
"fmKeyAlias": "aliases",
"fmKeyBanner": "banner",
"fmKeyColor": "color",
"fmKeyBannerOffset": "banner_y",
"fmKeySticker": "sticker",
"openSpacesOnLaunch": true,
"indexSVG": false,
"readableLineWidth": false,
"autoAddContextsToSubtags": true,
"releaseNotesPrompt": 0.999,
"enableDefaultSpaces": true,
"showSpacePinIcon": true,
"experimental": false,
"systemName": "zmVault",
"defaultSpaceTemplate": "",
"selectedKit": "default",
"actionMaxSteps": 100,
"contextPagination": 25,
"skipFolderNames": [],
"skipFolders": [],
"enhancedLogs": false,
"basics": true,
"basicsSettings": null,
"firstLaunch": true,
"notesPreview": false,
"editStickerInSidebar": true,
"overrideNativeMenu": false
}
+1177
View File
File diff suppressed because one or more lines are too long
+10
View File
@@ -0,0 +1,10 @@
{
"id": "make-md",
"name": "make.md",
"version": "1.1.7",
"minAppVersion": "0.16.0",
"description": "make.md gives you everything you need to organize and personalize your notes.",
"author": "make.md",
"authorUrl": "https://www.make.md",
"isDesktopOnly": false
}
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -103,7 +103,7 @@
"library2": { "library2": {
"type": "excalidrawlib", "type": "excalidrawlib",
"version": 2, "version": 2,
"source": "https://github.com/zsviczian/obsidian-excalidraw-plugin/releases/tag/2.14.0", "source": "https://github.com/zsviczian/obsidian-excalidraw-plugin/releases/tag/2.14.1",
"libraryItems": [] "libraryItems": []
}, },
"imageElementNotice": true, "imageElementNotice": true,
@@ -115,7 +115,7 @@
"mdCSS": "", "mdCSS": "",
"scriptEngineSettings": {}, "scriptEngineSettings": {},
"defaultTrayMode": true, "defaultTrayMode": true,
"previousRelease": "2.14.0", "previousRelease": "2.14.1",
"showReleaseNotes": true, "showReleaseNotes": true,
"showNewVersionNotification": true, "showNewVersionNotification": true,
"latexBoilerplate": "\\color{blue}", "latexBoilerplate": "\\color{blue}",
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "obsidian-excalidraw-plugin", "id": "obsidian-excalidraw-plugin",
"name": "Excalidraw", "name": "Excalidraw",
"version": "2.14.0", "version": "2.14.1",
"minAppVersion": "1.5.7", "minAppVersion": "1.5.7",
"description": "An Obsidian plugin to edit and view Excalidraw drawings", "description": "An Obsidian plugin to edit and view Excalidraw drawings",
"author": "Zsolt Viczian", "author": "Zsolt Viczian",
File diff suppressed because one or more lines are too long
+213 -205
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -6,5 +6,5 @@
"description": "Integrate Git version control with automatic backup and other advanced features.", "description": "Integrate Git version control with automatic backup and other advanced features.",
"isDesktopOnly": false, "isDesktopOnly": false,
"fundingUrl": "https://ko-fi.com/vinzent", "fundingUrl": "https://ko-fi.com/vinzent",
"version": "2.34.0" "version": "2.35.0"
} }
+24 -8
View File
@@ -55,6 +55,15 @@
.tooltip.mod-right { .tooltip.mod-right {
overflow-wrap: break-word; overflow-wrap: break-word;
} }
/* Limits the scrollbar to the view body */
.git-view {
display: flex;
flex-direction: column;
position: relative;
height: 100%;
}
.git-tools { .git-tools {
display: flex; display: flex;
margin-left: auto; margin-left: auto;
@@ -81,6 +90,21 @@
height: auto; height: auto;
} }
.workspace-leaf-content[data-type="git-view"] .tree-item-self,
.workspace-leaf-content[data-type="git-history-view"] .tree-item-self {
align-items: center;
}
.workspace-leaf-content[data-type="git-view"]
.tree-item-self:hover
.clickable-icon,
.workspace-leaf-content[data-type="git-history-view"]
.tree-item-self:hover
.clickable-icon {
color: var(--icon-color-hover);
}
/* Highlight an item as active if it's diff is currently opened */
.is-active .git-tools .buttons > * { .is-active .git-tools .buttons > * {
color: var(--nav-item-color-active); color: var(--nav-item-color-active);
} }
@@ -575,14 +599,6 @@
background-color: #22bb2230; background-color: #22bb2230;
} }
/* Limits the scrollbar to the view body */
.git-view {
display: flex;
flex-direction: column;
position: relative;
height: 100%;
}
.git-obscure-prompt[git-is-obscured="true"] #git-show-password:after { .git-obscure-prompt[git-is-obscured="true"] #git-show-password:after {
-webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svg-icon lucide-eye"><path d="M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"></path><circle cx="12" cy="12" r="3"></circle></svg>'); -webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svg-icon lucide-eye"><path d="M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"></path><circle cx="12" cy="12" r="3"></circle></svg>');
} }
+61
View File
@@ -0,0 +1,61 @@
{
"settings": {
"flashcardTags": [
"#fleeting"
],
"convertFoldersToDecks": false,
"burySiblingCards": false,
"randomizeCardOrder": null,
"flashcardCardOrder": "DueFirstRandom",
"flashcardDeckOrder": "PrevDeckComplete_Sequential",
"convertHighlightsToClozes": true,
"convertBoldTextToClozes": false,
"convertCurlyBracketsToClozes": false,
"clozePatterns": [
"==[123;;]answer[;;hint]=="
],
"singleLineCardSeparator": "::",
"singleLineReversedCardSeparator": ":::",
"multilineCardSeparator": "?",
"multilineReversedCardSeparator": "??",
"multilineCardEndMarker": "",
"editLaterTag": "#edit-later",
"enableNoteReviewPaneOnStartup": true,
"tagsToReview": [
"#review"
],
"noteFoldersToIgnore": [
"**/*.excalidraw.md"
],
"openRandomNote": false,
"autoNextNote": false,
"disableFileMenuReviewOptions": false,
"maxNDaysNotesReviewQueue": 365,
"showRibbonIcon": true,
"showStatusBar": true,
"initiallyExpandAllSubdecksInTree": false,
"showContextInCards": true,
"showIntervalInReviewButtons": true,
"flashcardHeightPercentage": 80,
"flashcardWidthPercentage": 40,
"flashcardEasyText": "Easy",
"flashcardGoodText": "Good",
"flashcardHardText": "Hard",
"reviewButtonDelay": 0,
"openViewInNewTab": false,
"algorithm": "SM-2-OSR",
"baseEase": 250,
"lapsesIntervalChange": 0.5,
"easyBonus": 1.3,
"loadBalance": true,
"maximumInterval": 36525,
"maxLinkFactor": 1,
"dataStore": "NOTES",
"cardCommentOnSameLine": false,
"showSchedulingDebugMessages": false,
"showParserDebugMessages": false
},
"buryDate": "",
"buryList": [],
"historyDeck": null
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,12 @@
{
"id": "obsidian-spaced-repetition",
"name": "Spaced Repetition",
"version": "1.13.3",
"minAppVersion": "1.2.8",
"description": "Fight the forgetting curve by reviewing flashcards & entire notes.",
"author": "Stephen Mwangi",
"authorUrl": "https://github.com/st3v3nmw",
"helpUrl": "https://www.stephenmwangi.com/obsidian-spaced-repetition/",
"isDesktopOnly": false,
"fundingUrl": "https://ko-fi.com/M4M44DEN6"
}
+997
View File
@@ -0,0 +1,997 @@
/* MARK: utils */
.sr-bg-blue,
.sr-bg-green,
.sr-bg-red {
color: #ffffff !important;
}
.sr-bg-green {
background-color: #4caf50 !important;
}
.sr-bg-blue {
background-color: #2094f3 !important;
}
.sr-bg-red {
background-color: #ff7043 !important;
}
.sr-deck-list .sr-tree-item-row:hover .sr-bg-green,
.sr-response-button.sr-bg-green:hover {
background-color: hsl(122, 39%, 44%) !important;
}
.sr-deck-list .sr-tree-item-row:hover .sr-bg-blue,
.sr-response-button.sr-bg-blue:hover {
background-color: hsl(207, 90%, 49%) !important;
}
.sr-deck-list .sr-tree-item-row:hover .sr-bg-red,
.sr-response-button.sr-bg-red:hover {
background-color: hsl(14, 100%, 58%) !important;
}
.sr-is-hidden {
display: none !important;
}
.sr-centered {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
.is-tablet .sr-button {
padding: var(--size-4-1) var(--size-4-3) !important;
}
.sr-button {
box-shadow: none !important;
cursor: pointer;
width: var(--side-button-size);
height: var(--side-button-size);
}
.sr-back-button:hover,
.sr-button:hover {
background-color: var(--background-modifier-hover);
}
/* MARK: Mobile landscape mode */
@media only screen and (orientation: landscape) {
.is-mobile:not(.is-tablet) .sr-tab-view {
padding: 0 8px;
}
.is-mobile:not(.is-tablet) #sr-modal .sr-modal-content {
padding: 8px;
}
.is-mobile:not(.is-tablet) #sr-modal,
.is-mobile:not(.is-tablet) .sr-tab-view {
--side-button-clearance: calc(calc(var(--side-button-size)) + 8px);
}
.is-mobile:not(.is-tablet) .sr-deck-list,
.is-mobile:not(.is-tablet) .sr-flashcard {
gap: 8px;
}
.is-mobile:not(.is-tablet) .sr-deck-list hr {
margin-bottom: 8px;
}
.is-mobile:not(.is-tablet) .sr-flashcard .sr-controls {
width: unset !important;
flex-direction: column;
position: absolute;
left: 0;
top: 0;
bottom: 0;
padding-left: 8px;
}
.is-mobile:not(.is-tablet) .sr-flashcard .sr-chosen-deck-info > *,
.is-mobile:not(.is-tablet) .sr-flashcard .sr-current-deck-info > * {
font-size: medium;
}
.is-mobile:not(.is-tablet) .sr-tab-view .sr-flashcard .sr-info-section {
margin: 0 0 0 calc(var(--side-button-clearance));
}
.is-mobile:not(.is-tablet) #sr-modal .sr-flashcard .sr-info-section {
margin: 0 calc(var(--side-button-clearance));
}
.is-mobile:not(.is-tablet) .sr-flashcard .sr-content {
margin: 0 0 0 calc(var(--side-button-clearance));
}
.is-mobile:not(.is-tablet) .sr-flashcard .sr-content hr {
margin: 2px 0;
}
.is-mobile:not(.is-tablet) .sr-response-button {
height: 48px !important;
}
}
@media only screen and (orientation: landscape) and (max-height: 460px) {
#sr-modal,
.sr-tab-view {
--side-button-size: 35px !important;
}
.is-mobile:not(.is-tablet) .sr-response {
margin: 0 0 0 calc(var(--side-button-clearance));
}
.is-mobile:not(.is-tablet) .sr-response-button {
height: 32px !important;
}
.is-mobile:not(.is-tablet) .sr-flashcard .sr-content p {
margin-block-start: 0.5rem;
margin-block-end: 0.5rem;
}
}
@media only screen and (orientation: landscape) and (max-height: 400px) {
.is-mobile:not(.is-tablet) .sr-tab-view .sr-flashcard .sr-info-section {
--side-button-clearance: calc(var(--side-button-size) * 3) !important;
}
.is-mobile:not(.is-tablet) .sr-tab-view .sr-back-button {
left: calc(var(--side-button-size) * 2) !important;
top: 0px !important;
}
.is-mobile:not(.is-tablet) .sr-flashcard {
gap: 4px;
}
}
/* MARK: Mobile portrait mode */
@media only screen and (orientation: portrait) {
.is-mobile:not(.is-tablet) .sr-flashcard,
.is-mobile:not(.is-tablet) .sr-deck-list {
gap: 12px;
}
.is-mobile:not(.is-tablet) .sr-tab-view {
padding: 0 8px;
}
}
@media only screen and (orientation: portrait) and (max-width: 650px) {
.is-mobile:not(.is-tablet) .sr-chosen-deck-name,
.is-mobile:not(.is-tablet) .sr-current-deck-name {
max-width: 15ch;
}
}
@media only screen and (orientation: portrait) and (max-width: 550px) {
.is-mobile .sr-tab-view {
padding: 0 8px;
}
.is-mobile:not(.is-tablet) .sr-chosen-deck-name,
.is-mobile:not(.is-tablet) .sr-current-deck-name {
max-width: 10ch;
}
}
@media only screen and (orientation: portrait) and (max-width: 500px) {
.is-mobile .sr-tab-view {
padding: 0 8px;
}
}
@media only screen and (orientation: portrait) and (max-width: 440px) {
.is-mobile:not(.is-tablet) .sr-chosen-deck-name,
.is-mobile:not(.is-tablet) .sr-current-deck-name {
max-width: 8ch;
}
}
@media only screen and (orientation: portrait) and (max-width: 410px) {
.is-mobile:not(.is-tablet) .sr-chosen-deck-name,
.is-mobile:not(.is-tablet) .sr-current-deck-name {
max-width: 6ch;
}
}
@media only screen and (orientation: portrait) and (max-width: 340px) {
.is-mobile .sr-response-button {
height: 32px !important;
}
#sr-modal,
.sr-tab-view {
--side-button-size: 35px !important;
}
.is-mobile .sr-tab-view {
padding: 0 4px;
}
}
/* MARK: Modal */
#sr-modal {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
#sr-modal,
.sr-tab-view {
--side-button-size: 44px;
--side-button-clearance: calc(var(--side-button-size));
overflow: hidden !important;
}
#sr-modal .modal-header {
display: none;
}
#sr-modal .modal-close-button {
z-index: 21;
}
body:not(.native-scrollbars) #sr-modal .modal-close-button {
top: 12px;
}
.sr-back-button {
z-index: 21;
cursor: var(--cursor);
position: absolute;
top: 12px;
left: 12px;
font-size: 26px;
line-height: 22px;
height: 26px;
width: 26px;
padding: 0 var(--size-2-2);
border-radius: var(--radius-s);
color: var(--text-muted);
display: flex;
justify-content: center;
align-items: center;
}
/* MARK: Tab view */
.sr-tab-view {
display: flex;
flex-direction: column;
}
.sr-tab-view-content {
flex-grow: 1;
margin: auto;
}
.sr-modal-content,
.sr-tab-view {
position: relative;
overflow: hidden;
}
/* MARK: Views*/
.sr-deck-list,
.sr-flashcard {
gap: 16px;
}
.sr-deck-list,
.sr-flashcard,
.sr-edit-view {
display: flex;
flex-direction: column;
width: 100%;
height: 100%;
}
.sr-header {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
.sr-tab-view .sr-deck-list .sr-header {
margin: 0;
}
.sr-title {
font-size: var(--font-ui-large);
font-weight: var(--font-semibold);
text-align: center;
line-height: var(--line-height-tight);
}
.sr-content {
overflow-y: auto;
}
/* MARK: DeckListView */
.sr-deck-list > hr {
margin: 2px 0 14px 0;
}
.sr-deck-list .sr-header {
gap: 8px;
}
.sr-deck-list .sr-header-stats-container {
display: flex;
flex-wrap: wrap;
gap: 8px;
justify-content: center;
align-items: center;
}
.sr-deck-list .sr-header-stats-count {
display: flex;
color: #ffffff;
padding: 4px;
gap: 4px;
}
.sr-deck-list .sr-header-stats-count > *:first-child {
min-width: 10ch;
}
.sr-deck-list .sr-header-stats-count > *:last-child {
min-width: 3ch;
text-align: right;
}
.sr-deck-list .sr-tree-item-row {
padding-top: 2px;
padding-bottom: 2px;
margin-bottom: 0;
}
.sr-deck-list .sr-tree-stats-container {
display: flex;
gap: 4px;
}
.sr-deck-list .sr-tree-stats-count {
min-width: 3ch;
padding: 4px;
box-sizing: content-box;
text-align: center;
color: #ffffff !important;
}
/* MARK: FlashcardReviewView */
.sr-flashcard .sr-button:disabled {
cursor: not-allowed;
}
.sr-flashcard .sr-controls {
display: flex;
width: 100%;
gap: var(--size-4-4);
justify-content: center;
align-items: center;
}
.sr-flashcard .sr-info-section {
display: flex;
flex-direction: column;
gap: 8px;
}
.sr-flashcard .sr-deck-progress-info {
display: flex;
flex-wrap: wrap;
gap: 4px 24px;
}
.sr-flashcard .sr-chosen-deck-info,
.sr-flashcard .sr-current-deck-info {
display: flex;
gap: 12px;
flex-wrap: nowrap;
color: var(--text-muted);
text-wrap: nowrap;
font-weight: bold;
}
.sr-flashcard .sr-chosen-deck-name,
.sr-flashcard .sr-current-deck-name {
max-width: 20ch;
overflow: hidden;
text-overflow: ellipsis;
}
.sr-flashcard .sr-chosen-deck-counter-wrapper,
.sr-flashcard .sr-current-deck-counter-wrapper {
display: flex;
justify-content: center;
align-items: center;
gap: 12px;
}
.sr-flashcard .sr-chosen-deck-counter-divider,
.sr-flashcard .sr-current-deck-counter-divider {
display: flex;
border: 1px solid var(--text-faint);
padding: 1ch 0;
}
.sr-flashcard .sr-chosen-deck-card-counter-wrapper,
.sr-flashcard .sr-current-deck-card-counter-wrapper,
.sr-flashcard .sr-chosen-deck-subdeck-counter-wrapper {
display: flex;
justify-content: center;
align-items: center;
gap: 0.5ch;
}
.sr-flashcard .sr-chosen-deck-card-counter-icon,
.sr-flashcard .sr-chosen-deck-subdeck-counter-icon,
.sr-flashcard .sr-current-deck-card-counter-icon {
display: flex;
justify-content: center;
align-items: center;
}
.sr-flashcard .sr-chosen-deck-card-counter-icon svg,
.sr-flashcard .sr-chosen-deck-subdeck-counter-icon svg,
.sr-flashcard .sr-current-deck-card-counter-icon svg {
--icon-size: 16px;
--icon-stroke: 2.5px;
}
.sr-flashcard .sr-context {
font-style: italic;
color: var(--text-faint);
display: block;
}
.sr-flashcard .sr-content {
font-size: var(--font-text-size);
overflow-y: auto;
user-select: text;
padding-inline: 8px;
flex-grow: 1;
}
.sr-flashcard .sr-content,
.sr-flashcard .sr-context {
text-wrap: wrap;
word-break: break-word;
}
.sr-flashcard .sr-content hr {
backdrop-filter: invert(40%);
border-top-style: dashed;
}
.sr-response {
display: flex;
gap: var(--size-4-4);
}
.sr-response-button {
height: 48px;
flex-grow: 1;
margin: auto;
line-height: 48px;
text-align: center;
cursor: pointer;
border-radius: 4px;
user-select: text;
}
/* MARK: EditModal */
.sr-edit-modal {
height: 80%;
}
.sr-edit-view {
height: 100%;
width: 100%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
gap: var(--size-4-4);
}
.sr-edit-view .sr-input {
flex-grow: 1;
width: 100%;
resize: none;
}
.sr-edit-view .sr-response {
display: grid;
grid-template-columns: auto auto auto;
width: 100%;
margin-top: 0;
}
.sr-edit-view .sr-response-button {
width: 100%;
}
.sr-edit-view .sr-response-button.sr-spacer {
opacity: 0;
cursor: default;
}
/* MARK: Statistics */
#sr-chart-period {
appearance: menulist;
border-right: 8px solid transparent;
}
/* MARK: Tab elements */
/*
* Tab elements
* This CSS is copied from https://github.com/Taitava/obsidian-shellcommands
* Jarkko Linnanvirta https://github.com/Taitava comments below...
* - Renamed classes
*
* This CSS is copied 2021-10-21 from https://www.w3schools.com/howto/howto_js_tabs.asp
* Modifications:
* - Renamed classes
* - Added tab icons.
* - Changed colors.
* - Changed/removed borders.
* - Removed button transition.
* - Changed button border-radiuses
* - Added margin-right rule to .sr-tab-header-button .
*/
/* Style the tab */
.sr-tab-header {
border-bottom: 6px solid var(--background-modifier-border);
}
/* Style the buttons that are used to open the tab content */
button.sr-tab-header-button {
background-color: unset;
border: none;
box-shadow: none;
/* Remove a "border" that came via Obsidian 0.16.0. */
outline: none;
cursor: pointer;
padding: 14px 16px;
margin-right: 6px;
/* Reduced margin. Obsidian's default margin-right for button is 12px (0 for other margins). */
border-radius: 10px 10px 0 0;
/* 0 0 = No border-radius at bottom */
}
/* Create an active/current tablink class */
button.sr-tab-header-button.sr-tab-active,
button.sr-tab-header-button:hover {
background-color: var(--background-modifier-border);
}
.sr-tab-header-button svg {
vertical-align: middle;
/* Not middle but close enough. */
}
/* Style the tab content */
.sr-tab-content {
display: none;
padding: 6px 12px;
}
.sr-tab-content.sr-tab-active {
display: block;
}
/* MARK: gridjs */
/*
* gridjs
* put everything SR plugin specific above this block
*/
.gridjs-footer button,
.gridjs-head button {
background-color: transparent;
background-image: none;
border: none;
cursor: pointer;
margin: 0;
outline: none;
padding: 0;
}
.gridjs-temp {
position: relative;
}
.gridjs-head {
margin-bottom: 5px;
padding: 5px 1px;
width: 100%;
}
.gridjs-head:after {
clear: both;
content: "";
display: block;
}
.gridjs-head:empty {
border: none;
padding: 0;
}
.gridjs-container {
color: #000;
display: inline-block;
overflow: hidden;
padding: 2px;
position: relative;
z-index: 0;
}
.gridjs-footer {
background-color: #fff;
border-bottom-width: 1px;
border-color: #e5e7eb;
border-radius: 0 0 8px 8px;
border-top: 1px solid #e5e7eb;
box-shadow:
0 1px 3px 0 rgba(0, 0, 0, 0.1),
0 1px 2px 0 rgba(0, 0, 0, 0.26);
display: block;
padding: 12px 24px;
position: relative;
width: 100%;
z-index: 5;
}
.gridjs-footer:empty {
border: none;
padding: 0;
}
input.gridjs-input {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background-color: #fff;
border: 1px solid #d2d6dc;
border-radius: 5px;
font-size: 14px;
line-height: 1.45;
outline: none;
padding: 10px 13px;
}
input.gridjs-input:focus {
border-color: #9bc2f7;
box-shadow: 0 0 0 3px rgba(149, 189, 243, 0.5);
}
.gridjs-pagination {
color: #3d4044;
}
.gridjs-pagination:after {
clear: both;
content: "";
display: block;
}
.gridjs-pagination .gridjs-summary {
float: left;
margin-top: 5px;
}
.gridjs-pagination .gridjs-pages {
float: right;
}
.gridjs-pagination .gridjs-pages button {
background-color: #fff;
border: 1px solid #d2d6dc;
border-right: none;
outline: none;
padding: 5px 14px;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}
.gridjs-pagination .gridjs-pages button:focus {
border-right: 1px solid #d2d6dc;
box-shadow: 0 0 0 2px rgba(149, 189, 243, 0.5);
margin-right: -1px;
position: relative;
}
.gridjs-pagination .gridjs-pages button:hover {
background-color: #f7f7f7;
color: #3c4257;
outline: none;
}
.gridjs-pagination .gridjs-pages button:disabled,
.gridjs-pagination .gridjs-pages button:hover:disabled,
.gridjs-pagination .gridjs-pages button[disabled] {
background-color: #fff;
color: #6b7280;
cursor: default;
}
.gridjs-pagination .gridjs-pages button.gridjs-spread {
background-color: #fff;
box-shadow: none;
cursor: default;
}
.gridjs-pagination .gridjs-pages button.gridjs-currentPage {
background-color: #f7f7f7;
font-weight: 700;
}
.gridjs-pagination .gridjs-pages button:last-child {
border-bottom-right-radius: 6px;
border-right: 1px solid #d2d6dc;
border-top-right-radius: 6px;
}
.gridjs-pagination .gridjs-pages button:first-child {
border-bottom-left-radius: 6px;
border-top-left-radius: 6px;
}
.gridjs-pagination .gridjs-pages button:last-child:focus {
margin-right: 0;
}
button.gridjs-sort {
background-color: transparent;
background-position-x: center;
background-repeat: no-repeat;
background-size: contain;
border: none;
cursor: pointer;
float: right;
height: 24px;
margin: 0;
outline: none;
padding: 0;
width: 13px;
}
button.gridjs-sort-neutral {
background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MDEuOTk4IiBoZWlnaHQ9IjQwMS45OTgiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQwMS45OTggNDAxLjk5OCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTczLjA5MiAxNjQuNDUyaDI1NS44MTNjNC45NDkgMCA5LjIzMy0xLjgwNyAxMi44NDgtNS40MjQgMy42MTMtMy42MTYgNS40MjctNy44OTggNS40MjctMTIuODQ3cy0xLjgxMy05LjIyOS01LjQyNy0xMi44NUwyMTMuODQ2IDUuNDI0QzIxMC4yMzIgMS44MTIgMjA1Ljk1MSAwIDIwMC45OTkgMHMtOS4yMzMgMS44MTItMTIuODUgNS40MjRMNjAuMjQyIDEzMy4zMzFjLTMuNjE3IDMuNjE3LTUuNDI0IDcuOTAxLTUuNDI0IDEyLjg1IDAgNC45NDggMS44MDcgOS4yMzEgNS40MjQgMTIuODQ3IDMuNjIxIDMuNjE3IDcuOTAyIDUuNDI0IDEyLjg1IDUuNDI0ek0zMjguOTA1IDIzNy41NDlINzMuMDkyYy00Ljk1MiAwLTkuMjMzIDEuODA4LTEyLjg1IDUuNDIxLTMuNjE3IDMuNjE3LTUuNDI0IDcuODk4LTUuNDI0IDEyLjg0N3MxLjgwNyA5LjIzMyA1LjQyNCAxMi44NDhMMTg4LjE0OSAzOTYuNTdjMy42MjEgMy42MTcgNy45MDIgNS40MjggMTIuODUgNS40MjhzOS4yMzMtMS44MTEgMTIuODQ3LTUuNDI4bDEyNy45MDctMTI3LjkwNmMzLjYxMy0zLjYxNCA1LjQyNy03Ljg5OCA1LjQyNy0xMi44NDggMC00Ljk0OC0xLjgxMy05LjIyOS01LjQyNy0xMi44NDctMy42MTQtMy42MTYtNy44OTktNS40Mi0xMi44NDgtNS40MnoiLz48L3N2Zz4=");
background-position-y: center;
opacity: 0.3;
}
button.gridjs-sort-asc {
background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyOTIuMzYyIiBoZWlnaHQ9IjI5Mi4zNjEiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDI5Mi4zNjIgMjkyLjM2MSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTI4Ni45MzUgMTk3LjI4NyAxNTkuMDI4IDY5LjM4MWMtMy42MTMtMy42MTctNy44OTUtNS40MjQtMTIuODQ3LTUuNDI0cy05LjIzMyAxLjgwNy0xMi44NSA1LjQyNEw1LjQyNCAxOTcuMjg3QzEuODA3IDIwMC45MDQgMCAyMDUuMTg2IDAgMjEwLjEzNHMxLjgwNyA5LjIzMyA1LjQyNCAxMi44NDdjMy42MjEgMy42MTcgNy45MDIgNS40MjUgMTIuODUgNS40MjVoMjU1LjgxM2M0Ljk0OSAwIDkuMjMzLTEuODA4IDEyLjg0OC01LjQyNSAzLjYxMy0zLjYxMyA1LjQyNy03Ljg5OCA1LjQyNy0xMi44NDdzLTEuODE0LTkuMjMtNS40MjctMTIuODQ3eiIvPjwvc3ZnPg==");
background-position-y: 35%;
background-size: 10px;
}
button.gridjs-sort-desc {
background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyOTIuMzYyIiBoZWlnaHQ9IjI5Mi4zNjIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDI5Mi4zNjIgMjkyLjM2MiIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTI4Ni45MzUgNjkuMzc3Yy0zLjYxNC0zLjYxNy03Ljg5OC01LjQyNC0xMi44NDgtNS40MjRIMTguMjc0Yy00Ljk1MiAwLTkuMjMzIDEuODA3LTEyLjg1IDUuNDI0QzEuODA3IDcyLjk5OCAwIDc3LjI3OSAwIDgyLjIyOGMwIDQuOTQ4IDEuODA3IDkuMjI5IDUuNDI0IDEyLjg0N2wxMjcuOTA3IDEyNy45MDdjMy42MjEgMy42MTcgNy45MDIgNS40MjggMTIuODUgNS40MjhzOS4yMzMtMS44MTEgMTIuODQ3LTUuNDI4TDI4Ni45MzUgOTUuMDc0YzMuNjEzLTMuNjE3IDUuNDI3LTcuODk4IDUuNDI3LTEyLjg0NyAwLTQuOTQ4LTEuODE0LTkuMjI5LTUuNDI3LTEyLjg1eiIvPjwvc3ZnPg==");
background-position-y: 65%;
background-size: 10px;
}
button.gridjs-sort:focus {
outline: none;
}
table.gridjs-table {
border-collapse: collapse;
display: table;
margin: 0;
max-width: 100%;
overflow: auto;
padding: 0;
table-layout: fixed;
text-align: left;
width: 100%;
}
.gridjs-tbody,
td.gridjs-td {
background-color: #fff;
}
td.gridjs-td {
border: 1px solid #e5e7eb;
box-sizing: content-box;
padding: 12px 24px;
}
td.gridjs-td:first-child {
border-left: none;
}
td.gridjs-td:last-child {
border-right: none;
}
td.gridjs-message {
text-align: center;
}
th.gridjs-th {
background-color: #f9fafb;
border: 1px solid #e5e7eb;
border-top: none;
box-sizing: border-box;
color: #6b7280;
outline: none;
padding: 14px 24px;
position: relative;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
vertical-align: middle;
white-space: nowrap;
}
th.gridjs-th .gridjs-th-content {
float: left;
overflow: hidden;
text-overflow: ellipsis;
width: 100%;
}
th.gridjs-th-sort {
cursor: pointer;
}
th.gridjs-th-sort .gridjs-th-content {
width: calc(100% - 15px);
}
th.gridjs-th-sort:focus,
th.gridjs-th-sort:hover {
background-color: #e5e7eb;
}
th.gridjs-th-fixed {
box-shadow: 0 1px 0 0 #e5e7eb;
position: sticky;
}
@supports (-moz-appearance: none) {
th.gridjs-th-fixed {
box-shadow: 0 0 0 1px #e5e7eb;
}
}
th.gridjs-th:first-child {
border-left: none;
}
th.gridjs-th:last-child {
border-right: none;
}
.gridjs-tr {
border: none;
}
.gridjs-tr-selected td {
background-color: #ebf5ff;
}
.gridjs-tr:last-child td {
border-bottom: 0;
}
.gridjs *,
.gridjs :after,
.gridjs :before {
box-sizing: border-box;
}
.gridjs-wrapper {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
border-color: #e5e7eb;
border-radius: 8px 8px 0 0;
border-top-width: 1px;
box-shadow:
0 1px 3px 0 rgba(0, 0, 0, 0.1),
0 1px 2px 0 rgba(0, 0, 0, 0.26);
display: block;
overflow: auto;
position: relative;
width: 100%;
z-index: 1;
}
.gridjs-wrapper:nth-last-of-type(2) {
border-bottom-width: 1px;
border-radius: 8px;
}
.gridjs-search {
float: left;
}
.gridjs-search-input {
width: 250px;
}
.gridjs-loading-bar {
background-color: #fff;
opacity: 0.5;
z-index: 10;
}
.gridjs-loading-bar,
.gridjs-loading-bar:after {
bottom: 0;
left: 0;
position: absolute;
right: 0;
top: 0;
}
.gridjs-loading-bar:after {
animation: shimmer 2s infinite;
background-image: linear-gradient(
90deg,
hsla(0, 0%, 80%, 0),
hsla(0, 0%, 80%, 0.2) 20%,
hsla(0, 0%, 80%, 0.5) 60%,
hsla(0, 0%, 80%, 0)
);
content: "";
transform: translateX(-100%);
}
@keyframes shimmer {
to {
transform: translateX(100%);
}
}
.gridjs-td .gridjs-checkbox {
cursor: pointer;
display: block;
margin: auto;
}
.gridjs-resizable {
bottom: 0;
position: absolute;
right: 0;
top: 0;
width: 5px;
}
.gridjs-resizable:hover {
background-color: #9bc2f7;
cursor: ew-resize;
}
+97
View File
@@ -0,0 +1,97 @@
{
"choices": [],
"inputPrompt": "single-line",
"devMode": false,
"templateFolderPath": "",
"announceUpdates": false,
"version": "2.1.0",
"disableOnlineFeatures": true,
"enableRibbonIcon": false,
"showCaptureNotification": true,
"ai": {
"defaultModel": "Ask me",
"defaultSystemPrompt": "As an AI assistant within Obsidian, your primary goal is to help users manage their ideas and knowledge more effectively. Format your responses using Markdown syntax. Please use the [[Obsidian]] link format. You can write aliases for the links by writing [[Obsidian|the alias after the pipe symbol]]. To use mathematical notation, use LaTeX syntax. LaTeX syntax for larger equations should be on separate lines, surrounded with double dollar signs ($$). You can also inline math expressions by wrapping it in $ symbols. For example, use $$w_{ij}^{\text{new}}:=w_{ij}^{\text{current}}+etacdotdelta_jcdot x_{ij}$$ on a separate line, but you can write \"($eta$ = learning rate, $delta_j$ = error term, $x_{ij}$ = input)\" inline.",
"promptTemplatesFolderPath": "",
"showAssistant": true,
"providers": [
{
"name": "OpenAI",
"endpoint": "https://api.openai.com/v1",
"apiKey": "",
"models": [
{
"name": "text-davinci-003",
"maxTokens": 4096
},
{
"name": "gpt-3.5-turbo",
"maxTokens": 4096
},
{
"name": "gpt-3.5-turbo-16k",
"maxTokens": 16384
},
{
"name": "gpt-3.5-turbo-1106",
"maxTokens": 16385
},
{
"name": "gpt-4",
"maxTokens": 8192
},
{
"name": "gpt-4-32k",
"maxTokens": 32768
},
{
"name": "gpt-4-1106-preview",
"maxTokens": 128000
},
{
"name": "gpt-4-turbo",
"maxTokens": 128000
},
{
"name": "gpt-4o",
"maxTokens": 128000
},
{
"name": "gpt-4o-mini",
"maxTokens": 128000
}
],
"autoSyncModels": false
},
{
"name": "Gemini",
"endpoint": "https://generativelanguage.googleapis.com",
"apiKey": "",
"models": [
{
"name": "gemini-1.5-pro",
"maxTokens": 1000000
},
{
"name": "gemini-1.5-flash",
"maxTokens": 1000000
},
{
"name": "gemini-1.5-flash-8b",
"maxTokens": 1000000
}
],
"autoSyncModels": false
}
]
},
"migrations": {
"migrateToMacroIDFromEmbeddedMacro": true,
"useQuickAddTemplateFolder": true,
"incrementFileNameSettingMoveToDefaultBehavior": true,
"mutualExclusionInsertAfterAndWriteToBottomOfFile": true,
"setVersionAfterUpdateModalRelease": true,
"addDefaultAIProviders": true,
"removeMacroIndirection": true,
"migrateFileOpeningSettings": true
}
}
File diff suppressed because one or more lines are too long
+12
View File
@@ -0,0 +1,12 @@
{
"id": "quickadd",
"name": "QuickAdd",
"version": "2.1.0",
"minAppVersion": "1.6.0",
"description": "Quickly add new pages or content to your vault.",
"author": "Christian B. B. Houmann",
"authorUrl": "https://bagerbach.com",
"fundingUrl": "https://www.buymeacoffee.com/chhoumann",
"helpUrl": "https://quickadd.obsidian.guide/docs/",
"isDesktopOnly": false
}
File diff suppressed because one or more lines are too long
+208
View File
@@ -0,0 +1,208 @@
{
"recentFiles": [
{
"basename": "feeders",
"path": "feeders.md"
},
{
"basename": "full-takeoff",
"path": "full-takeoff.md"
},
{
"basename": "project-setup",
"path": "project-setup.md"
},
{
"basename": "assembly-philosophy",
"path": "assembly-philosophy.md"
},
{
"basename": "assembly-objects",
"path": "assembly-objects.md"
},
{
"basename": "switchgear",
"path": "switchgear.md"
},
{
"basename": "bpm-award-analysis",
"path": "bpm-award-analysis.md"
},
{
"basename": "automating-pdf-annotation",
"path": "automating-pdf-annotation.md"
},
{
"basename": "automating-estimating-project-creation",
"path": "automating-estimating-project-creation.md"
},
{
"basename": "automating-email",
"path": "automating-email.md"
},
{
"basename": "area-of-refuge",
"path": "area-of-refuge.md"
},
{
"basename": "ai-in-estimating",
"path": "ai-in-estimating.md"
},
{
"basename": "2025-07-18_estimating-isnt-engineering",
"path": "2025-07-18_estimating-isnt-engineering.md"
},
{
"basename": "mike-holts-illustrated-guide-to-electrical-estimating",
"path": "mike-holts-illustrated-guide-to-electrical-estimating.md"
},
{
"basename": "monte-carlo-methods",
"path": "monte-carlo-methods.md"
},
{
"basename": "misc-budgets",
"path": "misc-budgets.md"
},
{
"basename": "new-hire",
"path": "new-hire.md"
},
{
"basename": "requirement-precedence",
"path": "requirement-precedence.md"
},
{
"basename": "raceway-terms",
"path": "raceway-terms.md"
},
{
"basename": "nfpa70_314.028_pull-and-junction-boxes",
"path": "nfpa70_314.028_pull-and-junction-boxes.md"
},
{
"basename": "separating-estimating-concerns",
"path": "separating-estimating-concerns.md"
},
{
"basename": "estimating-philosophy",
"path": "estimating-philosophy.md"
},
{
"basename": "accubid-setup",
"path": "accubid-setup.md"
},
{
"basename": "units",
"path": "units.md"
},
{
"basename": "fire-alarm",
"path": "fire-alarm.md"
},
{
"basename": "estimating-detail",
"path": "estimating-detail.md"
},
{
"basename": "estimating-dimensionality",
"path": "estimating-dimensionality.md"
},
{
"basename": "excel-macros",
"path": "excel-macros.md"
},
{
"basename": "gold-plating",
"path": "gold-plating.md"
},
{
"basename": "uncertainty",
"path": "uncertainty.md"
},
{
"basename": "sleeving",
"path": "sleeving.md"
},
{
"basename": "lightning-protection",
"path": "lightning-protection.md"
},
{
"basename": "standalone-systems",
"path": "standalone-systems.md"
},
{
"basename": "low-voltage",
"path": "low-voltage.md"
},
{
"basename": "lighting-controls",
"path": "lighting-controls.md"
},
{
"basename": "fixtures",
"path": "fixtures.md"
},
{
"basename": "fixture-designations",
"path": "fixture-designations.md"
},
{
"basename": "electrical",
"path": "electrical.md"
},
{
"basename": "distributed-antenna-systems",
"path": "distributed-antenna-systems.md"
},
{
"basename": "design-build-budget",
"path": "design-build-budget.md"
},
{
"basename": "grounding",
"path": "grounding.md"
},
{
"basename": "blank-system",
"path": "blank-system.md"
},
{
"basename": "subfeeds",
"path": "subfeeds.md"
},
{
"basename": "systems",
"path": "systems.md"
},
{
"basename": "telecom",
"path": "telecom.md"
},
{
"basename": "software-based-estimating",
"path": "software-based-estimating.md"
},
{
"basename": "supertopics",
"path": "supertopics.md"
},
{
"basename": "risk-oriented-estimating",
"path": "risk-oriented-estimating.md"
},
{
"basename": "risk",
"path": "risk.md"
},
{
"basename": "README",
"path": "README.md"
}
],
"omittedPaths": [],
"omittedTags": [],
"updateOn": "file-open",
"omitBookmarks": false
}
File diff suppressed because one or more lines are too long
+16
View File
@@ -0,0 +1,16 @@
{
"id": "recent-files-obsidian",
"name": "Recent Files",
"version": "1.7.4",
"minAppVersion": "0.16.3",
"description": "List files by most recently opened",
"author": "Tony Grosinger",
"authorUrl": "https://grosinger.net",
"isDesktopOnly": false,
"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"
}
+34
View File
@@ -0,0 +1,34 @@
.recent-files-file {
.tree-item-spacer {
flex-grow: 1;
}
}
.recent-files-title {
justify-content: flex-start;
align-items: unset;
}
.recent-files-file-delete {
justify-content: right;
display: none;
}
.recent-files-title:hover .recent-files-file-delete {
display: flex;
cursor: var(--cursor);
}
.recent-files-file-delete:hover {
color: var(--nav-item-color-hover);
}
.recent-files-donation {
width: 70%;
margin: 0 auto;
text-align: center;
}
.recent-files-donate-button {
margin: 10px;
}
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "templater-obsidian", "id": "templater-obsidian",
"name": "Templater", "name": "Templater",
"version": "2.13.1", "version": "2.14.1",
"description": "Create and use templates", "description": "Create and use templates",
"minAppVersion": "1.5.0", "minAppVersion": "1.5.0",
"author": "SilentVoid", "author": "SilentVoid",
+1
View File
@@ -0,0 +1 @@
[{"name":"Home","sticker":"ui//home","paths":["/"]}]
+1 -1
View File
@@ -3,7 +3,7 @@ id: 2025-07-18_estimating-isnt-engineering
aliases: [] aliases: []
tags: tags:
- type/anecdote - type/anecdote
- estimating - topic/estimating
--- ---
# Estimating Isn't Engineering # Estimating Isn't Engineering
@@ -2,6 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- topic/electrical
- type/media - type/media
--- ---
# 314.28 Pull and Junction Boxes and Conduit Bodies. # 314.28 Pull and Junction Boxes and Conduit Bodies.
+1 -1
View File
@@ -4,7 +4,7 @@ aliases:
- home - home
- zmVault - zmVault
tags: tags:
- meta - topic/meta
--- ---
# zmVault # zmVault
Binary file not shown.
Binary file not shown.
+3 -2
View File
@@ -1,7 +1,8 @@
--- ---
tags: tags:
- estimating - topic/estimating
- software - topic/software
- status/fleeting
--- ---
# AI in Estimating # AI in Estimating
+1 -1
View File
@@ -3,8 +3,8 @@ id:
aliases: aliases:
- area-of-rescue - area-of-rescue
- two-way-communication - two-way-communication
- 2-way-communication
tags: tags:
- occupational
- occupational/systems/standalone-systems - occupational/systems/standalone-systems
--- ---
# Area of Refuge (AoR) # Area of Refuge (AoR)
+20 -4
View File
@@ -2,10 +2,10 @@
id: id:
aliases: [] aliases: []
tags: tags:
- automation - status/fleeting
- estimating - topic/automation
- software - topic/estimating
- type/idea - topic/software
--- ---
# Assembly Objects # Assembly Objects
@@ -33,3 +33,19 @@ public class OutletBox
} }
} }
``` ```
```yaml
- type: switchboard
parents: 1
children: 0..
primary-rating: amperes
- type: transfer-switch
parents: 2
children: 1
- type: transformer
parents: 1
children: 1
primary-rating: volt-amperes
```
+3 -1
View File
@@ -1,6 +1,8 @@
--- ---
id:
aliases: []
tags: tags:
- estimating/philosophy - topic/estimating
--- ---
# Assembly Philosophy # Assembly Philosophy
+14
View File
@@ -0,0 +1,14 @@
---
id:
aliases: []
tags:
- topic/automation
- topic/organization
- topic/software
- status/fleeting
---
# Automating Email
[Outlook Email Automation with PowerShell](https://devblogs.microsoft.com/premier-developer/outlook-email-automation-with-powershell)
[zmPSRepo/zmOutlookAutomation](https://github.com/ZaneMeyers/zmPSRepo/tree/main/zmOutlookAutomation/0.0.10)
@@ -2,38 +2,20 @@
id: id:
aliases: [] aliases: []
tags: tags:
- automation - topic/automation
- organization - topic/organization
- software - topic/software
- type/idea - status/fleeting
--- ---
# Necessary Automation # Automating Estimating Project Creation
This file describes functionality that
* Can be explained relatively easily
* Benefits greatly from consistency
* Is unlikely to need frequent maintenance
## Standard Emails
[Outlook Email Automation with PowerShell](https://devblogs.microsoft.com/premier-developer/outlook-email-automation-with-powershell)
## PERSONAL.xlsb
Vendor Quote UserForm
other frequently referenced values
## Job Handler
Use-case specific wrapper for a document database like MongoDB. Use-case specific wrapper for a document database like MongoDB.
### Features ## Features
Features below are in addition to those of Vanilla Atlas. Features below are in addition to those of Vanilla Atlas.
#### Extract from Bid Boards ### Extract from Bid Boards
```sh ```sh
> jobHandler --new project --from-web https://app.buildingconnected.com/opportunities/66fab32654ef4e1affd178e0/info > jobHandler --new project --from-web https://app.buildingconnected.com/opportunities/66fab32654ef4e1affd178e0/info
@@ -71,11 +53,3 @@ neglecting the former benefits,
markdown can be rendered with standard stylesheets for improved consistency. markdown can be rendered with standard stylesheets for improved consistency.
Sublime is a friendly option for non-technical users. Sublime is a friendly option for non-technical users.
## Estimate Objects
## Wiring Method Parser
```
3#12 #12G 3/4"C
```
+3 -3
View File
@@ -2,9 +2,9 @@
id: id:
aliases: [] aliases: []
tags: tags:
- automation - topic/automation
- software - topic/software
- type/idea - status/fleeting
--- ---
# Automating PDF Annotation # Automating PDF Annotation
-1
View File
@@ -2,7 +2,6 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems - occupational/systems
--- ---
# Blank System # Blank System
+3 -3
View File
@@ -2,11 +2,11 @@
id: id:
aliases: [] aliases: []
tags: tags:
- automation - topic/automation
- occupational - occupational
- type/idea - status/fleeting
--- ---
# Award Analysis # BPM Award Analysis
BPM > Reports > Awards BPM > Reports > Awards
The HUB > HUB Insights > WIGs, KPIs & milestones The HUB > HUB Insights > WIGs, KPIs & milestones
+4 -1
View File
@@ -1,7 +1,10 @@
--- ---
id: id:
aliases: [] aliases: []
tags: [] tags:
- topic/risk
- topic/estimating
- status/fleeting
--- ---
# Calibration Questions # Calibration Questions
+2 -2
View File
@@ -1,7 +1,7 @@
--- ---
tags: tags:
- estimating - topic/estimating
- software - topic/software
--- ---
# Construction Estimating Software # Construction Estimating Software
+21 -1
View File
@@ -2,7 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- estimating - topic/estimating
--- ---
# Construction Estimating # Construction Estimating
@@ -85,3 +85,23 @@ It's important to recognize that retracting a proposal
may upset a few people employed by the GC, may upset a few people employed by the GC,
but consider how little your own opinion matters to your company's strategic decisions. but consider how little your own opinion matters to your company's strategic decisions.
Much bigger people are involved after the proposal is accepted. Much bigger people are involved after the proposal is accepted.
## Ethics
Clients engaging in unethical bidding practices can quickly gain a reputation for doing so,
leading to reduced bid response that can be impossible to fully recover from.
To ensure a transparent bidding process, one must
* divulge all selection criteria to bidders,
* avoid conflicts of interest,
* maintain confidentiality of bid submissions, and
* provide equal access to bidding information.
### Terms
> [!info] Bid Shopping
> the practice of sharing a bidder's quote with other prospective vendors
> in order to solicit lower bids.
> The competing quote may be legitimate, fabricated,
> or a non-serious proposal from a colluding vendor.
-1
View File
@@ -3,7 +3,6 @@ id:
aliases: aliases:
- das - das
tags: tags:
- occupational
- occupational/systems/standalone-systems - occupational/systems/standalone-systems
--- ---
# Distributed Antenna Systems (DAS) # Distributed Antenna Systems (DAS)
+4 -3
View File
@@ -2,7 +2,6 @@
id: electrical id: electrical
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems/electrical - occupational/systems/electrical
--- ---
# Electrical # Electrical
@@ -11,14 +10,14 @@ tags:
### Lighting Control ### Lighting Control
By PDI convention, [child:: [[lighting-controls]]] are generally "Electrical", not "Lighting". By PDI convention, [[lighting-controls]] are generally "Electrical", not "Lighting".
### Wiring Device Specifications ### Wiring Device Specifications
Wiring devices and their wall plates are a common target of [[gold-plating]]. Wiring devices and their wall plates are a common target of [[gold-plating]].
* Device grades (commercial < specification) * Device grades (commercial < specification)
* General use receptacle amp rating (N5-15R vs N5-20R) * General use receptacle amp rating (N5-15R < N5-20R)
* Device plate material (plastic < nylon < stainless steel) * Device plate material (plastic < nylon < stainless steel)
* Device plate size (standard size < mid-size < oversize "jumbo") * Device plate size (standard size < mid-size < oversize "jumbo")
* Screwless plates * Screwless plates
@@ -46,6 +45,8 @@ Wiring devices and their wall plates are a common target of [[gold-plating]].
#### Mechanical Connections #### Mechanical Connections
`COMMON ASSEMBLIES`/`MECHANICAL CONNECTIONS ...`/
##### CU/IP ##### CU/IP
* Units Condensing Unit * Units Condensing Unit
+4 -4
View File
@@ -2,10 +2,10 @@
id: id:
aliases: [] aliases: []
tags: tags:
- automation - topic/automation
- estimating - topic/estimating
- software - topic/software
- type/idea - status/fleeting
--- ---
# Estimating as Code # Estimating as Code
+2 -2
View File
@@ -1,7 +1,7 @@
--- ---
tags: tags:
- estimating - topic/estimating
- project-management - topic/project-management
--- ---
# Estimating Culture # Estimating Culture
+1 -1
View File
@@ -2,7 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- estimating - topic/estimating
--- ---
# Estimating Detail # Estimating Detail
+3 -3
View File
@@ -1,8 +1,8 @@
--- ---
tags: tags:
- estimating - topic/estimating
- software - topic/software
- organization - topic/organization
--- ---
# Estimating Dimensionality # Estimating Dimensionality
+3 -3
View File
@@ -2,9 +2,9 @@
id: id:
aliases: [] aliases: []
tags: tags:
- estimating - topic/estimating
- software - topic/software
- type/idea - status/fleeting
--- ---
# Estimating Ergonomics # Estimating Ergonomics
+1 -1
View File
@@ -1,6 +1,6 @@
--- ---
tags: tags:
- estimating/philosophy - topic/estimating
--- ---
# Estimating Philosophy # Estimating Philosophy
-87
View File
@@ -1,87 +0,0 @@
---
excalidraw-plugin: parsed
excalidraw-default-mode: view
excalidraw-export-dark: false
excalidraw-export-transparent: false
excalidraw-linkbutton-opacity: 0.3
excalidraw-onload-script: "app.plugins.plugins[`excalibrain`].start(ea.targetView.leaf);"
tags: [excalidraw]
---
# Text Elements
Open a document in another pane and click it to get started.
For the best experience enable 'Open in adjacent pane'
in Excalidraw settings under 'Links and Transclusion'. ^4mylk7KK
%%
# Drawing
```json
{
"type": "excalidraw",
"version": 2,
"source": "https://excalidraw.com",
"elements": [
{
"type": "text",
"version": 1,
"versionNonce": 423577018,
"isDeleted": false,
"id": "4mylk7KK",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 0,
"y": 0,
"strokeColor": "white",
"backgroundColor": "transparent",
"width": 703,
"height": 96,
"seed": 4429,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElements": [],
"updated": 1650784785611,
"link": null,
"locked": false,
"fontSize": 20,
"fontFamily": 3,
"text": "Open a document in another pane and click it to get started.\n\nFor the best experience enable 'Open in adjacent pane'\nin Excalidraw settings under 'Links and Transclusion'.",
"rawText": "Open a document in another pane and click it to get started.\n\nFor the best experience enable 'Open in adjacent pane'\nin Excalidraw settings under 'Links and Transclusion'.",
"baseline": 91,
"textAlign": "center",
"verticalAlign": "top",
"containerId": null,
"originalText": "Open a document in another pane and click it to get started.\n\nFor the best experience enable 'Open in adjacent pane'\nin Excalidraw settings under 'Links and Transclusion'."
}
],
"appState": {
"theme": "dark",
"viewBackgroundColor": "hsl(208, 80%, 23%)",
"currentItemStrokeColor": "#000000",
"currentItemBackgroundColor": "transparent",
"currentItemFillStyle": "hachure",
"currentItemStrokeWidth": 2,
"currentItemStrokeStyle": "solid",
"currentItemRoughness": 1,
"currentItemOpacity": 100,
"currentItemFontFamily": 1,
"currentItemFontSize": 16,
"currentItemTextAlign": "left",
"currentItemStrokeSharpness": "sharp",
"currentItemStartArrowhead": null,
"currentItemEndArrowhead": "arrow",
"currentItemLinearStrokeSharpness": "round",
"gridSize": null,
"colorPalette": {}
},
"files": {}
}
```
%%
+1 -1
View File
@@ -2,7 +2,7 @@
id: excel-macros id: excel-macros
aliases: [] aliases: []
tags: tags:
- software - topic/software
- type/guide - type/guide
--- ---
# Excel Macros # Excel Macros
+2 -2
View File
@@ -2,9 +2,9 @@
id: id:
aliases: [] aliases: []
tags: tags:
- automation - topic/automation
- occupational - occupational
- type/idea - status/fleeting
--- ---
# Feeder Verification # Feeder Verification
+12 -35
View File
@@ -43,8 +43,16 @@ Locate:
#### Primaries #### Primaries
Empty conduit.
#### Secondaries #### Secondaries
> [!info] Vaults and Secondary Connections
> In utility vaults, secondary conductors sometimes run on racks,
> far past their entrance conduits, to their transformers.
> It is necessary to add this distance to the wire makeup,
> rather than simply measure the conduit assembly to the transformer.
#### Feeders #### Feeders
#### Bus Duct #### Bus Duct
@@ -77,43 +85,12 @@ Locate:
`ITEM DATABASE`/`CONDUIT & FITTINGS`/`CABLE SUPPORT / WEDGES`/`... COMPLETE FITTING`/... `ITEM DATABASE`/`CONDUIT & FITTINGS`/`CABLE SUPPORT / WEDGES`/`... COMPLETE FITTING`/...
#### Grounding
See [[grounding]].
#### Sleeving #### Sleeving
See [[sleeving]]. See [[sleeving]].
#### Grounding
This script is intended to cover both electrical and telecom grounding
in lieu of detail sufficient for standard takeoff (e.g. a grounding riser).
`COMMON ASSEMBLIES`/`GROUNDING`
##### System Grounding
> Area: "01 - Feeders/Risers Building"
`COMMON ASSEMBLIES`/`GROUNDING`/`GND = #3/0 & 1" CONDUIT - EMT`
* Length: Measure around the main electrical rooms to stacked
* Count: Total number of electrical rooms
`COMMON ASSEMBLIES`/`GROUNDING`/`(3) ... x 10' CU CLAD GRD ROD & 4"X12" GND BAR`
* Count: 1
##### Riser
> Area: "Typical - Building All Electrical Riser Rooms"
`COMMON ASSEMBLIES`/`GROUNDING`/`GND = #3/0 & 1" CONDUIT - EMT`
* Length: 15
* Count: 1
##### Telecom Ground Bridge
Use only where shown.
`COMMON ASSEMBLIES`/`GROUNDING`/`TELE/DATA GND BRIDGE, ..., W/ COVER & (60') #6 THHN GREEN`
### 3. Extension (Review and Checking) ### 3. Extension (Review and Checking)
+51 -41
View File
@@ -2,11 +2,12 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems/fire-alarm - occupational/systems/fire-alarm
--- ---
# Fire Alarm # Fire Alarm
## Info
## Sequence ## Sequence
### 1. Estimate preparation ### 1. Estimate preparation
@@ -24,25 +25,23 @@ tags:
### 2. Takeoff ### 2. Takeoff
#### Riser #### Fire Command Center
##### Fire Command Center `COMMON ASSEMBLIES`/`FIRE ALARM & DAS SYSTEMS`/`HEAD END EQUIP`/`... HEAD END`
{Building Type} Head End CA.30.23.X #### Generator Room
##### Generator Room `COMMON ASSEMBLIES`/`FIRE ALARM & DAS SYSTEMS`/`GEN, ELEV, FIRE PUMP & FA ROOM ASSEMBLIES`/`GENERATOR ROOM ...`
CA.30.22.2 #### Fire Pump Room
##### Fire Pump Room `COMMON ASSEMBLIES`/`FIRE ALARM & DAS SYSTEMS`/`GEN, ELEV, FIRE PUMP & FA ROOM ASSEMBLIES`/`FIRE PUMP ROOM ...`
CA.30.22.4 #### FACR to Elevator Shafts
##### FACR to Elevator Shafts `COMMON ASSEMBLIES`/`FIRE ALARM & DAS SYSTEMS`/`GEN, ELEV, FIRE PUMP & FA ROOM ASSEMBLIES`/`ELEV SHAFT ...`
Elevator Shafts (CA.30.22.8) `COMMON ASSEMBLIES`/`FIRE ALARM & DAS SYSTEMS`/`GEN, ELEV, FIRE PUMP & FA ROOM ASSEMBLIES`/`FACR TO ELEV SHAFT ...`
FACR TO ELEV SHAFT 1 ½" (CA.30.22.10/11)
Measure Length from the most distant points of the FACR and each shaft. Measure Length from the most distant points of the FACR and each shaft.
Input adder length to reach the bottom of the pit Input adder length to reach the bottom of the pit
@@ -57,25 +56,27 @@ Input adder length to reach the bottom of the pit
| | | | | |
``` ```
##### FACR to Elevator Control Rooms #### FACR to Elevator Control Rooms
Elevator Control Room (CA.30.22.6) `COMMON ASSEMBLIES`/`FIRE ALARM & DAS SYSTEMS`/`GEN, ELEV, FIRE PUMP & FA ROOM ASSEMBLIES`/`ELEV CONTROL ROOM ...`
FACR/FCC TO ELEV CONTROL ROOM (CA.30.22.13/14) `COMMON ASSEMBLIES`/`FIRE ALARM & DAS SYSTEMS`/`GEN, ELEV, FIRE PUMP & FA ROOM ASSEMBLIES`/`FACR TO ELEV CONTROL RM ...`
* Measure the Horizontal and Vertical Distance from the FACR to the ECR. * Measure the Horizontal and Vertical Distance from the FACR to the ECR.
* Use Typicals for the vertical riser. (Ex// 10' per floor) * Use Typicals for the vertical riser. (Ex// 10' per floor)
* Add [[sleeving]] as necessary.
##### FACR to Stairwells #### FACR to Stairwells
FACR TO STAIRWELLS 1" PVC (CA.30.22.17) This is for the Flow/Tamper modules in the stairwells
`COMMON ASSEMBLIES`/`FIRE ALARM & DAS SYSTEMS`/`GEN, ELEV, FIRE PUMP & FA ROOM ASSEMBLIES`/`FACR TO STAIRWELLS ...`
* Measure from the furthest end of FACR to the furthest end of the stairwell to find length * Measure from the furthest end of FACR to the furthest end of the stairwell to find length
* This is for the Flow/Tamper modules in the stairwells #### Terminal Cabinets
##### Terminal Cabinets
`COMMON ASSEMBLIES`/`FIRE ALARM & DAS SYSTEMS`/`TERMINAL CABINET`
TERMINAL CABINETS (2) 2" EMT/PVC (CA.30.26.X) TERMINAL CABINETS (2) 2" EMT/PVC (CA.30.26.X)
Horizontal: Horizontal:
@@ -83,45 +84,38 @@ Horizontal:
Vertical: Vertical:
* Use 10ft Riser in Typical * Use 10ft Riser in Typical
* GA or HD - 1" conduit / HR - (2) 2" conduits) * *Garden Style or High Density:* 1" conduit / HR - (2) 2" conduits)
* Add [[sleeving]] as necessary.
##### Annunciator Panels #### Annunciator Panels
* Fire Alarm Annunciator (FAA), > [!info] Also Known As
* Fire Alarm Annunciator Panel (FAAP) > * Fire Alarm Annunciator (FAA)
> * Fire Alarm Annunciator Panel (FAAP)
ANNUNCIATORS (CA.30.27.2/3) `COMMON ASSEMBLIES`/`FIRE ALARM & DAS SYSTEMS`/`ANNUNCIATORS`/`REMOTE SERIAL ANNUNCIATOR ...`
Remote Serial Annunciator, LCD Display - PVC
* Measure from the Fire Command Room to FAA or Lobby * Measure from the Fire Command Room to FAA or Lobby
##### Sleeving #### Smoke Detectors
#### Devices
1. Takeoff floor plans in order
2. Takeoff enlarged drawings
##### Smoke Detectors
_Design Build:_ _Design Build:_
Count every stairwell at every level. Count every stairwell at every level.
##### Pull Stations #### Pull Stations
_Design Build:_ _Design Build:_
Count every stairwell at every level Count every stairwell at every level
and every exterior exit. and every exterior exit.
##### Flow-Tamper Switches #### Flow-Tamper Switches
No free air. if wood frame, take off as EMT. No free air. if wood frame, take off as EMT.
_Design Build:_ _Design Build:_
Count every stairwell at every level. Count every stairwell at every level.
##### Magnetic Door Holders #### Magnetic Door Holders
Mech Connection - PVC AL Flex - 20 A Mech Connection - PVC AL Flex - 20 A
@@ -129,7 +123,7 @@ _Design Build:_
Count every set of double doors. Count every set of double doors.
(Typical of elevator lobbies and corridors) (Typical of elevator lobbies and corridors)
##### Speaker Strobes #### Speaker Strobes
_Design Build:_ _Design Build:_
* Count every 75 ft, * Count every 75 ft,
@@ -139,10 +133,26 @@ _Design Build:_
* every elevator lobby, * every elevator lobby,
* and every BOH room on the first floor and garage levels. * and every BOH room on the first floor and garage levels.
#### Firefighter Phone System
* firefighter phone jacks
* fire warden station
* fire phone cabinet
Communicates directly with FACR.
Not related to responder radio.
`COMMON ASSEMBLIES`/`FIRE ALARM & DAS SYSTEMS`/`COMMUNICATION DEVICES ...`/`...`
#### Fire Smoke Dampers (FSD's) #### Fire Smoke Dampers (FSD's)
Take off both FA and Electrical Take off both FA
* Misc Assemblies
`COMMON ASSEMBLIES`/`MISC ASSEMBLIES`/`FSD ...`
and Electrical
`COMMON ASSEMBLIES`/`MECHANICAL CONNECTIONS (UP TO 100A)`/.../...
### 3. Extension (Review and Checking) ### 3. Extension (Review and Checking)
-1
View File
@@ -2,7 +2,6 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems/fixtures - occupational/systems/fixtures
--- ---
# Fixture Designations # Fixture Designations
-1
View File
@@ -2,7 +2,6 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems/fixtures - occupational/systems/fixtures
--- ---
# Fixtures # Fixtures
+4 -4
View File
@@ -2,10 +2,10 @@
id: id:
aliases: [] aliases: []
tags: tags:
- automation - topic/automation
- estimating - topic/estimating
- software - topic/software
- type/idea - status/fleeting
--- ---
# Functional Labor Factoring # Functional Labor Factoring
+1 -1
View File
@@ -2,7 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- risk - topic/risk
--- ---
# Gold Plating # Gold Plating
+42
View File
@@ -6,3 +6,45 @@ tags:
--- ---
# Grounding # Grounding
## Info
This script is intended to cover both electrical and telecom grounding
in lieu of detail sufficient for standard takeoff (e.g. a grounding riser).
## Sequence
### 1. Estimate preparation
### 2. Takeoff
`COMMON ASSEMBLIES`/`GROUNDING`
#### System Grounding
> Area: "01 - Feeders/Risers Building"
`COMMON ASSEMBLIES`/`GROUNDING`/`GND = #3/0 & 1" CONDUIT - EMT`
* Length: Measure around the main electrical rooms to stacked
* Count: Total number of electrical rooms
`COMMON ASSEMBLIES`/`GROUNDING`/`(3) ... x 10' CU CLAD GRD ROD & 4"X12" GND BAR`
* Count: 1
#### Riser
> Area: "Typical - Building All Electrical Riser Rooms"
`COMMON ASSEMBLIES`/`GROUNDING`/`GND = #3/0 & 1" CONDUIT - EMT`
* Length: 15
* Count: 1
#### Telecom Ground Bridge
Use only where shown.
`COMMON ASSEMBLIES`/`GROUNDING`/`TELE/DATA GND BRIDGE, ..., W/ COVER & (60') #6 THHN GREEN`
### 3. Extension (Review and Checking)
+1 -1
View File
@@ -2,7 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- risk - topic/risk
--- ---
# Gut Feel # Gut Feel
-1
View File
@@ -2,7 +2,6 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems/electrical - occupational/systems/electrical
parent: [[electrical]] parent: [[electrical]]
--- ---
-1
View File
@@ -2,7 +2,6 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems/lightning-protection - occupational/systems/lightning-protection
--- ---
# Lightning Protection # Lightning Protection
-1
View File
@@ -2,7 +2,6 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems/low-voltage - occupational/systems/low-voltage
--- ---
# Low Voltage # Low Voltage
+1 -1
View File
@@ -2,7 +2,7 @@
id: me id: me
aliases: [] aliases: []
tags: tags:
- meta - topic/meta
--- ---
# Me # Me
@@ -3,6 +3,8 @@ id: mike-holts-illustrated-guide-to-electrical-estimating
aliases: [] aliases: []
tags: tags:
- type/media-commentary - type/media-commentary
- topic/electrical
- topic/estimating
--- ---
# *Mike Holt's Illustrated Guide to Electrical Estimating* # *Mike Holt's Illustrated Guide to Electrical Estimating*
-1
View File
@@ -2,7 +2,6 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems - occupational/systems
--- ---
# Misc Budgets # Misc Budgets
+2 -1
View File
@@ -2,7 +2,8 @@
id: id:
aliases: [] aliases: []
tags: tags:
- risk - topic/risk
- type/encyclopedia
--- ---
# Monte Carlo Methods # Monte Carlo Methods
+1 -1
View File
@@ -2,7 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- estimating - topic/estimating
--- ---
# Open Problems in Estimating # Open Problems in Estimating
+1 -1
View File
@@ -1,6 +1,6 @@
--- ---
tags: tags:
- software - topic/software
--- ---
# Portable Tools # Portable Tools
+2 -2
View File
@@ -2,8 +2,8 @@
id: id:
aliases: [] aliases: []
tags: tags:
- type/idea - status/fleeting
- automation - topic/automation
--- ---
# PowerShell Document Conversion # PowerShell Document Conversion
+2 -2
View File
@@ -2,8 +2,8 @@
id: id:
aliases: [] aliases: []
tags: tags:
- type/idea - status/fleeting
- automation - topic/automation
- occupational - occupational
--- ---
# Project Info # Project Info
+1 -1
View File
@@ -1,6 +1,6 @@
--- ---
tags: tags:
- project-management - topic/project-management
--- ---
# Project Management™ # Project Management™
+1
View File
@@ -2,6 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- topic/electrical
- type/encyclopedia - type/encyclopedia
--- ---
# Raceway Terms # Raceway Terms
+2 -2
View File
@@ -2,8 +2,8 @@
id: risk-oriented-estimating id: risk-oriented-estimating
aliases: [] aliases: []
tags: tags:
- estimating - topic/estimating
- risk - topic/risk
--- ---
# Risk Oriented Estimating # Risk Oriented Estimating
+1 -1
View File
@@ -2,7 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- risk - topic/risk
--- ---
# Risk # Risk
+4 -4
View File
@@ -2,10 +2,10 @@
id: id:
aliases: [] aliases: []
tags: tags:
- automation - topic/automation
- estimating - topic/estimating
- software - topic/software
- type/idea - status/fleeting
--- ---
# Separating Estimating Concerns # Separating Estimating Concerns
+1 -1
View File
@@ -2,7 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- organization - topic/organization
--- ---
# Separation of Concerns # Separation of Concerns
-1
View File
@@ -1,4 +1,3 @@
--- ---
id: sleeving id: sleeving
aliases: [] aliases: []
+2 -2
View File
@@ -1,7 +1,7 @@
--- ---
tags: tags:
- estimating - topic/estimating
- software - topic/software
--- ---
# Software Based Estimating # Software Based Estimating
-1
View File
@@ -2,7 +2,6 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems/standalone-systems - occupational/systems/standalone-systems
--- ---
# Standalone Systems # Standalone Systems
+1 -1
View File
@@ -2,7 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- risk - topic/risk
--- ---
# Strategy # Strategy
-1
View File
@@ -2,7 +2,6 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems/subfeeds - occupational/systems/subfeeds
--- ---
# Subfeeds # Subfeeds
+1 -1
View File
@@ -2,7 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- organization - topic/organization
--- ---
# Supertopics # Supertopics
-1
View File
@@ -2,7 +2,6 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems/switchgear - occupational/systems/switchgear
--- ---
# Switchgear # Switchgear
-1
View File
@@ -2,7 +2,6 @@
id: id:
aliases: [] aliases: []
tags: tags:
- occupational
- occupational/systems/telecom - occupational/systems/telecom
--- ---
# Telecom # Telecom
+1 -1
View File
@@ -2,7 +2,7 @@
id: id:
aliases: [] aliases: []
tags: tags:
- meta - topic/meta
--- ---
# This Notebook # This Notebook

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