From 4ac566945e5b712426e05dd1f76d9bfbdf8d670e Mon Sep 17 00:00:00 2001 From: arne314 <73391160+arne314@users.noreply.github.com> Date: Sat, 18 Jan 2025 19:58:43 +0100 Subject: [PATCH] feat: get plugin directory from lua debug --- README.md | 7 ++++--- lua/typstar/config.lua | 5 ++++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index b37e11d..eec4bbe 100644 --- a/README.md +++ b/README.md @@ -72,10 +72,10 @@ To render the flashcard in your document as well add some code like this ## Installation -Install the plugin in Neovim and set the `typstarRoot` config or alternatively clone typstar into `~/typstar`. +Install the plugin in Neovim and run the plugin setup. ```lua -require('typstar').setup({ - typstarRoot = '/path/to/typstar/repo' -- depending on your nvim plugin system +require('typstar').setup({ -- depending on your neovim plugin system + -- your typstar config goes here }) ``` @@ -89,6 +89,7 @@ require('typstar').setup({ 1. Install [Obsidian](https://obsidian.md/) and create a vault in your typst note taking directory 2. Install the [obsidian-excalidraw-plugin](https://github.com/zsviczian/obsidian-excalidraw-plugin) and enable `Auto-export SVG` (in plugin settings at `Embedding Excalidraw into your Notes and Exporting > Export Settings > Auto-export Settings`) 3. Have the `xdg-open` command working or set a different command at `uriOpenCommand` in the [config](#configuration) +4. If you encounter issues try cloning the repo into `~/typstar` or setting the `typstarRoot` config accordingly, feel free to open an issue ### Anki 0. Typst version `0.12.0` or higher is required diff --git a/lua/typstar/config.lua b/lua/typstar/config.lua index 9491850..8cd3bbf 100644 --- a/lua/typstar/config.lua +++ b/lua/typstar/config.lua @@ -1,7 +1,7 @@ local M = {} local default_config = { - typstarRoot = '~/typstar', + typstarRoot = nil, anki = { typstarAnkiCmd = 'typstar-anki', typstCmd = 'typst', @@ -30,6 +30,9 @@ local default_config = { function M.merge_config(args) M.config = vim.tbl_deep_extend('force', default_config, args or {}) + M.config.typstarRoot = M.config.typstarRoot + or debug.getinfo(1).source:match('^@(.*)/lua/typstar/config%.lua$') + or '~/typstar' M.config.excalidraw.templatePath = M.config.excalidraw.templatePath or { ['%.excalidraw%.md$'] = M.config.typstarRoot .. '/res/excalidraw_template.excalidraw.md',