Después de un año y medio de desarrollo lanzamiento del editor de texto , que se clasifica como una versión menor, en la que se han corregido errores acumulados y se han propuesto innovaciones individuales.
Código de Vim bajo mi propio copyleft Compatible con la GPL, permite el uso, la distribución y la reutilización sin restricciones del código. La característica clave de la licencia Vim es la cláusula de reversión: las mejoras implementadas en productos de terceros deben contribuirse al proyecto original si el responsable de Vim las considera dignas de consideración y envía la solicitud correspondiente. En cuanto a la distribución, Vim se considera software benéfico, lo que significa que, en lugar de vender el programa o recaudar donaciones para el proyecto, los autores de Vim solicitan a los usuarios que donen cualquier cantidad a organizaciones benéficas si el programa les resulta útil.
В :
- Se ha implementado la compatibilidad con ventanas emergentes. Junto con las propiedades de texto, estas ventanas fueron clasificadas por los desarrolladores de plugins como las funciones faltantes más solicitadas en Vim durante una encuesta en VimConf 2018. Las ventanas emergentes permiten mostrar mensajes, fragmentos de código y cualquier otra información sobre el texto que se está editando. Estas ventanas se pueden resaltar de diversas maneras y abrir y cerrar rápidamente. Implementar esta funcionalidad requirió revisiones significativas de los mecanismos de visualización existentes, así como una API ampliada para admitir ventanas emergentes de plugins.
- Hemos añadido la posibilidad de definir propiedades de texto, que permiten resaltar secciones de texto o áreas arbitrarias. Las propiedades de texto se pueden usar como un mecanismo de resaltado de texto asíncrono, una alternativa a las funciones de resaltado de sintaxis basadas en plantillas disponibles anteriormente. Una característica especial de las propiedades de texto es que se adjuntan al texto asociado y se conservan incluso si se insertan nuevas palabras antes del texto resaltado.
- Para demostrar las nuevas características de Vim 8.2 Un complemento con un juego que permite disparar a ovejas que corren por la pantalla. Las ovejas se muestran mediante ventanas emergentes y el color se implementa mediante propiedades de texto.
- Para demostrar las propiedades del texto, se ha publicado adicionalmente un complemento. , utilizado para resaltar la sintaxis en programas Go, recuperando información sobre la semántica del lenguaje desde un servidor LSP externo (). Las ventanas emergentes en govim se utilizan para mostrar sugerencias contextuales para completar nombres y descripciones de funciones.
- Se ha propuesto un nuevo comando ":const" para definir variables que no se pueden cambiar:
constante TIMER_DELAY = 400
- Se agregó la capacidad de definir diccionarios con claves literales sin usar comillas:
dejar opciones = #{ancho: 30, alto: 24}
- Se agregó la capacidad de usar asignaciones de bloques, lo que hace más fácil asignar fragmentos de texto de varias líneas a variables:
dejar líneas =<< recortar FIN
línea uno
línea dos
FIN - Se agregó la capacidad de construir cadenas de funciones al llamar a métodos:
milista->filtrar(filterexpr)->mapa(mapexpr)->ordenar()->unir()
- El paquete principal incluye la biblioteca xdiff, que permite una mejora significativa en la presentación de las diferencias entre diferentes versiones de texto;
- Se agregó la configuración "modifyOtherKeys" para configurar combinaciones de teclas extendidas
- Se ha añadido compatibilidad con la consola ConPTY, lo que permite visualizar todos los colores en la consola. Windows 10;
- El instalador ha sido modernizado para Windows.
Adicionalmente, se puede señalar rama del editor experimental Neovim es una bifurcación de Vim enfocada en aumentar la extensibilidad y la flexibilidad. El proyecto lleva más de cinco años en funcionamiento. Una reescritura radical del código base de Vim, que introduce cambios que simplifican el mantenimiento del código, proporcionan herramientas para dividir el trabajo entre varios mantenedores, separan la interfaz del núcleo (la interfaz se puede modificar sin modificar los componentes internos) e implementan una nueva arquitectura extensible basada en plugins. Los plugins de Neovim se ejecutan como procesos independientes, utilizando el formato MessagePack para la comunicación.
Fuente: opennet.ru
