Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,11 @@ interface VimToggleSettings {
* Boolean determining if Canvas files should have vim mode off by default
*/
canvasVim: boolean;

/**
* Boolean determining if line numbers should be toggled alongside vim mode.
*/
lineNumbers: boolean;
}

/**
Expand All @@ -49,6 +54,12 @@ const DEFAULT_SETTINGS: VimToggleSettings = {
* for setting vim mode off by default for canvas files (By default, it is set to false).
*/
canvasVim: false,

/**
* Default value for the lineNumbers setting, detailing the condition
* for setting line numbers to be toggled alongside vim mode (By default, it is set to true).
*/
lineNumbers: true,
};

/**
Expand Down Expand Up @@ -135,6 +146,10 @@ export default class VimToggle extends Plugin {
} else {
// @ts-expect-error
this.app.vault.setConfig("vimMode", false);
if (this.settings.lineNumbers) {
// @ts-expect-error
this.app.vault.setConfig("showLineNumber", false);
}
}
}

Expand All @@ -149,6 +164,10 @@ export default class VimToggle extends Plugin {
} else {
// @ts-expect-error
this.app.vault.setConfig("vimMode", true);
if (this.settings.lineNumbers) {
// @ts-expect-error
this.app.vault.setConfig("showLineNumber", true);
}
}
}

Expand Down Expand Up @@ -262,6 +281,23 @@ class VimToggleSettingsTab extends PluginSettingTab {
})
);

/**
* This is the line numbers setting for the Vim Toggle plugin.
*/
new Setting(containerEl)
.setName("Line Numbers")
.setDesc(
"Toggle line numbers alongside vim mode"
)
.addToggle((toggle: ToggleComponent) =>
toggle
.setValue(this.plugin.settings.lineNumbers)
.onChange(async (value) => {
this.plugin.settings.lineNumbers = value;
await this.plugin.saveSettings();
})
);




Expand Down