• skip to content

Wiki

User Tools

  • Admin
  • Log In

Site Tools

  • Recent Changes
  • Media Manager
  • Sitemap
Trace:

community:contribute

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
community:contribute [2019/05/25 21:43] – created fa201community:contribute [2020/01/24 19:37] (current) – Remove under work notice flywire
Line 1: Line 1:
-** This section is under work** +====== Contributing ======
- +
-====== How to contribute? ======+
  
 The basic nature of LibreCAD as an open source free software is to **be open to improvement**. The variety of contributor profiles makes LibreCAD richer so //everybody is welcomed !// Beginners have a fresh look and may report issues that experienced users are used to and do not report. The basic nature of LibreCAD as an open source free software is to **be open to improvement**. The variety of contributor profiles makes LibreCAD richer so //everybody is welcomed !// Beginners have a fresh look and may report issues that experienced users are used to and do not report.
  
 Contributing includes various aspects and skills: Contributing includes various aspects and skills:
-  * **coding:** fixings bugs, implement new features, extend current features, maintenance. +  * **support**: answer to questions from users on [[http://forum.librecad.org/|LibreCAD forum]].
-  * **testing** new features for bugs or improvements. +
-  * **translating** the user interface or the documentation from English to your language. (lien page translation).+
   * **documentation:**    * **documentation:** 
-    * [[https://librecad.readthedocs.io/en/latest/index.html|user guide and command reference]].+    * [[https://librecad.readthedocs.io/en/latest/index.html|user manual]].
     * this DokuWiki : share useful information such as tutorials, FAQ, best practices.     * this DokuWiki : share useful information such as tutorials, FAQ, best practices.
-  * support : answer to questions from users on [[http://www.librecad.org/cms/home/get-help/forum.html|LibreCAD forum]].+  * **translating:** the user interface or the documentation from English to your language. (lien page translation). 
 +  * **coding:** fixings bugs, implement new features, extend current features, maintenance. 
 +  * **testing:** new features for bugs or improvements.
  
 As you can see, **even beginners can contribute** through feed-backs, testing or documentation. Contributing is also an opportunity to develop your skills. As you can see, **even beginners can contribute** through feed-backs, testing or documentation. Contributing is also an opportunity to develop your skills.
  
-The team set up tools (Github, forums, Wiki) and communication channels to ask for help and to coordinate. The most convenient channel to connect with contributors are the [[http://www.librecad.org/cms/home/get-help/forum.html|LibreCAD forum]] and [[https://librecad.zulipchat.com|Zulip chat]]. +The team set up tools (Github, forums, Wiki) and communication channels to ask for help and to coordinate. The most convenient channel to connect with contributors are the [[http://forum.librecad.org/|LibreCAD forum]] and [[https://librecad.zulipchat.com|Zulip chat]].
- +
-Please see the following sections for coding, translating LibreCAD in your language and documentation. +
- +
-===== Write code ====== +
- +
-LibreCAD code is hosted by [[https://github.com/LibreCAD/LibreCAD|Github]]. LibreCAD releases 2 and 3 are developped together. +
- +
- +
-===== Need for developers ===== +
- +
-LibreCAD is coded with: +
-  * C +
-  * Qt +
- +
- +
-===== Translating LibreCAD in your language ===== +
- +
-==== Context ==== +
- +
-English is used for developping LibreCAD code, for the GUI and for all the documentation. +
-GUI translators ensure that the LibreCAD interface is available in //other languages//. GUI means all the menus, messages and commands visible to the user. +
- +
-The list of languages available is given at [[http://translate.librecad.org|LibreCAD Translation Server]]. Each language is supported at a different level : some part may not be translated yet due to the lack of translator or due to new feature implemented. +
- +
-==== How to translate? ==== +
- +
-For translating the GUI, **no programming skills are needed!** First, you need to register to set up your account. Then, you can make translation proposals. +
- +
-=== If you are a new translator === +
-You need to set up your account: +
-  - Create an account on LibreCAD forum. Check [[http://forum.librecad.org/LibreCAD-translate-f5710645.html|translation topic]] +
-  - Go to the [[http://translate.librecad.org|LibreCAD Translation Server]] and register a new Pootle account. Pootle is the application managing the translations. +
-  - Go to the LibreCAD-translate Sub-Forum and post your request for permissions with your //Pootle username// and the //language// you want to work on. +
-  - When the administrator sets the permissions for your Pootle account, you will get a reply in the forum and can then start using the Translation Server. +
- +
-=== Pootle setup === +
- +
-For worldwide collaboration on translating LibreCAD GUI in many languages, a Web application for translation is necessary. LibreCAD uses Pootle for this job. The //ts// files are imported into Pootle database and during a synchronisation //ts// files are updated from the database. +
- +
-After activating your account and login the first time, there is a link in the //Quick Links// section, where you can join the language you want to work on. You can find this later on the //MyAccount// page in the //Settings// tab. +
- +
-To join a language select it in the //Languages// list. You also have to select the one and only project LibreCAD in the //Projects// list. +
- +
-Then you will have the links to your language and LibreCAD project in your //Dashboard//. Keep the //Alternative Source Languages// list, as we only have English as source language.  +
- +
-=== Translating === +
- +
-Use the LibreCAD project link on your //Dashboard//. You will see the //Overview// tab with the two sub-projects //plugins// and //ts//. The //plugins// project keeps all the text from LibreCAD PlugIns and the //ts// project has all texts from the main application.  +
- +
-Until the translation is complete, you see links in the //Overview Summary// column with the number of words needing attention. Click on that link and you get directed to the first word or string that needs attention. Needing attention means, that there is no translation at all or there is a translation, but it is marked as fuzzy. After submitting or suggesting the translation you are directed to the next word needing attention.  +
- +
-== Searching == +
-If you found an issue in the application, you can search by entering the English source word or the translated word in the search box in the top right edge. Then your are directed to the first occurrence of the search term. If this is not the word you are searching for, click on the //Next// link below the translation editor, to find the next occurrence. +
- +
-== Suggestions == +
- +
-Translations may have one or multiple suggestions. These suggestions are made by members who are not allowed to submit translations or by unregistered users. To work on suggestions, change from //Overview// to //Review// tab. There you find //View Suggestions// for the sub-projects which will direct you to the first word with suggestions. +
- +
-When you accept a suggestion, it is transferred to the editor and you can edit it or submit it unchanged. Delete other suggestions if present, before submitting, or you will be directed to this translation again later. +
- +
-== Fuzzy == +
- +
-If you are not sure about a translation, you can check the //Fuzzy// box on the right side of the editor. This stores the translation in the database, but it is not released to the application. Fuzzy translations are shown when using the //Words need attention// mode. When the translation is checked or edited, uncheck the //Fuzzy// box and submit it.  +
- +
-== Submit == +
- +
-After editing a translation click the //Submit// button to save your changes. Be sure about the state of the //Fuzzy// check box : the translation will find its way to the application only when it is unchecked.  +
- +
-== Synchronisation == +
- +
-Since the translation server is not GitHub, we have to sync both servers. From time to time, the Translation server pulls latest changes from GitHub to update the local Git repository. The changes from Pootle server are merged to the local Git repository. Then the local Git repository is pushed back to GitHub. So changes on the Translation server can only be found on GitHub after this sync process. Only the version on GitHub is recognized for deployment. If you have reached a milestone in your translation progress and wish to have a sync, please post your request in the LibreCAD-translate forum.  +
- +
-== Standard dialogs == +
- +
-There are standard dialogs in LibreCAD, e.g. file open or save, which may be not translated in other languages. These dialogs use a translation dictionary file deployed with Qt, because the source for these dialogs is in the Qt source code files. LibreCAD deploys the Qt //qm// files, but LibreCAD supports much more languages than Qt. So if Qt does not support your language then these standard dialogs are not translated when LibreCAD is used with this language. +
- +
-If there are any issues, feel free to post in the LibreCAD-translate Sub-Forum. +
- +
- +
-===== Contribute to the documentation ===== +
- +
-The documentation is very important to users. It helps to understand how LibreCAD interacts with the user and guide him with some good practices linked to LibreCAD. +
- +
-The community needs two profiles to support this work: +
-  * **editors** +
-  * **architects** +
- +
-==== Need for editors ==== +
- +
-Editors create user manuals, tutorials and Wiki pages. They also maintain the current information and check for grammar and spelling issues. +
- +
-Since LibreCAD is used all over the world, the English documentation should be easily understood by people for which English is not their native language. +
  
-==== Need for architects ====+Please see the following sections for [[community:contribute_code|coding]], [[community:contribute_translate|translating LibreCAD]] in your language and [[community:contribute_documentation|documentation]].
  
-The architects focus on **how the information is organized and presented**. This is not only making the information more presentable and better organized, it is also encouraging further improvements and ensuring consistency of all the documents. If the Wiki is easy to understand then it is easier to contribute to it.+There is a specific way to //contribute for students// on open source programs: [[https://summerofcode.withgoogle.com/about/|Google Summer of Code]]. And LibreCAD is part of it ! You may review past and current GSoC contributions on our [[https://blog.librecad.org/|blog]] and check the [[community:contribute_gsoc|GSoC]] page.
  
-==== If you are a new editor/architect ====+===== Contributors =====
  
-Depending on which part of the document you want to contribute, you will need to create the following accounts: +As an open source software, LibreCAD lives through community contributions. It is not possible to list all contributors but let's try to give an overview : 
-  * [[http://www.librecad.org/cms/home/get-help/forum.html|LibreCAD forum]]: mandatory to interact with users and other editors/architects. +  * LibreCAD 2 [[https://github.com/LibreCAD/LibreCAD/graphs/contributors|code developers]] 
-  * [[https://librecad.zulipchat.com|Zulip chat]]: recommended as information are shared and discussed. It also allows direct messages to someone or everyone to share issues, proposal and to coordinate.  +  * LibreCAD 2 [[https://github.com/LibreCAD/docs/graphs/contributors|documentation editors]] 
-  * [[https://github.com/LibreCAD/docs|Github]]: if you wish to contribute to [[https://librecad.readthedocs.io/en/latest/index.html|user guide and command reference]]. +  * LibreCAD 3 [[https://github.com/LibreCAD/LibreCAD_3/graphs/contributors|code developers]] 
-  * DokuWiki: if you wish to contribute to this Wiki, to tutorials, etc. +We should also mention all //LibreCAD Wiki// editors.
  
 +**Thank you all !**
  
community/contribute.1558820585.txt.gz · Last modified: 2019/05/25 21:43 by fa201

Page Tools

  • Show page
  • Old revisions
  • Backlinks
  • Export to PDF
  • Rename Page
  • Back to top
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki