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 }