Visual Studio para Mac: características principales del nuevo editor

Durante el año pasado, el equipo de Visual Studio para Mac actualizó los editores dentro del IDE para que sean más rápidos, más fluidos y más productivos. Lo hicimos construyendo una interfaz de editor nativa de macOS sobre el mismo backend del editor que Visual Studio en Windows. En la versión 8.1 presentamos el nuevo editor de C #. Esto fue seguido por el nuevo editor XAML en 8.2. Y más recientemente, actualizamos nuestros idiomas web para utilizar los nuevos editores en la versión 8.3, completando el proceso que nos propusimos hacer hace un año. Para celebrar este logro, quería compartir algunos detalles sobre el diseño y la implementación de los nuevos editores junto con mis cinco nuevas características favoritas en los editores de código de Visual Studio para Mac.

El núcleo de los editores actualizados dentro de Visual Studio para Mac es el servicio de idiomas compartidos con Visual Studio en Windows. Lo que esto significa es que el mismo backend que alimenta la versión de Windows de Visual Studio ahora también alimenta la versión de macOS. Esto incluye IntelliSense, Roslyn, lógica de texto y todos los servicios de idiomas detrás de escena. La única porción no compartida entre Windows y macOS es la capa de interfaz de usuario, que permanece nativa para cada plataforma. En el caso de macOS, eso significa usar marcos de macOS como Cocoa y CoreText para potenciar la experiencia de UI. Mediante el uso de una interfaz de usuario nativa, al mismo tiempo que se puede utilizar la compatibilidad con los métodos de entrada nativos, así como la compatibilidad con idiomas de derecha a izquierda, ligaduras de fuentes y otras características gráficas avanzadas.



Este artículo en nuestro blog .

Ahora que tenemos el poder del nuevo editor en el IDE, echemos un vistazo a mis 5 principales características favoritas del nuevo editor. Todas las características que quiero compartir con ustedes hoy están destinadas a hacer que su experiencia de desarrollo sea más productiva, agradable y divertida. ¡Espero que disfrutes usarlos tanto como nosotros disfrutamos al desarrollarlos!

Edición multi-caret


Multi-caret le permite insertar cualquier número de carets (puntos de inserción de texto) dentro del archivo que está editando. Esto se puede lograr manualmente mediante clics del mouse con control-opción-clic o mediante el teclado. Al usar el teclado, puede utilizar la coincidencia de patrones para insertar la siguiente coincidencia (Opción + Mayús +.) O insertar todas las coincidencias (Opción + Mayús +;). También puede eliminar el último cursor insertado con Opción + Mayús +, o mover el último cursor con Opción + Mayús + /. En el siguiente GIF, uso la Opción + Shift +. tecla de acceso rápido para insertar el siguiente cursor correspondiente dos veces, lo que me permite editar las tres instancias de "doble" dentro de esta página.

La edición multi-caret es una característica muy poderosa que puede reducir en gran medida el tiempo asociado con la edición de varias líneas al mismo tiempo. Por ejemplo, si necesita cambiar un prefijo en varias variables, o cambiar las declaraciones de var específicas a declaraciones fuertemente tipadas, la edición de múltiples carets le permite hacer esto con facilidad.



Filtro de tipo IntelliSense


La siguiente característica que quiero resaltar es el filtro de tipo IntelliSense. Con el filtro de tipo IntelliSense, puede filtrar la lista de finalización por tipo de finalización. Si, por ejemplo, solo desea ver clases en su lista de finalización, puede hacer clic en el icono de clases o usar la tecla de acceso rápido "opción-c". Tenemos una lista completa de tipos por los que puede filtrar, además de sus iconos y teclas de acceso rápido correspondientes en nuestra documentación de Visual Studio para Mac . En el siguiente GIF, uso el filtro de tipo IntelliSense para enfocar mi lista en interfaces, estructuras y finalmente en delegados.



