Skip to content

Commit bdd2685

Browse files
committed
Remove path import, and a superfluous call to sanitizeHTMLToDom
1 parent 1d0fc64 commit bdd2685

6 files changed

+20
-17
lines changed

.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,7 @@ data.json
2020

2121
# Exclude macOS Finder (System Explorer) View States
2222
.DS_Store
23+
24+
25+
# vscode
26+
*.code-workspace

main.ts

+10-12
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,9 @@ import {
1111
sanitizeHTMLToDom,
1212
Setting,
1313
TFile,
14+
normalizePath,
1415
} from 'obsidian';
1516

16-
const path = require('path'); // eslint-disable-line
17-
1817
interface PasteAsEmbedSettings {
1918
// TODO: replace Record with Map https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map
2019
userRules: Record<string, PasteRule>;
@@ -71,11 +70,12 @@ export default class PasteAsEmbed extends Plugin {
7170

7271
const embedNoteName = this.getEmbedNoteName(matchingRule, view.file);
7372
const embedFolder = this.getEmbedFolder(matchingRule, view.file)
74-
const embedFilePath = path.join(embedFolder, embedNoteName + ".md");
7573

76-
if (!this.app.vault.getFolderByPath(embedFolder))
77-
await this.app.vault.createFolder(embedFolder);
74+
const cleanEmbedFolder = normalizePath(embedFolder);
75+
if (!this.app.vault.getFolderByPath(cleanEmbedFolder))
76+
await this.app.vault.createFolder(cleanEmbedFolder);
7877

78+
const embedFilePath = [cleanEmbedFolder, embedNoteName.concat(".md")].join('/');
7979
this.app.vault.create(embedFilePath, txt)
8080

8181
editor.replaceSelection(`![[${embedNoteName}]]\n`);
@@ -106,20 +106,18 @@ export default class PasteAsEmbed extends Plugin {
106106
}
107107

108108
getEmbedFolder(rule: PasteRule, file: TFile) {
109-
const folder = path.dirname(file.path);
110-
111109
const ruleFolder = rule.folder.replace('${notename}', file.basename);
112110

113111
let embedFolder;
114112
if (rule.folder.startsWith('./')) {
115-
embedFolder = path.join(folder, ruleFolder);
113+
embedFolder = [file.parent?.path, ruleFolder.substring(2)].join('/');
116114
} else {
117115
embedFolder = ruleFolder;
118116
}
119-
117+
120118
return embedFolder;
121119
}
122-
120+
123121
async onload() { // Configure resources needed by the plugin.
124122
await this.loadSettings();
125123
// This adds a settings tab so the user can configure various aspects of the plugin
@@ -201,7 +199,7 @@ class PasteAsEmbedSettingTab extends PluginSettingTab {
201199
);
202200

203201
new Setting(containerEl)
204-
.setName(sanitizeHTMLToDom("Add new rule"))
202+
.setName("Add new rule")
205203
.addButton((button: ButtonComponent): ButtonComponent => {
206204
const b = button
207205
.setTooltip("Add rule")
@@ -409,7 +407,7 @@ class SettingsModal extends Modal {
409407
);
410408

411409
new Setting(settingDiv)
412-
.setName('Folder')
410+
.setName('Embedded note folder')
413411
.setDesc('Where to save the embedded notes. Leave empty to save in the active folder. Start with "./" for a path relative to the active folder. Use ${notename} for the name of the active note. ')
414412
.addText(text => text
415413
.setPlaceholder('')

manifest.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"id": "paste-as-embed",
33
"name": "Paste as Embed",
4-
"version": "0.1.3",
4+
"version": "0.1.4",
55
"minAppVersion": "0.15.0",
66
"description": "Paste text into a separate note, and embed the note.",
77
"author": "Matt Laporte",

package-lock.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "obsidian-paste-as-embed",
3-
"version": "0.1.3",
3+
"version": "0.1.4",
44
"description": "Paste text into a separate note, and embed the note.",
55
"main": "main.js",
66
"scripts": {

versions.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@
33
"0.1.0": "0.15.0",
44
"0.1.1": "0.15.0",
55
"0.1.2": "0.15.0",
6-
"0.1.3": "0.15.0"
6+
"0.1.3": "0.15.0",
7+
"0.1.4": "0.15.0"
78
}

0 commit comments

Comments
 (0)