-
Notifications
You must be signed in to change notification settings - Fork 268
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
add "AutoHotkey Library Distribution" #2
Comments
@joedf |
👍 everything |
Perfect. But I think "General" should be "More Libraries" ... "General" is too broad if you plan to keep only libraries inside.
|
Maybe Library Distributions should be moved out of Scripts because it is not a script but a collection that may contain libs that have already been mentioned under Scripts. |
@aviaryan
The reason to have "General" subgroup, is to have subgroup that should contain all libraries that are not Standard Libraries but does not have any particular specialisation. For example, someone can create library of functions that he frequently uses and it contains function for GUI, Math, Text manipulation and others. In that case we need some subgroup where that kind of function collections (which has different categories of functions in it) should go. In that case, if we name that subgroup "More Libraries" it will not emphasize that it contains libraries with multiple specialisation, it will indicate that there are libraries that are not falling in any other existing subgroups. Maybe "General" is also not good name for such kind of subgroup. We can choose different name. Maybe we can name it as "Collections" or "Library Collections"? Please also suggest your versions. |
+1 👍 for
|
Yes. fine. But then where will library collections provided by @joedf in first post go then. Standard Libraries is definitely not the place, nor is general.
Definitely not Collections. Keep it General. I agree with all other points of yours @vasili111 |
I think you made mistake in previous post. Which one are you suggesting?
OR
|
Whoops yeah sorry
|
@vasili111 One question I have is why there is "Text manipulation" sub-group in Library Distributions. TF (TF_func) is a standard library and will go in that sub-group. Same is for things like Math and GUI . If a lib for them is standardized, it will go in Standard libraries area. You can have those groups (GUI, math) inside Standard libraries but not along them. My definition of Standard libraries goes as -
If my definition is correct, I will think something like -
Also singular functions like |
There should be one group where all libraries will go. We can name it "Library Distributions". That group should have several subgroups. First subgroup should be "Standard Libraries" and should include Standard Libraries. In my opinion Standard Libraries should be called library which is like C++ Standard Library or as Tcllib in TCL. That kind of library includes functions from different categories (it does not have only one particular specialisation and can't be puted in only one other subgroup), most functions in it are frequently needed, is well organized, has consistency, has high quality well tested code and good documentation. I don't see such libraries for AutoHotkey at this time. Second subgroup named "General" or "Collections" (or any other suggested name) should include libraries that includes functions from different categories (it does not have only one particular specialisation and can't be puted in only one other subgroup) but does not meet quality standards of Standard libraries. Also we will have different other subgroups which will be after first two ones and will be alphabetically sorted. There should be specialised libraries. Only one specialisation for one library. for example "Text manipulation" subgroup should only include libraries that are used for text manipulation (for example TF (TF_func)), "Math" subgroup should include libraries that are use only for math, "GUI" subgroup should include libraries that are used only for GUI and so on. If there is single function it should go to "Scripts" group in corresponding subgroup. So we will have:
|
I'm thinking of something like this:
|
@joedf In your version
|
Just one tiny change. I agree with @aviaryan 's "More Libraries".
|
ok... what to do with "Standard Libraries"... :P |
Forget it. "Library Distribution" will be the group for Salt, ASPDM and the like. BTW, what do you plan to keep in "Standard Libraries" ? |
Agreed. |
@joedf @aviaryan First way. In that case all libraries that have no specialization will go to "Standard Libraries" (we can rename it if you want). So, for example, "Standard Libraries" will also include all libraries that added by joedf (pAHKlight, ASPDM, etc). All other specialized libraries will be added to corresponding to specialized subgroups (GUI, Math, etc.).
Second way: (proposed earlier by joedf)
|
Hmm, yes but for the moment being we dont anything to go under StdLib ... :/ how about this?
|
I think it's important that there is a clear difference between "library distributions" (or whatever you want to call them), like ASPDM and pAHKlight, and "libraries," like GDIP, JSON and TF. "Library distributions" distribute "libraries." 😄 Does something like this make sense?
Do standard libraries even need to be in a different section? Maybe it's better to just have a note beside libs that are "standard"?
I'm not quite sure what the difference is between "tools" and "scripts". Maybe we're using different words to mean the same things, and your "scripts" are my "libraries," while my "libraries" are your "library distributions"... but then what is ASPDM? It's not a library. 😀 Edit: Ha, looks like @joedf got there first. 😄 |
Yes, thank you @rshipp ! lol |
We can rename "More Libraries" to "Specialized Libraries". I think it more reflects its purpose. What you think about it? |
Looking at the README, I think I understand now - scripts are tools written in AHK, while tools are for AHK - is that right? |
@rshipp |
@rshipp @joedf @vasili111
We can remove the "General" section if needed. In case there are no candidates. |
@aviaryan |
@vasili111
If you or anyone else creates a library distribution platform, we can add it there.
Oh yes. I missed the point. Anything unclassified can be classified by creating its sub-sub-group under Libraries or creating a broader group. Random is for functions libs that are unorganized. One example for Random is my misc functions . These functions are not related at all and hence go to random. |
One example of uncategorized lib is HParse . You are not sure in which category this script belongs. In that case, you can create a category like UnCategorized. This category stores specific but uncategorized libs. |
I agree and like the idea to separate them. Maybe it is more correct to call it something like "Library Distribution Systems" or "Library Distribution Solutions" ? We can have that section as group or as subgroup of "Libraries" or as subgroup of "Tools" (because they are actually tools). I personally have no exact answer where to put it.
HParse can be put at category "Hotkeys". I don't see actually a library that can't be categorised except ones that falls in multiple categories.
I agree. We need the category that will contain the libraries which fall in multiple categories. But name "Random" I think is misleading. It says more about randomness then for non-specific (multicategory) category. |
Perfect
No keep them as separate group.
Yes it can be. But the point is that in case you don't wanna create a new sub-group because you think the category is too narrow, the safe place to put it is UnCategorized. Don't you see many applications put few of settings in Misc (miscellaneous), the same is Uncategorized.
Maybe you're right. But then I am also not sure what the name should be. |
Please take a look at my fork of README.md. @vasili111 I don't think we will ever need the "Random" sub-group. |
I missed this one. sorry! What I think is if a script contains a single function but has a foreground purpose, it is a script but if it has a background purpose and does all its job between ahk codes, it is a function. So HParse is function as it only takes up a variable and returns a value.
|
Exactly what avi said:
And I don't like the term "Library Distributions". What about "Library Managers" ? Similar to 'package managers' on unix systems Here's what it should look like IMO:
|
I personally like @aviaryan's fork. +1 for @mmikeww |
@aviaryan @joedf @rshipp @mmikeww
I also like the idea or using "Library Managers" instead of "Library Distributions", it is more precisely reflects purpose. Also can be used "Library management systems". Also I think "Package managers" less precisely reflects it purpose, because they manage libraries, not packages, we don't actually have packages in AutoHotkey. Based on [that](https://github.com//issues/2#issuecomment-51583356) answer of **aviaryan** and [that](http://pastebin.com/9nMSyc7n) discussion in IRC #Programming I think we should distingush "Script" from "Library" by: _Library is a code that has some reusable functionality that can be combined with your own code in order to create new functionality._ _Scripts is code that is intended to be used as standalone one and is not meant to be integrated with other code. For example, different Games or StealFunc of *_aviaryan.*** @aviaryan @joedf @rshipp @mmikeww What you think about it? @aviaryan
I think there is no need of "UnCategorized" subgroup. If we allow it, after some time we will get a big list which will be hard to manage and hard to find information in it. I think at that moment we should start without it and if time will show that there is demand for it, we can create it then.
I agree with you. We dont need it.
Agree with you. |
+1 Yes, I approve, but ASPDM and pAHKLight, for example, "manage" "packages" as in Standalone scripts, Libraries, tools and others. You can read more about Packages in Database.md and Guidelines.md |
You are right. Did not knew that.
|
That's better. Go with it ..
Sure. If a multi-specialized library is too good, it should deserve a place in "UnCategorized" . No doubt !
My only concern with the term "Managers" is that two of the items ahk-libs and ahklib are not actually managers. They can't do anything on their own. They have no interface (GUI, console, web) and are more like collections/repository. Isn't it. What do you say ? For the time I will merge my fork so that more work can be continued in the AwesomeList. |
@aviaryan You're right. ahklib is technically a package manager, but the project was abandonned. Ahk-libs, on the other hand, is actually more of a collection of libraries. |
@aviaryan @joedf @rshipp @mmikeww
Agree. If ahk-libs and ahklib are more collections/repository then they are good candidates for "UnCategorized" subgroup of "Libraries" group. Maybe we should move them there?
Good idea! What is better name "Library Distribution systems" or we should keep "Library Distributions"? |
Keep it short, keep it simple. "Library Distributions" |
For reference: http://en.wikipedia.org/wiki/Distributed_library |
@aviaryan @joedf @rshipp @mmikeww |
@aviaryan @joedf @rshipp @mmikeww |
If the table of contents expands, changes etc this might but a useful script to keep at hand https://github.com/hi5/InsertTOCintoMD (AutoHotkey script to add a Table of Contents to a Markdown document) - btw I don't suggest it to be added to the list as it has fairly limited use but I find it useful for larger documents. |
@hi5 |
@vasili111 this branch can take the alternative anchors into account https://github.com/hi5/InsertTOCintoMD/blob/dev/InsertTOCintoMD.ahk but the headings would have to be changed slightly like so https://gist.github.com/hi5/d3c4483b229de70760d5 (don't copy this as I've used some weird test examples like qwerty |
Looks like this was added to contributing.md, can the issue be closed now? |
I think yes. If someone will need we can reopen it. |
I suggest adding "AutoHotkey Library Distribution" under scripts.
Markdown:
The text was updated successfully, but these errors were encountered: