felko / neuron-mode

An emacs mode for editing Zettelkasten notes with neuron
GNU General Public License v3.0
118 stars 21 forks source link

Updates for latest (unreleased) Neuron version #77

Open LightAndLight opened 3 years ago

LightAndLight commented 3 years ago

I've been working on updating neuron-mode to play nicely with the latest version of neuron.

The branch is here: https://github.com/LightAndLight/neuron-mode/tree/1.9.33.0

You can see a rough "changelog" here: https://github.com/LightAndLight/neuron-mode/pulls?q=is%3Apr+label%3A1.9.33.0

Features include:

More work to come.

I'd like to start a discussion on how to upstream this stuff when I'm done. I think it makes sense to keep master working with the 'official' latest neuron release (whatever that is). We can probably put all my changes into a different branch (1.9? 2.0? not really sure what's going to happen with neuron versions/releases).

felko commented 3 years ago

Sorry for the late reply, I have finally been able to catch up with neuron's latest features and test your branch, everything seems to work well even with my old zettelkasten that uses old style links, though there are still some things to fix to make it fully compatible with 1.9.33 (I'm thinking about #75 mainly). As for how to upstream, I was thinking that since neuron is being developed on neuron/master, we could upstream your work on neuron-mode/master too, so that both repos are somehow aligned with the branches they use. However, I thought MELPA took the latest release only but it looks like it tracks master instead, which could cause potential issues especially for people who don't use any kind of declarative install for emacs packages like straight.el. Thanks for contributing, let me know if you still want to include more in your PR or if I can merge, as soon as we figure out what branch we should use.

LightAndLight commented 2 years ago

Sorry, I really dropped the ball on this! I've haven't had much mental energy for open source work recently.

If MELPA pulls from master (here? https://github.com/melpa/melpa/blob/master/recipes/neuron-mode) then let's keep it as the release branch, and not merge this stuff until we're happy with how it will affect MELPA users.

What if we checked the installed neuron version, and provide an error message if the user has an old version installed?

felko commented 2 years ago

Sorry, I really dropped the ball on this! I've haven't had much mental energy for open source work recently.

No worries, I have to say I don't maintain very actively neuron-mode since I don't use neuron anymore (except for reviewing my old notes) and that srid is working on a new project (emanote) that will ultimately replace neuron.

If MELPA pulls from master (here? https://github.com/melpa/melpa/blob/master/recipes/neuron-mode) then let's keep it as the release branch, and not merge this stuff until we're happy with how it will affect MELPA users.

Yeah, otherwise we could PR the melpa repo to fetch the latest release. Though I don't know if there is a way to do that unless we make a melpa PR every time a new version is released. Another option would be to introduce a release branch or a dev branch.

What if we checked the installed neuron version, and provide an error message if the user has an old version installed?

That would be the best solution regarding code maintainability but another option woud be adapt the code to work with both versions, which would let the user not worry about which neuron-mode version to install.

LightAndLight commented 2 years ago

I have to say I don't maintain very actively neuron-mode since I don't use neuron anymore (except for reviewing my old notes) and that srid is working on a new project (emanote) that will ultimately replace neuron.

I essentually use neuron & neuron-mode to provide an emacs-based Zettelkasten. I plan on using it that way for the forseeable future. I'm not sure if emanote will meet my needs in that regard.

So, if you later decide that you don't want to maintain this project then I'm happy to help.

Another option would be to introduce a release branch or a dev branch.

Creating a dev branch for work and keeping master for MELPA releases sounds good to me. What do you think?

another option woud be adapt the code to work with both versions

My instinct is to initially avoid doing this (for simplicity), and try to measure/get feedback from users about whether such a feature is important.

srid commented 2 years ago

I'm not sure if emanote will meet my needs in that regard.

The main design change emanote made is to move from idiosyncratic syntax to adhoc standards as much as possible. So neuron's z:zettels URI got replaced by Obsidian style code block based queries. Otherwise, I've had pretty good experience with markdown-mode using:

(setq markdown-enable-wiki-links t)
(setq markdown-link-space-sub-char " ")
(setq markdown-wiki-link-search-type '(project))

https://github.com/srid/emanote/pull/174 should provide 'structure data' of Zettelkasten to editors, LSP servers and such, so as to provide Obsidian/emanote-specific features on top of markdown-mode. It would be analogous to neuron query.

LightAndLight commented 2 years ago

Thanks Sridhar. It seems like emanote will be an option for me moving forward then. I might look into automigrating my neuron zettelkasten.

On Wed, 13 Oct 2021, 7:43 am Sridhar Ratnakumar, @.***> wrote:

I'm not sure if emanote will meet my needs in that regard.

The main design change emanote made is to move from idiosyncratic syntax to adhoc standards as much as possible. So neuron's z:zettels URI got replaced by Obsidian style code block based queries. Otherwise, I've had pretty good experience with markdown-mode using:

(setq markdown-enable-wiki-links t) (setq markdown-link-space-sub-char " ") (setq markdown-wiki-link-search-type '(project))

srid/emanote#174 https://github.com/srid/emanote/pull/174 should provide 'structure data' of Zettelkasten to editors, LSP servers and such, so as to provide Obsidian/emanote-specific features on top of markdown-mode. It would be analogous to neuron query.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/felko/neuron-mode/issues/77#issuecomment-941616269, or unsubscribe https://github.com/notifications/unsubscribe-auth/AATLFOKCZYT2N7M2MLQ4FG3UGSTWHANCNFSM47Y4PKMQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.