54 Contribuir al desarrollo de Emacs
====================================
Emacs es un proyecto colaborativo y animamos a todo el mundo a contribuir.
Hay muchas formas de contribuir a Emacs:
* Encontrando e informando de fallos; ver Informar de fallos.
* Responder preguntas en la lista de correo de usuarios de Emacs :ref:`53.1`.
* Escribiendo documentación, ya sea en el wiki, o en el repositorio de fuentes de Emacs (ver :ref:`53.2`).
* Comprobando si los informes de errores existentes están corregidos en las nuevas versiones de Emacs :ref:`53.4`.
* Arreglando informes de fallos existentes.
* Implementanndo una característica listada en el archivo etc/TODO de la distribución de Emacs, y enviando un parche.
* Implementando una nueva característica y envíando un parche.
* Desarrollando un paquete que funcione con Emacs y publicándolo por su cuenta o en GNU ELPA (``_).
* Portando Emacs a una nueva plataforma, pero esto no es común hoy en día.
Si quiere trabajar en la mejora de Emacs, pongase en contacto con los mantenedores en la lista de correo `emacs-devel `_. Puede pedir que le sugieran proyectos o sugerir sus propias ideas.
Si tiene una petición de funcionalidad o una sugerencia sobre cómo mejorar Emacs, el mejor lugar para enviarla es a `bug-gnu-emacs `_. Por favor, explique lo más claramente posible qué cambio le gustaría ver, y por qué y cómo cree que mejoraría Emacs.
Si ya ha escrito una mejora, por favor, cuéntanoslo. Si aún no ha empezado a trabajar, es útil que contacte con `emacs-devel `_ antes de empezar; podría ser posible sugerirte formas de hacer que su extensión encaje mejor con el resto de Emacs.
Cuando implemente una característica, por favor siga los estándares de codificación de Emacs; vea :ref:`54.1`, las contribuciones sustanciales requieren una cesión de copyright a la FSF; vea :ref:`54.2`.
La versión de desarrollo de Emacs puede descargarse desde el repositorio donde es mantenido activamente por un grupo de desarrolladores. Consulte la página del proyecto Emacs ``_ para conocer los detalles de acceso.
Es importante que escriba sus parches basándote en la versión de trabajo actual. Si empieza desde una versión anterior, su parche puede estar desactualizado (por lo que los mantenedores tendrán dificultades para aplicarlo), o los cambios en Emacs pueden haber hecho innecesario su parche. Después de haber descargado el repositorio fuente, debería leer el archivo ``INSTALL.REPO`` para las instrucciones de compilación (difieren en cierta medida de una compilación normal).
Si quiere hacer contribuciones más extensas, consulta el archivo ``CONTRIBUTE`` (CONTRIBUIR) en el árbol de código fuente de Emacs para obtener información sobre cómo ser un desarrollador de Emacs. Ese archivo se distribuye como parte del tarball de código fuente de cada versión de Emacs, y también puede encontrarse en línea en el repositorio de código fuente de Emacs. Si ha clonado el repositorio de Emacs, siguiendo las instrucciones de ``_, encontrará este archivo en el directorio superior del árbol de fuentes de Emacs.
Si desea documentación sobre Emacs (para saber cómo aplicar el cambio que desea), consulte:
* El Manual de Emacs ``_.
* El `Manual de referencia de Emacs Lisp `_.
* ``_
* ``_
* :ref:`54.1`
* :ref:`54.2`
.. _54.1:
54.1 Normas de Codificación
---------------------------
El código contribuido debe seguir los Estándares de Codificación GNU ``_. Esto también puede estar disponible en info en su sistema.
Si no es así, necesitaremos encontrar a alguien que arregle el código antes de poder usarlo.
Emacs tiene convenciones de estilo y codificación adicionales:
* El apéndice "Consejos y convenciones" de la referencia Emacs Lisp ``_.
* Evite usar ``defadvice`` o ``with-eval-after-load`` para el código Lisp que vaya a ser incluido en Emacs.
* Elimine todos los espacios en blanco finales en todos los archivos fuente y de texto.
* Use ``?\s`` en lugar de ``?`` en el código Lisp para un carácter de espacio.
.. _54.2:
54.2 Asignación de Derechos de Autor
------------------------------------
La FSF (Free Software Foundation) es la propietaria del copyright de GNU Emacs. La FSF es una organización sin ánimo de lucro con la misión mundial de promover la libertad de los Usuarios de ordenadores y defender los derechos de todos los Usuarios de software libre. Para obtener información general, consulte el sitio web ``_.
En general, para contribuciones no triviales a GNU Emacs y paquetes almacenados en GNU ELPA, requerimos que el copyright sea asignado a la FSF. Para conocer las razones de esto, consulte ``_.
La atribución de derechos de autor es un proceso sencillo. Los residentes de muchos países pueden hacerlo de forma totalmente electrónica. Podemos ayudarle a empezar, incluyendo el envío de los formularios que debe rellenar, y responder a cualquier pregunta que pueda tener (o dirigirle a las personas con las respuestas), en la lista de correo ``_.
(Nota: la discusión general sobre por qué algunos proyectos GNU piden una cesión de copyright está fuera del tema de emacs-devel. En su lugar, vea *gnu-misc-discuss*).
Una renuncia de derechos de autor también es una posibilidad, pero preferimos una transferencia de los mismos. Tenga en cuenta que el descargo de responsabilidad, al igual que la transferencia, implica el envío de documentación firmada a la FSF (no basta con decir "esto es de dominio público"). Además, un descargo de responsabilidad no puede aplicarse a trabajos futuros, tiene que repetirse cada vez que quiera enviar algo nuevo.
Podemos aceptar pequeños cambios (aproximadamente, menos de 15 líneas) sin que medie un encargo. Se trata de un límite acumulativo (por ejemplo, tres parches separados de 5 líneas) sobre todas sus contribuciones.