Fugitive.vim

Last updated
fugitive.vim
Original author(s) Tim Pope
Developer(s) Tim Pope et al.
Initial release15 February 2010;14 years ago (2010-02-15) [1]
Stable release
3.7 / 7 June 2022;2 years ago (2022-06-07) [1]
Repository github.com/tpope/vim-fugitive
Written in Vim script
Operating system Unix, Linux, Windows NT, macOS, iOS, Android, AmigaOS
Available inEnglish
Type
  • Git wrapper
  • Text editor plugin
License Free software (Vim License), charityware

fugitive.vim, also called vim-fugitive or just fugitive, is a Git wrapper written as a plugin for the Vim text editor. It was originally developed by Tim Pope, who still [ when? ] maintains the plugin. [2] [3] [4] [5]

Contents

Name

As with other plugins by Tim Pope, the name of the plugin obliquely refers to its functionality. "fugitive.vim" contains the substring "git", as it is a Git wrapper. Pope later wrote rhubarb.vim, whose name contains the substring "hub", as it provides the :Gbrowse command to work with GitHub. [6]

"fugitive.vim" is the plugin's filename, while "vim-fugitive" is used for the GitHub repository name as well as for the package name in several Linux distributions.

History

The initial commit to the Git repository of the project was made on October 10, 2009. [7]

The initial version (version 1.0) was released on February 15, 2010.

Starting in March 2014 fugitive.vim was included in Debian's unstable branch. [8]

Features

The plugin provides standard Git commands from inside Vim, such as :Gstatus for git status. [9]

It also allows an interactive vertical split for git blame. [10]

Reception

fugitive.vim is one of around 30 Vim plugins to have its own package in the Ubuntu package repository. [11] It is also one of 16 Vim plugins in the official Fedora package repository. [12] The plugin is also available from the Arch Linux packages repository. [13]

The plugin is part of Vim distributions including spf13 [14] and Janus. [15]

Drew Neil of Vimcasts covered fugitive.vim favorably in a multi-part series. [16]

The scripts page for fugitive.vim on the Vim website shows that the plugin has been downloaded almost 13,000 times. [1] As of February 2017, the plugin's repository on GitHub has nearly 8,000 stars, [17] and is the eighth most popular Vim script GitHub repository by number of stars. [18]

See also

Related Research Articles

<span class="mw-page-title-main">Linux distribution</span> Operating system based on the Linux kernel

A Linux distribution is an operating system made from a software collection that includes the Linux kernel and often a package management system. They are often obtained from the website of each distribution, which are available for a wide variety of systems ranging from embedded devices and personal computers to servers and powerful supercomputers.

yum (software) Free and open-source command-line package management utility

The Yellowdog Updater Modified (YUM) is a free and open-source command-line package-management utility for computers running the Linux operating system using the RPM Package Manager. Though YUM has a command-line interface, several other tools provide graphical user interfaces to YUM functionality.

<span class="mw-page-title-main">Arch Linux</span> Rolling release distribution of Linux

Arch Linux is an independently developed x86-64 general-purpose Linux distribution that strives to provide the latest stable versions of most software by following a rolling-release model. The default installation is intentionally minimal so that users can add only the packages they require.

phpLDAPadmin is a web app for administering Lightweight Directory Access Protocol (LDAP) servers. It's written in the PHP programming language, and is licensed under the GNU General Public License. The application is available in 14 languages and supports UTF-8 encoded directory strings.

Technical variations of Linux distributions include support for different hardware devices and systems or software package configurations. Organizational differences may be motivated by historical reasons. Other criteria include security, including how quickly security upgrades are available; ease of package management; and number of packages available.

<span class="mw-page-title-main">Compiz</span> Compositing window manager for the X Window System

Compiz is a compositing window manager for the X Window System, using 3D graphics hardware to create fast compositing desktop effects for window management. Effects, such as a minimization animation or a cube workspace, are implemented as loadable plugins. Because it conforms to the ICCCM conventions, Compiz can be used as a substitute for the default Mutter or Metacity, when using GNOME Panel, or KWin in KDE Plasma Workspaces. Internally Compiz uses the OpenGL library as the interface to the graphics hardware.

<span class="mw-page-title-main">PulseAudio</span> Sound server for Unix-like operating systems

PulseAudio is a network-capable sound server program distributed via the freedesktop.org project. It runs mainly on Linux, including Windows Subsystem for Linux on Microsoft Windows and Termux on Android; various BSD distributions such as FreeBSD, OpenBSD, and macOS; as well as Illumos distributions and the Solaris operating system. It serves as a middleware in between applications and hardware and handles raw PCM audio streams.

<span class="mw-page-title-main">Fedora Linux</span> Linux distribution by Fedora Project

Fedora Linux is a Linux distribution developed by the Fedora Project. It was originally developed in 2003 as a continuation of the Red Hat Linux project. It contains software distributed under various free and open-source licenses and aims to be on the leading edge of open-source technologies. It is now the upstream source for CentOS Stream and Red Hat Enterprise Linux.

IcedTea is a build and integration project for OpenJDK launched by Red Hat in June 2007. IcedTea also includes some addon libraries: IcedTea-Web is a free software implementation of Java Web Start and the Java web browser applet plugin. IcedTea-Sound is a collection of plugins for the Java sound subsystem, including the PulseAudio provider which used to be included with IcedTea. The Free Software Foundation recommends that all Java programmers use IcedTea as their development environment.

<span class="mw-page-title-main">Uzbl</span> Open source minimalist web browser

Uzbl is a discontinued free and open-source minimalist web browser designed for simplicity and adherence to the Unix philosophy. Development began in early 2009 and is still considered in alpha software by the developers. The core component of Uzbl is written in C, but other languages are also used, most notably Python. All parts of the Uzbl project are released as free software under GNU GPL-3.0-only.

Woof is a software application used to build a Puppy Linux distribution from another Linux distribution. This application must be run inside Puppy Linux, and an internet connection is required in order to download the other Linux distro's binary packages.

<span class="mw-page-title-main">Spyder (software)</span> IDE for scientific programming in Python

Spyder is an open-source cross-platform integrated development environment (IDE) for scientific programming in the Python language. Spyder integrates with a number of prominent packages in the scientific Python stack, including NumPy, SciPy, Matplotlib, pandas, IPython, SymPy and Cython, as well as other open-source software. It is released under the MIT license.

<span class="mw-page-title-main">Noto fonts</span> Multilingual font family from Google

Noto is a font family comprising over 100 individual computer fonts, which are together designed to cover all the scripts encoded in the Unicode standard. As of October 2016, Noto fonts cover all 93 scripts defined in Unicode version 6.1, although fewer than 30,000 of the nearly 75,000 CJK unified ideographs in version 6.0 are covered. In total, Noto fonts cover over 77,000 characters, which is around half of the 149,186 characters defined in Unicode 15.0.

<span class="mw-page-title-main">DNF (software)</span> RPM package manager

DNF or Dandified YUM is the next-generation version of the Yellowdog Updater, Modified (yum), a package manager for .rpm-based Linux distributions. DNF was introduced in Fedora 18 in 2013; it has been the default package manager since Fedora 22 in 2015, Red Hat Enterprise Linux 8, and OpenMandriva, and is also an alternative package manager for Mageia.

<span class="mw-page-title-main">Zathura (document viewer)</span> Free software document viewer

Zathura is a free, plugin-based document viewer. Plugins are available for PDF, PostScript and DjVu. It was written to be lightweight and controlled with vi-like keybindings. Zathura's customizability makes it well-liked by many Linux users.

Subgraph OS was a Debian-based project designed to be resistant to surveillance and interference by sophisticated adversaries over the Internet. It has been mentioned by Edward Snowden as showing future potential.

