La extensión VS Code Go proporciona soporte de lenguaje enriquecido para el lenguaje de programación Go.
Visual Studio Code 1.75 o posterior (o editores compatibles con las API de VS Code 1.75+)
Vaya a 1.21 o más reciente.
¡Bienvenido! ??
Ya sea que sea nuevo en Go o un desarrollador experimentado en Go, esperamos que esta extensión se ajuste a sus necesidades y mejore su experiencia de desarrollo.
Instale Go 1.21 o posterior si aún no lo ha hecho.
Instale la extensión VS Code Go.
Abra cualquier archivo Go o archivo go.mod para activar automáticamente la extensión. La barra de estado de Go aparece en la esquina inferior derecha de la ventana y muestra su versión de Go.
La extensión depende de go , gopls (el servidor de idiomas de Go) y herramientas opcionales según su configuración. Si falta gopls , la extensión intentará instalarlo. El signo ⚡ junto a la versión Go indica que el servidor de idioma se está ejecutando y que usted está listo para comenzar.

(Instalar herramientas faltantes)
¿Estás listo para comenzar :-) ???
Explore más funciones de la extensión VS Code Go.
Vea la documentación de configuración y los temas avanzados para personalizar la extensión.
Consulte la documentación de herramientas para obtener una lista completa de las herramientas de las que depende la extensión VS Code Go. Puede instalar herramientas adicionales y actualizarlas usando "Ir: Instalar/Actualizar herramientas".
Resuelva problemas con las guías generales de solución de problemas y depuración.
presente un problema por problemas con la extensión.
Inicie una discusión en GitHub u obtenga ayuda sobre Stack Overflow.
Explore los recursos lingüísticos de Go en go.dev/learn y golang.org/help.
Si es nuevo en Go, este artículo proporciona una descripción general sobre la organización del código Go y los comandos básicos go . Mire "Comenzando con VS Code Go" para obtener una explicación sobre cómo crear su primera aplicación Go usando VS Code Go.
IntelliSense: los resultados aparecen para los símbolos a medida que escribe.
Navegación de código: salta o echa un vistazo a la declaración de un símbolo.
Edición de código: compatibilidad con fragmentos guardados, formato y organización de código, y organización automática de importaciones.
Diagnóstico: los errores de compilación, revisión y pelusa se muestran a medida que escribe o guarda.
Soporte mejorado para pruebas y depuración.
Consulte el desglose completo de las funciones para obtener más detalles.
(Completación de código y ayuda con firma)
Además de las funciones de edición integradas, la extensión proporciona varios comandos para trabajar con archivos Go. Puede acceder a cualquiera de estos abriendo la paleta de comandos ( Ctrl+Shift+P en Linux/Windows y Cmd+Shift+P en Mac) y luego escribiendo el nombre del comando. Vea la lista completa de comandos proporcionados por esta extensión.
(Alternar archivo de prueba)
Para un mejor resaltado de sintaxis, recomendamos habilitar el resaltado semántico activando la configuración ui.semanticTokens de Gopls. "gopls": { "ui.semanticTokens": true }
La extensión VS Code Go admite los modos de módulo GOPATH y Go.
Los módulos Go se utilizan para gestionar dependencias en versiones recientes de Go. Los módulos reemplazan el enfoque basado en GOPATH para especificar qué archivos fuente se usan en una compilación determinada y son el modo de compilación predeterminado en go1.16+. Recomendamos encarecidamente el desarrollo de Go en modo módulo. Si está trabajando en proyectos existentes, considere migrar a módulos.
A diferencia del modo GOPATH tradicional, el modo módulo no requiere que el espacio de trabajo esté ubicado bajo GOPATH ni utilice una estructura específica. Un módulo está definido por un árbol de directorios de archivos fuente de Go con un archivo go.mod en el directorio raíz del árbol.
Su proyecto puede involucrar uno o más módulos. Si está trabajando con varios módulos o diseños de proyectos poco comunes, deberá configurar su espacio de trabajo mediante Carpetas del espacio de trabajo. Consulte la documentación sobre diseños de espacios de trabajo admitidos para obtener más información.
Si desea obtener acceso anticipado a nuevas funciones y correcciones de errores, puede utilizar la extensión preliminar. Siguiendo la convención de vscode, utilizamos la versión menor del número de versión de extensión para distinguir las versiones estable y preliminar ( 0.ODD_NUMBER.patch para prelanzamiento, 0.EVEN_NUMBER.patch para versión estable).
Para instalar la versión preliminar, use la lista desplegable para seleccionar "Instalar versión preliminar" o, si ya instaló la extensión Go, use la opción "Cambiar a versión preliminar" en la administración de extensiones de Visual Studio Code. página. Para obtener más detalles sobre este mecanismo, consulte la documentación de Visual Studio Code.
La extensión VS Code Go se basa en Go Telemetry para obtener información sobre el rendimiento y la estabilidad de la extensión y el servidor de idiomas ( gopls ). La carga de datos de Go Telemetry está deshabilitada de forma predeterminada y se puede habilitar con el siguiente comando:
go run golang.org/x/telemetry/cmd/gotelemetry@latest on
Una vez habilitada la telemetría, el servidor de idiomas cargará métricas y seguimientos de pila en telemetry.go.dev. Puede inspeccionar qué datos se recopilan y se pueden cargar ejecutando:
go run golang.org/x/telemetry/cmd/gotelemetry@latest view
Si logramos una adopción suficiente, estos datos pueden acelerar significativamente el ritmo de desarrollo de la extensión Go y ayudarnos a alcanzar un estándar más alto de confiabilidad. Por ejemplo:
Incluso con informes de fallos semiautomáticos en VS Code, hemos visto varios fallos que no se informan durante semanas o meses.
Incluso con un conjunto de puntos de referencia, algunas regresiones de rendimiento no aparecen en nuestro entorno de puntos de referencia (como el error de finalización que se menciona a continuación).
Incluso con muchas ideas geniales sobre cómo mejorar los gopls, tenemos recursos limitados. La telemetría puede ayudarnos a identificar qué funciones nuevas son más importantes y qué funciones existentes no se utilizan o no funcionan bien.
Estas son sólo algunas de las formas en que la telemetría puede mejorar los gopls. La serie de publicaciones del blog sobre telemetría contiene muchas más.
Go telemetry está diseñado para ser transparente y preservar la privacidad. Obtenga más información en https://go.dev/doc/telemetry.
La extensión Go es mantenida por ingenieros del equipo de herramientas Go, quienes monitorean activamente VS Code Go y los rastreadores de problemas de Go.
Solo admitimos las últimas versiones estables y preliminares de la extensión.
La extensión Go sigue la Política de versiones de Go, lo que significa que admite oficialmente las dos versiones principales de Go más recientes. El equipo de Go mantiene el mejor soporte posible para las últimas tres versiones principales de Go.
La extensión Go se basa en herramientas como gopls y dlv para sus funcionalidades principales y tienen su propia política y cronograma de lanzamiento. Realizamos pruebas únicamente con las últimas versiones de estas herramientas.
En caso de que necesite trabajar con una versión anterior de Go, consulte la página de Compatibilidad e instale manualmente la versión compatible de la extensión y las herramientas.
Agradecemos sus contribuciones y le agradecemos por trabajar para mejorar la experiencia de desarrollo de Go en VS Code. Si desea ayudar a trabajar en la extensión VS Code Go, consulte nuestra guía de contribución para aprender cómo crear y ejecutar la extensión VS Code Go localmente y contribuir al proyecto.
Este proyecto sigue el Código de conducta de Go Community. Si encuentra un problema relacionado con la conducta, envíe un correo electrónico a [email protected].
MIT