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

Call for Volunteers: Documentation updates #2989

Closed
ferdnyc opened this issue Sep 10, 2019 · 79 comments
Closed

Call for Volunteers: Documentation updates #2989

ferdnyc opened this issue Sep 10, 2019 · 79 comments
Labels
docs Bad or missing help texts / documentation help wanted This issue needs additional developer support, or specialized skills to help debug or troubleshoot. 🔥 hot An issue which affects multiple users, and needs to be fixed immediately stale This issue has not had any activity in 60 days :(

Comments

@ferdnyc
Copy link
Contributor

ferdnyc commented Sep 10, 2019

For the next release of OpenShot (whichever and whenever that should be), one of the still-unaddressed needs is documentation.

The manual was mostly written in 2017, with only very minor updates since then. (The last new documentation written was the EDL / XML import and export docs, added on 2019-05-25 by @jonoomph in commit b1422e1.)

Documentation needs (working list)

  • Significant portions of OpenShot have changed greatly since 2017, including the Preferences (which are virtually unrecognizable from two years ago, in some of the tabs).
  • New features have been added, including hardware encoding (for both export and animated titles) that could do with at least a cursory treatment in the manual.
  • Even some features that aren't new could still do with expanded documentation:
    • Export options
    • Keyframe animation generally (which is really crying out for an illustrated step-by-step tutorial)
    • Effects
    • Transitions.

Volunteers welcome!

Any volunteers who'd be interested in helping to improve the manual, both directly (writing documentation) and indirectly (soliciting, organizing, and copyediting contributions from developers) would be greatly appreciated.

Writing and editing OpenShot documentation

The source files for the manual are all found in the project repository (the doc/ directory), the preferred method for submitting edits would be via GitHub Pull Request but we can make accommodations for anyone who'd like to contribute but isn't familiar with version-control systems like Git.

Generating a local copy of the manual requires only the Python-based Sphinx documentation system and the Sphinx RTD theme, which can be installed via pip3 install sphinx sphinx-rtd-theme or using most package managers. I can provide support to anyone who'd like to contribute and needs help with installing and using Sphinx.

@ferdnyc ferdnyc added help wanted This issue needs additional developer support, or specialized skills to help debug or troubleshoot. 🔥 hot An issue which affects multiple users, and needs to be fixed immediately docs Bad or missing help texts / documentation labels Sep 10, 2019
@ferdnyc ferdnyc added this to To do in Documentation updates via automation Sep 10, 2019
@ferdnyc ferdnyc pinned this issue Sep 10, 2019
@MBB232
Copy link

MBB232 commented Apr 21, 2020

I am not a programmer, but I saw your call and I thought I'd help out by updating a few screenshots and see how far I get. I've seen enough tutorials and ran into a few issues the last weeks, so I thought I knew a few places of the manual that could use some improvement.

Sure, it's been a while since I last played with HTML 4, but how hard could it be? That was a few hour ago. Turns out that Sphinx you suggest is apparently not a WYSIWYG editor but a scripting tool for .rst files, which uses it's own markup syntax. (On the upside, no issues with font types/size. )

And this github is apparently not as click-and upload as the bugtracker, but uses text commandos for every action. (However I have not yet found the command line in the web interface).
It has been educational, but demotivating.

Tutorials that have helped so far:

What I have not found are the standards for the manual.
Most pictures are .jpg, are (animated) gif ok too? What compression level/file size do you want?
You use green arrows and black numbers in circles to point things out. Do you have color numbers for them?
Most screenshots seem to be 4:3, are 16:9 screenshots ok too?
Are there other requirements to keep in mind?

There are a lot of explanations and solutions available on the reddit help and here in the github tracker. Can any be re-used without asking or will everything have to be re-done? (Do you have a a license to everything uploading here, which of the users belong to the project and will agree to re-use of their screenshots and help?)

@ferdnyc
Copy link
Contributor Author

ferdnyc commented Apr 22, 2020

I am not a programmer, but I saw your call and I thought I'd help out by updating a few screenshots and see how far I get.

That sounds like a great idea, @MBB232 — thanks! I'll try to help however I can.

Sure, it's been a while since I last played with HTML 4, but how hard could it be? That was a few hour ago. Turns out that Sphinx you suggest is apparently not a WYSIWYG editor but a scripting tool for .rst files, which uses it's own markup syntax. (On the upside, no issues with font types/size. )

Yeah, Sphinx (actually, ReST in general) was started as a tool for Python code, allowing documentation to be embedded directly into source code, then extracted and formatted for more comfortable reading. And like any tool built by programmers for their own use, it's incredibly flexible, though most of that flexibility requires delving into the code.

I'm actually not aware of any WYSIWYG for reST files, which kind of makes sense given the origins. Since the documentation can be extracted from source code, the best way to write it is in source form. Plus, WYSIWYG to some extent implies a particular layout, whereas docs can be generated from reST using a variety of styles and formats, so the same docs will look very different depending how it's processed. More common with reST are text editors with a preview pane feature, where you edit the source and see a rendered version generated alongside it, usually updated live with a short delay. Those often require the installation of additional software to process the source, though.

As you said, though, working in source code form actually frees you up from having to deal with formatting. In fact when writing reST docs it's best to ignore layout or formatting concerns. Formatting isn't decided until the docs are processed, and theoretically it can change at any time. We could end up deciding to switch to a different template for the HTML docs, or to start generating them other formats that don't use HTML at all. The focus with reST is on the content, not the presentation, and the content is definitely the most important thing.

And this github is apparently not as click-and upload as the bugtracker, but uses text commandos for every action. (However I have not yet found the command line in the web interface).
It has been educational, but demotivating.

Ouch, well sorry to hear that! There's a pretty steep learning curve with Git, it's true.

As a collaborative version control system, Github isn't a simple click-to-upload file repository. You've no doubt gotten the basic rundown in those resources you mentioned, but if it all still sounds confusing, don't worry: It definitely is. Even those of us who've been using Git for years still occasionally get thrown by some aspect of how it works. I'd be worried if someone didn't find it confusing in the beginning.1

But like I said in the intro, you can worry about as much or as little of that as you're comfortable with. And as I said earlier, the content is the important thing. If you prefer not to deal with all of that and just want to upload images or provide new content in comments on this issue, that'd work for me. I can submit PRs with your changes and mark you as the author. (Git is designed to facilitate giving proper credit in pretty much any situation.)

Crap, this is already getting really long, so I'll stop here and respond to the specific items you raised in a separate comment.

Notes

  1. If you do want to delve into Git, it doesn't have to be a command-line-only experience by any means. There are a multitude of GUI tools built for managing local clones of Github repos, including (for Windows and Mac users) Github's own Github Desktop app. Github Desktop isn't an editor, it's purely a file manager that understands git repo structure and can communicate with remote repositories to synchronize changes. Many advanced text editors also have Git tools either built in or available as plugins, so that changes can be committed and pushed without leaving the editor.

    It's also possible to edit files directly in the Github web interface, and as you discovered there's no command line there, but that just shows that you don't absolutely need to get your hands that dirty. To edit a file via the web interface, you can just click the pencil icon in its upper-right corner (take docs/getting_started.rst for example). When you started editing, Github would see that you don't have permissions to make changes directly to files here, so it would set you up with a copy ("fork") under your account, where you can make changes before submitting them as a Pull Request.

    Editing on the web is perfectly workable, the only downside being that there's no real way to preview your changes. With a local clone you can use a previewing editor or (if you have the necessary Sphinx tools installed) generate updated HTML docs and view them in a web browser.

@ferdnyc
Copy link
Contributor Author

ferdnyc commented Apr 22, 2020

Addressing some specific points:

What I have not found are the standards for the manual.

To the extent any exist, they're mostly implicit rather than explicit. The existing docs are the best guide to how the content should be produced. Beyond that, I'd say it's up to you. It'd be great if you wanted to formalize and document whatever standards you do apply, though, so others can follow your guidelines for future updates.

Most pictures are .jpg, are (animated) gif ok too? What compression level/file size do you want?

The current images notwithstanding, PNG would actually be the preferred format for screenshots, as it's not subject to compression artifacts the way JPG is. JPG is fine too, though, if the quality is high enough (I'd say 90% or better) — clarity is the priority, not file size.

I had to think about the animated GIF thing a bit. It's not out of the question, if used sparingly. But there are some issues with animated gifs, when it comes to documentation:

  1. The quality and/or file size ratio, which tends to be abysmal (and multi-megabyte GIFs can take forever to download and start animating)
  2. The animated component is only visible when the docs are viewed in web form

Since the manual should ideally be useful in print form as well, any animated elements should enhance the information presented in the static content, rather than replace it. Whatever happens in the animation should also be described in full detail in the accompanying text.

In fact, for supplementing the text content with more dynamic elements, rather than animated gifs we may just want to go straight to video. Embedded videos are not only clearer and higher quality, but they're click-to-play which avoids forcing a large initial download on the user.

After I saw your post, I went and put together a quick Sphinx extension so that we can embed YouTube videos into the documentation. It's in my PR #3394. Basically you just provide the ID or URL of the video, and it'll be embedded at that point in the docs.

Same concerns apply regarding viewability in print or other forms, of course. But certainly for something like a tutorial chapter, embedding an example of the final result would be a great use of the HTML format.

Most screenshots seem to be 4:3, are 16:9 screenshots ok too?

Images should be whatever shape they need to be in order to show the necessary information, there's no fixed aspect. But since images will be scaled to fit the width of the page, in general images shouldn't be unnecessarily wide or they can end up too small when displayed.

Many of our images are even taller than 4:3, in fact. A number are closer to square, and a couple (curve-presets.jpg and export-profiles.jpg) are even taller than they are wide. But then there's also transition-reverse.jpg, the second image in the Transitions section which has an aspect ratio of 4.69 (1258×268).

Though, if you look at transition-reverse.jpg in the document, it ends up being kind of small in a narrow browser. It's wider than it needs to be, and wastes a bunch of horizontal space. Ideally it would be sized without that empty Timeline space on the right.

You use green arrows and black numbers in circles to point things out. Do you have color numbers for them?

That green circle callout is actually in the repo, as docs/images/circle.svg. So, I can tell you from that file that the fill color is:

.style {
  color: #aec255ff;
}

And as far as using them in illustrations, the numeral in circle.svg (currently a "1") is editable in software that can edit SVG files (e.g. Inkscape, Illustrator). You'd also need the font ("Ubuntu") that's used for the numbers. Otherwise, if you provide a list of what numerals, sizes, etc. you need, I can generate a set of transparent PNGs for you.

Are there other requirements to keep in mind?

There probably are, but nothing comes to mind right now. Anything that comes up, just ask, I guess. There's very little in the way of hard requirements, really, since there hasn't been a lot of work done on the docs so far. The person who originally wrote a section is typically the only one who's touched it since. (Which isn't to say that anyone else shouldn't touch any part of the existing docs. Everything's on the table, as far as edits go.)

There are a lot of explanations and solutions available on the reddit help and here in the github tracker. Can any be re-used without asking or will everything have to be re-done? (Do you have a a license to everything uploading here, which of the users belong to the project and will agree to re-use of their screenshots and help?)

Any contributions to the actual repo (including docs) are licensed under the same GPLv3 license as the existing source. I wouldn't be surprised if that extends to anything posted in the Issues board, too, but even if that's the case we should ask permission before reusing anyone's content in the manual — especially images

Screenshots posted in Issues typically aren't ideally formatted for documentation anyway (due to the aspect/cropping issues I mentioned, etc.) and unless they were taken with the current version of OpenShot they may show an older version of the UI, which could be confusing. So it's usually best to make new screenshots for the documentation, sized and cropped to show just the relevant parts of the interface.

Whether someone's a contributor or not doesn't really matter, any content posted outside of the repo wouldn't be covered so same parameters apply. Even @jonoomph's content can't really be assumed to be part of OpenShot, unless it's something posted at https://openshot.org/ — but even then it's a good idea get his OK before including it in the documentation, really. If nothing else, simply because it's the polite thing to do.

@ferdnyc
Copy link
Contributor Author

ferdnyc commented Apr 22, 2020

Most screenshots seem to be 4:3, are 16:9 screenshots ok too?

Images should be whatever shape they need to be in order to show the necessary information, there's no fixed aspect. But since images will be scaled to fit the width of the page, in general images shouldn't be unnecessarily wide or they can end up too small when displayed.

In fact, now that I've tested it I see that the page layout has a width cap that makes 696px the effective maximum width for images (at least in Chrome on my desktop). Anything wider than that gets scaled down, so you start to lose detail.

@ferdnyc
Copy link
Contributor Author

ferdnyc commented Apr 22, 2020

You use green arrows and black numbers in circles to point things out. Do you have color numbers for them?

That green circle callout is actually in the repo

You may also notice a matching green arrow that's used on several of the screenshots, particularly in the Quick Tutorial section. That image... is not in the repo. (*sigh*)

So you'll need to use something else, if you need to point to anything. Feel free to replace both the circle and the arrow (along with any other clip art) with a new set, if you prefer. (Own work or images covered under an appropriate free license only, please. We'll need to include the license and source details in the repo, for any images covered under an open-source license.)

It doesn't have to match the existing design. A lot of those old screenshots should really be updated anyway.

@MBB232
Copy link

MBB232 commented Apr 23, 2020

I found a rest plugin for Notepad++
https://github.com/steenhulthin/reStructuredText_NPP

I also have more questions. One step ahead, two steps aside. :-)
On the upside, i think you are basically writing a documentation howto in your answers.

Copyright notice:
Why does it have an end date (or begin date for that matter), does the copyright expire after that end date? I thought it depended on the dead of the author - in this case the immortal openshot project. :-)
Should they be updated to the current year? Can they be written dynamically so they automatically get updated to the current year?
example here: https://raw.githubusercontent.com/OpenShot/openshot-qt/develop/doc/files.rst

License
Documentation is sometimes covered by CreativeCommons licenses. But since you use yours interactively in Github and Sphinx, I guess it is better to keep the same as the rest of Openshot and stay with the same as the current documentation. (GPL 3 right?)
So for what its worth, by this I give my permission to use all my comments, pictures and ideas given here and on the Reddit/openshot for openshot under that license.
And for completeness, do you give it for your comments? (I think I can guess the answer).

Do you want to start a separate thread where all permissions for documentation are collected?

Tags
Do you have tags for comments/topics with lengthy explanations that should be added to Documentation or FAQ?
I noticed a tag 'workarounds' of which some should probably included?

Demo art in screenshots
Some screenshots have demo clips and icons for art in them.
https://github.com/OpenShot/openshot-qt/blob/develop/doc/images/quick-start-music.jpg
Should these be the same in all screenshots to prevent confusion? Is there a zip with 'demo' art somewhere?

Images
You say that the page layout has a width cap that makes 696px. You mean that that it is set somehwere in the framework, and not dependend on your screen size?
Is this the same for the export to offline documentation, or does that use a different width?

Does github versioning keep copies of old images too or only of text?
What is the preferred way to include replace images; rename the old one to _old and include a new one with a new name? Or add the new file with a new name, and update the link in the source code?

I propose that images should include the name of the page they appear in. Unless they are used in multiple pages?

syntax
Browsing through the existing files I have found some syntax, that should be sufficient for most basic actions.
I have not found how to include a hyperlink to text. Is there an equivalent to <a href="" ?

*	cursive?
**	Bold


..	hide lines
===	underline with this to make a headline
------------	or underline with this for sub-headline


.. table::
   :widths: 5 20
hidden line to define table of minimum cell width of 5  pixels  for first column, 20 for second column, undefined for those after
use ====================  ============ to start and end the table, with 2 spaces to separate comlumns
? (column 1 is not showing in Github)


.. image:: images/quick-start-drop-files.jpg 
	hide line +add image

@MBB232
Copy link

MBB232 commented Apr 24, 2020

I'm using online github for now.
I could not find a fork button on the documents-dir, so I was afraid that I would have add the files one by one.
So I started with one file and used the edit-button, and it created my own file like you said it would. It forked the entire project ! :oops:
It seems to have also lost the actual change I made (update the copyright year to 2020 in Profiles.rst)
Apparently I need to click on "MBB232 Update profiles.rst" on top left after committing even in my own fork?

Not quite sure how to send only that file back to to you. There is a 'new pull request' under "pool requests 0", but I am not sure how that allows me to select particular files. (It also lists multiple projects?)
Why is it called a pull request when I want to send a file to you, shouldn't that be push, as in 'push away from me'?

reST is becoming more clear, it seems fairly straight forward once you have a starting point.

There is an open issue where you created more custom tags for hotkeys, but they do not seem implemented?
##1354

Has there been a change of mind, or is this on the todo--list? (seems like a fairly easy to change in the documentation for me to get started, but considering your screenshot you already implemented it somewhere.
https://user-images.githubusercontent.com/538020/37234871-54fe5d7e-23c8-11e8-9606-01dd2d59ba0e.png

I started to make some changes to better explain profiles, as I already ran into that myself and on the ask-reddit
https://github.com/MBB232/openshot-qt/blob/develop/doc/profiles.rst
The lines I do not figure out are
sample_aspect_num=1
sample_aspect_den=1
a quick google let me to.... the MLT framework that it originates from :-D
https://www.mltframework.org/docs/profiles/
Apparently it has something to do with aspect ration.
However, they do use values different then 1 for them. Does openshot use then as relative to display ration, and thus always expect 1:1 ?

@befocken
Copy link

syntax
Browsing through the existing files I have found some syntax, that should be sufficient for most basic actions.
I have not found how to include a hyperlink to text. Is there an equivalent to <a href="" ?

*	cursive?
**	Bold


..	hide lines
===	underline with this to make a headline
------------	or underline with this for sub-headline


.. table::
   :widths: 5 20
hidden line to define table of minimum cell width of 5  pixels  for first column, 20 for second column, undefined for those after
use ====================  ============ to start and end the table, with 2 spaces to separate comlumns
? (column 1 is not showing in Github)


.. image:: images/quick-start-drop-files.jpg 
	hide line +add image

I can recommend this repo, where you can see all the different syntax of markdown :)

@ferdnyc
Copy link
Contributor Author

ferdnyc commented Apr 24, 2020

@befocken The documentation isn't written in Markdown, it's reStructuredText (.rst)

@befocken
Copy link

@befocken The documentation isn't written in Markdown, it's reStructuredText (.rst)

Well I was mislead then :D

@ferdnyc
Copy link
Contributor Author

ferdnyc commented Apr 28, 2020

Returning to some older items:

Copyright & Licensing

Copyright notice:
Why does it have an end date (or begin date for that matter)

You can think of that as meaning "contains content copyrighted between (start) and (end), meaning various revisions to the content may have been made during any of those years.

Should they be updated to the current year? Can they be written dynamically so they automatically get updated to the current year?

In fact they shouldn't, it turns out. In the past we've done sweeping updates to the date ranges, but better minds have detailed why that's a bad idea:

Updating the copyrights

I have noticed some developers “updating the copyrights” on works which have not changed in a given year. Do not do that. A copyright notice tells someone when a work was published. If you did not change the work, there is no reason to keep changing the dates.

If a file is edited, its individual copyright statement can then be updated to include the current year. It doesn't need to be, though; copyright (at least in the US) is automatic and requires no explicit notice. Plus, the copyright statement for the project as a whole is generally (or, at least, is more likely to be) updated with a date range up to and including the current year, which can theoretically be taken as applying to all of the component files included in the source distribution.

Content license

Documentation is sometimes covered by CreativeCommons licenses. But since you use yours interactively in Github and Sphinx, I guess it is better to keep the same as the rest of Openshot and stay with the same as the current documentation. (GPL 3 right?)

Yeah, and more critically the documentation source files are included in the repo, so if they were licensed differently we'd have yet another license covering certain parts of the source code (there are already some icons, fonts, etc. re-used from other projects under their own licenses), which is just unnecessary additional hassle.

There is a GNU Free Document License, but it's not compatible with GPLv3 (ironically) and has fallen somewhat out of favor in recent years, so there don't appear to be any real advantages to it, vs. just sticking with the GPL.

Content rights/permissions re-re-redux

So for what its worth, by this I give my permission to use all my comments, pictures and ideas given here and on the Reddit/openshot for openshot under that license.
And for completeness, do you give it for your comments? (I think I can guess the answer).

I've been reluctant to give an answer to that, not because I'd object to my posts being used in the documentation, but more because I'm having trouble imagining a scenario where any of my posts would be useful for the documentation.

I guess my take on the user guide is that it's a document with a specific purpose: Instructing the user on OpenShot's features, functionality, and UI, so that they're aware of what it's capable of and how they can use it effectively. IOW, (in my head, at least) it's a concise, focused document in exactly the way my posts are not.

And, I should maybe clarify: When I said we should get permission before using anyone's content for the documentation, I meant using it directly. All of the Issues and etc. are absolutely fair game to use as reference, in fact that's largely the point of the docs tag in Issues — to flag reports where part of the outcome was, "We should really cover this in the manual", or "we should really write better documentation about this feature". But the intention there was just that — to write documentation covering it, using those issues for reference / guidance.

Unless we're literally copy-pasting someone's Issues comments text into the documentation wholesale, there's no need to worry about getting permission from them. And if any of my comments are suitable to be copy-pasted into the documentation, without requiring a complete rewrite... well, I think I'd like to know about it, on an individual basis. I mean, it's not every day you see a unicorn!

So, I guess the short answer (hah!) is: No, I don't think it's wise to offer blanket permission to use my content for the manual. Beyond what I write and submit directly in PR form, if any of my contributions are going to be used I'd rather be asked first. Mostly so I can try to talk people out of it, for the sake of the document's ultimate readability. 😉

FAQs and tags

Tags
Do you have tags for comments/topics with lengthy explanations that should be added to Documentation or FAQ?

Ah, see, now a FAQ is a very different thing. I think maintaining some sort of FAQ is probably a worthwhile effort, though such things unfortunately tend to get outdated quickly, and often end up starved for the resources (person-resources, time and effort) necessary to maintain them. Still, if we can manage it that'd be great.

Partly for the sake of recency and timeliness, I don't think the FAQ should be part of the User Guide, though. They have very different purposes. The FAQ should probably live on the project wiki where it's directly editable by anyone if they have information on a topic that's not yet addressed. The User Guide can certainly link to the FAQ page/pages, either in a "Further Resources" type section, or maybe even inline when relevant features are documented.

And, in fact, looking at the page list now there are several FAQ-like pages already there, most of them no longer very current. (Oh, and hey, turns out it was a wiki page that mentioned the documentation only being available in English! Knew I saw that somewhere.)

Regardless:

  • A FAQ would be a good thing, agreed
  • IMHO the wiki is probably the right place to maintain it
  • And as an aside, the existing wiki content could really use a good spring cleaning

Workarounds

I noticed a tag 'workarounds' of which some should probably included?

Perhaps in a FAQ entry, if they're still relevant, yeah. Only in very rare cases would there be a workaround that's useful and long-standing enough to warrant mention in the formal documentation. Though now that I'm thinking about it, there are probably a few. Most likely they'd be in older issues that don't have the tag assigned, though.

The tags in general are relatively recent additions to the Issues board, and most of the "workaround" tags in particular will be out-of-date. That typically gets assigned when there's a bug report for which a workaround is found that can serve until it gets fixed — but when a fix is released, we don't remove that tag or anything. Issues that have a workaround are more likely to have been addressed "for real", since if there's a workaround it'll often provide guidance as to how the problem can be addressed.

(Take #3408, for example — which I didn't even bother tagging, because the PR was already submitted with the actual fix. We knew pretty much from the start that the issue only occurred when Blender was used with directory names containing non-ASCII characters. The workaround was simple: Just make sure not to do that. Simple enough, just stick to simple file/path names for now. But the specific nature of the problem also made it easy to find, and it was addressed within just a few days of being reported. That fix has already been merged into the development code, so there's no longer any need for a workaround.)

Image content

Demo art in screenshots
Some screenshots have demo clips and icons for art in them.
https://github.com/OpenShot/openshot-qt/blob/develop/doc/images/quick-start-music.jpg
Should these be the same in all screenshots to prevent confusion? Is there a zip with 'demo' art somewhere?

There isn't, and I don't think it's a huge concern... in fact, part of me thinks that it's a good thing if the screenshots show different content, since it's an opportunity to illustrate the variety of different features and configurations available.

That being said, for certain parts of the documentation, say during a step-by-step tutorial for some feature or whatever, it may make sense to have a set of consistent imports for all of the steps, so that the illustrations reflect exactly what the user would expect to see in the actual software.

In fact, it could even be cool to put together some sort of "tutorial project" — like, say, a ZIP file with one or more tutorial.osp files, plus whatever media files they reference — so that the user can download that and load the project into OpenShot locally, if they want to follow along with the tutorial steps.

But that's getting way ahead of where we're at right now. And other than those instances where it would be instructive to have a set of related/connected images show progressive interactions with the same media files, I don't think it's necessary to use common input data for all of the images. In fact, I feel there's probably value in not doing that.

Formatting/sizing

Images
You say that the page layout has a width cap that makes 696px. You mean that that it is set somehwere in the framework, and not dependend on your screen size?
Is this the same for the export to offline documentation, or does that use a different width?

No idea. I'd guess that it varies from device to device, browser, OS, screen size, etc., but I couldn't say how exactly.

All I can tell you is that I have a full-HD[-plus-a-little-extra-height] 24" screen, but when I have a Chrome window open with the manual loaded into it, once the window hits about 1160px wide, that's it — the content stops getting any wider. Past that width (which is including the sidebar), the only thing that grows is the empty space to the right of the content container. And at that size, the images are scaled to 696px wide.

I'm sure it's different for print (though that's a distant, minor concern, compared to the online presentation), and I'm sure it's different for mobile readers and readers with HiDPI laptop or standalone displays. But regardless, clearly using any fullscreen HD screenshots or whatever shouldn't even be considered, unless maybe it's to capture extra detail on a scaled display. Because images that size can end up scaled down to a third of their width or smaller, and at that size all of the UI elements will be impossibly tiny unless they started out scaled up in the original image.

When I take screenshots to post on GitHub or in the docs, I usually resize the OpenShot window down to about a quarter of my screen. Or at least, no more than half of the width — if I need some extra height for a long menu or whatever, that's not such a problem, in fact as we've discussed narrower-aspect or even portrait images are in some ways a better fit for the manual layout.

In general, though, I'd say that even 1280x720 is a bit too big for user guide images, if the interface is unscaled. Preferable to keep the width under 1000px. That way, the images shouldn't end up getting scaled down much more than ~50%, and hopefully they won't lose too much detail.

Version control

Does github versioning keep copies of old images too or only of text?

Absolutely everything is versioned in git, including any type of binary data — whether it's able to interpret the file or not. (People can and do version encrypted data, even.) In fact, Github will even display differences between binary file revisions, for certain file formats (images, mostly).

For example, here's a commit from an old PR where I made adjustments to the application icon, just to tweak the framing so its dimensions were square:

https://github.com/OpenShot/openshot-qt/pull/2060/files?short_path=507f2e1#diff-507f2e160620bca2579b3a6a48ec1982

If you click the "sheet of paper" icon in the upper right of either file's toolbar, it'll switch to a visual comparison mode, there are a few different ways you can examine the differences between the two versions.

File naming

What is the preferred way to include replace images; rename the old one to _old and include a new one with a new name? Or add the new file with a new name, and update the link in the source code?

If a new file is a replacement for the previous one, and the name of the old file makes sense, I'd say just overwrite the old one. It's simpler, less cluttered, and the previous versions are all in the repo history if we ever need to retrieve them.

If the name is nonsense or has no relationship to the content, feel free to give the new file a different name and change the content reference. Don't go creating new versions of "Screenshot 2013-12-13.jpg" — Or worse, creating a new version named Screenshot 2013-12-13.png). That'd be borderline sociopathic. 😆

Poor choices in file naming, or anything else, should be interpreted as non-choices ­— assume that if a name makes no sense or is actively misleading, it's because the name happened completely at random, for all intents and purposes, and nobody noticed or cared. It's a good bet that no thought whatsoever went into the original naming, and not at all likely that someone made a conscious decision to give it a stupid name. Nor should you worry that someone might be attached to that stupid name.

To bastardize a cliche, a good rule of thumb here is, "Never attribute to malice what can adequately be explained by complete inattention."

I propose that images should include the name of the page they appear in. Unless they are used in multiple pages?

Hmm, that's an option, if it works for you then cool. I'd somewhat discourage that unless it were reasonably certain that page names aren't going to change, but I don't think that's a very good bet. So, my worry is that as the manual organization evolves and titles are rethought, page names might change, and images might get shuffled between pages. We certainly shouldn't be renaming our images to follow our page renames, that's just tedious, but having images named for the wrong pages or pages that no longer exist could be confusing.

My personal take would be, images should be named descriptively. It should say what it is, and it should be what it says. Names like intro-tutorial-step-1.png (followed by -step-2.png through -step-n.png), export-interface-simple.png, and so on seem to me like they'd have the most staying power and relevance long-term.

But, having made my case there, I really don't care very much, and certainly have no interest in trying to dictate how you organize your information. Ultimately a file's name is completely irrelevant as long as it has one, so really I'm perfectly content to go with whatever you decide.

(Though I admit I may feel compelled to foment dissent among the unwashed masses, eventually urging them to rise up and overthrow their oppressors, if I see any newly-created files named Screenshot 2013-blahblah.png or whatever.)

@MBB232
Copy link

MBB232 commented Apr 30, 2020

And if any of my comments are suitable to be copy-pasted into the documentation, without requiring a complete rewrite... well, I think I'd like to know about it, on an individual basis. I mean, it's not every day you see a unicorn!

As I said before, you are basically writing the essence of the howto by explaining it to me. I have been copy-pasting parts for my own use. And reworking it for general use by combining parts, stripping out loose lines and adding my own discoveries.
And then reformatting for the shorter lines as you advised.
For example, I like the way you described the purpose of the manual. Then the above paragraph could become:

The user guide is a document with a specific purpose:
Instructing the user on OpenShot's features, functionality, and UI.
So that they are aware of what it is capable of and how they can use it effectively.
It is intended to be a concise, focused document.

(Maybe swap the third and fourth line to get a better flow)

By now I think I have a pretty complete document, though it will need revising.
If you would take a look? (Notes are hidden in the RAW format)
Be prepared to see a herd of unicorns!

Unfortunately, my rst file is not read as a Rest file by Github to layout like those from Openshot, but stays plain text. So I can not check the result. Does the filetype need to be set in Github somewhere?
The odd thing is that when I copy text directly from openshot files they are seen as Rest files.

https://github.com/MBB232/openshot-qt/blob/MBB232-AboutDoc/doc/AboutDoc/Documentation_About.rst

I also converted the copyright license to the one-sentence-per-line format.
PS: While it may be useful to update the header (and other hidden lines) for versioning (as you explained), they will not be processed by Sphinx because they are hidden. So putting everything on a new line will not see them automatically combined because they are only visible in raw text.

@MBB232
Copy link

MBB232 commented May 1, 2020

List of issues/questions that maybe could be added to documentation

Set custom Bitrate/Quality as default #3381 #3381
Under Files, In&Export or Profiles?

@ferdnyc
Copy link
Contributor Author

ferdnyc commented May 4, 2020

About to finally poke my head in at https://github.com/MBB232/openshot-qt/blob/MBB232-AboutDoc/ and have a looksee.

(Er... after I make some dinner. Yes, I am on the east coast of the US and it is just shy of 7am here. Yes, I mean dinner, not breakfast. What, can't a person be 12 hours late for dinner? I always have dinner when I read Github, everybody knows that!</DarkHelmet>)

Aaanyway, assuming I can pull together 20 minutes of focus and finally do get around to preparing my 12-hours-late "evening" "meal", I'll be able to take a look. Sorry it's taken so long.

(Edit: "Forgot" the "scare quotes". #ForGreatSarcasm!)

(Edit2: Obligatory link to the "blog" of "unnecessary" quotation marks.)

@MBB232
Copy link

MBB232 commented May 4, 2020

A familiar situation. Here I was sometimes posting in the middle of my night (western Europe) so you Americans would be awake. (At least, that was my excuse. Now There goes that :-) )

Under while, I am working on a version of ABoutDoc that gets recognized, and practize my Rest. https://github.com/MBB232/openshot-qt/blob/MBB232-AboutDoc/doc/AboutDoc/files.rst
To get it working, I had to re-upload an existing project file and edit the content.
Do you understand why files I create are not seen as Rest, and project files are? (IF you download the first linked version of AboutDoc, is it seen as a real Rest file in your local Rest reader?)
PS: Turns out, some bad syntax breaks .rst from working in Github. Like starling a line with spaces before the ====== underline symbol

I also finally discovered the important difference between ` (left from 1) and ' (left to Enter). That it toke me an hour to figure out issues like that is probably the main reason that Programming does not appeal to me.

@ferdnyc
Copy link
Contributor Author

ferdnyc commented May 4, 2020

I also finally discovered the important difference between ` (left from 1) and ' (left to Enter). That it toke me an hour to figure out issues like that is probably the main reason that Programming does not appeal to me.

Hah! Yeah, that one's pretty good, coders do love their many, many particular little symbols.

Doesn't even come close to rivaling the amount of strife and anguish sowed by the whole "backslash vs. forward-slash" thing, of course. Stroke of genius, that one.

Now, whoever decided to embrace (three) [different] {styles} of enclosing brace-pairs (four if you count <tag> format, thanks HTML/XML), with a completely different meaning assigned to each one... well, TBH I kind of feel like that was just greedy and/or cruel.

(Hah, it's funny because we are terrible, terrible people!)

Of course, it only gets really complicated once you bring our friends the ‘smart’ “quotes” into it, AKA "typographic" quotes, which ironically can't actually be typed directly on standard keyboards, so you have to rely on editing-software automated replacement features to apply those. (Hence the "smart" in "smart quotes", which I have to assume was meant ironically because all software is extremely stupid, and literal to a fault. If sometimes so convoluted that it can appear to be performing some sort of artistic interpretation of the user's instructions more than actually following them.)

Case in point:

Do you understand why files I create are not seen as Rest, and project files are? (IF you download the first linked version of AboutDoc, is it seen as a real Rest file in your local Rest reader?)

You're referring todoc/AboutDoc/Documentation_About.rst right? I don't even need to download it, I can confirm that it's not recognized as ReStructuredText because Github's web interface displays it as plaintext. If it were identified as ReST there'd be a "rich" (rendered) view, like there is for files.rst.

The reason Documentation_About.rst isn't recognized as ReStructuredText is because it's not, technically. There are parsing errors that make it illegal ReST markup, so therefore it's not ReStructuredText. (This goes back, in part, to the whole issue of ambiguity in ReST's syntax definition. Since ReST was invented as a way of embedding documentation into Python code, the file extension is meaningless — most ReST content would be found inside .py files, not .rst files — so naming a file something.rst doesn't make it ReST. It's ReST if it's named something.rst and the parser is able to parse it as valid ReST without encountering any fatal errors.)

The best way to find errors is to run the file through Sphinx, which will report the location of every parser issue it encounters. Short of that, the syntax highlighting can provide clues as to what's wrong. For example, though it wouldn't be a fatal error, the first syntax errors in the file are here:
https://github.com/MBB232/openshot-qt/blob/a87fc2fc66f47c1de57eabf2f459bd9ad85086e3/doc/AboutDoc/Documentation_About.rst#L18-L20

The highlighting changes from gray to black because the following lines aren't indented at least one space, so they fall out of the comment block and become body text.

Beyond that, it contains a bunch of :: comments that should be .. comments.

Also, these QUESTIONs are colored black instead of gray because they're invalid syntax, specifically explicit markup not followed by a blank line.
https://github.com/MBB232/openshot-qt/blob/3890e847f0719605939188aa0bc7618df73b1d91/doc/AboutDoc/Documentation_About.rst#L193-L201

Like I said, the best way to validate is to run the file through Sphinx. To that end, I set up a basic environment for doing so in the AboutDoc directory, and the PR I just filed to your fork is a request to add those changes to the MBB232-AboutDoc branch.

@ferdnyc
Copy link
Contributor Author

ferdnyc commented May 4, 2020

And, once again FeRD forgets that you can't embed file references across repos on Github. For no obvious reason, other than "they enjoy seeing people repeatedly screw that up time and time and time again", perhaps?

@ferdnyc
Copy link
Contributor Author

ferdnyc commented May 4, 2020

Anyway, having performed the make dummy that will just cause Sphinx to perform a syntax check on the files in the directory, here's the output, run through fmt -s to wrap the long lines:

/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/Documentation_About.rst:19:
WARNING: Explicit markup ends without a blank line; unexpected unindent.
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/Documentation_About.rst:131:
WARNING: Unexpected section title or transition.

==================
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/Documentation_About.rst:132:
WARNING: Definition list ends without a blank line; unexpected unindent.
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/Documentation_About.rst:135:
WARNING: Unexpected section title or transition.

-----------------
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/Documentation_About.rst:136:
WARNING: Definition list ends without a blank line; unexpected unindent.
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/Documentation_About.rst:137:
WARNING: Line block ends without a blank line.
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/Documentation_About.rst:185:
WARNING: Explicit markup ends without a blank line; unexpected unindent.
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/Documentation_About.rst:235:
WARNING: Title underline too short.

Tables (to-do)
------
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/Documentation_About.rst:235:
WARNING: Title underline too short.

Tables (to-do)
------
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/files.rst:20:
WARNING: duplicate label documentation_ref, other instance in
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/Documentation_About.rst
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/files.rst:170:
WARNING: image file not readable: images/quick-start-drop-files.jpg
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/files.rst:177:
WARNING: image file not readable: images/file-menu.jpg
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/files.rst:200:
WARNING: image file not readable: images/file-split-dialog.jpg
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/files.rst:220:
WARNING: image file not readable: images/file-add-to-timeline.jpg
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/files.rst:242:
WARNING: image file not readable: images/file-properties.jpg
looking for now-outdated files... none found
pickling environment... done
checking consistency...
/home/ferd/rpmbuild/REPOS/openshot-qt/worktree-MBB232/doc/AboutDoc/Template.rst:
WARNING: document isn't included in any toctree
done

@ferdnyc
Copy link
Contributor Author

ferdnyc commented May 4, 2020

Oh, hey that's nice. Turns out running make dummy in the root doc/ directory wili include the contents of AboutDoc automatically. Unexpected. Still, though, those files won't be included in the TOC (I have to make sure they're not included in the final documentation build, come to think of it, or we'll have to move them or exclude them explicitly from the build), plus it's nice to be able to generate just the contents of that directory independent of the main OpenShot documentation.

The root doc/ directory Sphinx run also hits a bunch of errors in AboutDoc/files.rst because it contains relative image paths, and those become invalid when the file is moved. Another reason it's definitely better to modify files in-place, then you don't have to deal with updating all of the references.

(I realize files.rst in AboutDoc wasn't copied for the purposes of updating it as a new version of files.rst, so that's not really applicable in that case. But it does illustrate the advantages of in-place updates to existing content, with the modifications tracked and contained using git's branching features, rather than on-filesystem duplication.)

@ferdnyc
Copy link
Contributor Author

ferdnyc commented May 4, 2020

FNARD. AboutDoc is included in the OpenShot User Guide documentation build automatically. Stupid overachieving Sphinx! Still, I'm sure the directory can be excluded without too much trouble.

(Edit: Yup. Commit added to my PR in your fork, turning off AboutDoc inclusion in the make html (and friends) build for the project /doc/ directory. So, now AboutDoc/Makefile is necessary to run Sphinx on those docs.)

@ferdnyc
Copy link
Contributor Author

ferdnyc commented May 4, 2020

Sphinx's own documentation can be a good source of inspiration / hints regarding ReST syntax and features, since of course it's all written in ReST and the source of every page can be viewed in their GitHub repo.

But even their formatted docs are helpful. For example, this page reminded me that:

  • Spaces are verboten in image filenames, so it's dashed-multi-word or CamelCase for those. (Probably a good rule for .rst filenames as well, whether or not it's an actual requirement.)

  • Image references can be written as "globs" rather than using an explicit extension, e.g.

    .. image:: some-image-filename.*

    Referencing the image in that way tells Sphinx to choose whatever format it prefers from the available matches, and it may even prefer a different format depending on the context. (They present a hypothetical scenario to illustrate how that would work and what use it would be.)

@MBB232
Copy link

MBB232 commented May 4, 2020

I can confirm that it's not recognized as ReStructuredText because Github's web interface displays it as plaintext. If it were identified as ReST there'd be a "rich" (rendered) view, like there is for files.rst.
That's what I noticed, hence my question. I thought it may be an ascii/ANSI thing or a file permission or something. You are right of course, it was bad syntax.
In this case the line:

Titles are underlined
==========
By cut-pasting in one paragraph at the time, I found this was what it broke on. (And a bunch of other things that acted weird)

The reason Documentation_About.rst isn't recognized as ReStructuredText is because it's not, technically. There are parsing errors that make it illegal ReST markup, so therefore it's not ReStructuredText. ... It's ReST if it's named something.rst and the parser is able to parse it as valid ReST without encountering any fatal errors.)

Rest being what you explained it was, I was expecting it to be less sensitive then HTML, not more.
And that was why I was NOT expecting a few mistakes to be such an issue. I thought it would just skip the broken things and continue parsing afterwards. (And either render that line plain or as headline, not to make the file illegal).
Anyway, it is working now.

Beyond that, it contains a bunch of :: comments that should be .. comments.

Yes, you pointed that out before, they are on my to-fix list. I initially mixed them up because Rest uses them both in .. image ::
It seemed logical because I must have vaguely recalled that :: can used to comment stuff out in Batch files. 🤔
I'll work my way through your full error list.

Also, these QUESTIONs are colored black instead of gray because they're invalid syntax, specifically explicit markup not followed by a blank line.

They are not supposed to be syntax at all They were supposed to be commented out plain text lines 😢
Hiding hyperlinks after them seems to work if there are some normal words in between.

Like I said, the best way to validate is to run the file through Sphinx.

I was hoping to avoid that . May give it a try on my Ubunty VM coming week, but it is quickly growing way beyond the initial scope of offering a few quick missing tips to the docs. 😢
Maybe it's time I finish my first video project first. (And I've seen advice thrown around that maybe Windows users with Nvidia cards should be looking around for other software alltogether)

To that end, I set up a basic environment for doing so in the AboutDoc directory, and the PR I just filed to your fork is a request to add those changes to the MBB232-AboutDoc branch.

Uh, Thanks? I have no idea what that means. Or what that does - Are you telling me that github will run /code/ hosted on Github to parse other code hosted in the same github? That's creepy cool. (And how am I sure you did not just offer me code to run a bitcoin miner on my github account? 😜 )

@MBB232
Copy link

MBB232 commented May 4, 2020

Still, though, those files won't be included in the TOC

Well, they really /should not/, it is just meta-documentation for beginners that want to help at the documentation.
No reason to bother people that want to use the software with it.

The main reason I was writing them in Rest because the rest 😊 of the documentation was written that way. I wanted to stay in the same format, and store it close. Also I thought it would be a good practice writing in Rest. (And I did not know you had a wiki. I realize now, I could have been writing in LO Writer! 😒 )
Nevertheless it is really paying off bonus dividend in the practice, it has been 'educational' in what does (not) work.

Spaces are verboten in image filenames, so it's dashed-multi-word or CamelCase for those. (Probably a good rule for .rst filenames as well, whether or not it's an actual requirement.)

Glad my stumbling in the dark let you hit on something important.
We should probably include that in the "File naming and directory structure"

I noticed that documentation filenames are connected with underscore _ but images are connected with dash -
Neither uses the Upper/Under case. (CamelCase? Really? 🤣 )
Is there technical preference for either, or just a grown habit? Probably good to keep as-is, unless there is a reason not to.
(Just to make sure, are there differences in code between the dash hyphen and minus signs? Are different key combinations needed to include them like the apostrophes?)

Image references can be written as "globs" rather than using an explicit extension, e.g.
.. image:: some-image-filename.*
Referencing the image in that way tells Sphinx to choose whatever format it prefers from the available matches, and it may even prefer a different format depending on the context.

Very cool from a technical perspective, but a nightmare in making for maintenance.
If the PNG's were to be updated but not the JPG's, then different browsers/platforms/etc would show different versions of screenshots.
And users filing bug reports may see different things in the same version number of the manual. Try troubleshooting that.
I recommend not to do that.

It would be a way to solve your GIF loading issue. But a better way would be if images were clickable to load an animated picture.
BTW, did you know animated PNG exists now too? Can Openshot export to that?
https://litmus.com/blog/animated-pngs-in-email-an-alternative-to-gifs

Speaking of filenames, I forgot to address this

If the name is nonsense or has no relationship to the content, feel free to give the new file a different name and change the content reference. Don't go creating new versions of "Screenshot 2013-12-13.jpg" — Or worse, creating a new version named Screenshot 2013-12-13.png). That'd be borderline sociopathic. 😆

Clearly. The only way to go is the European date convention of DD-MM-YYYY.JPG.
Still, could be worse; there are people that use MM-DD-YYYY! 😂

@MBB232
Copy link

MBB232 commented May 4, 2020

Also we both managed to fill several pages on the technical side, but what about the content?
Do you think it will be useful?
Do you feel comfortable to let your lessons be re-used that way now?
Is the structure ok, or should technical and content documentation be split out over different files?
Am I making glaring mistakes or are significant subjects missing?
Do I need to run the whole thing through a spellcheck again?

Other then fixing the syntax, is it near ready to offer it for a pull/review request?

One subject missing is what you addressed in the other topic
#3427

Documenting the parts that don't work right, or at all
However, due to the various unresolved issues around profile handling, in certain circumstaces the output encoding may not be a perfect match even with a profile that specifies the exact same parameters. Which leads us to (IMHO) the trickiest questions you'll face when writing documentation for OpenShot, for which I have no good answers: How, or do, you document the bugs? Should missing features be addressed, and in what way?

If the options are exposed in the interface, but NOT working in the software, it raises false expectations about what the software can do. People that spent time on a project expecting to use this feature, and then more time trying to find out why it won't work for them before coming upon a bug report would probably leave with a bad experience, and give it bad reviews.

So I think it is important to addressed in the documentation if things are broken/not intended to work. At least it will prevent users from wasting time on it, and at best it may lure in new programmers that want to include the feature.
So probably a link to a bug report/enhancement request should be included? But it should not be given too much words to distract first-time users.

@ferdnyc
Copy link
Contributor Author

ferdnyc commented May 19, 2020

I remember asking, but you were a bit long in your answer.

Weird, that doesn't sound like me. 👼

The guilabel styling shows up because it's built into the theme, and I still think kind of sucks — that was one of the remaining issues there.

I agree. And I don't think it is necessary, I think about everyone will recognize menu options like File and Edit.

Well, yeah, but that's :menuselection: — which we didn't like because it's understyled. And it is useful for pointing to deeper selections like Edit > Preferences or Title > Animated Title. But i think just styling it bold, like the non-role-based mentions are formatted now in the manual, will suffice.

:guilabel: is for controls in the interface (buttons, primarily), and in those cases indicating that someone should click Save or whatever is helpful. I just need to tone down the "decorations" a bit.

I think I can then offer up some pages for pull/review, as others will need to add technical details that I simply do not know.
Do you want them as separate requests, or as one block? (I do want to keep them separated from AboutDoc, as that dir is still in progress)

Definitely, on the latter. As for the former, up to you really. Logical units, I guess. If you make a significant amount of changes to a single file, submitting that as its own PR may make sense. If there are just a relatively few/small changes across multiple files, theose could be grouped together. But it's probably fine either way, if everything's a documentation change.

Do you really still want all jpgs replaced by png? To me, the interface has not changed that much. (The only change coming seems to be on hold, so I stopped waiting)

Oh, no definitely not. Not If the image isn't otherwise being changed — those can be left as-is. When something's being updated, then it makes sense to make the new/replacement one a PNG.

spaetz added a commit to spaetz/openshot-qt that referenced this issue Jun 8, 2020
This is a smallish attempt to improve openshot's sparse documentation
(issue OpenShot#2989).
The getting started page only contains an installation description, so name
it so. Improve the quick tutorial somewhat (at least according to my taste)
but still keep it quick. Improve the start of the "Files" pages somewhat.

far more needed is a description of export options that is useable for
end users but that is another task.
spaetz added a commit to spaetz/openshot-qt that referenced this issue Jun 8, 2020
This is a smallish attempt to improve openshot's sparse documentation
(issue OpenShot#2989).
The getting started page only contains an installation description, so name
it so. Improve the quick tutorial somewhat (at least according to my taste)
but still keep it quick. Improve the start of the "Files" pages somewhat.

far more needed is a description of export options that is useable for
end users but that is another task.
spaetz added a commit to spaetz/openshot-qt that referenced this issue Jun 8, 2020
This is a smallish attempt to improve openshot's sparse documentation
(issue OpenShot#2989).
The getting started page only contains an installation description, so name
it so. Improve the quick tutorial somewhat (at least according to my taste)
but still keep it quick. Improve the start of the "Files" pages somewhat.

Make the import files table more consistent by nameing the method in the
first column and actually describing them in a full senctence (interpunction)
in the 2nd column. Add the actual toolbar button icon image to the table.
@MBB232
Copy link

MBB232 commented Jun 8, 2020

@ferdnyc
Sorry for going AWOL on you.
I was letting your comments on profile settings sink in, Because I don;t think I really understand, let alone explain it correctly to others. Underwhile I was working on that FAQ we were talking about.
Then it was nice weather last week, so too hot to stay inside. Afterwards, it toke some time to get back into it.
I notice we have a new contributor. Good, cause I think we could use the help.
But does this mean I need to be more careful with the pull requests?
Can we have an 'incomplete' branch of the manual on the Openshot github that we can push things through that are not finished, so everyone uses the same version?

@MBB232
Copy link

MBB232 commented Jun 8, 2020

As I said, I have been trying to whip up that FAQ we were talking about.
which quickly devolved into a hell of its own.
https://github.com/MBB232/openshot-qt/wiki/FAQ

I was quickly loosing oversight, and wanted a place to dump the issues not suitable for the manual, yet to be covered or often asked regardless.
Also I wanted a FAQ to link to.

The Process
The default markup choice of GIT is MarkDown, which does not support automatic Table Of Contents.
After the docs, the obvious choice would have been ReST, but I could not find how to let it make TOCS either. (All google results return to Sphinx, which did not seem to work)
Workarounds exist, but would involve cloning the wiki locally and running a script every time new titles are made. It may be possible to do it with Workflows, but I do not know how and do not want to waste time on now.

The MediaWiki markup does support automated TOC tables at the head of each document.
And the markup buttons do not work for it, so I had to study. Some it is simple but different, other times it supports parts of HTML code.

Turns out, Github Wiki does NOT support all those things Github Issues does, like auto-link issues and hosting of images.
It ALSO does not support some of the main plugins that make Wikipedia usefull. It can not include other wiki pages (for 'security reasons' and I can not make it list pages by category.
And they have practically no documentation. https://help.github.com/en/github/building-a-strong-community/editing-wiki-content

Of course, Wiki tutorials rarely tell when commandos belong to extensions, so it has been trial and error.

For now
I have decided to go for dumping ALL topics in one WikiMedia page, so that the TOC will contain all topics.
For complex issues with longer descriptions and images, use separate pages linked from the FAQ, But at least they will be indexed this way, if not searchable.

Content-wise, I've divided it into 4 sections with subsections.
The idea is to simplify the questions.
Then responses quoted from given in the issues (credit can be in footers) and include images if suitable.
Followed by linking Issues, when relevant for background information. (Some may be closed)

But all can use heavy editing, and maybe someone with better Wiki-Fu can apply some markup fixes.

** The future**

Lets first see if people use it. Hopefully the number of repeated 'simple' questions should go down in the Reddit.
(Is there an Action for a page counter image?)
If it is a success, you may want to move it to a real wiki server hosted on the website, move it to another Sphinx like the Manual, or do something else entirely.
(Heck, maybe someone wants to write an interactive FAQ bot)

spaetz added a commit to spaetz/openshot-qt that referenced this issue Jun 8, 2020
This is a smallish attempt to improve openshot's sparse documentation
(issue OpenShot#2989).
The getting started page only contains an installation description, so name
it so. Improve the quick tutorial somewhat (at least according to my taste)
but still keep it quick. Improve the start of the "Files" pages somewhat.

Make the import files table more consistent by nameing the method in the
first column and actually describing them in a full senctence (interpunction)
in the 2nd column. Add the actual toolbar button icon image to the table.

Similar things for the slice clips table on the clips page.
@rexdk
Copy link

rexdk commented Jun 9, 2020

I confess I have very little interest in spending many hours of time installing the software necessary to work on the user guide on github. But I am interested in contributing to the content of the user guide.

I have started writing up clip properties on a cms, which means that I can edit whenever I get a spare moment, whereever I am. Being wysiwyg makes it easy for me.

You can find what I've done here:
https://drking.org.uk/openshotguide/clip-properties/

I think the content is a lot more detailed than has been available so far, and it would have helped me greatly if it had available when I needed it. But you may disagree.

If you think this is helpful, I'll carry on. Do let me know.... I don't want to waste my time if it will never be used.

This issue/thread is now so long that it's getting confusing, so I'm not sure what the current state of play is.

@MBB232
Copy link

MBB232 commented Jun 10, 2020

Hey, I was just going to take some screenshots and point out issues that were unclear, before I got roped into this 😢

Came across this open letter by Andrew Bullen on Reddit addressing general issues with OpenShot.
https://www.reddit.com/user/AndrewBullen/

One of the mentioned issues is a FAQ, so I was not alone in that opinion.
Another is a central place for tutorials. I agree, and I propose we use another Wiki page to link tutorials. Categories could be text+video, and should be added tagged with basic/advanced and subject.
Could be some complete series, and some separated by features, and maybe some basic concepts about video editing.

I also propose to keep a Wiki page where we link to such reviews of OpenShot, if they are honest or contain benchmarks. As harsh as they may be, they can contain a lot of useful info for which features to fix first.

He also mentions performance issues due to settings, so that may be useful for better covering in the manual

Performance
Often complaints of poor performance, could implement the following Preferences suggestions:
Preview – That is misleading, it is not a Preview but a Profile setting. Many forum posts and tutorials also recommend changing the Profile to a lower resolution, when if using a Scale of None that will create unforeseen results and you state “It is best practice to always switch to your target profile before you begin editing”. Instead could replace that with an actual Video Preview preview quality setting, offering Final (100%), High (75%), Good (50%) or Draft (25%).
Performance – Hardware Acceleration complaints with Linux and still buggy and with limited support currently for Windows and Mac, and can only recommend they could all be fixed.
Cache – Cache Limit’s small default of 250 is a reported cause and could consider options.
Size – The large file size issues could be due to the high default Video Setting of 15 Mb/s Bit Rate for all profiles, hidden in the Advanced tab, and in what is unclear is a configurable tab.

@sc0nway
Copy link
Collaborator

sc0nway commented Jun 11, 2020

@MBB232 I would like to include the updates that you've made into the version of the User Guide that I am building in my repository. I've only modified a few of the files because I found that information in GitHub and Reddit. I'd like to start a the beginning and update the whole guide to align with Version 2.5.1.

@rexdk I would also like to include the updates that you have made so far. I found your Clip Properties guide very useful and I've added your information to my repository.

You can see what I have so far here:
https://github.com/USATechDude/openshot-qt/tree/develop/doc

If you have any other changes or updates, I would really like to see them.

@rexdk
Copy link

rexdk commented Jun 11, 2020

USATechDude

That's great, thank you :)
There are still some things that might help the user in clip properties in your stuff:

  1. One example among many still in the original table: "Curve representing the crop height of the clip in percent (0 to 1)" - that is simply not true - the value is not in %, it is a fraction. 1 doesn't represent 1%, it represents 100%.. And it is not a curve - it is a single number.
  2. I think that it is really important to explain to the user the order of calculation, and indeed its importance. Eg, a clip shot on its side on a mobile phone does not respond to "Scale" as you'd expect - it does not align with the sides of the screen - because rotation is applied last, not first. Probably a hasty early get-it-done programming decision I guess. I'll gladly talk this over in more detail - in fact I had intended to give clear examples - just not got there yet; I'll do that next.
  3. You've kindly taken my outline box - but because it is not in the flow of the calculation of properties it now isn't defined correctly. It only works if it it defined at the correct moment of calculation.
  4. It's now rather a long section - might it be simplified, while retaining the important info. Or might the various sections being separated onto different pages.
  5. There is a serious bug in the Time property - it does not work; it's likely that my update to this property on my cms has missed you.. My view is that the user guide should be honest about bugs - if something doesn't work as expected you can save an awful lot of user pain. I'm aware that OpenShot has rather a lot of bugs (I've found 7 or 8 so far, and a couple more I haven't been able to pin down) - but that's even more reason to help the user :)
  6. Jonathon has just amended some properties in his daily build. We need to be ready for the changes.

I'll gladly contribute some more. It would help to know what I can work on that no-one else is tackling. I've had a quick go at Custom Profile, again on my cms.

@rexdk
Copy link

rexdk commented Jun 13, 2020

@ USATechDude

Thanks for the useful amendments to your clips.rst. You might like to check out my revisions to the descriptions of crop and shear transformations (I think I originally had Shear wrong - that's the trouble with not having the info in the user guide ;). I've also written up about the order of transformations on a separate linked page with pics. I'm worried that it seems very complex - which it is - but the average user doesn't need that. So maybe the detailed description needs to go on a separate page, leaving the average user just to play with the settings - which mostly works of course.

Audio channels - I know what an audio channel is (left and right in stereo) - but I can't make sense of it here ;). As a user I'd like to know how Channel Filter numbers the audio channels, and what filter it applies (bass boost?). Yeah, yeah, a bit tongue in cheek - but I don't actually understand it currently :). I realise you have the original guide text here - do you understand it? I can experiment if not, or you may be able to ask a developer.

@rexdk
Copy link

rexdk commented Jun 18, 2020

@ferdnyc
I'm very willing to offer help here, but I don't understand how the user guide revision is organised. If I rewrite a section, it could be that someone else is working on the same thing. Because the guide needs substantial work, I think someone needs to be coordinating it - is that you, as the one who started the issue? Or the ever-helpful USATechDude? Thanks

@sc0nway
Copy link
Collaborator

sc0nway commented Jun 24, 2020

@rexdk At the moment, I am coordinating the User Guide update. I’m receiving input directly from Jonathan and Matt. If someone else deeply desires taking on the task, I will provide all of the updates that I’ve already made.

Our thinking is that the Quick Tutorial is for the basic, simple information, with links to the topics later in the UG. The QT will provide enough information that a customer can create a simple video after just minutes reading.

The rest of the UG is an in-depth manual providing as much explanation possible. The consensus is that it is better to provide too much information than not enough. Each feature should be explained thoroughly and provide screenshots and examples if necessary.

After discussing the UG update with Jonathan and Matt, I am starting at the beginning of the UG the working page to page from the beginning. Other than the pages we’ve previously discussed, I am working on the Introduction, QT and Getting Started pages. If you have any updates for those pages, may I see them so I can include them?

All other updates that you’ve already made would be appreciated as well. If you will share your changes with me, I’ll add them to my repository. We can begin a discussion outside of GitHub to determine how to manage all the updates for each file. We can also figure out which topics need further information from the developers.

@rexdk
Copy link

rexdk commented Jun 25, 2020

Thanks. I'll contact you by email then for furhter discussion

@spaetz
Copy link
Contributor

spaetz commented Aug 10, 2020

@USATechDude, you are coordinating doc updates now? Great!
My merge request has been sitting here for quite a while. Care to review and merge it? It is somewhat demotivating to have some changes prepared and ready for merging, with nothing happening with them and getting no feedback.
Perhaps the longish discussion on how to tech support the changes should not occur in this issue?
Anyway, I would be happy if somebody looked at my merge request. If not, that is fine too, I'll focus my attention to some other project then...

@rexdk
Copy link

rexdk commented Nov 18, 2020

We're more than a year on now, and progress is slow. There is a big entry barrier to anyone using Win10. However I have just managed to compile the guide on Win10, and in case it helps someone else:
Compiling OpenShot docs.txt

spaetz added a commit to spaetz/openshot-qt that referenced this issue Dec 1, 2020
This is a smallish attempt to improve openshot's sparse documentation
(issue OpenShot#2989).
The getting started page only contains an installation description, so name
it so. Improve the quick tutorial somewhat (at least according to my taste)
but still keep it quick. Improve the start of the "Files" pages somewhat.

Make the import files table more consistent by nameing the method in the
first column and actually describing them in a full senctence (interpunction)
in the 2nd column. Add the actual toolbar button icon image to the table.

Similar things for the slice clips table on the clips page.
@rexdk
Copy link

rexdk commented Dec 13, 2020

Re compiling the user guide / my previous comment. It looks to me as if the existing sphinx-build routine (not just mine on Win10 but the original too) does not catch all the dependencies. I've found it necessary (if things don't work as they should) to destroy the _build directory before rebuilding. Yuk.

@rexdk
Copy link

rexdk commented Jan 1, 2021

@USATechDude

As promised, I've uploaded a copy of my revised User Guide. This is a substantial rewrite of most of the guide, with tweaks to the contents structure and css, and a whole load of appendices containing a lot of detail.

www.drking.org/osg

There's some stuff which is I hope obviously useful, like a sensibly ordered list of profiles that you can actually use. There's some very detailed stuff that might be overkill, like exactly what the 20+ bezier curves do, and how to achieve a constant power audio crossfade. And there's stuff that still needs improving.

I've been working from daily builds, and they are changing rapidly at the moment. For example, I meticulously documented the bizarre crop properties - but they've just been removed (a blessing to any user I think.)

So, as I have no insight into the ongoing developments, and there seems little current prospect of the live User Guide being updated, I think it's time for me to call a halt and move on to other projects. When you're ready to look at this again, do ping me - I'll try to help if I can.

@DJStompZone
Copy link

I would potentially be interested in helping with this. I actually JUST got this software today (loving it!), so I'll need a little time to familiarize myself with it before I try to go writing any content for the manual. I actually only wound up here because I was looking for some kind of Preferences documentation, but if that's something that needs to be done that I can help with, it's the absolute least I could do to contribute to this amazing project.
Questions:

  • Is there any kind of priority tree to indicate what is most in need of (updated) documentation, or is it more just buffet-style?
  • What sort of format would I use for newly created content? I hope you'll forgive my ignorance, writing manuals (and even using Github in general) is one of many glaring gaps in my patchy programming education (Get it? Patchy! ...I'll see myself out)

@rexdk
Copy link

rexdk commented Jun 8, 2021

@DJStompZone

There's some basic info about how the docs are made here
https://www.drking.org.uk/osg/documentation.html

My revised guide at
https://www.drking.org.uk/osg/index.html

was a substantial piece of work and took me quite some time. Unfortunately no-one has been able to progress this at all - I guess it's not thought important enough.

So I bowed out and have put my efforts into other projects. My advice would be to try to make sure that your efforts won't be wasted before investing too much time.

@uselessgames
Copy link

this thread is dated... if there is still need for volunteers I am available to help. I use openshot on a regular monthly basis.

@ghost
Copy link

ghost commented Sep 19, 2021

@jonoomph @JacksonRG @speedytechdev I'm here and willing to help, I use OpenShot to edit and publish YouTube videos on my YT channel.

@sc0nway
Copy link
Collaborator

sc0nway commented Sep 19, 2021

@DanTMan64 I took on this project beginning last year, but with my responsibilities on the OpenShot Help Desk and Reddit Community, I fell behind. I am happy to provide you with everything that I have to give you a starting point. I can also be your direct contact within OpenShot. If you are interested, please send me a message at [email protected].

@stale
Copy link

stale bot commented Mar 31, 2022

Thank you so much for submitting an issue to help improve OpenShot Video Editor. We are sorry about this, but this particular issue has gone unnoticed for quite some time. To help keep the OpenShot GitHub Issue Tracker organized and focused, we must ensure that every issue is correctly labelled and triaged, to get the proper attention.

This issue will be closed, as it meets the following criteria:

  • No activity in the past 180 days
  • No one is assigned to this issue

We'd like to ask you to help us out and determine whether this issue should be reopened.

  • If this issue is reporting a bug, please can you attempt to reproduce on the latest daily build to help us to understand whether the bug still needs our attention.
  • If this issue is proposing a new feature, please can you verify whether the feature proposal is still relevant.

Thanks again for your help!

@stale stale bot added the stale This issue has not had any activity in 60 days :( label Mar 31, 2022
@stale stale bot closed this as completed Apr 16, 2022
Documentation updates automation moved this from To do to Done Apr 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Bad or missing help texts / documentation help wanted This issue needs additional developer support, or specialized skills to help debug or troubleshoot. 🔥 hot An issue which affects multiple users, and needs to be fixed immediately stale This issue has not had any activity in 60 days :(
Projects
Development

No branches or pull requests

9 participants