Zstandard is a lossless data compression algorithm developed by Yann Collet at Facebook. Zstd is the corresponding reference implementation in C, released as open-source software on 31 August 2016.

<span class="mw-page-title-main">Budgie (desktop environment)</span> Desktop environment for Unix-like operating systems

Budgie is an independent, free and open-source desktop environment for Linux and other Unix-like operating systems that targets the desktop metaphor. Budgie is developed by the Buddies of Budgie organization, which is composed of a team of contributors from Linux distributions such as Fedora, Debian, and Arch Linux. Its design emphasizes simplicity, minimalism, and elegance, while providing the means to extend or customize the desktop in various ways. Unlike desktop environments like Cinnamon, Budgie does not have a reference platform, and all distributions that ship Budgie are recommended to set defaults that best fit their desired user experience.

<span class="mw-page-title-main">GNOME SoundConverter</span>

GNOME SoundConverter is an unofficial GNOME-based free and open-source transcoder for digital audio files. It uses GStreamer for input and output files. It has multi threaded design and can also extract the audio from video files.

<span class="mw-page-title-main">GNOME Terminator</span> Terminal emulator influenced by GNOME Terminal

GNOME Terminator is a free and open-source terminal emulator for Linux programmed in Python, licensed under GPL-2.0-only. The goal of the project is to produce a useful tool for arranging terminals. It is inspired by programs such as gnome-multi-term, QuadKonsole, etc. In that the main focus is arranging terminals in grids. Terminator packages exist for Arch, Debian/Ubuntu, Fedora, OpenSUSE, Gentoo, Snap, FreeBSD, OpenBSD. In 2017 took second place in voting at opensource.com, after Gnome Terminal.

References

  1. 1 2 3 "fugitive.vim : A Git wrapper so awesome, it should be illegal" . Retrieved February 8, 2017.
  2. Neil, Drew (2015). Practical Vim (2nd ed.). The Pragmatic Programmers. p. 273. ISBN   978-1-68050-127-8.
  3. McDonnell, Mark (2014). Pro Vim. Apress. ISBN   9781484202500.
  4. McDonnell, Mark (2014). tmux Taster. Apress. ISBN   9781484207758.
  5. "VIM and Python - a match made in heaven". Real Python. October 27, 2015. Retrieved February 9, 2017.
  6. "rhubarb.vim". GitHub . Retrieved February 9, 2016.
  7. Pope, Tim (October 10, 2009). "Initial commit". GitHub .
  8. Boutillier, Cédric (March 4, 2014). "Debian Project News - March 3rd, 2014 [LWN.net]". LWN.net . Retrieved February 9, 2017. 352 packages were added to the unstable Debian archive recently. Among many others are: [...] vim-fugitive — Vim plugin to work with Git
  9. Ibanez, Luis (May 29, 2011). "Fugitive – a Git plugin for Vim". The Kitware Blog. Retrieved February 9, 2017.
  10. "'vim-fugitive' tag wiki". Stack Overflow . Retrieved February 9, 2017.
  11. "Package Search Results for 'vim-'".
  12. "Fedora Package Database". Archived from the original on February 26, 2017. Retrieved February 9, 2017.
  13. "Arch Linux - vim-fugitive 2.2-1 (any)". January 26, 2015. Retrieved February 9, 2017.
  14. Francia, Steve. "spf13-vim - The Ultimate Vim Distribution" . Retrieved February 8, 2017.
  15. "Janus: Vim Distribution". GitHub . Retrieved February 8, 2017.
  16. Neil, Drew (May 18, 2011). "The Fugitive Series - a retrospective" . Retrieved February 9, 2017.
  17. "fugitive.vim". GitHub . Retrieved February 8, 2017.
  18. "GitHub Search for "stars:>1000", Vim script, sorted by most stars". GitHub . Retrieved February 9, 2017.