Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Contribute visual examples of VimTeX's motions and text-editing mappings #2362

Closed
wants to merge 18 commits into from
Closed

Conversation

ejmastnak
Copy link
Contributor

This PR is motivated by #1946 and adds GIFs demonstrating most of VimTeX's motions and delete/change/toggle key mappings, i.e. most of mappings in :help vimtex-mappings.

Summary of changes:

  • Created a dedicated VISUALS.md file (currently in the project root; could also be moved to doc/) holding the aforementioned GIFs and concise accompanying descriptions.
  • Changed the "Screenshots" section of README.md to "Screenshots and GIFs" (TOC updated accordingly) and linked to VISUALS.md from the new "Screenshots and GIFs" section of the README.
  • Added link in the "Quick Start" section of README.md to my third-party
    article Getting started with the VimTeX plugin, as per our email exchange, @lervag.
  • Unrelated, but minor update to README.md changing "All features are enabled by default" to "Most features are enabled by default" and noting the disabled folding and formatting features (see c8e441a).

Notes:

  • The GIFs in VISUALS.md are currently stored in github.com/ejmastnak/vimtex-media---we will probably want to move these to github.com/lervag/vimtex-media, but please first see the comments at the end of 2c57a48.

  • @lervag, we had discussed adding a section on third-party guides to the main README.
    I looked into content I could find online, but didn't find anything particularly captivating (mostly outdated summaries of setting up inverse search before the days of VimtexInverseSearch or nice but not terribly comprehensive summaries of standard commands/mappings which I'm not sure add much beyond what the main docs already offer).
    Although you have endorsed it, personally adding only my own series to a third-party section feels too much like self-promotion, so I defer to you on this one.

Elijan Mastnak added 10 commits March 29, 2022 16:55
Changes
- Link the series's "Getting started with the VimTeX plugin" article in
  the Quick Start.
- Inconsequential rewording of introduction to DustyTopology's video,
  just to make things a little more concise (I think without losing
  information).
@lervag---based on email exchange, folding and formatting are disabled
by default. I have updated the README accordingly.
Reasoning: It feels sensible to have a dedicated file for GIFs (and
perhaps other media content pending future contributions) instead of
flooding the main README with images and videos.
This is currently a very bare-bones file, listing all the GIFs I have
available in the order the corresponding VimTeX features appear in
`:help vimtex-features`. Since the order in both files matches up, I'm
currently imagining a new user might simultaneously scroll through this
file while reading `:help vimtex-features` and thus get a better image
than either file along could provide.

Note: I see that `github.com/lervag/vimtex-media` already exists. I have
temporarily created my own `github.com/ejmastnak/vimtex-media`, since I
see the content of `github.com/lervag/vimtex-media` is MIT-licensed, and
I had already released the GIFs I made under a CC-BY-NC-SA (sigh).
I imagine we can work this out easily (I'm not one for splitting hairs
over licenses), but I did want to wait for input before making a
committal decision of my own.

I do feel that a CC license would be more appropriate for media (MIT is
for code, no?), but that might(?) require `@DustyTopology`'s consent,
and I think his GitHub account is deleted. Eh, we'll figure something
out.
Two changes
- Updated section name from "Screenshots" to "Screenshots and GIFs" and
  updated TOC accordingly.
- The aforementioned link to VISUALS.md from the "Screenshots and GIFs"
  sections of the README.
Had left a commented-out TODO, but on second thought it's clearly not
the best idea to pollute the main README with commented-out
notes-to-self.
@ejmastnak
Copy link
Contributor Author

I'm realizing I was a bit noisy with the large number of commits here and we will probably want to rebase this, but I leave that to the discretion of the higher authorities.

README.md Show resolved Hide resolved
README.md Show resolved Hide resolved
@@ -0,0 +1,183 @@
# VimTeX Visualized
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is excellent! I like the title :)

