Closed Scrivener07 closed 11 months ago
Fixed
I should reevaluate the naming of the top level features. We want these features to match the user facing naming provided by VS Code. For example "Smart Completion" could be named "Intellisense".
I should go through and make sure that all of our language for features matches VSCode.
We should use Linting to mean code style analytics. I think whatever we actually do with linting in the future should be in the scope of fireundubh's stuff, with his standards as the defaults.
Im drafting some stuff about what kinds of general project structures are supported. I can go on to explain how a totally vanilla project is configured out of the box, to creating your own "import". Something like this in the docs with mock directory examples. If I can define a handful of popular/conventional ones it would be easy for users to point at one and say "yup, Im doing the # 3 setup".
For example in a totally vanilla setup these are the files in play.
...\Fallout 4
| CreationKit.ini
|
\---Data
| Fallout4.esm
|
\---Scripts
\---Source
+---Base
| Institute_Papyrus_Flags.flg
| *.psc
|
\---User
Readme.txt
@Deadmano had a good point here too. Ill quote..
Problem is, who works in the base game? You should always have a clean working environment, no? It's so easy to miss an overwrite, especially if you are dealing with meshes/textures etc. That's why it has become the norm to use a VFS or at least symbolic links to bring in your outside assets but keep the base game clean. That way, when you're working on different projects, you can enable/disable them at will and not worry about breaking anything or having random leftover files you forget to remove. I surely can't be the only one who avoids directly editing the base game files? I would have thought that is a modding best practice? Same as we avoid mutation of variables and objects.
Some saved notes for helping users. This has potential to become a useful tool in the project meta documents (issue templates, etc).
Here are some ready to use solutions for helping users.
If you don't mind me taking a look at your directory folder, I may be able to assist further.
CreateDirectoryTree.bat
file inside the directory and double click to run.DirectoryTree.txt
.Alternatively, if you know what your doing you can use tree
on the command line.
tree /f /a > ".\DirectoryTree.txt"
Create a standard procedure for testing new release versions.
Add citations to the creation kit wiki for everything in the language reference. Good thing I have a complete list of links for every page anchor within the onsite language reference. I plan to copy these links to the bottom of each language reference page as one list. For example..
Explain this in documentation as an alternative to the Project Explorer.
The wiki side navigation might be getting a bit verbose right now but its helping me form the content. The pages & sub-pages that are shown in the side navigation are completely customizable.
Ill revisit pruning it in the polish stage.
Is refactoring already implemented https://github.com/joelday/papyrus-lang/wiki/Refactoring ???
Yes friend. Though I think I spotted a bug with the script name refactor.
Okay, I think functions and events dont work as intended with states or inheritance. Thats something that should have an issue filed.
Ok, I will look into helping with this.
Current documentation is adequate, may need significant changes at some point anyway.
The Documentation
~45% done?
This issue is so I can track wiki related tasks.
Who are these documents for?
How do these documents help me?
What questions should I ask myself while writing documents?
Emphasis
What does the end result look like?
Below I will try to create a sort of wiki site map which tracks the completion of pages.
Goals
Extension
Features
Programming Section
Add some pages (not exhaustive) about programming with papyrus.
Language Section:
A complete onsite markdown conversion of the core Papyrus language documentation.
Why?
TODO
Corrections