Vraag Wat zijn de verschillen tussen de verschillende vim-pakketten die beschikbaar zijn in Ubuntu?


Het verschil tussen vim-gtk en vim-gnome is besproken hier.

Ubuntu biedt meestal meer dan deze twee opties voor vim:

deeee  - vim-nox  - vim-athena easaaFd ,,,,,,,,,,  - vim-* 

Het is niet duidelijk welke vim pakket hebben welke dependecies en welke men bij voorkeur op zijn systeem gebruikt. Ik bewaar mijn vim configuratiebestanden (~/.vim map) op GitHub en kloneer het op elk systeem waaraan ik moet werken. Ze werken met vim-gnome maar zullen ze werken met een van deze distributies?

Kunnen we de belangrijkste verschillen laten opsommen tussen al het mogelijke vim kandidaten beschikbaar op Ubuntu zodat men een weloverwogen beslissing kan nemen?


106
2018-04-16 00:55


oorsprong


dus welke video heb je uiteindelijk geïnstalleerd? ik bedoel ubuntu 12.04 ... dacht aan athena of gnome. ze lijken hetzelfde te doen. - Patoshi パトシ
vim-gtk voor KDE: askubuntu.com/a/33266/9081 - SabreWolfy
@Dilawar, dus wat ben je nu aan het doen? - Robert Siemer
ik gebruik vim-athena (als ik de gui-client moet gebruiken). Ik heb ook gebruikt vim-gnome. Tegenwoordig blijf ik meestal in terminal met vim en gebruikt zelden GUI. - Dilawar


antwoorden:


Inclusief de vim pakket lijken er ten minste zes "vim-varianten" (exclusief beschikbare documentatie of plug-in-pakketten) en de belangrijkste vim pakket in zowel de main en universe repositories.

Hieronder volgt een korte samenvatting van elk (links gaan naar pakketbeschrijving en afhankelijkheden in Ubuntu LTS release 16.04 "Xenial"):

  • vim

    Vim gecompileerd en ingesteld met een vrij standaard set functies. Dit pakket biedt geen GUI-versie van Vim- of scriptingtaalondersteuning. Zie de andere vim- * pakketten als je meer (of minder) nodig hebt.

    Om dit pakket te installeren, voer sudo apt-get install vim

  • jvim-canna - Japanized VIM (Canna-versie)

    Met dit pakket kan Kanji vanuit de console worden ingevoerd.

    Om dit pakket te installeren, voer sudo apt-get install jvim-canna

    Afhankelijk van de libcanna1g bibliotheek

    Het lijkt geen ondersteuning te bieden voor Perl, Python, Ruby of TCL-scripting.

  • vim-Athena - verbeterde vi-editor - gecompileerd met een Athena GUI

    Dit pakket is samengesteld met de Athena GUI in tegenstelling tot GTK + of Gnome.

    Zien dit askubuntu antwoord voor meer informatie.

    Om dit pakket te installeren, voer sudo apt-get install vim-athena 

    Ondersteunt Perl, Python, Ruby en TCL-scripting.

  • vim-gnome/vim-gtk3 - verbeterde vi-editor - gecompileerd met een GNOME GUI (GTK2 voor 17.10, GTK3 vanaf 17.10)

    Om dit pakket te installeren, voer sudo apt-get install vim-gnome

    Afhankelijk van de libgnome2 bibliotheek

    Ondersteunt Perl, Python, Ruby en TCL-scripting.

  • vim-gtk - verbeterde vi-editor - gecompileerd met de GTK2 GUI

    Gebruikt in KDE / Kubuntu-achtige omgevingen

    Om dit pakket te installeren, voer sudo apt-get install vim-gtk

    Ondersteunt Perl, Python, Ruby en TCL-scripting.

  • vim-nox - verbeterde vi-editor

    Net als vim-tiny, is vim-nox een minimale vim-installatie en heeft deze geen GUI. Het wordt geleverd met muisondersteuning, maar geen ondersteuning voor klemborden, IIRC.

    Om dit pakket te installeren, voer sudo apt-get install vim-nox

    Ondersteunt Perl, Python, Ruby en TCL-scripting.

  • vim-tiny - verbeterde vi-editor - compacte versie

    vim-tiny is opgenomen als de standaard vim op Ubuntu-distributies en wordt geleverd met veel optionele functies uitgeschakeld (bijv. meerdere niveaus ongedaan maken).

    Zien dit askubuntu antwoord voor details over de functieset (of het ontbreken daarvan).

    Om dit pakket te installeren, voer sudo apt-get install vim-tiny

    Ondersteunt geen Perl-, Python-, Ruby- of TCL-scripts.

    Zo dicht bij zijn vi zonder te zijn vi.


Lokaal, om te zien welke functies worden ondersteund in een bepaald geïnstalleerd vim-pakket, voert u de volgende opdracht uit: vim --version geeft een lijst met functies die zijn opgenomen (of uitgesloten) in het betreffende pakket.

Op mijn systeem kan ik bijvoorbeeld ook werken vim --version, vim.tiny --versionof vim.athena --version om de verschillen in hun respectieve ondersteunde functies te zien. De Debian / Ubuntu /etc/alternatives systeem bepaalt welk vim-pakket wordt uitgevoerd wanneer u het uitvoertvi of vim, zien Waarvoor worden etc / alternatieven gebruikt?


Python-ondersteuning

Vóór 16.04, de bovengenoemde pakketten (andere dan vim-tiny) inclusief Vim met scripting-ondersteuning voor Python 2. In 16.04 ondersteunen ze allemaal Python 3 en zijn er overeenkomstige *-py2 pakketjes (vim-gnome-py2, bijvoorbeeld) die een Vim-commando met Python 2-ondersteuning bieden. Beide kunnen samen worden geïnstalleerd en de opdrachten zullen bijvoorbeeld vim.gnome en vim.gnome-py2 respectievelijk. Anders de *-py2 pakketten bieden dezelfde functieset als de bijbehorende pakketten. Python 2-ondersteuning is verwijderd na 16.04.


92
2018-04-16 09:34



vim.nox lijkt niet op een minimale vim-installatie, maar eerder een klassieke vim met ondersteuning voor extra scriptingtalen: vim.nox --version toont dezelfde reeks functies als vim.basic maar met + tcl + robijn + lua + perl. Python wordt in beide versies ondersteund. - cbliard
geen enkele gui (enige terminal) lijkt voldoende voor mij. Extra scriptingtalen zijn nodig voor een aantal coole plug-ins die er zijn. - laconbass
Ook pakket 'vim': dit pakket bevat een versie van vim gecompileerd met een vrij standaard set van functies. Dit pakket biedt geen GUI-versie van Vim. Zie de andere vim- * pakketten als je meer (of minder) nodig hebt. Bron - apps.ubuntu.com/cat/applications/vim - pd12
Ik heb me onlangs gerealiseerd dat sommige van bovenstaande al dan niet kunnen hebben +clipboard in hun compilatievlaggen. Klembord is een belangrijke functie voor ontwikkelaars. Waarschijnlijk een goed idee om, in ieder geval vanuit ontwikkelaarstandpunt, in andere pakketten standaard te vermelden wat er nog meer zou kunnen ontbreken. - Dilawar
hoe zit het met vim-gtk3 vs vim-gnome? - Mark Stosberg