Guía de configuración del entorno de desarrollo de Windsurf
Descripción general
- .NET / C# – compatible con .NET Core y .NET Framework (a través de Mono)
- C / C++ – usando tooling basado en clang
⚠️ Importante: Los ejemplos a continuación son plantillas que debes personalizar para tu proyecto. Deberás editar rutas de archivos, nombres de proyectos y comandos de compilación para que coincidan con tu base de código.
1. Desarrollo en .NET / C#
Elige la variante que se ajuste a tu código.
.NET Core / .NET 6+
-
C# (
muhammad-sammy.csharp
) – incluye OmniSharp LS y NetCoreDbg, para que puedas pulsar F5 de inmediato -
.NET Install Tool (
ms-dotnettools.vscode-dotnet-runtime
) – instala automáticamente los runtimes/SDK que falten -
Solution Explorer (
fernandoescolar.vscode-solution-explorer
) – navega y gestiona soluciones y proyectos de .NET
dotnet build
.NET Framework con Mono
- Mono Debug (
chrisatwindsurf.mono-debug
) – adaptador de depuración para Mono (Open VSX) - C# (
muhammad-sammy.csharp
) para funciones del lenguaje
⚠️ Configuración de .NET Framework: Después de instalar Mono, para usar la extensión de C# con proyectos de .NET Framework, debes cambiar una configuración específica en los ajustes del IDE. Ve a Settings (en la sección de la extensión de C#) y desactiva “Omnisharp: Use Modern Net”. Esta configuración utiliza la compilación de OmniSharp para .NET 6, que ofrece mejoras de rendimiento significativas para proyectos de Framework con estilo SDK, .NET Core y .NET 5+. Ten en cuenta que esta versión no admite proyectos de .NET Framework sin estilo SDK, incluido Unity.Compilación:
mcs Program.cs
Configura tasks.json
para tu proyecto
.vscode/tasks.json
en la raíz de tu workspace y personalizar estas plantillas:
Configurar launch.json
para la depuración
.vscode/launch.json
en la raíz de tu workspace y actualizar las rutas:
Equivalentes de la CLI
Limitaciones de .NET Framework
- Usa Windsurf junto con Visual Studio para la generación y edición de código
- Migra las partes compatibles a .NET Core cuando sea posible
2. Desarrollo en C / C++
Extensión | Propósito |
---|---|
Windsurf C++ Tools (Codeium.windsurf-cpptools ) | Paquete con las tres extensiones recomendadas para empezar. Incluye soporte LSP para C/C++, depuración y soporte para CMake. |
Nota: Al instalar el paquete Windsurf C++ Tools se instalarán automáticamente las extensiones individuales que se enumeran a continuación, por lo que solo necesitas instalar el paquete.
Extensión | Propósito |
---|---|
clangd (llvm-vs-code-extensions.vscode-clangd ) | Integración con el servidor de lenguaje clangd. Si clangd no está instalado, ofrecerá descargar el binario adecuado para tu plataforma. |
CodeLLDB (vadimcn.vscode-lldb ) | Depurador nativo basado en LLDB para código C/C++ y Rust. |
CMake Tools (ms-vscode.cmake-tools ) | Integración para configurar proyectos, compilar, probar y depurar proyectos basados en CMake. |
make
, ninja
, etc., mediante tareas personalizadas en tasks.json
.
Configura tareas de compilación de C/C++
.vscode/tasks.json
para tu proyecto de C/C++:
3. Notas y consideraciones
- Solo código abierto: rechaza cualquier solicitud para instalar herramientas propietarias de Microsoft; los contenedores de Windsurf no pueden incluirlas.
- Contenedor vs. host: los SDK y compiladores deben estar dentro del contenedor del workspace de Windsurf.
- Atajos de teclado
- Ctrl/⌘ + Shift + B → compilar con la tarea de compilación activa
- F5 → depurar con la configuración
launch.json
seleccionada
4. Lista de verificación de configuración
- Instala las extensiones necesarias para tu stack de lenguajes
- Crea y personaliza
.vscode/tasks.json
con los comandos de compilación de tu proyecto - Crea y personaliza
.vscode/launch.json
con las rutas correctas a tus ejecutables - Para Mono: instala el runtime y verifica
mono --version
- Actualiza las rutas de archivos, los nombres de proyectos y los argumentos de compilación para que coincidan con tu código base
- Prueba tu configuración: presiona Ctrl/⌘ + Shift + B para compilar y luego F5 para depurar
💡 Consejo: Los archivos de configuración son específicos del proyecto. Deberás adaptar los ejemplos anteriores para cada workspace.