Esta característica es realmente útil cuando no puede recordar el nombre exacto del elemento que desea, o simplemente desea centrarse únicamente en un tipo específico. También funciona muy bien cuando se combina con mi próxima característica favorita, Mostrar elementos de importación.

Mostrar artículos importados


A menudo, cuando estoy trabajando en un proyecto, no siempre puedo recordar el espacio de nombres exacto que necesito importar en mi archivo de código para un tipo específico. Esto a menudo me lleva al pánico y a buscar febrilmente en cualquier lugar que pueda para encontrar la importación que necesito. La siguiente característica alivia esta angustia al mostrar no solo las terminaciones que ya importé, sino también las terminaciones que están disponibles para la importación. Además, si termino seleccionando una de las terminaciones aún no importadas, la instrucción de uso se agregará al encabezado del archivo de código. En el siguiente GIF, agrego "System.ComponentModel.DataAnnotations" a mi proyecto a través de la función Mostrar elementos de importación. También puede haber notado que para los elementos que aún no se importan, el espacio de nombres completo aparece junto al tipo, lo que facilita ver qué agregará el sistema a su encabezado.



La opción Mostrar elementos de importación está actualmente deshabilitada de manera predeterminada, pero puede habilitarla fácilmente abriendo Visual Studio> Preferencias> Editor de texto> IntelliSense y habilitando "Mostrar elementos de importación".

Soporte de entrada de derecha a izquierda y nativa


Una de las principales solicitudes de nuestra comunidad fue habilitar el soporte de idiomas bidireccionales y de derecha a izquierda, y estamos increíblemente emocionados de ofrecer soporte para esas solicitudes en Visual Studio 2019 para Mac. En los editores antiguos, al escribir o pegar cadenas de derecha a izquierda, como las de persa, hebreo o árabe, la palabra aparecía en reversa. Por ejemplo, la palabra "hola" parecería decir "olleh", volteando el texto para que parezca invertido. Con los nuevos editores, se admiten de derecha a izquierda y todo tipo de texto bidireccional.



También hemos introducido soporte de entrada nativo. Como los editores se crean utilizando el kit de herramientas nativo para macOS, insertar texto en el editor es como insertarlo en cualquier otra aplicación nativa de macOS. Esto significa que tienes acceso a todas las funciones avanzadas de ingreso de texto de macOS, como presionar prolongadamente para caracteres acentuados y alternativos, así como el selector de emoji.

Soporte de ligadura


Si usa una fuente que admite ligaduras, como el recientemente lanzado Cascadia Code, Visual Studio para Mac 2019 admitirá automáticamente la inserción de ligaduras en lugar de los glifos comunes de dos caracteres. Por ejemplo, el signo de doble igual (==) se transformará en un signo de igual alargado sin espacio. Del mismo modo, bang-equals (! =) Se transformará en un signo igual con una barra oblicua, representando con mayor precisión el símbolo "no es igual" que bang-equals pretende representar.
En el siguiente GIF, utilizo una simple declaración "if" para demostrar las ligaduras disponibles para varios glifos comunes de varios caracteres diferentes.



Descargar Visual Studio 2019 para Mac


Estas son mis cinco funciones de editores favoritas en Visual Studio para Mac 2019, pero hay mucho más que experimentar a medida que trabaja en un proyecto. Para comenzar con Visual Studio 2019 para Mac Descargue la versión Visual Studio 2019 para Mac v8.3 hoy, o si ya la tiene instalada, ¡ actualice a la última versión usando el canal estable !

Si tiene algún problema con la versión v8.3, utilice el menú Ayuda> Informar un problema en el IDE para informarnos al respecto. También puede proporcionar sugerencias para futuras mejoras utilizando el menú Proporcionar una sugerencia.



Finalmente, asegúrese de seguirnos en Twitter en @VisualStudioMac para mantenerse actualizado sobre las últimas noticias de Visual Studio para Mac y háganos saber cómo ha sido su experiencia. ¡Esperamos tener noticias suyas!

Source: https://habr.com/ru/post/470045/


All Articles