One thing, though: I don't feel quite "up to the task" of maintaining this particular file. In case there are changes or new features that someone wants "visualized", then I would need community help to update. Perhaps that should be clarified here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed. If you have an idea about phrasing this disclaimer/notice-to-the-community, please go ahead. I am also happy to take responsibility for helping maintain this file, just not sure how that would work in practice.

@lervag
Copy link
Owner

lervag commented Mar 31, 2022

This PR is motivated by #1946 and adds GIFs demonstrating most of VimTeX's motions and delete/change/toggle key mappings, i.e. most of mappings in :help vimtex-mappings.

Summary of changes: …

Thanks! I believe this is a very good improvement of the informal documentation! I've added a few comments to the files, nothing big.

Apart from that, I hope you don't mind if I adjust the wording after merging. In particular, I want to update the quick start part to make it more "logically" structured. But I think it is better that I do it afterwards, then you could read it and comment (if desired).

Very good! I would also recommend that you publish the article (or series) elsewhere. Your content is good and deserves an audience!

  • Unrelated, but minor update to README.md changing "All features are enabled by default" to "Most features are enabled by default" and noting the disabled folding and formatting features (see c8e441a).

Thanks for noticing and fixing that!

Ah, yes. Licensing. To be honest, I don't care so much about the licensing. That is, in the sense that I don't mind what anyone does with whatever I share. That's why I've used the MIT license.

However, I respect other peoples concern for licensing, and I don't want to force the MIT license here. The point here is to conserve the rights of the third-party content creators. I would therefore not mind changing to the stricter CC-BY-NC-SA for vimtex-media. I believe we can just do this, but I'm not a lawyer and I don't know these things well. Do we need to contact @DustyTopology for his permission first?

  • @lervag, we had discussed adding a section on third-party guides to the main README.
    I looked into content I could find online, but didn't find anything particularly captivating (mostly outdated summaries of setting up inverse search before the days of VimtexInverseSearch or nice but not terribly comprehensive summaries of standard commands/mappings which I'm not sure add much beyond what the main docs already offer).
    Although you have endorsed it, personally adding only my own series to a third-party section feels too much like self-promotion, so I defer to you on this one.

Yes, I can see this is tricky. And I agree that there are not really that much content available that is suitable for a link here. So I think it is perfectly fine that we now only add the link to your guide.

I'm realizing I was a bit noisy with the large number of commits here and we will probably want to rebase this, but I leave that to the discretion of the higher authorities.

No worries. I don't really mind the number of commits. But you can of course feel free to clean up before merge if you want to.

@ejmastnak
Copy link
Contributor Author

Apart from that, I hope you don't mind if I adjust the wording after merging. In particular, I want to update the quick start part to make it more "logically" structured. But I think it is better that I do it afterwards, then you could read it and comment (if desired).

Please go ahead, I have no reservations about this.

Yes, I can see this is tricky. And I agree that there are not really that much content available that is suitable for a link here. So I think it is perfectly fine that we now only add the link to your guide.

Sounds good. I'll add a short introduction of my series to the README as you suggested in our email exchange, and then you can reword it or rearrange its position if needed, similar to how you will tweak the Quick Start section.

However, I respect other peoples concern for licensing, and I don't want to force the MIT license here. The point here is to conserve the rights of the third-party content creators. I would therefore not mind changing to the stricter CC-BY-NC-SA for vimtex-media. I believe we can just do this, but I'm not a lawyer and I don't know these things well.

If you are willing to change vimtex-media to a CC license that would be great---I do feel a CC would be more appropriate for media. I decided to change ejmastnak/vimtex-media to the (slightly) more permissive BY-NC, which at least permits sub-licensing remixed works, and in fact wouldn't mind lowering this further to the very permissive CC-BY, which is roughly a CC equivalent of MIT (allowing essentially arbitrary use as long as copyright/attribution is given). I lean towards non-commercial since I support free sharing of content, but I recognize forcing this on a few GIFs may just be idealism. Let me know if you would prefer CC-BY. I don't mind too much one way or the other here, my only preference could be a CC license for non-software content.

