backup 04/09/2023 15h54

This commit is contained in:
Louis Gallet 2023-09-04 15:54:22 +02:00
commit fc6f528b76
Signed by: lgallet
SSH Key Fingerprint: SHA256:qnW7pk4EoMRR0UftZLZQKSMUImbEFsiruLC7jbCHJAY
35 changed files with 48151 additions and 0 deletions

3
.obsidian/app.json vendored Normal file
View File

@ -0,0 +1,3 @@
{
"mobilePullAction": "editor:save-file"
}

3
.obsidian/appearance.json vendored Normal file
View File

@ -0,0 +1,3 @@
{
"accentColor": ""
}

5
.obsidian/community-plugins.json vendored Normal file
View File

@ -0,0 +1,5 @@
[
"antidote-grammar-checker-integration",
"obsidian-table-generator",
"obsidian-git"
]

30
.obsidian/core-plugins-migration.json vendored Normal file
View File

@ -0,0 +1,30 @@
{
"file-explorer": true,
"global-search": true,
"switcher": true,
"graph": true,
"backlink": true,
"canvas": true,
"outgoing-link": true,
"tag-pane": true,
"page-preview": true,
"daily-notes": true,
"templates": true,
"note-composer": true,
"command-palette": true,
"slash-command": false,
"editor-status": true,
"bookmarks": true,
"markdown-importer": false,
"zk-prefixer": false,
"random-note": false,
"outline": true,
"word-count": true,
"slides": false,
"audio-recorder": false,
"workspaces": false,
"file-recovery": true,
"publish": false,
"sync": false,
"properties": true
}

21
.obsidian/core-plugins.json vendored Normal file
View File

@ -0,0 +1,21 @@
[
"file-explorer",
"global-search",
"switcher",
"graph",
"backlink",
"canvas",
"outgoing-link",
"tag-pane",
"properties",
"page-preview",
"daily-notes",
"templates",
"note-composer",
"command-palette",
"editor-status",
"bookmarks",
"outline",
"word-count",
"file-recovery"
]

22
.obsidian/graph.json vendored Normal file
View File

@ -0,0 +1,22 @@
{
"collapse-filter": true,
"search": "",
"showTags": false,
"showAttachments": false,
"hideUnresolved": false,
"showOrphans": true,
"collapse-color-groups": true,
"colorGroups": [],
"collapse-display": true,
"showArrow": false,
"textFadeMultiplier": 0,
"nodeSizeMultiplier": 1,
"lineSizeMultiplier": 1,
"collapse-forces": true,
"centerStrength": 0.518713248970312,
"repelStrength": 10,
"linkStrength": 1,
"linkDistance": 250,
"scale": 1,
"close": false
}

1
.obsidian/hotkeys.json vendored Normal file
View File

@ -0,0 +1 @@
{}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,11 @@
{
"id": "antidote-grammar-checker-integration",
"name": "Antidote Grammar Checker Integration",
"version": "2.1.2",
"minAppVersion": "0.15.0",
"description": "Unofficial integration of Antidote, a powerful English and French grammar checker",
"author": "Heziode",
"authorUrl": "https://github.com/Heziode",
"fundingUrl": "https://www.buymeacoffee.com/Heziode",
"isDesktopOnly": true
}

View File

@ -0,0 +1 @@
.spin-loading>svg{animation-name:spin;animation-duration:1s;animation-iteration-count:infinite;animation-timing-function:linear}.antidote-green{color:var(--color-green)!important}.antidote-orange{color:var(--color-orange)!important}.antidote-settings-donation{display:flex;margin-top:2em}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hide{display:none}.antidote-settings>.setting-item{border:0px;padding-bottom:0}.antidote-settings summary{border-bottom:1px solid var(--background-modifier-border)}.donation-section{width:70%;margin:2em auto 0;text-align:center;padding-top:2em;border-top:1px solid var(--background-modifier-border)}.donate-button{margin:auto}.donate-button>svg{margin:auto;height:3em}

View File

@ -0,0 +1,55 @@
{
"commitMessage": "vault backup: {{date}}",
"commitDateFormat": "YYYY-MM-DD HH:mm:ss",
"autoSaveInterval": 2,
"autoPushInterval": 0,
"autoPullInterval": 0,
"autoPullOnBoot": false,
"disablePush": false,
"pullBeforePush": true,
"disablePopups": false,
"listChangedFilesInMessageBody": false,
"showStatusBar": true,
"updateSubmodules": false,
"syncMethod": "merge",
"customMessageOnAutoBackup": false,
"autoBackupAfterFileChange": true,
"treeStructure": false,
"refreshSourceControl": true,
"basePath": "",
"differentIntervalCommitAndPush": false,
"changedFilesInStatusBar": false,
"showedMobileNotice": true,
"refreshSourceControlTimer": 7000,
"showBranchStatusBar": true,
"setLastSaveToLastCommit": false,
"submoduleRecurseCheckout": false,
"gitDir": "",
"showFileMenu": true,
"lineAuthor": {
"show": false,
"followMovement": "inactive",
"authorDisplay": "initials",
"showCommitHash": false,
"dateTimeFormatOptions": "date",
"dateTimeFormatCustomString": "YYYY-MM-DD HH:mm",
"dateTimeTimezone": "viewer-local",
"coloringMaxAge": "1y",
"colorNew": {
"r": 255,
"g": 150,
"b": 150
},
"colorOld": {
"r": 120,
"g": 160,
"b": 255
},
"textColorCss": "var(--text-muted)",
"ignoreWhitespace": false,
"gutterSpacingFallbackLength": 5,
"lastShownAuthorDisplay": "initials",
"lastShownDateTimeFormatOptions": "date"
},
"autoCommitMessage": "vault backup: {{date}}"
}

44242
.obsidian/plugins/obsidian-git/main.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,9 @@
{
"id": "obsidian-git",
"name": "Obsidian Git",
"description": "Backup your vault with Git.",
"isDesktopOnly": false,
"fundingUrl": "https://ko-fi.com/vinzent",
"js": "main.js",
"version": "2.22.0"
}

View File

@ -0,0 +1,512 @@
@keyframes loading {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.workspace-leaf-content[data-type='git-view'] .button-border {
border: 2px solid var(--interactive-accent);
border-radius: var(--radius-s);
}
.workspace-leaf-content[data-type='git-view'] .view-content {
padding: 0;
}
.workspace-leaf-content[data-type='git-history-view'] .view-content {
padding: 0;
}
.loading>svg {
animation: 2s linear infinite loading;
transform-origin: 50% 50%;
display: inline-block;
}
.obsidian-git-center {
margin: auto;
text-align: center;
width: 50%;
}
.obsidian-git-textarea {
display: block;
margin-left: auto;
margin-right: auto;
}
.obsidian-git-center-button {
display: block;
margin: 20px auto;
}
.tooltip.mod-left {
overflow-wrap: break-word;
}
.tooltip.mod-right {
overflow-wrap: break-word;
}
.git-tools {
display: flex;
margin-left: auto;
}
.git-tools .type {
padding-left: var(--size-2-1);
display: flex;
align-items: center;
justify-content: center;
width: 11px;
}
.git-tools .type[data-type="M"] {
color: orange;
}
.git-tools .type[data-type="D"] {
color: red;
}
.git-tools .buttons {
display: flex;
}
.git-tools .buttons > * {
padding: 0 0;
height: auto;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-d-none {
display: none;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-wrapper {
text-align: left;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-header {
background-color: var(--background-primary);
border-bottom: 1px solid var(--interactive-accent);
font-family: var(--font-monospace);
height: 35px;
padding: 5px 10px;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-header,
.workspace-leaf-content[data-type="diff-view"] .d2h-file-stats {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-stats {
font-size: 14px;
margin-left: auto;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-lines-added {
border: 1px solid #b4e2b4;
border-radius: 5px 0 0 5px;
color: #399839;
padding: 2px;
text-align: right;
vertical-align: middle;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-lines-deleted {
border: 1px solid #e9aeae;
border-radius: 0 5px 5px 0;
color: #c33;
margin-left: 1px;
padding: 2px;
text-align: left;
vertical-align: middle;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-name-wrapper {
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
font-size: 15px;
width: 100%;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-name {
overflow-x: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-wrapper {
border: 1px solid var(--background-modifier-border);
border-radius: 3px;
margin-bottom: 1em;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-collapse {
-webkit-box-pack: end;
-ms-flex-pack: end;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
border: 1px solid var(--background-modifier-border);
border-radius: 3px;
cursor: pointer;
display: none;
font-size: 12px;
justify-content: flex-end;
padding: 4px 8px;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-collapse.d2h-selected {
background-color: #c8e1ff;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-collapse-input {
margin: 0 4px 0 0;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-diff-table {
border-collapse: collapse;
font-family: Menlo, Consolas, monospace;
font-size: 13px;
width: 100%;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-files-diff {
width: 100%;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-diff {
overflow-y: hidden;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-side-diff {
display: inline-block;
margin-bottom: -8px;
margin-right: -4px;
overflow-x: scroll;
overflow-y: hidden;
width: 50%;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line {
padding: 0 8em;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line,
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line {
display: inline-block;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
white-space: nowrap;
width: 100%;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line {
padding: 0 4.5em;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line-ctn {
word-wrap: normal;
background: none;
display: inline-block;
padding: 0;
-webkit-user-select: text;
-moz-user-select: text;
-ms-user-select: text;
user-select: text;
vertical-align: middle;
white-space: pre;
width: 100%;
}
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-code-line del,
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line del {
background-color: #ffb6ba;
}
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-code-line del,
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line del {
background-color: #8d232881;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line del,
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line ins,
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line del,
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line ins {
border-radius: 0.2em;
display: inline-block;
margin-top: -1px;
text-decoration: none;
vertical-align: middle;
}
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-code-line ins,
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line ins {
background-color: #97f295;
text-align: left;
}
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-code-line ins,
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line ins {
background-color: #1d921996;
text-align: left;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line-prefix {
word-wrap: normal;
background: none;
display: inline;
padding: 0;
white-space: pre;
}
.workspace-leaf-content[data-type="diff-view"] .line-num1 {
float: left;
}
.workspace-leaf-content[data-type="diff-view"] .line-num1,
.workspace-leaf-content[data-type="diff-view"] .line-num2 {
-webkit-box-sizing: border-box;
box-sizing: border-box;
overflow: hidden;
padding: 0 0.5em;
text-overflow: ellipsis;
width: 3.5em;
}
.workspace-leaf-content[data-type="diff-view"] .line-num2 {
float: right;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-linenumber {
background-color: var(--background-primary);
border: solid var(--background-modifier-border);
border-width: 0 1px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
color: var(--text-muted);
cursor: pointer;
display: inline-block;
position: absolute;
text-align: right;
width: 7.5em;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-linenumber:after {
content: "\200b";
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-linenumber {
background-color: var(--background-primary);
border: solid var(--background-modifier-border);
border-width: 0 1px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
color: var(--text-muted);
cursor: pointer;
display: inline-block;
overflow: hidden;
padding: 0 0.5em;
position: absolute;
text-align: right;
text-overflow: ellipsis;
width: 4em;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-diff-tbody tr {
position: relative;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-linenumber:after {
content: "\200b";
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-emptyplaceholder,
.workspace-leaf-content[data-type="diff-view"] .d2h-emptyplaceholder {
background-color: var(--background-primary);
border-color: var(--background-modifier-border);
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line-prefix,
.workspace-leaf-content[data-type="diff-view"] .d2h-code-linenumber,
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-linenumber,
.workspace-leaf-content[data-type="diff-view"] .d2h-emptyplaceholder {
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-code-linenumber,
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-linenumber {
direction: rtl;
}
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-del {
background-color: #fee8e9;
border-color: #e9aeae;
}
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-ins {
background-color: #dfd;
border-color: #b4e2b4;
}
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-del {
background-color: #521b1d83;
border-color: #691d1d73;
}
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-ins {
background-color: rgba(30, 71, 30, 0.5);
border-color: #13501381;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-info {
background-color: var(--background-primary);
border-color: var(--background-modifier-border);
color: var(--text-normal);
}
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-file-diff .d2h-del.d2h-change {
background-color: #fdf2d0;
}
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-file-diff .d2h-del.d2h-change {
background-color: #55492480;
}
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-file-diff .d2h-ins.d2h-change {
background-color: #ded;
}
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-file-diff .d2h-ins.d2h-change {
background-color: rgba(37, 78, 37, 0.418);
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list-wrapper {
margin-bottom: 10px;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list-wrapper a {
color: #3572b0;
text-decoration: none;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list-wrapper a:visited {
color: #3572b0;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list-header {
text-align: left;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list-title {
font-weight: 700;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list-line {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
text-align: left;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list {
display: block;
list-style: none;
margin: 0;
padding: 0;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list>li {
border-bottom: 1px solid var(--background-modifier-border);
margin: 0;
padding: 5px 10px;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list>li:last-child {
border-bottom: none;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-file-switch {
cursor: pointer;
display: none;
font-size: 10px;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-icon {
fill: currentColor;
margin-right: 10px;
vertical-align: middle;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-deleted {
color: #c33;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-added {
color: #399839;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-changed {
color: #d0b44c;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-moved {
color: #3572b0;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-tag {
background-color: var(--background-primary);
display: -webkit-box;
display: -ms-flexbox;
display: flex;
font-size: 10px;
margin-left: 5px;
padding: 0 2px;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-deleted-tag {
border: 2px solid #c33;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-added-tag {
border: 1px solid #399839;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-changed-tag {
border: 1px solid #d0b44c;
}
.workspace-leaf-content[data-type="diff-view"] .d2h-moved-tag {
border: 1px solid #3572b0;
}
/* ====================== Line Authoring Information ====================== */
.cm-gutterElement.obs-git-blame-gutter {
/* Add background color to spacing inbetween and around the gutter for better aesthetics */
border-width: 0px 2px 0.2px 2px;
border-style: solid;
border-color: var(--background-secondary);
background-color: var(--background-secondary);
}
.cm-gutterElement.obs-git-blame-gutter > div, .line-author-settings-preview {
/* delegate text color to settings */
color: var(--obs-git-gutter-text);
font-family: monospace;
height: 100%; /* ensure, that age-based background color occupies entire parent */
text-align: right;
padding: 0px 6px 0px 6px;
white-space: pre; /* Keep spaces and do not collapse them. */
}

View File

@ -0,0 +1,7 @@
{
"rowCount": 8,
"columnCount": 8,
"defaultAlignment": "center",
"defaultCardWidth": 160,
"defaultCardHeight": 160
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,15 @@
{
"id": "obsidian-table-generator",
"name": "Table Generator",
"version": "1.4.1",
"minAppVersion": "1.1.0",
"description": "A plugin for generate markdown table quickly like Typora /card table in canvas .",
"author": "Boninall",
"authorUrl": "https://github.com/Quorafind",
"fundingUrl": {
"Buy Me a Coffee": "https://www.buymeacoffee.com/boninall",
"爱发电": "https://afdian.net/a/boninall",
"支付宝": "https://cdn.jsdelivr.net/gh/Quorafind/.github@main/IMAGE/%E6%94%AF%E4%BB%98%E5%AE%9D%E4%BB%98%E6%AC%BE%E7%A0%81.jpg"
},
"isDesktopOnly": false
}

View File

@ -0,0 +1,44 @@
.table-container.s-VU35bhriycJk.s-VU35bhriycJk{display:grid;border-bottom:2px dotted var(--color-base-40);border-top:2px dotted var(--color-base-40);padding-top:var(--size-2-1);padding-bottom:var(--size-2-1);width:100%;height:150px;grid-gap:1px}.table-container.s-VU35bhriycJk div.s-VU35bhriycJk{background:var(--color-base-00);border-radius:var(--radius-s);border:1px solid var(--color-base-40)}.table-container.s-VU35bhriycJk .table-generator-cell.s-VU35bhriycJk{height:var(--size-4-4);width:var(--size-4-4)}div.active.s-VU35bhriycJk.s-VU35bhriycJk{background-color:var(--active-color)}.s-VU35bhriycJk.s-VU35bhriycJk{}.table-generator.s-YxLKubgSvLDy{padding-left:5px;padding-right:5px;width:220px}.table-generator-header.s-YxLKubgSvLDy{display:flex;justify-content:space-between;align-items:center;margin-top:var(--size-4-1);margin-bottom:var(--size-4-1)}.input-table-generator.s-YxLKubgSvLDy{margin-left:var(--size-2-2);margin-right:var(--size-2-2);margin-top:var(--size-4-2);margin-bottom:var(--size-4-2);display:flex;justify-content:space-around;align-items:center}.input-table-generator-row.s-YxLKubgSvLDy,.input-table-generator-col.s-YxLKubgSvLDy{display:flex;justify-content:space-around;align-items:center}button.s-YxLKubgSvLDy{width:80px;height:20px;margin:var(--size-4-1) auto var(--size-4-2);padding:0px 10px;text-align:center;text-decoration:none;display:flex;align-items:center}input.s-YxLKubgSvLDy{width:40px;height:18px;border:1px solid var(--color-base-50);margin-left:var(--size-2-2);border-radius:var(--radius-m);text-align:center}.H1.s-YxLKubgSvLDy{margin-left:auto;margin-right:auto;text-align:center}.s-YxLKubgSvLDy{}.table-generator-align-group.s-XNB-qso0yOHJ{display:flex;align-items:center;flex-direction:row;gap:var(--size-2-2)}.table-generator-align-icon.s-XNB-qso0yOHJ{display:flex;align-items:center;justify-content:center;border-radius:var(--radius-s);padding:var(--size-2-1)}.table-generator-align-icon.s-XNB-qso0yOHJ:not(.active):hover{background-color:var(--background-modifier-hover)}.table-generator-align-icon.active.s-XNB-qso0yOHJ{background-color:var(--background-modifier-border-hover)}.s-XNB-qso0yOHJ{}.table-generator-view {
position: absolute;
border: 1px solid var(--color-base-50);
border-radius: 5px;
background-color: var(--color-base-20);
}
.table-generator-setting-text {
min-width: 2.3em;
text-align: right;
}
.theme-light .table-generator-view {
--color-base-00: #ffffff;
--color-base-05: #fcfcfc;
--color-base-10: #fafafa;
--color-base-20: #f6f6f6;
--color-base-25: #e3e3e3;
--color-base-30: #e0e0e0;
--color-base-35: #d4d4d4;
--color-base-40: #bdbdbd;
--color-base-50: #ababab;
--color-base-60: #707070;
--color-base-70: #5a5a5a;
--color-base-100: #222222;
--active-color: rgb(224 242 254);
}
.theme-dark .table-generator-view {
--color-base-00: #1e1e1e;
--color-base-10: #242424;
--color-base-20: #262626;
--color-base-25: #2a2a2a;
--color-base-30: #363636;
--color-base-35: #3F3F3F;
--color-base-40: #555;
--color-base-50: #666;
--color-base-60: #999;
--color-base-70: #bababa;
--color-base-100: #dadada;
--active-color: rgb(3 105 161);
}
.input-table-generator.s-b7dfVi8Mj3e3{margin-left:var(--size-2-2);margin-right:var(--size-2-2);margin-top:var(--size-4-2);margin-bottom:var(--size-4-2);display:flex;justify-content:space-around;align-items:center}.input-table-generator-width.s-b7dfVi8Mj3e3,.input-table-generator-height.s-b7dfVi8Mj3e3{display:flex;justify-content:space-around;align-items:center}input.s-b7dfVi8Mj3e3{width:70px;height:18px;border:1px solid var(--color-base-50);margin-left:var(--size-2-2);border-radius:var(--radius-m);text-align:center}.s-b7dfVi8Mj3e3{}

138
.obsidian/workspace-mobile.json vendored Normal file
View File

@ -0,0 +1,138 @@
{
"main": {
"id": "d9aca340a3366ea5",
"type": "split",
"children": [
{
"id": "3650afc4d88131c8",
"type": "tabs",
"children": [
{
"id": "461bdcdc86881a3a",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "README.md",
"mode": "preview",
"source": false
}
}
}
]
}
],
"direction": "vertical"
},
"left": {
"id": "c31faab13a2fedcc",
"type": "mobile-drawer",
"children": [
{
"id": "f6c2ef0bfb1bf8c3",
"type": "leaf",
"state": {
"type": "file-explorer",
"state": {
"sortOrder": "alphabetical"
}
}
},
{
"id": "0e363d83d9334a84",
"type": "leaf",
"state": {
"type": "search",
"state": {
"query": "",
"matchingCase": false,
"explainSearch": false,
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical"
}
}
},
{
"id": "0b22c79979990f37",
"type": "leaf",
"state": {
"type": "tag",
"state": {
"sortOrder": "frequency",
"useHierarchy": true
}
}
},
{
"id": "66311f969def336b",
"type": "leaf",
"state": {
"type": "bookmarks",
"state": {}
}
}
],
"currentTab": 0
},
"right": {
"id": "f3f28e7659a18b5d",
"type": "mobile-drawer",
"children": [
{
"id": "7e1babdc84d776ae",
"type": "leaf",
"state": {
"type": "backlink",
"state": {
"file": "README.md",
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
}
}
},
{
"id": "0d29d90218e5cebd",
"type": "leaf",
"state": {
"type": "outgoing-link",
"state": {
"file": "README.md",
"linksCollapsed": false,
"unlinkedCollapsed": true
}
}
},
{
"id": "257e4a3e73e011d0",
"type": "leaf",
"state": {
"type": "outline",
"state": {
"file": "README.md"
}
}
}
],
"currentTab": 0
},
"left-ribbon": {
"hiddenItems": {
"switcher:Open quick switcher": false,
"graph:Open graph view": false,
"canvas:Create new canvas": false,
"daily-notes:Open today's daily note": false,
"templates:Insert template": false,
"command-palette:Open command palette": false
}
},
"active": "461bdcdc86881a3a",
"lastOpenFiles": [
"README.md"
]
}

176
.obsidian/workspace.json vendored Normal file
View File

@ -0,0 +1,176 @@
{
"main": {
"id": "6771390cbd136862",
"type": "split",
"children": [
{
"id": "8f5f502f53642b40",
"type": "tabs",
"children": [
{
"id": "cb5bc35ff4a8b486",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "Algo/Séminaire/Chapter 2 - Functions.md",
"mode": "source",
"source": false
}
}
}
]
}
],
"direction": "vertical"
},
"left": {
"id": "ec903177fcd621d4",
"type": "split",
"children": [
{
"id": "98ef2fbce63fb703",
"type": "tabs",
"children": [
{
"id": "c473a791e2b34194",
"type": "leaf",
"state": {
"type": "file-explorer",
"state": {
"sortOrder": "alphabetical"
}
}
},
{
"id": "b673def08ee4253f",
"type": "leaf",
"state": {
"type": "search",
"state": {
"query": "",
"matchingCase": false,
"explainSearch": false,
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical"
}
}
},
{
"id": "ab24fc8c647544b4",
"type": "leaf",
"state": {
"type": "bookmarks",
"state": {}
}
}
]
}
],
"direction": "horizontal",
"width": 300
},
"right": {
"id": "b83c16dd7908c658",
"type": "split",
"children": [
{
"id": "ee54f13bcc40ae18",
"type": "tabs",
"children": [
{
"id": "aff30c9f58e95884",
"type": "leaf",
"state": {
"type": "backlink",
"state": {
"file": "Algo/Séminaire/Chapter 2 - Functions.md",
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
}
}
},
{
"id": "9b5d28f22ac4145f",
"type": "leaf",
"state": {
"type": "outgoing-link",
"state": {
"file": "Algo/Séminaire/Chapter 2 - Functions.md",
"linksCollapsed": false,
"unlinkedCollapsed": true
}
}
},
{
"id": "adef584a20cacde0",
"type": "leaf",
"state": {
"type": "tag",
"state": {
"sortOrder": "frequency",
"useHierarchy": true
}
}
},
{
"id": "93f23b543eb1ec1a",
"type": "leaf",
"state": {
"type": "outline",
"state": {
"file": "Algo/Séminaire/Chapter 2 - Functions.md"
}
}
}
]
}
],
"direction": "horizontal",
"width": 300,
"collapsed": true
},
"left-ribbon": {
"hiddenItems": {
"switcher:Open quick switcher": false,
"graph:Open graph view": false,
"canvas:Create new canvas": false,
"daily-notes:Open today's daily note": false,
"templates:Insert template": false,
"command-palette:Open command palette": false
}
},
"active": "c473a791e2b34194",
"lastOpenFiles": [
"Algo/Séminaire/Chapter 2 - Functions.md",
"Algo/Séminaire/Chapter 1 - CAML basics.md",
"Mathématiques/Séminaire/Logics/Logics.md",
"Algo/Séminaire/Introduction.md",
"Algo/Séminaire",
"Untitled.canvas",
"README.md",
"Mathématiques/Séminaire/Logics/Pasted image 20230904102817.png",
"Mathématiques/Séminaire/Logics/Pasted image 20230904101446.png",
"Mathématiques/Séminaire/Logics",
"Mathématiques/Séminaire/Logics/Pasted image 20230904101721.png",
"Mathématiques/Séminaire/Logics/Pasted image 20230904101453.png",
"Mathématiques/Séminaire/Logics/Pasted image 20230904100934.png",
"Mathématiques/Séminaire",
"Mathématiques/Séminaire/Logics/Pasted image 20230904100125.png",
"Mathématiques/Séminaire/Logics/Pasted image 20230904095003.png",
"Mathématiques/Séminaire/Logics/Pasted image 20230904094230.png",
"Mathématiques/Séminaire/Logics/Pasted image 20230904094156.png",
"Mathématiques/Séminaire/Logics/Pasted image 20230904093718.png",
"2023-09-01.md",
"Algo",
"Mathématiques",
"Cours algo.md",
"Test d'antidote avec Obsidian.md"
]
}

View File

@ -0,0 +1,150 @@
CAML is a categorical abstract machine language. It is strongly typed. It was created by INRIA in 1984.
## 1.1. General idea
It's a simple language to write.
```Ocaml
# 1+2 ;;
```
- **#** is the prompt (we don't have to write it)
- **1 + 2** is the program
- **;;** is the end of the line
```Ocaml
_: int=3 *That a Caml answer to the previus program*
```
```Ocaml
# 1+2.2;; *That an error*
# 1. +. 2.2;; *This is good*
```
## 1.2. CAML interaction
```Ocaml
# 1;; *He can be a simple expression*
_: int=1
# "Hello World";; *He can be a string*
_:string = "Hello World"
```
The general form is :
```Ocaml
# expr ;;
_: type of the evaluation = result of the evaluation
```
## 1.3. Definitions
### Global definitions
```Ocaml
# let x=1+2;;
val x:int = 3 *our current env is x -> 3*
# let y=x/2;;
val y:int = 1 *our current env is x -> 3 ; y -> 1*
# let x = 2
_:bool = false
# x;;
_: int = 2
# let name = expr;;
val name: type of evaluation
```
### Local definitions
```Ocaml
# let r = 1. in let pi = 3.14 in 2*pi*r;;
_ : float = 6.28
# let x = 10 in y = 2*x in x+y;;
_ : float = 30
# x;;
_ : int =2 *see global definition section*
# pi;;
error: unbound value pi
```
when there is the keyword ``len``and ``in`` that create a local definition. A local definition is something that only exist in our expression and then it disappear. You can define a local definition into a variable : `` let x = let r = 1. in let pi = 3.14 in 2*pi*r;;`` (for example)
### Multiple definitions
```Ocaml
# let r = 1. and pi : 3.14 in 2 *. pi *. r;; *local version*
_ : float = 6.28
# let x = 1.2 and y = "Hello";;
val x: float = 1.2 *our current env is x -> 3 ; y -> 1 ; x -> 1.2 *
val y: string = "Hello" *our current env is x -> 3 ; y -> 1 ; x -> 1.2 ; y -> "Hello"*
# let x = 2 and y = x + 1 in y + 2;;
Error *because x is 1.2 in our current evaluation*
```
> ⚠️ We have only one `let` and one `in` for the multiple definitions methods
## 1.4 Basic types
- Integer: ``int``
- Compatible operator : + ; - ; * ; / ; mod
- Same operator priority than in mathematics
```Ocaml
# 2+3*2;;
_: int = 8
# (2+3)*3;;
_: int = 10
# max_int 1 073 741 823
_: int = 2^30-1
# max_int -1 073 741 824
_: int = -2^30
```
- Float: ``float``
- Compatible operator : -. ; +. ; * . ; /.
- Booleans: ``bool``
- Can be ``true``or ``false``
```Ocaml
# let x = 2 and y = 1 in x/y > 1;;
_: bool = true
# let x = 2 and y = 0 in x/y > 1;;
Exception: Division by zero
# let x = 2 and y = 0 in y<>0 && x/y> 1;;
_: bool = false
```
- Char: `char`
- 8 bits -> extended ASCII table
```Ocaml
# 'a'= 'A';;
_: bool = false
```
- String: `string`
```Ocaml
# "ab" < "abc" ;;
_: bool = true *because O chars -> 2^24 - 6 chars*
# "Hello" ^" World"
_: string = "Hello World"
# "abc".[1]
_: char = "b"
```
### Comparaison
|Mathematics|$=$|$\not=$|$<$|$>$|$\eqslantgtr$|$\eqslantless$|
|:----:|:----:|:----:|:----:|:----:|:----:|
|CAML|`=`|`<>`|`<`|`>`|`<=`|`>=`|
|CAML|Maths|English|
|:-----|:-----|:-----|
|not|$\neg$|negation|
|&&|$\land$|and|
|//|$\lor$|or (inclusive)|

View File

@ -0,0 +1,68 @@
## 2.1. One parameter function
```Ocaml
# let successor x=x+1;;
val successor: int -> int =<fun>
# successor;;
_ : int -> int =<fun>
# successor 3;;
_: int = 4
# successor (-1)::
_: int = 0
```
>`x` is call a formal parameter and `x+1` is call the body of the function. `3` is an effective parameter (= argument). For the last line, the paratheses are needed, without it, CAML will return an error
#### ⚠️ ``f x = f(x)`` and ``fx+gy = (fx)+(gy)
```Ocaml
# let f x = x+1 and g x = x*2
val f: int -> int = <fun>
val g: int -> int = <fun>
# fg 3;;
Error: was expecting an integer and get a function
# f(g 3);; *This way there is no error*
_: int = 7
```
```Ocaml
# let successor_of_double x=f(gx);;
val successor_of_double: int -> int = <fun>
# successor_of_double (-12);;
_: int = -23
```
#### Existing functions
```Ocaml
# sqrt;;
_: float -> float =<fun>
# int_of_float;;
_: float -> int =<fun>
# length "toto" ;;
Error : Unboud
# String.lenght "toto";; *String is a library*
_: int = 4
```
## 2.2. Functions and local definitions
```Ocaml
# let pred x = x - 1 in pred 3 + pred 4;;
_: int = 6
# pred;;
Error
# let square_of_pred x = let pred_x = x - 1 in pred_x * pred_x;;
val square_of_pred: int -> int = <fun>
# square_of_pred 3;;
_: int = 4

View File

@ -0,0 +1,67 @@
## An algorithm is
- a set of rules (finite)
- sequence (finite)
- The goal is to take an input and give an output with the solution
## How to write an algorithm
1) What :
- What do you have available ; What is the output that your searching for => this is call specifications
- How : find resolution methods and choose the best one
- Formalism : shape it like a computer talk
- Translate :
## Compilation and interpretation
### Compiler
```mermaid
flowchart TD
A[High Level source code] -->|Compiler| B[Machine code]
B --> C[execution]
B --> D[execution 2]
B --> E[execution ...]
```
The compiler depends on
- Language of the source code
- The computer it will run the code
Advantages :
- 1 translation
- Optimises the code
> C or C++ language use the compiler
### Interpretation
The interpretor is a live compiler that translate in realtime.
Disavantages:
- Don't optimize the code
Avantages:
- We can share only the original source code
> Javascript use interpretation
## Language families
There is two families in the language word, the imperative and the declarative
### Imperative
- State (of the memory)
- Instruction that will modify the state of the memory
- and again...
- output
### Declarative
- Defines relations between the input and the output
In the declarative languages we have
- The functional languages
- $$f:x -> x+1$$
- The logical languages
$$x\in{N}$$
$$x>1$$
$$x<3$$
$$\text{-> } x=2$$
Latest update 2023-09-04

View File

@ -0,0 +1,71 @@
## Proposition
A proposition (or assertion) is a sentence that can be a math or anything else that can be true or false. Logic use connector to create new proposition
**Exemple** :
- P="The sky is red"
- Q="The is is not red"
- It's a negation : $$Q=\daleth{P}$$ and $$P=\daleth{Q}$$
## Connectors
1) Negation
- Def: Let P a proposition : we call negation of P a proposition or the proposition that is true when P is false and false when P is true. We denote this proposition :
$$\daleth{P}$$
- **Exemple :**
- P="the sky is red"
- $$\daleth{P} = The sky is not red$$
![[Pasted image 20230904093718.png]]
2) Conjunction
- Def : let P and Q two proposition. We call conjunction of P and Q denote $$P1Q$$ the proposition that is :
- True when P and Q are both true
- False if else
- ![[Pasted image 20230904094230.png]]
- Exemple:
- P: Floor is green
- Q: Wall is withe
- $$P\land{Q} = Floor is Green and the wall is white$$
3) Disjunction
- Def: Let P and Q a proposition. We call disjunction of P and Q to a proposition that is
- True what at least one of $$P\land{Q}$$ is true and False when their both P and Q are false
- ![[Pasted image 20230904095003.png]]
4) If then (implication)
- Def: Let P and Q two propositions. We call if P then Q the proposition that is :
- False when P is true and Q is false. We denote $$P=>Q$$
- True if else
![[Pasted image 20230904100125.png]]
- Exemple
- Moustache => Nice
- Let's take $$R=[P=>Q]$$
$$Q=>P$$
Is a converse of $$R=[P=>Q]$$
The contrapositive of $$R=[P=>Q]$$ is $$[\daleth{Q} => \daleth{P}]$$
The both are equivalence
6) Equivalence
- Def: Let P and Q two propositions. We say P and Q are equivalent and denote $$P=>Q$$ when both $$(P=>Q) and (Q=>P) are true$$ In other words when $$(P=>Q) and (Q=>P) is true$$
and false if else.
![[Pasted image 20230904100934.png]]
Let's take $$R = P\land{Q}$$
![[Pasted image 20230904101446.png]]
$$\daleth{(P\land{Q})}=\daleth{P}\land{\daleth{Q}}$$
![[Pasted image 20230904101721.png]]
![[Pasted image 20230904102817.png]]
$$A=>B$$
A is the sufficient condition (to B) and B is the necessary condition (to A)
$$A<=>B$$ A & B are the necessary and sufficient conditons
## Quantifiers
We know two quantifiers : $$\forall \text{ and } \exists$$
**Example:** $$\forall{x \in{R}}, P(x)$$ is true whatever the values of x from R
$$x^2\eqslantgtr{0}$$
$$\exists{x\in{R}}, P(x)$$
P is true for at lease one value of R
$$\exists{x\in{R}}, x^2=0$$
$$\exists{x\in{R}}, x^2=1$$
### ⚠️ **The order maters for every quantifiers**
- The negation of $$\exists{ x \in{E}} \text{ is } \forall{x\in{E}} $$
- The negation of
- $$\forall{x\in{E}} \text{ is } \exists{ x \in{E}}$$
-

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

1
README.md Normal file
View File

@ -0,0 +1 @@
This is my epita courses