backup 04/09/2023 15h54
3
.obsidian/app.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"mobilePullAction": "editor:save-file"
|
||||
}
|
3
.obsidian/appearance.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"accentColor": ""
|
||||
}
|
5
.obsidian/community-plugins.json
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
[
|
||||
"antidote-grammar-checker-integration",
|
||||
"obsidian-table-generator",
|
||||
"obsidian-git"
|
||||
]
|
30
.obsidian/core-plugins-migration.json
vendored
Normal 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
@ -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
@ -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
@ -0,0 +1 @@
|
||||
{}
|
38
.obsidian/plugins/antidote-grammar-checker-integration/main.js
vendored
Normal file
11
.obsidian/plugins/antidote-grammar-checker-integration/manifest.json
vendored
Normal 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
|
||||
}
|
1
.obsidian/plugins/antidote-grammar-checker-integration/styles.css
vendored
Normal 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}
|
55
.obsidian/plugins/obsidian-git/data.json
vendored
Normal 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
9
.obsidian/plugins/obsidian-git/manifest.json
vendored
Normal 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"
|
||||
}
|
512
.obsidian/plugins/obsidian-git/styles.css
vendored
Normal 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. */
|
||||
}
|
7
.obsidian/plugins/obsidian-table-generator/data.json
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
{
|
||||
"rowCount": 8,
|
||||
"columnCount": 8,
|
||||
"defaultAlignment": "center",
|
||||
"defaultCardWidth": 160,
|
||||
"defaultCardHeight": 160
|
||||
}
|
2461
.obsidian/plugins/obsidian-table-generator/main.js
vendored
Normal file
15
.obsidian/plugins/obsidian-table-generator/manifest.json
vendored
Normal 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
|
||||
}
|
44
.obsidian/plugins/obsidian-table-generator/styles.css
vendored
Normal 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
@ -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
@ -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"
|
||||
]
|
||||
}
|
150
Algo/Séminaire/Chapter 1 - CAML basics.md
Normal 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)|
|
68
Algo/Séminaire/Chapter 2 - Functions.md
Normal 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
|
||||
|
67
Algo/Séminaire/Introduction.md
Normal 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
|
71
Mathématiques/Séminaire/Logics/Logics.md
Normal 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}}$$
|
||||
-
|
BIN
Mathématiques/Séminaire/Logics/Pasted image 20230904093718.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
Mathématiques/Séminaire/Logics/Pasted image 20230904094156.png
Normal file
After Width: | Height: | Size: 46 KiB |
BIN
Mathématiques/Séminaire/Logics/Pasted image 20230904094230.png
Normal file
After Width: | Height: | Size: 46 KiB |
BIN
Mathématiques/Séminaire/Logics/Pasted image 20230904095003.png
Normal file
After Width: | Height: | Size: 49 KiB |
BIN
Mathématiques/Séminaire/Logics/Pasted image 20230904100125.png
Normal file
After Width: | Height: | Size: 57 KiB |
BIN
Mathématiques/Séminaire/Logics/Pasted image 20230904100934.png
Normal file
After Width: | Height: | Size: 70 KiB |
BIN
Mathématiques/Séminaire/Logics/Pasted image 20230904101446.png
Normal file
After Width: | Height: | Size: 74 KiB |
BIN
Mathématiques/Séminaire/Logics/Pasted image 20230904101453.png
Normal file
After Width: | Height: | Size: 74 KiB |
BIN
Mathématiques/Séminaire/Logics/Pasted image 20230904101721.png
Normal file
After Width: | Height: | Size: 79 KiB |
BIN
Mathématiques/Séminaire/Logics/Pasted image 20230904102817.png
Normal file
After Width: | Height: | Size: 36 KiB |