Do we need to contact @DustyTopology for his permission first?

@DustyTopology's GitHub account seems to be deleted, so I don't know if it is possible to contact him. I imagine switching from MIT to CC-BY should be fine. If we instead stick with BY-NC, which revokes MIT's commercial use clause, one possible solution is to use two directories, one with each license (although this is less clean and risks future clutter).

ejmastnak and others added 7 commits March 31, 2022 14:23
[@lervag](https://github.com/lervag), please feel free to update this at
your discretion. The main point I wanted to make is that I am happy to
commit to maintaining this page and am the person to contact in the
event of mistakes/changes.
Consider this the first draft of a section for third-party VimTeX guides
on the larger Web. As we discussed earlier, [@lervag](https://github.com/lervag), I have (1) referenced and briefly described my series and (2) invited the VimTeX community to contribute other (good-quality) third-party content.

As in commit 58e704a, feel free to edit this section as you see fit.
@ejmastnak
Copy link
Contributor Author

ejmastnak commented Mar 31, 2022

I have pushed a few more commits that should resolve the following:

[On maintaining VISUALS.md]

One thing, though: I don't feel quite "up to the task" of maintaining this particular file. In case there are changes or new features that someone wants "visualized", then I would need community help to update. Perhaps that should be clarified here?

Addressed in 58e704a

[On third-party guides]

Yes, I can see this is tricky. And I agree that there are not really that much content available that is suitable for a link here. So I think it is perfectly fine that we now only add the link to your guide.

Addressed in 6429f84

In both cases, consider the commits a first draft, just to put ideas on the table, and feel free to edit as you see fit.

@lervag
Copy link
Owner

lervag commented Apr 1, 2022

Yes, I can see this is tricky. And I agree that there are not really that much content available that is suitable for a link here. So I think it is perfectly fine that we now only add the link to your guide.

Sounds good. I'll add a short introduction of my series to the README as you suggested in our email exchange, and then you can reword it or rearrange its position if needed, similar to how you will tweak the Quick Start section.

Great!

However, I respect other peoples concern for licensing, and I don't want to force the MIT license here. The point here is to conserve the rights of the third-party content creators. I would therefore not mind changing to the stricter CC-BY-NC-SA for vimtex-media. I believe we can just do this, but I'm not a lawyer and I don't know these things well.

If you are willing to change vimtex-media to a CC license that would be great---I do feel a CC would be more appropriate for media. I decided to change ejmastnak/vimtex-media to the (slightly) more permissive BY-NC, which at least permits sub-licensing remixed works, and in fact wouldn't mind lowering this further to the very permissive CC-BY, which is roughly a CC equivalent of MIT (allowing essentially arbitrary use as long as copyright/attribution is given). I lean towards non-commercial since I support free sharing of content, but I recognize forcing this on a few GIFs may just be idealism. Let me know if you would prefer CC-BY. I don't mind too much one way or the other here, my only preference could be a CC license for non-software content.

Yes, agreed. Let's move to CC BY-NC. If anyone has commercial interests, they could always contact owners directly.

Do we need to contact @DustyTopology for his permission first?

@DustyTopology's GitHub account seems to be deleted, so I don't know if it is possible to contact him. I imagine switching from MIT to CC-BY should be fine. If we instead stick with BY-NC, which revokes MIT's commercial use clause, one possible solution is to use two directories, one with each license (although this is less clean and risks future clutter).

You're right, his account is deleted, and I do not have any of his contact details. The repository is mine, this discussion is public, so I believe there should be no problem in just changing the license. I propose that you make the change of license a part of your future PR to vimtex-media?


Regarding your recent updates: It looks good. I'll merge when I have the time and then make some adjustments. These will most likely all be minor.

One minor comment, though: I really don't like when a branch pulls in master in a merge. Instead, I much prefer to have branches rebased on top of master before I merge. That way, it is much easier to inspect the changes brought by any given branch.

I can manually fix this myself when I merge, unless you want to fix it yourself. If so, you would have to do a git push --force after you fix. Some people find it complicated to work with rebasing and such, so I don't mind doing this myself.

@ejmastnak
Copy link
Contributor Author

One minor comment, though: I really don't like when a branch pulls in master in a merge. Instead, I much prefer to have branches rebased on top of master before I merge. That way, it is much easier to inspect the changes brought by any given branch.

Ah, beginner mistake, apologies. Thank you for pointing this out, this is actually my first contribution to an open source project, and I will know for next time.

I can manually fix this myself when I merge, unless you want to fix it yourself. If so, you would have to do a git push --force after you fix. Some people find it complicated to work with rebasing and such, so I don't mind doing this myself.

Given my current lack of experience, I think it best that you fix this yourself this time. In the meantime, I will read up on rebasing. I imagine the Git Book would be the standard place to start, but if you know of good references for this workflow I will definitely read through them!

@ejmastnak
Copy link
Contributor Author

Two updates:

  • Opened PR #2 in lervag/vimtex-media to move GIF files from ejmastnak/vimtex-media to lervag/vimtex-media
  • Perhaps prematurely, perhaps conveniently, went ahead and updated the GIF source URLs in VimTeX's new VISUALS.md file to point to their new, soon-to-be home in lervag/vimtex-media. (So the GIFs in VISUALS.md will be temporarily invisible until PR #2 is merged into lervag/vimtex-media.

@lervag
Copy link
Owner

lervag commented Apr 6, 2022

Sorry for the late reply. Started a new job this week and have slightly too much on my mind. :p

Ah, beginner mistake, apologies. Thank you for pointing this out, this is actually my first contribution to an open source project, and I will know for next time.

No problem! Some people don't mind this at all, I may be somewhat strict in this regard. I don't know. But I guess it's one of the benefits of being the main developer of something :)

Given my current lack of experience, I think it best that you fix this yourself this time. In the meantime, I will read up on rebasing. I imagine the Git Book would be the standard place to start, but if you know of good references for this workflow I will definitely read through them!

Sounds good! Here are some good Git references that may be useful/of help. Note that there may possibly be better guides available today that I'm not aware of. However, I believe they should still be relevant and good.

  • Opened PR #2 in lervag/vimtex-media to move GIF files from ejmastnak/vimtex-media to lervag/vimtex-media

Great, thanks!

  • Perhaps prematurely, perhaps conveniently, went ahead and updated the GIF source URLs in VimTeX's new VISUALS.md file to point to their new, soon-to-be home in lervag/vimtex-media. (So the GIFs in VISUALS.md will be temporarily invisible until PR #2 is merged into lervag/vimtex-media.

Sounds good! We'll merge vimtex-media first.

@lervag
Copy link
Owner

lervag commented Apr 6, 2022

So, to summarize my actions here:

  • Review and merge PR2 in vimtex-media
  • Update license of vimtex-media
  • Rebase then merge this PR afterwards

Please let me know if it seems I missed something!

@ejmastnak
Copy link
Contributor Author

Sorry for the late reply. Started a new job this week and have slightly too much on my mind. :p

No problem at all, good luck with the transition!

Sounds good! Here are some good Git references that may be useful/of help. Note that there may possibly be better guides available today that I'm not aware of. However, I believe they should still be relevant and good.

Thank you! I appreciate the effort you made to put together a thorough list of references.

@ejmastnak
Copy link
Contributor Author

So, to summarize my actions here:

* [x]  Review and merge PR2 in vimtex-media

* [x]  Update license of vimtex-media

* [ ]  Rebase then merge this PR afterwards

Please let me know if it seems I missed something!

I took another look through vimtex-media and my fork of vimtex, and everything looks good. Please go ahead!

lervag added a commit that referenced this pull request Apr 7, 2022
@lervag
Copy link
Owner

lervag commented Apr 7, 2022

Ok, I've done the merge. I did these steps, in case you're curious:

# Check out the PR (use Github CLI)
gh pr checkout 2362

# Check out the PR branch and make a temporary branch while rebasing, in case
# I should do something wrong.
git checkout ejmastnak/master
git checkout -b fixup

# The problematic commits were 3a3ce56d and a977f6b4; we want to rebase the
# commits after a977 onto the commit before the merge, i.e. 58e704a7. We do it
# like this:
git rebase --onto 58e704a7 a977f6b4 fixup

# Now we have a clean branch that does not entangle with master. Before merge,
# we rebase onto master.
git rebase master

# Finalize merge
git checkout master
git merge --no-ff fixup

The final commit graph thus looks like this:

*   [55181fed] merge: new visual examples (HEAD -> master, origin/master, origin/HEAD)
|\
| * [453da787] Update GIF URLs to point to lervag/vimtex-media
| * [00622c94] Fix: update TOC with new README section
| * [31e9c89e] Add tentative section for third-party guides
| * [78c2bcbc] Add link to VISUALS.md in Features section
| * [e1a903b4] Fix a small typo
| * [d21912c4] Add tentative "community-maintained" disclaimer
| * [16ef14eb] Remove TODO from README.md
| * [3c1a67ad] Add link to original GIF source and reformat
| * [80122ba7] Add link to VISUALS.md from README
| * [75fdde46] Make a few misc. stylistic tweaks
| * [a243929c] Clarify what happens in text object GIF
| * [181fd8bf] Add concise descriptions of each mapping
| * [71397bc4] Fix mis-typed links
| * [9f83f99e] Create a skeleton VISUALS.md file for GIFs, etc...
| * [2d36b67e] Tweak statement about all features being enabled
| * [57910200] Link @ejmastnak's article in Quick Start
|/
*   [8719b883] merge: fix regression on callback detection
|\
| * [b32c4704] fix: use strict match to check callback type
|/
*   [3c14f691] merge: add docs on how to add closing brace for f7

@lervag lervag closed this Apr 7, 2022
@lervag
Copy link
Owner

lervag commented Apr 7, 2022

Sorry for the late reply. Started a new job this week and have slightly too much on my mind. :p

No problem at all, good luck with the transition!

Thanks! :)

Sounds good! Here are some good Git references that may be useful/of help. Note that there may possibly be better guides available today that I'm not aware of. However, I believe they should still be relevant and good.

Thank you! I appreciate the effort you made to put together a thorough list of references.

No problem. Glad to help!

And finally, thanks for the very useful contribution to the project!

@lervag
Copy link
Owner

lervag commented Apr 7, 2022

FYI: I made a few minor adjustments to the text. The most noticable was to move your new paragraph under quick start below the video. The reasoning was that I feel it makes more sense to promote the video since it is more "quick", whereas your article does take some more time for anyone to read and study. So, we now first show a short video intro, then encourage your excellent guide, then finally stresses that people should read the docs.

Let me know if you think any of my changes are regressions!

Edit: My changes are introduced in this commit: 882641b

@ejmastnak
Copy link
Contributor Author

Ok, I've done the merge. I did these steps, in case you're curious:
The final commit graph thus looks like this:

Thanks for sharing this! Doesn't look too difficult at all---I'll be ready to do it myself next time if need be.

FYI: I made a few minor adjustments to the text. The most noticable was to move your new paragraph under quick start below the video. The reasoning was that I feel it makes more sense to promote the video since it is more "quick", whereas your article does take some more time for anyone to read and study. So, we now first show a short video intro, then encourage your excellent guide, then finally stresses that people should read the docs.

Yes, the progression from the "quick" video to the somewhat longer guide to the official docs, which are the most comprehensive, makes perfect sense to me. So I fully agree with all changes in 882641b.

And finally, thanks for the very useful contribution to the project!

You're very welcome, I'm glad it could help. Thank you for the excellent plugin!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants