|
1 | | -# nvim-plugin-template |
| 1 | +# pandoc-this.nvim |
2 | 2 |
|
3 | | -Neovim plugin template; includes automatic documentation generation from README, integration tests with Busted, and linting with Stylua |
| 3 | +**Convert your Neovim buffers to various formats with the power of pandoc!** |
4 | 4 |
|
5 | | -## Usage |
| 5 | +**🚧 Work in Progress! 🚧** |
6 | 6 |
|
7 | | -1. Click `use this template` button generate a repo on your github. |
8 | | -2. Clone your plugin repo. Open terminal then cd plugin directory. |
9 | | -3. Run `python3 rename.py your-plugin-name`. This will replace all `nvim-plugin-template` to your `plugin-name`. |
10 | | - Then it will prompt you input `y` or `n` to remove example codes in `init.lua` and |
11 | | - `test/plugin_spec.lua`. If you are familiar this repo just input `y`. If you are looking at this template for the first time I suggest you inspect the contents. After this step `rename.py` will also auto-remove. |
| 7 | +This plugin is in its early stages of development. It currently provides a basic |
| 8 | +proof-of-concept for converting Markdown buffers to docx format. However, we |
| 9 | +have big plans for the future! |
12 | 10 |
|
13 | | -Now you have a clean plugin environment. Enjoy! |
| 11 | +**Planned Features:** |
14 | 12 |
|
15 | | -## Format |
| 13 | +- **Format Flexibility:** |
| 14 | + - Support for various input formats (not just Markdown). |
| 15 | + - Automatic input format detection. |
| 16 | +- **Output Choice:** |
| 17 | + - Easy selection of output formats (docx, html, pdf, epub, etc.). |
| 18 | + - Integration with a picker UI (like Telescope) for convenient format |
| 19 | + selection. |
| 20 | +- **Pandoc Power:** |
| 21 | + - Ability to pass custom arguments to pandoc for precise control over |
| 22 | + conversion. |
| 23 | + - Support for pandoc templates and filters. |
| 24 | +- **Seamless Integration:** |
| 25 | + - Option for in-place buffer conversion. |
| 26 | + - Asynchronous execution to avoid blocking Neovim. |
| 27 | + - Customizable keybindings for frequently used conversions. |
16 | 28 |
|
17 | | -The CI uses `stylua` to format the code; customize the formatting by editing `.stylua.toml`. |
| 29 | +**Current Functionality:** |
18 | 30 |
|
19 | | -## Test |
| 31 | +- Convert the current buffer (assumed to be Markdown) to a docx file. |
| 32 | +- Open the converted docx file in your default application. |
20 | 33 |
|
21 | | -Uses [busted](https://lunarmodules.github.io/busted/) for testing. Installs by using `luarocks --lua-version=5.1 install vusted` then runs `vusted ./test` |
22 | | -for your test cases. `vusted` is a wrapper of Busted especially for testing Neovim plugins. |
| 34 | +**Installation:** |
23 | 35 |
|
24 | | -Create test cases in the `test` folder. Busted expects files in this directory to be named `foo_spec.lua`, with `_spec` as a suffix before the `.lua` file extension. For more usage details please check |
25 | | -[busted usage](https://lunarmodules.github.io/busted/) |
| 36 | +- Using [packer.nvim](https://github.com/wbthomason/packer.nvim): |
26 | 37 |
|
27 | | -## CI |
| 38 | + _(Instructions to be added soon)_ |
28 | 39 |
|
29 | | -- Auto generates doc from README. |
30 | | -- Runs the Busted/vusted integration tests |
31 | | -- Lints with `stylua`. |
| 40 | +**Usage:** |
32 | 41 |
|
| 42 | +- Currently, there's a basic command to trigger the conversion. This will be |
| 43 | + expanded upon in future releases. |
33 | 44 |
|
34 | | -## More |
| 45 | +**Contributing:** |
35 | 46 |
|
36 | | -To see this template in action, take a look at my other plugins. |
| 47 | +- Contributions are welcome! Feel free to open issues or submit pull requests. |
37 | 48 |
|
38 | | -## License MIT |
| 49 | +**License:** |
| 50 | + |
| 51 | +- [MIT License](LICENSE) |
0 commit comments