new "contribute" in README.md
Massimo Melina committed
Mar 15, 2023 at 10:30 UTC
ef4a86d990a6ce384b99f1506ae27237997be0d2
3 files changed
+158
-8
README.md
+49
-5
@@ -61,9 +61,9 @@ If you don't like this behavior, disable it in the Admin-panel or enter this con
61
62
If your system is not Windows/Linux/Mac, you can try this alternative version:
63
64
-0. [install node.js](https://nodejs.org)
65
-1. execute: `sudo npm -g i hfs`
66
-2. launch: `hfs`
64
+1. [install node.js](https://nodejs.org)
65
+2. execute: `sudo npm -g i hfs`
66
+3. launch: `hfs`
67
68
Configuration and other files will be stored in `%HOME%/.vfs`
69
@@ -85,9 +85,10 @@ If you want to run HFS as a service
85
It is possible to show the Front-end in other languages.
86
In the Languages section of the Admin-panel you'll be able to install lang files.
87
You can find some of these files at https://github.com/rejetto/hfs/tree/main/langs
88
+Files are named `hfs-lang-CODE.json`, where `CODE` is the ISO code for your language (e.g. pt-br for Brazilian).
89
To download a file: open it, right-click on the "Raw" button, Save.
90
90
-Files must be named `hfs-lang-CODE.json` (lowercase), where `CODE` is the ISO code for your language (e.g. pt-br for Brazilian).
91
+If your language is missing, please consider [translating yourself](#translate-to-your-language).
92
93
Translation is applied automatically based on the configuration of the visitor's browser.
94
[Check the language configuration of your browser](https://gtranslate.io/detect-browser-language).
@@ -254,7 +255,50 @@ This is enough, but you may want to configure generated links accordingly:
255
- go to Admin-panel > Shared files > Home > Link
256
- click the change button (right side of the field)
257
- enter the final URL of your proxy including the location
257
-
258
+
259
+## Contribute
260
+
261
+There are several ways to contribute
262
+
263
+### Report bugs
264
+
265
+It's very important to report bugs.
266
+If you see something you are quite sure it's a problem, then [open an issue](https://github.com/rejetto/hfs/issues/new?labels=bug&template=bug_report.md).
267
+If you are not so sure, don't worry, we'll discuss it.
268
+
269
+### Suggest ideas
270
+
271
+Share your ideas of what you think would make this tool better.
272
+Don't expect everything to be done, tho, as this project is made on a voluntary basis,
273
+and also because the project could become too complex (too many features).
274
+
275
+Anyway, secondary features may be implemented by plugins instead. Yours may be an idea for a plugin.
276
+
277
+### Translate to your language
278
+
279
+First, check if your language is already available, looking at [this list](https://github.com/rejetto/hfs/tree/main/langs).
280
+
281
+If your language is missing, [download then english file](https://raw.githubusercontent.com/rejetto/hfs/main/langs/hfs-lang-en.json) as a starting point.
282
+Rename the file changing the "en" part with [your language's 2-letter code](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes).
283
+
284
+The file syntax is JSON, and the translation syntax is ICU. When you see curly braces like `{n}`,
285
+that's a variable, like a number, always changing. Commands within curly braces MUST NOT be translated,
286
+like `plural`.
287
+
288
+The way plural works in your language is probably different from english, so if you don't get the results you need,
289
+you may need to make some changes.
290
+[Refer to this guide](https://formatjs.io/docs/core-concepts/icu-syntax/#plural-format) to know your options.
291
+
292
+Always check your file is working good before submitting.
293
+When you are sure it's good, you can publish it. The easiest way is to [open an issue](https://github.com/rejetto/hfs/issues/new)
294
+and attach your file (you may need to zip it, first).
295
+We will include it in our folder.
296
+
297
+### Submit your code
298
+
299
+If you'd like to make a change yourself in the code, please first open an "issue" or "discussion" about it,
300
+so we'll try to cooperate and understand what's the best path for it.
301
+
302
## License
303
304
[GPLv3](https://github.com/rejetto/hfs/blob/master/LICENSE.txt)
langs/hfs-lang-en.json
new
+106
@@ -0,0 +1,106 @@
1
+{
2
+ "author": "YOUR NAME HERE",
3
+ "version": 1.0,
4
+ "hfs_version": "0.40.1",
5
+ "translate": {
6
+ "Select": "Select",
7
+ "n_files": "{n,plural,one{# file} other{# files}}",
8
+ "n_folders": "{n,plural,one{# folder} other{# folders}}",
9
+ "filter_count": "{n,plural, one{# filtered} other{# filtered}}",
10
+ "select_count": "{n,plural, one{# selected} other{# selected}}",
11
+ "filter_placeholder": "Type here to filter the list below",
12
+ "Select some files": "Select some files",
13
+ "zip_checkboxes": "Use checkboxes to select the files, then you can use Zip again",
14
+ "zip_tooltip_selected": "Download selected elements as a single zip file",
15
+ "zip_tooltip_whole": "Scarica intera lista (non considera il filtro) come singolo file zip. Se selezioni alcuni elementi, solo quelli saranno inclusi.",
16
+ "zip_confirm_search": "Download ALL results of this search as ZIP archive?",
17
+ "zip_confirm_folder": "Download WHOLE folder as ZIP archive?",
18
+ "select_tooltip": "Selection applies to \"Zip\" and \"Delete\" (when available), but you can also filter the list",
19
+ "delete_hint": "To delete, first click Select",
20
+ "delete_confirm": "Delete {n,plural, one{# item} other{# items}}?",
21
+ "delete_completed": "Deletion: {n} completed",
22
+ "delete_failed": ", {n,plural, one{# failed} other{# failed}}",
23
+ "delete_select": "Select something to delete",
24
+ "Delete": "Delete",
25
+ "Options": "Options",
26
+ "Search": "Search",
27
+ "Zip": "Zip",
28
+ "search_msg": "Search this folder and sub-folders",
29
+ "Searching": "Searching",
30
+ "Searched": "Searched",
31
+ "Clear search": "Clear search",
32
+ "Interrupted": "Interrupted",
33
+ "stopped_before": "stopped_before",
34
+ "empty_list": "empty_list",
35
+ "filter_none": "filter_none",
36
+
37
+ "Admin-panel": "Admin-panel",
38
+ "Login": "Login",
39
+ "Username": "Username",
40
+ "Password": "Password",
41
+ "Continue": "Continue",
42
+ "login_untrusted": "Login aborted: server identity cannot be trusted",
43
+ "login_bad_credentials": "Invalid credentials",
44
+ "login_bad_cookies": "Cookies not working - login failed",
45
+ "User panel": "User panel",
46
+ "Change password": "Change password",
47
+ "enter_pass": "Enter new password",
48
+ "enter_pass2": "RE-enter same new password",
49
+ "pass2_mismatch": "The second password you entered did not match the first. Procedure aborted.",
50
+ "password_changed": "password_changed",
51
+ "Logout": "Logout",
52
+ "connection error": "connection error",
53
+ "Full timestamp:": "Full timestamp:",
54
+ "Search was interrupted": "Search was interrupted",
55
+ "Stop list": "Stop list",
56
+
57
+ "upload_starting": "Your download should now start",
58
+ "wrong_account": "Account {u} has no access, try another",
59
+ "no_upload_here": "No upload permission for the current folder",
60
+ "Create folder": "Create folder",
61
+ "Pick files": "Pick files",
62
+ "Pick folder": "Pick folder",
63
+ "send_files": "Send {n,plural,one{# file} other{# files}}, {size}",
64
+ "Clear": "Clear",
65
+ "failed_upload": "Couldn't upload {name}",
66
+ "confirm_resume": "Resume upload?",
67
+ "file too large": "file too large",
68
+ "Enter folder name": "Enter folder name",
69
+ "Successfully created": "Successfully created",
70
+ "enter_folder": "Enter the folder",
71
+ "folder_exists": "Folder with same name already exists",
72
+
73
+ "Sort by": "Sort by",
74
+ "name": "name",
75
+ "extension": "extension",
76
+ "size": "size",
77
+ "time": "time",
78
+ "Invert order": "Invert order",
79
+ "Folders first": "Folders first",
80
+ "Numeric names": "Numeric names",
81
+ "theme:": "theme:",
82
+ "auto": "auto",
83
+ "light": "light",
84
+ "dark": "dark",
85
+ "parent folder": "parent folder",
86
+ "home": "home",
87
+
88
+ "Continue": "Continue",
89
+ "Confirm": "Confirm",
90
+ "Don't": "Don't",
91
+ "Warning": "Warning",
92
+ "Error": "Error",
93
+
94
+ "Unauthorized": "Unauthorized",
95
+ "Forbidden": "Forbidden",
96
+ "Not found": "Not found",
97
+ "Server error": "Server error",
98
+
99
+ "Upload": "Upload",
100
+ "Upload terminated": "Upload terminated",
101
+ "upload_finished": "{n} finished ({size})",
102
+ "upload_errors": "{n} failed",
103
+
104
+ "download counter": "download counter"
105
+ }
106
+}
langs/hfs-lang-it.json
+3
-3
@@ -1,7 +1,7 @@
1
{
2
"author": "Massimo Melina",
3
- "version": 1.3,
4
- "hfs_version": "0.38.3",
3
+ "version": 1.4,
4
+ "hfs_version": "0.40.1",
5
"translate": {
6
"Select": "Seleziona",
7
"n_files": "{n} file",
@@ -95,6 +95,6 @@
95
"upload_finished": "{n,plural, one{# riuscito} other{# riusciti}} ({size})",
96
"upload_errors": "{n,plural, one{# fallito} other{# falliti}}",
97
98
- "Hits: ": "D#"
98
+ "download counter": "download conteggiati"
99
}
100
}