mirror of
https://github.com/NotAShelf/nvf.git
synced 2026-01-13 05:57:49 +00:00
Merge pull request #1217 from alfarelcynthesis/obsidian-nvim-fork
Some checks are pending
Set up binary cache / cachix (default) (push) Waiting to run
Set up binary cache / cachix (maximal) (push) Waiting to run
Set up binary cache / cachix (nix) (push) Waiting to run
Treewide Checks / Validate flake (push) Waiting to run
Treewide Checks / Check formatting (push) Waiting to run
Treewide Checks / Check source tree for typos (push) Waiting to run
Treewide Checks / Validate documentation builds (push) Waiting to run
Treewide Checks / Validate hyperlinks in documentation sources (push) Waiting to run
Treewide Checks / Validate Editorconfig conformance (push) Waiting to run
Build and deploy documentation / Check latest commit (push) Waiting to run
Build and deploy documentation / publish (push) Blocked by required conditions
Some checks are pending
Set up binary cache / cachix (default) (push) Waiting to run
Set up binary cache / cachix (maximal) (push) Waiting to run
Set up binary cache / cachix (nix) (push) Waiting to run
Treewide Checks / Validate flake (push) Waiting to run
Treewide Checks / Check formatting (push) Waiting to run
Treewide Checks / Check source tree for typos (push) Waiting to run
Treewide Checks / Validate documentation builds (push) Waiting to run
Treewide Checks / Validate hyperlinks in documentation sources (push) Waiting to run
Treewide Checks / Validate Editorconfig conformance (push) Waiting to run
Build and deploy documentation / Check latest commit (push) Waiting to run
Build and deploy documentation / publish (push) Blocked by required conditions
notes/obsidian-nvim: use a maintained fork
This commit is contained in:
commit
328e096c8b
8 changed files with 201 additions and 67 deletions
|
|
@ -214,7 +214,6 @@ isMaximal: {
|
||||||
};
|
};
|
||||||
|
|
||||||
notes = {
|
notes = {
|
||||||
obsidian.enable = false; # FIXME: neovim fails to build if obsidian is enabled
|
|
||||||
neorg.enable = false;
|
neorg.enable = false;
|
||||||
orgmode.enable = false;
|
orgmode.enable = false;
|
||||||
mind-nvim.enable = isMaximal;
|
mind-nvim.enable = isMaximal;
|
||||||
|
|
|
||||||
|
|
@ -19,20 +19,13 @@ To use **nvf** with flakes, we first need to add the input to our `flake.nix`.
|
||||||
# flake.nix
|
# flake.nix
|
||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
# Optional, if you intend to follow nvf's obsidian-nvim input
|
# nvf works best with and only directly supports flakes
|
||||||
# you must also add it as a flake input.
|
|
||||||
obsidian-nvim.url = "github:epwalsh/obsidian.nvim";
|
|
||||||
|
|
||||||
# Required, nvf works best and only directly supports flakes
|
|
||||||
nvf = {
|
nvf = {
|
||||||
url = "github:NotAShelf/nvf";
|
url = "github:NotAShelf/nvf";
|
||||||
# You can override the input nixpkgs to follow your system's
|
# You can override the input nixpkgs to follow your system's
|
||||||
# instance of nixpkgs. This is safe to do as nvf does not depend
|
# instance of nixpkgs. This is safe to do as nvf does not depend
|
||||||
# on a binary cache.
|
# on a binary cache.
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
# Optionally, you can also override individual plugins
|
|
||||||
# for example:
|
|
||||||
inputs.obsidian-nvim.follows = "obsidian-nvim"; # <- this will use the obsidian-nvim from your inputs
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# ...
|
# ...
|
||||||
|
|
@ -44,8 +37,8 @@ Followed by importing the home-manager module somewhere in your configuration.
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
{
|
{
|
||||||
# Assuming "nvf" is in your inputs and inputs is in the argument set.
|
# Assuming nvf is in your inputs and inputs is in the argument set.
|
||||||
# See example installation below
|
# See example installation below.
|
||||||
imports = [ inputs.nvf.homeManagerModules.default ];
|
imports = [ inputs.nvf.homeManagerModules.default ];
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
|
||||||
|
|
@ -19,20 +19,13 @@ To use **nvf** with flakes, we first need to add the input to our `flake.nix`.
|
||||||
# flake.nix
|
# flake.nix
|
||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
# Optional, if you intend to follow nvf's obsidian-nvim input
|
# nvf works best with and only directly supports flakes
|
||||||
# you must also add it as a flake input.
|
|
||||||
obsidian-nvim.url = "github:epwalsh/obsidian.nvim";
|
|
||||||
|
|
||||||
# Required, nvf works best and only directly supports flakes
|
|
||||||
nvf = {
|
nvf = {
|
||||||
url = "github:NotAShelf/nvf";
|
url = "github:NotAShelf/nvf";
|
||||||
# You can override the input nixpkgs to follow your system's
|
# You can override the input nixpkgs to follow your system's
|
||||||
# instance of nixpkgs. This is safe to do as nvf does not depend
|
# instance of nixpkgs. This is safe to do as nvf does not depend
|
||||||
# on a binary cache.
|
# on a binary cache.
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
# Optionally, you can also override individual plugins
|
|
||||||
# for example:
|
|
||||||
inputs.obsidian-nvim.follows = "obsidian-nvim"; # <- this will use the obsidian-nvim from your inputs
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# ...
|
# ...
|
||||||
|
|
@ -44,8 +37,8 @@ Followed by importing the NixOS module somewhere in your configuration.
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
{
|
{
|
||||||
# assuming nvf is in your inputs and inputs is in the argset
|
# Assuming nvf is in your inputs and inputs is in the argument set.
|
||||||
# see example below
|
# See example below.
|
||||||
imports = [ inputs.nvf.nixosModules.default ];
|
imports = [ inputs.nvf.nixosModules.default ];
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
@ -79,7 +72,6 @@ configure **nvf**.
|
||||||
{
|
{
|
||||||
programs.nvf = {
|
programs.nvf = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
# Your settings need to go into the settings attribute set
|
# Your settings need to go into the settings attribute set
|
||||||
# most settings are documented in the appendix
|
# most settings are documented in the appendix
|
||||||
settings = {
|
settings = {
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,24 @@
|
||||||
`vimPlugins.nvim-treesitter`. Namely, it changes from the frozen `master`
|
`vimPlugins.nvim-treesitter`. Namely, it changes from the frozen `master`
|
||||||
branch to the new main branch. This change removes incremental selections, so
|
branch to the new main branch. This change removes incremental selections, so
|
||||||
it is no longer available.
|
it is no longer available.
|
||||||
|
- [obsidian.nvim] now uses a maintained fork which has removed the `dir`
|
||||||
|
setting. Use `workspaces` instead:
|
||||||
|
|
||||||
|
```nix
|
||||||
|
{
|
||||||
|
workspaces = [
|
||||||
|
{
|
||||||
|
name = "any-string";
|
||||||
|
path = "~/old/dir/path/value";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Some other settings and commands are now deprecated but are still supported.
|
||||||
|
|
||||||
|
- The `setupOpts.mappings` options were also removed. Use the built-in
|
||||||
|
Neovim settings (nvf's {option}`vim.keymaps`)
|
||||||
|
|
||||||
## Changelog {#sec-release-0-9-changelog}
|
## Changelog {#sec-release-0-9-changelog}
|
||||||
|
|
||||||
|
|
@ -40,3 +58,57 @@
|
||||||
[jtliang24](https://github.com/jtliang24):
|
[jtliang24](https://github.com/jtliang24):
|
||||||
|
|
||||||
- Updated nix language plugin to use pkgs.nixfmt instead of pkgs.nixfmt-rfc-style
|
- Updated nix language plugin to use pkgs.nixfmt instead of pkgs.nixfmt-rfc-style
|
||||||
|
|
||||||
|
[alfarel](https://github.com/alfarelcynthesis):
|
||||||
|
|
||||||
|
[obsidian.nvim]: https://github.com/obsidian-nvim/obsidian.nvim
|
||||||
|
[blink.cmp]: https://cmp.saghen.dev/
|
||||||
|
[snacks.nvim]: https://github.com/folke/snacks.nvim
|
||||||
|
[mini.nvim]: https://nvim-mini.org/mini.nvim/
|
||||||
|
[telescope.nvim]: https://github.com/nvim-telescope/telescope.nvim
|
||||||
|
[fzf-lua]: https://github.com/ibhagwan/fzf-lua
|
||||||
|
[render-markdown.nvim]: https://github.com/MeanderingProgrammer/render-markdown.nvim
|
||||||
|
[markview.nvim]: https://github.com/OXY2DEV/markview.nvim
|
||||||
|
[which-key.nvim]: https://github.com/folke/which-key.nvim
|
||||||
|
|
||||||
|
- Upgrade [obsidian.nvim] to use a maintained fork, instead of the unmaintained
|
||||||
|
upstream.
|
||||||
|
- Various upstream improvements:
|
||||||
|
- Support [blink.cmp] and completion plugin autodetection.
|
||||||
|
- Support various pickers for prompts, including [snacks.nvim]'s
|
||||||
|
`snacks.picker`, [mini.nvim]'s `mini.pick`, [telescope.nvim], and
|
||||||
|
[fzf-lua].
|
||||||
|
- Merge commands like `ObsidianBacklinks` into `Obisidian backlinks`. The
|
||||||
|
old format is still supported by default.
|
||||||
|
- Some `setupOpts` options have changed:
|
||||||
|
- `disable_frontmatter` -> `frontmatter.enabled` (and inverted), still
|
||||||
|
supported.
|
||||||
|
- `note_frontmatter_func` -> `frontmatter.func`, still supported.
|
||||||
|
- `statusline` module is now deprecated in favour of `footer`, still
|
||||||
|
supported.
|
||||||
|
- `dir` is no longer supported, use `workspaces`:
|
||||||
|
|
||||||
|
```nix
|
||||||
|
{
|
||||||
|
workspaces = [
|
||||||
|
{
|
||||||
|
name = "any-string";
|
||||||
|
path = "~/old/dir/path/value";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
- `use_advanced_uri` -> `open.use_advanced_uri`.
|
||||||
|
- Mappings are now expected to be set using the built-in Neovim APIs,
|
||||||
|
managed by `vim.keymaps` in nvf, instead of `mappings` options.
|
||||||
|
- Some option defaults have changed.
|
||||||
|
- And more.
|
||||||
|
- Automatically configure an enabled picker in the order mentioned above, if
|
||||||
|
any are enabled.
|
||||||
|
- Add integration with `snacks.image` for rendering workspace/vault assets.
|
||||||
|
- Detect if [render-markdown.nvim] or [markview.nvim] are enabled and disable
|
||||||
|
the `ui` module if so. It should work without this, but `render-markdown`'s
|
||||||
|
{command}`:healthcheck` doesn't know that.
|
||||||
|
- Remove [which-key.nvim] `<leader>o` `+Notes` description which did not
|
||||||
|
actually correspond to any keybinds.
|
||||||
|
|
|
||||||
|
|
@ -3,9 +3,9 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (lib.modules) mkIf;
|
inherit (lib.modules) mkIf mkMerge;
|
||||||
|
inherit (lib.generators) mkLuaInline;
|
||||||
inherit (lib.nvim.dag) entryAnywhere;
|
inherit (lib.nvim.dag) entryAnywhere;
|
||||||
inherit (lib.nvim.binds) pushDownDefault;
|
|
||||||
inherit (lib.nvim.lua) toLuaObject;
|
inherit (lib.nvim.lua) toLuaObject;
|
||||||
|
|
||||||
cfg = config.vim.notes.obsidian;
|
cfg = config.vim.notes.obsidian;
|
||||||
|
|
@ -18,13 +18,58 @@ in {
|
||||||
"tabular"
|
"tabular"
|
||||||
];
|
];
|
||||||
|
|
||||||
binds.whichKey.register = pushDownDefault {
|
|
||||||
"<leader>o" = "+Notes";
|
|
||||||
};
|
|
||||||
|
|
||||||
pluginRC.obsidian = entryAnywhere ''
|
pluginRC.obsidian = entryAnywhere ''
|
||||||
require("obsidian").setup(${toLuaObject cfg.setupOpts})
|
require("obsidian").setup(${toLuaObject cfg.setupOpts})
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
notes.obsidian.setupOpts = let
|
||||||
|
# may not be defined
|
||||||
|
snacks-picker.enable = config.vim.utility.snacks-nvim.setupOpts.picker.enabled or false;
|
||||||
|
mini-pick = config.vim.mini.pick;
|
||||||
|
inherit (config.vim) telescope fzf-lua;
|
||||||
|
|
||||||
|
inherit (config.vim.languages.markdown.extensions) render-markdown-nvim markview-nvim;
|
||||||
|
in
|
||||||
|
mkMerge [
|
||||||
|
# Don't set option unless we have a useful setting for it.
|
||||||
|
(mkIf (snacks-picker.enable || mini-pick.enable || telescope.enable || fzf-lua.enable) {
|
||||||
|
# It doesn't detect/choose this.
|
||||||
|
# Some pickers and completion plugins don't get detected correctly by the checkhealth, but they all work.
|
||||||
|
# Values taken from the [config's](https://github.com/obsidian-nvim/obsidian.nvim/blob/main/lua/obsidian/config/init.lua) valid ones.
|
||||||
|
picker.name =
|
||||||
|
if snacks-picker.enable
|
||||||
|
then "snacks.pick"
|
||||||
|
else if mini-pick.enable
|
||||||
|
then "mini.pick"
|
||||||
|
else if telescope.enable
|
||||||
|
then "telescope.nvim"
|
||||||
|
else if fzf-lua.enable
|
||||||
|
then "fzf-lua"
|
||||||
|
# NOTE: Shouldn't happen with the if-guard.
|
||||||
|
else null;
|
||||||
|
})
|
||||||
|
|
||||||
|
# Should be disabled automatically, but still shows up in render-markdown's checkhealth.
|
||||||
|
# This is also useful in that it will conflict with a user explicitly enabling it
|
||||||
|
# without mkForce, which is probably a copy paste issue and a sign to look at
|
||||||
|
# whether this option is useful.
|
||||||
|
(mkIf (render-markdown-nvim.enable || markview-nvim.enable) {ui.enable = false;})
|
||||||
|
];
|
||||||
|
|
||||||
|
# Resolve markdown image paths in the vault.
|
||||||
|
# Only actually used by snacks if image.enabled is set to true and
|
||||||
|
# required programs are supplied and `attachments.img_folder` is correct.
|
||||||
|
# From https://github.com/obsidian-nvim/obsidian.nvim/wiki/Images,
|
||||||
|
# which notes the API might change.
|
||||||
|
utility.snacks-nvim.setupOpts = mkIf config.vim.utility.snacks-nvim.enable {
|
||||||
|
image.resolve = mkLuaInline ''
|
||||||
|
function(path, src)
|
||||||
|
if require("obsidian.api").path_is_note(path) then
|
||||||
|
return require("obsidian.api").resolve_image_path(src)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,7 @@
|
||||||
{
|
{lib, ...}: let
|
||||||
config,
|
inherit (lib.options) mkEnableOption;
|
||||||
lib,
|
inherit (lib.modules) mkRenamedOptionModule mkRemovedOptionModule;
|
||||||
...
|
|
||||||
}: let
|
|
||||||
inherit (lib.options) mkEnableOption mkOption;
|
|
||||||
inherit (lib.types) bool str nullOr;
|
|
||||||
inherit (lib.modules) mkRenamedOptionModule;
|
|
||||||
inherit (lib.nvim.types) mkPluginSetupOption;
|
inherit (lib.nvim.types) mkPluginSetupOption;
|
||||||
|
|
||||||
autocompleteCfg = config.vim.autocomplete;
|
|
||||||
in {
|
in {
|
||||||
imports = let
|
imports = let
|
||||||
renamedSetupOption = oldPath: newPath:
|
renamedSetupOption = oldPath: newPath:
|
||||||
|
|
@ -16,38 +9,60 @@ in {
|
||||||
(["vim" "notes" "obsidian"] ++ oldPath)
|
(["vim" "notes" "obsidian"] ++ oldPath)
|
||||||
(["vim" "notes" "obsidian" "setupOpts"] ++ newPath);
|
(["vim" "notes" "obsidian" "setupOpts"] ++ newPath);
|
||||||
in [
|
in [
|
||||||
(renamedSetupOption ["dir"] ["dir"])
|
(
|
||||||
|
mkRemovedOptionModule ["vim" "notes" "obsidian" "dir"]
|
||||||
|
''
|
||||||
|
`obsidian.nvim` has migrated to the `setupOpts.workspaces` option to support multiple vaults with a single interface.
|
||||||
|
|
||||||
|
To continue using a single vault, set:
|
||||||
|
|
||||||
|
```nix
|
||||||
|
{
|
||||||
|
notes.obsidian.setupOpts.workspaces = [
|
||||||
|
{
|
||||||
|
name = "any-string";
|
||||||
|
path = "~/old/dir/path/value";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
See the [wiki](https://github.com/obsidian-nvim/obsidian.nvim/wiki/Workspace#vault-based-workspaces) for more information.
|
||||||
|
''
|
||||||
|
)
|
||||||
(renamedSetupOption ["daily-notes" "folder"] ["daily_notes" "folder"])
|
(renamedSetupOption ["daily-notes" "folder"] ["daily_notes" "folder"])
|
||||||
(renamedSetupOption ["daily-notes" "date-format"] ["daily_notes" "date_format"])
|
(renamedSetupOption ["daily-notes" "date-format"] ["daily_notes" "date_format"])
|
||||||
(renamedSetupOption ["completion"] ["completion"])
|
(renamedSetupOption ["completion"] ["completion"])
|
||||||
];
|
];
|
||||||
|
|
||||||
options.vim.notes = {
|
options.vim.notes = {
|
||||||
obsidian = {
|
obsidian = {
|
||||||
enable = mkEnableOption "complementary neovim plugins for Obsidian editor";
|
enable =
|
||||||
|
mkEnableOption ""
|
||||||
|
// {
|
||||||
|
description = ''
|
||||||
|
Whether to enable plugins to complement the Obsidian markdown editor [obsidian.nvim].
|
||||||
|
|
||||||
setupOpts = mkPluginSetupOption "Obsidian.nvim" {
|
Enables [vim-markdown] which automatically folds markdown headings inside and outside of workspaces/vaults.
|
||||||
daily_notes = {
|
Set {option}`vim.globals.vim_markdown_folding_disable = 1;` to disable automatic folding,
|
||||||
folder = mkOption {
|
or {option}`vim.globals.vim_markdown_folding_level = <heading-level-int>;` to set the default fold level for new buffers.
|
||||||
type = nullOr str;
|
|
||||||
default = null;
|
nvf will choose one of `snacks.picker`, `mini.pick`, `telescope`, or `fzf-lua` as the `obsidian.nvim` picker based on whether they are enabled, in that order.
|
||||||
description = "Directory in which daily notes should be created";
|
|
||||||
};
|
You can enable one of them with one of the following:
|
||||||
date_format = mkOption {
|
|
||||||
type = nullOr str;
|
- {option}`vim.utility.snacks-nvim.setupOpts.picker.enabled` and {option}`vim.utility.snacks-nvim.enable`
|
||||||
default = null;
|
- {option}`vim.mini.pick.enable`
|
||||||
description = "Date format used for creating daily notes";
|
- {option}`vim.telescope.enable`
|
||||||
};
|
- {option}`vim.fzf-lua.enable`
|
||||||
|
|
||||||
|
{option}`vim.notes.obsidian.setupOpts.ui.enable` is automatically disabled if `render-markdown.nvim` or `markview.nvim` are enabled.
|
||||||
|
|
||||||
|
[vim-markdown]: https://github.com/preservim/vim-markdown?tab=readme-ov-file#options
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
completion = {
|
setupOpts = mkPluginSetupOption "obsidian.nvim" {};
|
||||||
nvim_cmp = mkOption {
|
|
||||||
# If using nvim-cmp, otherwise set to false
|
|
||||||
type = bool;
|
|
||||||
description = "If using nvim-cmp, otherwise set to false";
|
|
||||||
default = autocompleteCfg.nvim-cmp.enable || autocompleteCfg.blink-cmp.enable;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -46,6 +46,21 @@
|
||||||
# Disable failing require check hook checks
|
# Disable failing require check hook checks
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
};
|
};
|
||||||
|
# Checkhealth fails to get the plugin's commit and therefore to
|
||||||
|
# show the rest of the useful diagnostics if not built like this.
|
||||||
|
obsidian-nvim = pkgs.vimUtils.buildVimPlugin {
|
||||||
|
# If set to `"obsidian-nvim"`, this breaks like `buildPlug` and `noBuildPlug`.
|
||||||
|
name = "obsidian.nvim";
|
||||||
|
src = getPin "obsidian-nvim";
|
||||||
|
nvimSkipModules = [
|
||||||
|
"minimal"
|
||||||
|
# require picker plugins
|
||||||
|
"obsidian.picker._telescope"
|
||||||
|
"obsidian.picker._snacks"
|
||||||
|
"obsidian.picker._fzf"
|
||||||
|
"obsidian.picker._mini"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
# Get plugins built from source from self.packages
|
# Get plugins built from source from self.packages
|
||||||
# If adding a new plugin to be built from source, it must also be inherited
|
# If adding a new plugin to be built from source, it must also be inherited
|
||||||
|
|
|
||||||
|
|
@ -2108,17 +2108,20 @@
|
||||||
"hash": "1qbyh8r2gbaw2n0mm7qwi4y8r9ywyz37q35vlxjzy879ba8dlnlm"
|
"hash": "1qbyh8r2gbaw2n0mm7qwi4y8r9ywyz37q35vlxjzy879ba8dlnlm"
|
||||||
},
|
},
|
||||||
"obsidian-nvim": {
|
"obsidian-nvim": {
|
||||||
"type": "Git",
|
"type": "GitRelease",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "GitHub",
|
"type": "GitHub",
|
||||||
"owner": "epwalsh",
|
"owner": "obsidian-nvim",
|
||||||
"repo": "obsidian.nvim"
|
"repo": "obsidian.nvim"
|
||||||
},
|
},
|
||||||
"branch": "main",
|
"pre_releases": false,
|
||||||
|
"version_upper_bound": null,
|
||||||
|
"release_prefix": null,
|
||||||
"submodules": false,
|
"submodules": false,
|
||||||
"revision": "14e0427bef6c55da0d63f9a313fd9941be3a2479",
|
"version": "v3.15.3",
|
||||||
"url": "https://github.com/epwalsh/obsidian.nvim/archive/14e0427bef6c55da0d63f9a313fd9941be3a2479.tar.gz",
|
"revision": "3121b4b52a167949c4126254272346d363cc92b6",
|
||||||
"hash": "15ycmhn48ryaqzch6w3w6llq2qgmjx8xwkb9dn0075z60dybpflr"
|
"url": "https://api.github.com/repos/obsidian-nvim/obsidian.nvim/tarball/v3.15.3",
|
||||||
|
"hash": "0m6lwqb2y19xrs11hj818ja36z5ql34xk81x393b20jwnd0bar5l"
|
||||||
},
|
},
|
||||||
"oil-git-status.nvim": {
|
"oil-git-status.nvim": {
|
||||||
"type": "Git",
|
"type": "Git",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue