Software-update: Vim 9.1

Vim logo (79 pix) Versie 9.1 van Vi IMproved, oftewel Vim, is kort geleden uitgekomen. Deze universele editor is ooit door Bram Moolenaar voor de Commodore Amiga ontwikkeld, maar is tegenwoordig ook voor Unix, Linux, macOS, OS/2, DOS en Windows beschikbaar. Vim wordt niet actief ontwikkeld en meestal zitten er een paar jaar tussen de verschillende versies. De releasenotes voor deze uitgave kunnen hieronder worden gevonden.

Vim 9.1 is available

The Vim project is happy to announce that Vim 9.1 has finally been released. This release is dedicated to Bram Moolenaar, Vim's lead developer for more than 30 years, who passed away half a year ago. The Vim project wouldn't exist without his work! Vim 9.1 is mainly a bug fix release, it contains hundreds of bug fixes, a few new features and there are many minor improvements.

New features Here is a list of the most important new features:
  • Vim contains support for Vim9 classes and objects for the Vim9 scripting language, see :h vim9-class
  • New :defer command, to help cleaning up a function, see :h :defer
  • Support for adding virtual-text to a buffer is added. This is useful for language server features (e.g. inlay hints), see :h virtual-text
  • Smooth scroll support has been implemented. See :h 'smoothscroll'
  • An EditorConfig plugin is included with Vim. See :h editorconfig-install
  • Vim has been updated for OpenVMS. See www.polarhome.com/vim
  • xxd has been updated to support color output and allows to reverse bit dumps
Other Improvements and Changes Many bugs have been fixed since the release of Vim 9.0, including various fixes for unsafe memory access, memory leaks, buffer overflows and potential crashes.
  • See the helpfile for other improvements: :h new-other-9.1
  • Changes to existing behaviour is documented at: :h changed-9.1
  • A few new functions, autocommands, ex commands and options have been added: :h added-9.1
  • The full list of patches is documented at: :h patches-9.1
  • The Vim FTP Server has been retired. It is no longer used to distribute artifacts to users. If you used it in the past, please update to using the git repository instead

Vim 8.0

Versienummer 9.1
Releasestatus Final
Besturingssystemen Windows 7, Linux, BSD, macOS, Solaris, UNIX, Windows Server 2008, Windows Server 2012, Windows 8, Windows 10, Windows Server 2016, Windows Server 2019, Windows 11
Website Vim
Download https://www.vim.org/download.php
Licentietype Voorwaarden (GNU/BSD/etc.)

Door Bart van Klaveren

Downloads en Best Buy Guide

10-01-2024 • 19:48

18

Submitter: Vanquish92

Bron: Vim

Update-historie

01-'24 Vim 9.1 18
06-'22 Vim 9.0 41
12-'19 Vim 8.2 28
04-'17 Vim 8.0.586 2
09-'16 Vim 8.0 5
08-'13 Vim 7.4 17
08-'10 Vim 7.3 10
05-'07 Vim 7.1 16
05-'06 Vim 7.0 7
10-'05 Vim 6.4 8
Meer historie

Reacties (18)

18
18
11
2
0
3
Wijzig sortering
Vim krijgt te weinig liefde en wordt helaas vaak aangezien voor 'die rare editor waar je niet uit kan'.
Zo heb ik er ook heel erg lang naar gekeken.

Tot ik iets meer zag over hoe waanzinig snel Vimmers waren in het wijzigen van teksten met Vim.

De leercurve is .... nogal een curve. Maar als je over de eerste hobbel bent en inzicht hebt in het onderscheid tussen de modi (i voor insert, esc voor command, v voor visual) en je een aantal 'sneltoetsen' doorhebt dan zou het zomaar kunnen dat je het erg gaat waarderen en nooit meer anders wil.

Het heeft er bij mij toe geleid dat ik zoveel met mijn toetsenbord werk dat ik ook in mijn webbrowser een Vi-plugin (Tridactyl) gebruik voor Vim-bindings en steeds minder met de muis werk omdat toetsen zoveel sneller kan en ook prettiger aanvoelt voor mij.

Zelf ben ik overgestapt op Neovim, simpelweg omdat daar wat meer ontwikkeling in zit en de meeste interessante plugins voor lijken zijn. Zonder aanpassingen is het wel erg basaal, pas als je je er iets meer in verdiept kom je erachter dat het helemaal niet die rare basale editor is waar je zoveel moeite mee hebt maar wil je nooit anders.

De enige manier om daar achter te komen is denk ik door het zien en horen van hoe anderen ermee werken want als je enthousiast vim start, dan haak je waarschijnlijk binnen 10 tellen al af.

Snel even paar filmpjes opgezocht die misschien goed demo zijn van de kracht van Vim

https://youtu.be/FXCitlsA7eQ?si=C_fo_AWDtRMwOXbv

https://www.youtube.com/watch?v=mHO8M5ZrUek

https://youtu.be/X6AR2RMB5tE?si=xfBkjaGZisFPjzYA

De laatste laat denk ik erg goed in begrijpbaar tempo de kracht van Vim (motions) zien

Nu mijn vingers gewend zijn aan gebruik van hjkl wil ik in ieder geval nooit meer wat anders
Bevalt mij zo goed dat ik na 30 jaar full size keyboard met cursortoetsen nu al een poos geniet van een 60% keyboard omdat ik merkte alleen nog maar dat deel van het toetsenbord te gebruiken. Het hele numerieke deel zat me alleen nog maar in de weg.

Scheelt zo waanzinnig in snelheid als je alles kan zonder je handen te hoeven verplaatsen.

homerow for life
Ja, toetsenbord is bijna altijd veel sneller.
Maar vi(m) is een nachtmerrie met een alternatieve layout (Colemak).
Met een config kan je die remlappen, maar op een default / business server kan je natuurlijk niet even je persoonlijke maps toevoegen.
Ik weet niet wat een server er precies mee te doen heeft.
Je client OS bepaald wat te doen met de informatie die vanaf het toetsenbord komt.
En dan kan je op Linux/BSD nog wat verder gaan dan bij Windows.

Ik heb bv van mijn Caps knop de Esc gemaakt (want mijn vingers reiken niet verder genoeg de Esc knop makkelijk te kunnen tikken als ik comfortable op de home row werk) en Caps + hjkl mapped naar cursor zodat ik ook buiten vim altijd de vim bindings hjkl kan gebruiken , Caps mist ook niemand

Maar wel klein beetje jammer dat het hjkl is en niet jkl; (voel maar met wijsvinger op de J en F toets als je afvraagt waarom)

Maar zelfs als je compleet andere layout van toetsen hebt kan je ervoor kiezen om de toets derde rijd van boven 7e van links te gebruiken voor Cursor links etc

Dan moet je inderdaad wel het eea aanpassen in je vim config maar als je Colemak of Dvorak gebruikt dan doe je dat vast vanwege efficientie en heb je dat ook moeten aanleren voordat je er profijt van merkte. Zo is dat met Vim net zo.

Kan best maar kost je uurtje of wat lezen en configs naar je eigen zinnen aanpassen;

https://forum.colemak.com/topic/50-colemak-vim/p6/
https://www.xudongz.com/blog/2017/vim-colemak/
https://github.com/jooize/vim-colemak
https://github.com/beardedfoo/vim-colemak

Dat je dit niet binnen 10 minuten even hebt gefixt en eraan gewend bent begrijp je vast

En je moet wel even mentaal switchen als je mensen ziet spreken over toetsen.
Maar feitelijk moet je de opdruk van je toetsen negeren (denk blind typen) want je computer zit niet wat voor plaatje op die toets staat.

hjkl wordt dan voor jou hnei maar zijn dezelfde toetsen op dezelfde plek
Ik weet niet wat een server er precies mee te doen heeft.
Je kan op een bedrijfsserver niet even je eigen config inladen/importeren, want vaak heb je daar een gedeeld beheeraccount en niet de vrijheid ook om je eigen spullen/aanpassingen te doen.
Dat lukte mij wel met gebruik maken van expect en /tmp/ lukt het wel om je eigen "omgeving" te creëren waar anderen geen enkele last van hebben.
Je kan op een bedrijfsserver niet even je eigen config inladen/importeren, want vaak heb je daar een gedeeld beheeraccount en niet de vrijheid ook om je eigen spullen/aanpassingen te doen.
Nou, dan doet je beheer toch iets niet goed, want dit is heel makkelijk op te lossen met sudo. Bovenden kun je files ook lokaal editen en dan mergen met bijvoorbeeld SSH. Maar dan nog als dat geen oplossingen zijn kun je ook gewoon een eigen config dir creëren. Bovendien kun je gewoon een locatie opgeven om je .vimrc in te laden. Nou gebruik ik liefst Neovim als ik Vim gebruik en daar is het de flag -u; kan voor Vim anders zijn.
Mua, ligt eraan. Ik ken servers van klanten die compleet dichtgetimmerd zijn en waar je geen eigen files op mag zetten, staat ook in het contract. Doe je dat wél dan krijg je (en/of de zaak) een hele dikke boete. Toegegeven, dat zijn servers voor bijvoorbeeld ziekenhuizen of banken, maaar helemaal ongehoord is het dus niet.

Ik snap trouwens niet wat sudo te maken heeft met het niet aan mogen maken van een eigen config map in je eigen homedir. Als je daar sudo voor nodig hebt dán doe jij (of je beheersafdeling) inderdaad wat (gruwelijks) fout.

[Reactie gewijzigd door sfranken op 22 juli 2024 15:45]

Ik heb een pentesting achtergrond dus compleet dichtgetimmerd neem ik met een korrel zout. Contracten zijn gewoon bespreekbaar. Ik denk dat de oplossing met een file lokaal editten en dan met SSH pushen het meest platform agnostisch is.

Je had het over een gedeeld beheeraccount. Dat is helemaal niet gunstig voor accountability, en sudo (of iets soortgelijks) heeft daar alles mee te maken. Met -E kun je namelijk je env vars behouden. Dat is de default behavior met su.
Maar vi(m) is een nachtmerrie met een alternatieve layout (Colemak).
Dat is een probleem met elk programma en non-qwerty keybinds. Met Emacs of Sublime Text heb je hetzelfde; chords die voorheen veelgebruikt doch fijn waren, zijn nu ineens lastig(er).
Vim wordt niet actief ontwikkeld
Wat wordt er bedoeld met deze zin? Gezien de nieuwe versie wordt het wel actief ontwikkeld lijkt me.

[Reactie gewijzigd door MaestroMaus op 22 juli 2024 15:45]

Bor Coördinator Frontpage Admins / FP Powermod @MaestroMaus10 januari 2024 19:58
Vim wordt niet actief ontwikkeld en meestal zitten er een paar jaar tussen de verschillende versies.
Er komen dus wel nieuwe versies uit maar zeer sporadisch. De vorige update was in 2022. Daarvoor 2019, daarvoor 2017.
Die zin is simpelweg fout :-)
Er zijn tientallen vrijwilligers die dagelijks aan vim werken.
Kijk maar even op de github repo: activiteit in overvloed!
Vim werkt meer met kleine patch versies, dus v9.1-patch123.
En het klopt dat er niet regelmatig grote releases gemaakt worden maar dat is in deze context ook niet echt relevant, de vim versie die ik gebruik (in Debian) wordt heel regelmatig geüpdatet naar de nieuwste patch versie.
Je hebt gelijk. Maar ja, het is geen Agile, dus niet iedere maand een release met één (of als het meezit wel twee!) bugfixes. Als die "hundreds of bugfixes" van 9.1 over de afgelopen 18 maanden waren uitgesmeerd en we nu bij Vim versie 143 zouden zitten, zou het "wel actief ontwikkeld" worden genoemd.
Zie ook de discussie van de vorige versie.
Blij dat het stokje is overgenomen. Gebruik VIM sinds ongeveer de eeuwwisseling en zo goed als elke dag. Schrijf er boeken in, alle documentatie en handleidingen voor het werk (duizenden en duizenden pagina's bij mijn huidige werkgever alleen al). Ik vind het echt heerlijk. Ik voelde mij echt enkele dagen naar, na het horen van het overlijden van Bram.
Nice, net even op mn linux doosje update gedaan :9

git pull
make distclean
./configure
make
make install

en bijgewerkt. Flinke lijst met patches/bugfixes iig
Dan zou ik
git pull
make distclean -j $(nproc)
./configure
make -j $(nproc)
make install
doen, maar dat ben ik.

[Reactie gewijzigd door sfranken op 22 juli 2024 15:45]

Dat zou inderdaad een prima optie zijn, maar mijn doosje (hence de 'je') heeft maar 1 cpu dus was imho niet nodig in mijn geval.

Op dit item kan niet meer gereageerd worden.