chore(i8n,docs): processed translations (#41252)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
This commit is contained in:
Nicholas Carrigan (he/him)
2021-02-24 17:55:27 -08:00
committed by GitHub
parent f62de2d0e6
commit 66e40dbd6f
31 changed files with 283 additions and 426 deletions

View File

@ -653,7 +653,7 @@ Aprovisionamiento de las VMs con el código
cd client
```
Inicia las instancias de marcador para el cliente web, estas se actualizarán con artefactos del flujo de Azure.
Start placeholder instances for the web client, these will be updated with artifacts from the Azure pipeline.
> Todo: This setup needs to move to S3 or Azure Blob storage
>

View File

@ -83,15 +83,15 @@ Empieza [a usar MailHog](#using-mailhog).
Abra una nueva pestaña o ventana del navegador y vaya a [http://localhost:8025](http://localhost:8025) para abrir su bandeja de entrada de MailHog cuando se haya completado la instalación y éste se encuentre funcionando. The inbox will appear similar to the screenshot below.
![Captura de pantalla de MailHog 1](images/mailhog/1.jpg)
![Captura de pantalla de MailHog 1](https://contribute.freecodecamp.org/images/mailhog/1.jpg)
Los correos enviados por tu instalación de freeCodeCamp aparecerán como se presenta a continuación
![Captura de pantalla de MailHog 2](images/mailhog/2.jpg)
![Captura de pantalla de MailHog 2](https://contribute.freecodecamp.org/images/mailhog/2.jpg)
Dos pestañas que le permiten ver texto plano o contenido fuente estarán disponibles cuando abra un determinado correo electrónico. Asegúrese de que la pestaña de texto plano está seleccionada como abajo.
![Captura de pantalla de MailHog 3](images/mailhog/3.jpg)
![Captura de pantalla de MailHog 3](https://contribute.freecodecamp.org/images/mailhog/3.jpg)
Todos los enlaces en el correo electrónico deben poder ser pulsados y resueltos a su URL.

View File

@ -2,28 +2,28 @@
Una pull request (PR) le permite enviar cambios desde su bifurcación en GitHub al repositorio principal de freeCodeCamp.org. Una vez que haya hecho cambios en el código, puede seguir estas pautas para abrir un PR.
> [!NOTE] Your PR should be in English. See [here](#index.md?id=translations) for how to contribute translations.
> [!NOTE] Tu PR debe ser en inglés. Consulta [aquí](#index.md?id=translations) para saber cómo contribuir con las traducciones.
## Prepara un buen título para tu PR
Recomendamos usar [titulos y mensajes convencionales](https://www.conventionalcommits.org/) para tus commits y pull request. La convención tiene el siguiente formato:
> `<type>([optional scope(s)]): <description>`
> `<tipo>([ámbito opcional]): <descripción>`
>
> For example:
> Por ejemplo:
>
> `fix(learn): tests for the do...while loop challenge`
When opening a Pull Request(PR), you can use the below to determine the type, scope (optional), and description.
Al abrir una Pull Request(PR), puedes utilizar la siguiente guía para determinar el tipo, ámbito (opcional) y descripción de la PR.
**Tipo:**
| Tipo | Cuándo seleccionar |
|:----- |:-------------------------------------------------------------------------------- |
| fix | Changed or updated/improved functionality, tests, the verbiage of a lesson, etc. |
| feat | Sólo si está añadiendo nuevas funcionalidades, pruebas, etc. |
| chore | Changes that are not related to code, tests, or verbiage of a lesson. |
| docs | Cambios al directorio `/docs` o a las pautas de contribución, etc. |
| Tipo | Cuándo seleccionar |
|:----- |:------------------------------------------------------------------------------------------ |
| fix | Funcionalidades actualizadas o mejoradas, pruebas, redacción de la lección, etc. |
| feat | Sólo si está añadiendo nuevas funcionalidades, pruebas, etc. |
| chore | Cambios que no están relacionados con el código, las pruebas o la redacción de la lección. |
| docs | Cambios al directorio `/docs` o a las pautas de contribución, etc. |
**Ámbito:**
@ -36,7 +36,7 @@ Mantenlo corto (menos de 30 caracteres) y sencillo, puedes agregar más informac
Algunos ejemplos de buenos títulos para PRs serían:
- `fix(a11y): contraste mejorado en la barra de búsqueda`
- `feat: add more tests to HTML and CSS challenges`
- `feat: se agregan más test a los retos de HTML y CSS`
- `fix(api,client): evitar errores CORS en el envío de formularios`
- `docs(i18n): Traducción al chino de la configuración local`
@ -44,15 +44,15 @@ Algunos ejemplos de buenos títulos para PRs serían:
1. Una vez que las ediciones hayan sido confirmadas, se le pedirá que cree un pull request en la página de GitHub de su fork.
![Imagen - Comparar solicitud de pull en GitHub](./images/github/compare-pull-request-prompt.png)
![Imagen - Comparar solicitud de pull en GitHub](https://contribute.freecodecamp.org/images/github/compare-pull-request-prompt.png)
2. By default, all pull requests should be against the freeCodeCamp main repo, `main` branch.
2. De manera predeterminada, todas las pull requests deben estar en contra de la rama freeCodeCamp main repo, `main`.
Asegúrese de que su bifurcación base está configurada en freeCodeCamp/freeCodeCamp al elevar una solicitud de Pull Request.
![Imagen - Comparando bifurcaciones al hacer un pull request](./images/github/comparing-forks-for-pull-request.png)
![Imagen - Comparando bifurcaciones al hacer un pull request](https://contribute.freecodecamp.org/images/github/comparing-forks-for-pull-request.png)
3. Submit the pull request from your branch to freeCodeCamp's `main` branch.
3. Envía el pull request de tu rama a la rama `main` de freeCodeCamp.
4. En el cuerpo de sus relaciones públicas incluya un resumen más detallado de los cambios realizados y por qué.
@ -64,21 +64,21 @@ Algunos ejemplos de buenos títulos para PRs serían:
> Ejemplo: `Cerrar #123` cerrará el problema 123
5. Indicate if you have tested on a local copy of the site or not.
5. Indica si has probado en una copia local del sitio o no.
- This is very important when making changes that are not just edits to text content like documentation or a challenge description. Examples of changes that need local testing include JavaScript, CSS, or HTML which could change the functionality or layout of a page.
- Esto es muy importante cuando se hagan cambios que no sean solo ediciones del contenido de texto como documentación o una descripción de un desafío. Ejemplos de los cambios que necesitan pruebas en el entorno local incluyen JavaScript, CSS o HTML que podrían cambiar la funcionalidad o el diseño de una página.
- If your PR affects the behaviour of a page it should be accompanied by corresponding [Cypress integration tests](/how-to-add-cypress-tests).
- Si tu PR afecta el comportamiento de una página, debe ir acompañada de la correspondiente [pruebas de integración de Cypress](/how-to-add-cypress-tests).
## Comentarios sobre pull requests
> Congratulations! :tada: on making a PR and thanks a lot for taking the time to contribute.
> ¡Felicidades! :tada: por hacer una PR y muchas gracias por tomarte el tiempo en contribuir.
Nuestros moderadores ahora echarán un vistazo y te dejarán tus comentarios. Por favor, sea paciente con los demás moderadores y respete su tiempo. Todos los pull requests son revisados a su debido tiempo.
And as always, feel free to ask questions on the ['Contributors' category on our forum](https://forum.freecodecamp.org/c/contributors) or [the contributors chat room](https://chat.freecodecamp.org/channel/contributors).
Y como siempre, siéntete libre de preguntar en la [categoría de 'Contribuidores' de nuestro foro](https://forum.freecodecamp.org/c/contributors) o [en la sala de chat de contribuidores](https://chat.freecodecamp.org/channel/contributors).
> [!TIP] If you are to be contributing more pull requests, we recommend you read the [making changes and syncing](https://contribute.freecodecamp.org/#/how-to-setup-freecodecamp-locally?id=making-changes-locally) guidelines to avoid having to delete your fork.
> [!TIP] Si quieres contribuir con más PRs, te recomendamos que leas las directrices ["haciendo cambios y sincronizando"](https://contribute.freecodecamp.org/#/how-to-setup-freecodecamp-locally?id=making-changes-locally) para evitar la necesidad de borrar tu bifurcación.
## Conflicto en un pull request
@ -88,7 +88,7 @@ La mayoría de las veces no puede requerir una rebase, porque aplastamos todos l
### Para arreglos de errores y características habituales
When you are working on regular bugs and features on our development branch `main`, you are able to do a simple rebase:
Cuando trabajas con errores regulares y funcionalidades en nuestra rama de desarrollo `main`, puedes hacer un simple rebase:
1. Reiniciar su copia local:
@ -104,7 +104,7 @@ When you are working on regular bugs and features on our development branch `mai
git add .
git commit -m "chore: resolve conflicts"
# o
# Or
git add .
git commit --amend --no-edit
```
@ -117,7 +117,7 @@ When you are working on regular bugs and features on our development branch `mai
### Para los próximos planes de estudios y características
Cuando estás trabajando en funciones para nuestro próximo currículo `siguiente *` ramas, tienes que hacer una selección de cerezos:
Cuando estás trabajando en características para nuestras próximas ramas del plan de estudio `next-*`, tienes que hacer un "cherry pick":
1. Asegúrese de que su autor está sincronizado con su local:

View File

@ -8,7 +8,7 @@ Para comenzar a revisar y aprobar traducciones, visita [ nuestro sitio de traduc
Deberías ver una lista de los proyectos para los que te concedieron acceso. Selecciona el proyecto que quieres revisar y luego selecciona el idioma.
![Imagen - Árbol de archivos de la vista de proofreading ](./images/crowdin/proof-file-tree.png)
![Imagen - Árbol de archivos de la vista de proofreading ](https://contribute.freecodecamp.org/images/crowdin/proof-file-tree.png)
Ahora podrás ver la lista de archivos disponibles. Selecciona un archivo haciendo clic en el botón `Proofread` que se encuentra a la derecha de ese archivo, y luego selecciona la opción `Proofreading` del menú desplegable que se abrirá.
@ -16,7 +16,7 @@ Ahora podrás ver la lista de archivos disponibles. Selecciona un archivo hacien
## Revisar traducciones
![Imagen - Vista de proofreading](./images/crowdin/proofread.png)
![Imagen - Vista de proofreading](https://contribute.freecodecamp.org/images/crowdin/proofread.png)
<!--Add proofread/crowdsource button to the image-->

View File

@ -135,10 +135,10 @@ Necesita una referencia de su clon local al repositorio `upstream` además del r
The output should look something like below (replacing `YOUR_USER_NAME` with your GitHub username):
```console
origin https://github.com/YOUR_USER_NAME/freeCodeCamp.git (fetch)
origin https://github.com/YOUR_USER_NAME/freeCodeCamp.git (push)
upstream https://github.com/freeCodeCamp/freeCodeCamp.git (fetch)
upstream https://github.com/freeCodeCamp/freeCodeCamp.git (push)
origin https://github.com/YOUR_USER_NAME/freeCodeCamp.git (fetch)
origin https://github.com/YOUR_USER_NAME/freeCodeCamp.git (push)
upstream https://github.com/freeCodeCamp/freeCodeCamp.git (fetch)
upstream https://github.com/freeCodeCamp/freeCodeCamp.git (push)
```
## Ejecutando freeCodeCamp localmente
@ -205,7 +205,7 @@ Iniciar el servidor MongoDB en un terminal separado:
- En Windows, debe especificar la ruta completa al binario `mondios`
```console
"C:\Archivos de programa\MongoDB\Servidor\3.6\bin\mongod"
"C:\Program Files\MongoDB\Server\3.6\bin\mongod"
```
Asegúrate de reemplazar `3.6` con la versión instalada
@ -223,7 +223,7 @@ npm run seed
Ahora puede iniciar el servidor API y las aplicaciones cliente.
```console
desarrollo de ejecución npm
npm run develop
```
Este único comando lanzará todos los servicios, incluyendo el servidor API y las aplicaciones cliente disponibles para que usted trabaje.
@ -289,7 +289,7 @@ Siga estos pasos:
Actualiza tu copia local del repositorio de freeCodeCamp upstream:
```console
git obtener arriba
git fetch upstream
```
Hard reset your main branch with the freeCodeCamp main:
@ -327,7 +327,7 @@ Siga estos pasos:
Algunos ejemplos de buenos nombres de ramas son:
```md
fix/update-challenges-for-reaccionar
fix/update-challenges-for-react
fix/update-guide-for-html-css
fix/platform-bug-sign-in-issues
feat/add-guide-article-for-javascript
@ -489,7 +489,7 @@ Si usted se enfrenta a problemas con la interfaz de usuario, fuentes o ver error
npm run clean
npm ci
npm run seed
npm run developer
npm run develop
```
O
@ -526,7 +526,7 @@ Si no puedes iniciar sesión, y en su lugar ves un banner con un mensaje de erro
```console
netstat -ab | grep "3000"
tcp4 0 0.0.0.0:3000 DESKTOP LISTEN
tcp4 0 0 0.0.0.0:3000 DESKTOP LISTEN
```
**En Windows - Desde PowerShell despegado:**
@ -534,7 +534,7 @@ tcp4 0 0.0.0.0:3000 DESKTOP LISTEN
```powershell
netstat -ab | Select-String "3000"
TCP 0.0.0.0:3000 DESKTOP LISTENING
TCP 0.0.0.0:3000 DESKTOP LISTENING
```
### Problemas instalando dependencias

View File

@ -10,21 +10,21 @@ Deberías ver dos "proyectos" disponibles para traducir: el proyecto `Contributi
Selecciona el proyecto en el que deseas contribuir y verás una lista de idiomas disponibles para traducir.
![Imagen - Lista de idiomas disponibles](./images/crowdin/languages.png)
![Imagen - Lista de idiomas disponibles](https://contribute.freecodecamp.org/images/crowdin/languages.png)
Selecciona el idioma en el que deseas trabajar y verás el árbol de archivos completo.
![Imagen - Lista de archivos disponibles](./images/crowdin/file-tree.png)
![Imagen - Lista de archivos disponibles](https://contribute.freecodecamp.org/images/crowdin/file-tree.png)
Cada archivo y carpeta mostrará una barra de progreso. La parte **azul** de la barra de progreso indica qué porcentaje del archivo se ha traducido, mientras que la parte **verde** de la barra de progreso indica qué porcentaje del archivo ha sido aprobado por el equipo de revisión.
Selecciona un archivo para trabajar y Crowdin abrirá la vista de edición.
> [!NOTE] When the editor view opens, you will need to click the settings icon (shown as a gear) and switch the 'HTML tags displaying' setting to 'SHOW'. This will ensure you can see tags such as `<code></code>` instead of `<0></0>`.
> [!NOTE] Cuando se abra la vista de edición, deberás hacer clic en el icono de configuración (que se muestra como un engranaje) y cambiar la configuración de ''HTML tags displaying (Mostrar etiquetas HTML)" a "SHOW (Mostrar)". Esto asegurará que puedas ver las etiquetas como `<code></code>` en lugar de `<0></0>`.
## Traducir un archivo
![Imagen - Vista de edición](./images/crowdin/editor.png)
![Imagen - Vista de edición](https://contribute.freecodecamp.org/images/crowdin/editor.png)
Crowdin separa un documento en "cadenas" traducibles, normalmente oraciones. Cada cadena se traduce individualmente. Tomando como referencia la imagen anterior:
@ -39,19 +39,19 @@ Crowdin separa un documento en "cadenas" traducibles, normalmente oraciones. Cad
9. Aquí puedes ver la ventana de comentarios. Si tienes preguntas o inquietudes sobre una cadena en particular, puedes dejar aquí un comentario sobre la cadena para que lo vean otros traductores.
10. Estos dos botones de "panel" ocultarán las vistas izquierda (documento) y derecha (comentarios).
> [!NOTE] If you see a hidden string that includes translations, please notify us in the [translators chat room](https://chat.freecodecamp.org/channel/translators) so we can remove the translation from memory.
> [!NOTE] Si ves una cadena oculta que incluye traducciones, notifícanos en la [ sala de chat de traductores ](https://chat.freecodecamp.org/channel/translators) para que podamos eliminar la traducción de la memoria.
Cuando hayas completado la traducción de una cadena, pulsa el botón `Save` (guardar) para almacenar tu traducción en Crowdin. Luego, otros contribuyentes podrán votar tu traducción y los proofreaders podrán aprobarla.
Eres bienvenido a traducir tantas cadenas como desees, no se requieren pasos adicionales cuando completas todo un archivo o propones una nueva traducción. Hacer clic en el botón `Save` es todo lo que se necesita para almacenar una traducción.
> [!NOTE] If you see something in the English source file that is inaccurate or incorrect, please do not fix it through the translation flow. Instead, leave a comment on the string to notify us that there is a discrepancy, or create a GitHub issue.
> [!NOTE] Si ves algo en el archivo fuente en inglés que sea inexacto o incorrecto, no lo corrijas a través del flujo de traducción. En su lugar, deja un comentario en la cadena para notificarnos que hay una discrepancia, o crea un issue en GitHub.
### Traducir la documentación
Traducir nuestra documentación de contribución es un proceso similar a traducir nuestros archivos de currículo.
> [!NOTE] Our contributing documentation is powered by `docsify`, and we have special parsing for message boxes like this one. If you see strings that start with `[!NOTE]`, `[!WARNING]`, or `[!TIP]`, these words should NOT be translated.
> [!NOTE] Nuestra documentación de contribución esta basada en `docsify`, y tenemos una forma especial de procesar los cuadros de mensaje como este. Si ves cadenas que comiencen con `[!NOTE]`, `[!WARNING]` o ` [!TIP]`, estas palabras NO deben traducirse.
## Calificar traducciones
@ -67,18 +67,18 @@ Hemos habilitado algunos pasos de control de calidad que verificarán que una tr
Cuando intentes guardar una traducción, es posible que veas aparecer un mensaje de advertencia con una notificación sobre tu traducción propuesta.
![Imagen - Mensaje de advertencia de control de calidad](./images/crowdin/qa-message.png)
![Imagen - Mensaje de advertencia de control de calidad](https://contribute.freecodecamp.org/images/crowdin/qa-message.png)
Este mensaje aparece cuando el sistema de control de calidad de Crowdin ha identificado un posible error en la traducción propuesta. En este ejemplo, hemos modificado el texto de una etiqueta `<code>` y Crowdin lo ha detectado.
> [!WARNING] You have the option to save a translation in spite of errors. If you do, by clicking "Save Anyway", you should also tag a proofreader or project manager and explain why the QA message needs to be ignored in this case.
> [!WARNING] Tienes la opción de guardar una traducción a pesar de los errores. Si lo haces, al hacer clic en "Save Anyway (Guardar de todos modos)", también debes etiquetar a un miembro del equipo de revisión o encargado del proyecto y explicar por qué el mensaje de control de calidad debe ignorarse en este caso.
## Buenas prácticas de traducción
Follow these guidelines to ensure our translations are as accurate as possible:
Sigue estas pautas para asegurarte de que nuestras traducciones sean lo más precisas posible:
- No traduzcas el contenido dentro de las etiquetas `<code>`. Estas etiquetas indican texto que se encuentra en el código y deben dejarse en inglés.
- No agregues contenido adicional. Si crees que un desafío requiere cambios en el contenido del texto o información adicional, debes proponer los cambios a través de un issue de GitHub o una pull request que modifique el archivo en inglés.
- No cambies el orden del contenido.
If you have any questions, feel free to reach out to us in our [translators chat room](https://chat.freecodecamp.org/channel/translators) and we will be happy to assist you.
Si tienes alguna pregunta, no dudes en comunicarte con nosotros en nuestra [sala de chat de traductores](https://chat.freecodecamp.org/channel/translators) y estaremos encantados de ayudarte.

View File

@ -186,7 +186,7 @@ To change text on the client side of things, go to the relevant `.json` file, fi
If the text you want to add to the client exists in the relevant `.json` file, use the existing key. Otherwise, create a new key.
The matching filename`-schema.js` file is the "source of truth" for all of the `.json` files sharing the same name. If you need to add a new key, add it there. Then, add the key to **all** of the `translations.json` files.
The English file is the "source of truth" for all of the `.json` files sharing the same name. If you need to add a new key, add it there. Then, add the key to **all** of the `translations.json` files.
> [!NOTE] Use English text for all languages if the file is translated through Crowdin. The tests will fail if you don't.

View File

@ -166,7 +166,7 @@ Los moderadores del foro tienen la capacidad de borrar los mensajes del usuario.
### Tratando con spam
Para el primer mensaje de correo no deseado de un usuario, envíe un mensaje explicando el problema, y elimine el enlace o mensaje según corresponda. Deja una nota en el perfil del usuario explicando la acción que has tomado. Si el problema persiste, siga el proceso anterior. Bloquear silenciosamente al usuario de publicar (usando la opción de silencio en el panel de Administración de Usuarios), luego enviar una advertencia con el Código de Conducta. Marque la casilla del mensaje privado indicando que su mensaje es una "advertencia formal".
Para el primer mensaje de correo no deseado de un usuario, envíe un mensaje explicando el problema, y elimine el enlace o mensaje según corresponda. Deja una nota en el perfil del usuario explicando la acción que has tomado. If the problem persists, then quietly block the user from posting (using the silence option on the User Admin panel). Send the user a warning with the Code of Conduct. Marque la casilla del mensaje privado indicando que su mensaje es una "advertencia formal".
Puedes hacer preguntas e informar de incidentes en la sección [del foro del personal](https://forum.freecodecamp.com/c/staff).
@ -200,49 +200,42 @@ A veces la gente publicará cosas que creen que son divertidas. No se dan cuenta
Pero si se trata de una ofensa atroz que no puede atribuirse razonablemente a una diferencia cultural o a un malentendido del idioma inglés. entonces debe considerar fuertemente bloquear al miembro del grupo de Facebook.
## Moderando Discord
## Moderating Chat
Así es como los moderadores tratan las violaciones de nuestro [Código de Conducta](https://code-of-conduct.freecodecamp.org/) en Discord:
Here's how moderators deal with violations of our [Code of Conduct](https://code-of-conduct.freecodecamp.org/) on our chat server:
1. **Make sure it was intended to violate the Code of Conduct.** Not all violations of the CoC were intended as such. A new camper might post a large amount of code for help, unaware that this can be considered spamming. In these cases, you can just ask them to paste their code with services like Codepen or Pastebin.
2. **If the camper clearly and intentionally violates the Code of Conduct, the moderator will proceed as follows:**
- Ban the offending person from the Discord Server. In order to ban someone, right-click on their username/profile picture and select "Ban username". You will be given the option to delete their previous messages - select "Don't delete any", as the messages should remain present as a historic record.
- Report a short summary of the event in the #mod-log channel. Here's an example of what such a summary might look like:
2. **If the camper clearly and intentionally violates the Code of Conduct, the moderator will proceed as follows:** Kick or mute the offending person from the chat room. In order to kick or mute someone, left-click on their profile picture, select the three dots, and select "Remove from room" to kick or "Mute user" to prevent them from sending messages. Then report a short summary of the event in the #mod-log channel. Here's an example of what such a summary might look like:
```
Banned: _@username_
Kicked: _@username_
Reason(s): _Spamming, trolling_
Evidence: _One or more links to the offending message(s)_
```
- If you decide to ban someone, it means they're unwilling to abide to our Code of Conduct. Therefore unbanning a Camper should rarely occur. However, if the need arises, you can do so by clicking on the server name, choosing "Server Settings", choosing "Bans", selecting the user you wish to unban, and clicking "Revoke Ban".
3. **Creating a Private Discussion** There may be situations where you need to address a concern with a camper privately. This should not be done through DMs, as this can lead to situations where you claim one thing and the camper claims another. Instead, use the bot's functionality to create a private discussion:
Los Bans de Discord son globales - no puedes banear a un usuario de un canal específico, solo de todo el servidor.
- Call the `!fCC private username` command, where `username` is the camper's chat user name.
- The bot will create a new channel, and add the mentioned camper and all moderators with the `Your Friendly Moderator` role. While all moderators are added to the channel for transparency, the moderator who calls this command should be the only one to interact with the camper unless they request assistance.
- When the conversation is complete, call the `!fCC close` command _in the private channel_ to have the bot close and delete that channel.
3. **Creating a Private Discussion**
There may be situations where you need to address a concern with a camper privately. This should not be done through DMs, as this can lead to situations where you claim one thing and the camper claims another. Instead, use the bot's functionality to create a private discussion:
- Call the `!fCC moderate private @username` command, where `@username` is the _Discord mention_ of the user. If you are calling this command from a private channel (such as #mod-chat), you will need to parse the mention manually: Ensure you have Developer Mode turned on in your Discord settings, then right-click on the user's avatar and select `Copy ID`. Replace the `@username` parameter with `<@!ID>`, where `ID` is the value you copied earlier. The result should look like: `!fCC moderate private <@!465650873650118659>`.
- The bot will create a new channel under the `private` category and add the `@username`-mentioned camper and all moderators with the `Your Friendly Moderator` role. While all moderators are added to the channel for transparency, the moderator who calls this command should be the only one to interact with the camper unless they request assistance.
- When the conversation is complete, call the `!fCC moderate close` command _in the private channel_ to have the bot close and delete that channel.
4. **Deleting messages** Moderators have the ability to delete messages on Discord. They should only exercise this ability in four very specific situations:
4. **Deleting messages** Moderators can delete messages on our chat server. They should only exercise this ability in four very specific situations:
- Someone has posted a pornographic or graphically violent image.
- Someone has posted a link or code that is malicious in nature and could harm other campers who click on it.
- Someone has flooded the chat with lots of spam messages to such an extreme extent (usually involving bots) as to render chat completely unusable.
- Someone has posted an advertisement and/or a self-promoting message/image (social media).
In all other situations - even situations where the code of conduct is violated - Moderators should not delete the message as these are an important historic record. When you do delete a message, make sure you take a screenshot of it first! The screenshot can be logged in the #mod-log channel, but for the #activity-log it is sufficient to say the evidence was "removed due to sensitive content". Note: If the message contains material that would be illegal to take a screenshot of, copy the message link instead - provide that message link to @raisedadead to forward to Discord's Trust and Safety team.
In all other situations - even situations where the code of conduct is violated - moderators should not delete the messages as they are important historic records. When you do delete a message, make sure you take a screenshot of it first! The screenshot can be logged in the #mod-log channel.
5. **Dont use @everyone or @here** Dont use @everyone or @here under any circumstances! Every single person in that chat room will get a notification. In some cases, tens of thousands of people. Instead, if you want people to see an announcement, you can pin it to the channel to allow everyone to read it.
> [!NOTE] If the message contains material that would be illegal to take a screenshot of, copy the message link instead - provide that message link to @raisedadead to forward to Discord's Trust and Safety team.
6. **Dont threaten to ban** If a camper is breaking the code of conduct, dont threaten to ban them, and never warn them in public. Instead, talk to them privately using the bot's `private` command. No one else in that channel needs to know that you banned/suspended the person - campers can view the summary in the #activity-log channel if they want to keep up on that information. If a violation was clearly unintended and doesn't warrant a suspension or private conversation, make the offending camper aware of his / her actions without making it come across as a warning. For example:
5. **Dont use @all or @here** Dont use @all or @here under any circumstances! Every single person in that chat room will get a notification. In some cases, tens of thousands of people. Instead, if you want people to see an announcement, you can pin it to the channel to allow everyone to read it.
- Camper posts a wall of code to request help
6. **Dont threaten to take action** If a camper is breaking the code of conduct, dont threaten to take moderator action, and never warn them in public. Instead, talk to them privately using the bot's `private` command. No one else in that channel needs to know that you banned/suspended the person. If a violation was clearly unintended and doesn't warrant a suspension or private conversation, make the offending camper aware of his / her actions without making it come across as a warning. For example:
- Camper posts a wall of code to request help:
Moderator: @username Please use Codepen or Pastebin when posting large amounts of code.
@ -250,26 +243,18 @@ In all other situations - even situations where the code of conduct is violated
Moderator: @username Please use Codepen or Pastebin when posting large amounts of code, because it disrupts the chat for everyone and could be considered spamming according to our Code of Conduct.
- For mild and unintentional violations of the code of conduct
- For mild and unintentional violations of the code of conduct:
Moderator: This is a friendly reminder for everyone to follow the code of conduct: https://code-of-conduct.freecodecamp.org/
7. **Dont brag about being a moderator** Do not see yourself as above the community. You are the community. And the community has trusted you to help protect something rare that we all share - a _welcoming_ place for new developers. If you brag about being a moderator, people may feel uneasy around you, in the same way, that people may feel uneasy around a police officer, even if theyre doing nothing wrong. This is just human nature.
7. **Dont brag about being a moderator** Do not see yourself as above the community. You are the community. And the community has trusted you to help protect something rare that we all share - a _welcoming_ place for new developers. If you brag about being a moderator, people may feel uneasy around you, in the same way that people may feel uneasy around a police officer, even if theyre doing nothing wrong. This is just human nature.
8. **Dont contradict other moderators** If you disagree with the action of a moderator, talk with them in private or bring it up in the #mod-chat channel. Never override a ban, and never contradict the other moderator(s) publicly. Instead, have a cool-headed discussion in mod-chat and convince the moderator that they themselves should reverse their ban or change their point of view. Remember: were all on the same team. We want to dignify the role of moderators and present a unified front.
8. **Dont contradict other moderators** If you disagree with the action of a moderator, talk with them in private or bring it up in the #mod-chat channel. Never override a moderator's action, and never contradict the other moderator(s) publicly. Instead, have a cool-headed discussion in #mod-chat and convince the moderator that they themselves should reverse their ban or change their point of view. Remember: were all on the same team. We want to dignify the role of moderators and present a unified front.
9. **Talk with other moderators** We have a room for moderators only. Use it! If you feel uncomfortable with how to handle a certain situation, ask other moderators for help. If you think something should be discussed, do it. You're part of the team and we value the input of every team member! Even if you totally disagree with anything in these guidelines or the Code of Conduct!
10. **Temporarily inactive** If you're not going to be active as a Moderator for a while due to vacation, illness, or any other reason, make sure to let the others know in the #mod-chat channel. This is so we know if we can count on you to be regularly active on the server or not.
## Moderating our Chat Server
Moderating the chat server is very similar to moderating the Discord server, but there are a few key differences:
1. **No Ban functionality** At this time, Rocket.Chat does not have a flow for banning users. Users can be muted (so they are prevented from chatting in a room) or kicked from a room.
2. **Modified Bot Commands** The moderation bot in the chat server was developed with a smoother UX in mind. Some of the commands have been modified. Use the `!fCC modHelp` command to view the available functionality. Bot commands in the chat server do NOT require a user mention as they do with Discord.
3. **No Role Mentions** Unlike Discord, Rocket.Chat does not allow you to mention all users by a specific role - this means you cannot ping all moderators at once.
## How to become a moderator
If you are helping people in the community consistently over time, our Moderator Team will eventually take notice, and one of them will mention you as a possible moderator to [our staff](https://forum.freecodecamp.org/g/Team). There are no shortcuts to becoming a moderator.
@ -300,16 +285,12 @@ You may be approached by organizations who want to partner or co-brand with free
You may come across situations where users are seeking medical advice or are dealing with mental health issues and are looking for support. As a matter of policy, you should avoid talking privately about these matters. Should the situation at some point reflect back to fCC, we want to have the conversation(s) on record. Make it clear that we are not medical professionals and that you encourage the user to find professional help. As difficult as it sometimes can be, avoid giving any tips or advice other than pointing the user in the direction of professional help!
If this happens on Discord: Create a private channel for the user and the mod team. This can be done with the bot's `private` command.
If this happens on our chat server: Create a private channel for the user and the mod team. This can be done with the bot's `private` command.
- The user is guaranteed some privacy
- Public chat is no longer disrupted
- Other team members can pitch in, should you be uncomfortable dealing with the situation yourself
If you believe the user is capable of rejoining the community, right-click on the private channel and copy the ID. Put the following message in #mod-log:
> Reference medical advice: `<channel ID> <username>`
Helpful URLs:
http://www.suicide.org/international-suicide-hotlines.html