emacs-vdiff - Like vimdiff for Emacs

  •        24

vdiff compares two or three buffers on the basis of the output from the diff tool. The buffers are kept synchronized so that as you move through one of the buffers the top of the active buffer aligns with the corresponding top of the other buffer(s). This is similar to how ediff works, but in ediff you use a third “control buffer” to move through the diffed buffers. The key difference is that in vdiff you are meant to actively edit one of the buffers and the display will update automatically for the other buffer. Similar to ediff, vdiff provides commands to “send” and “receive” hunks from one buffer to the other as well as commands to traverse the diff hunks, which are useful if you are trying to merge changes. In contrast to ediff, vdiff also provides folding capabilities to fold sections of the buffers that don’t contain changes. This folding occurs automatically. Finally, you are encouraged to bind a key to `vdiff-hydra/body’, which will use hydra.el (in ELPA) to create a convenient transient keymap containing most of the useful vdiff commands. This functionality is all inspired by (but not equivalent to) the vimdiff tool from vim.

https://github.com/justbur/emacs-vdiff

Tags
Implementation
License
Platform

   




Related Projects

awesome-emacs - A community driven list of useful Emacs packages, libraries and others.

  •    Emacs

Welcome to Awesome Emacs, a community driven list of useful Emacs packages, utilities and libraries. Most of the following packages are available in MELPA. We recommend installing packages with it. Also, please do consider contributing back to the Emacs community. One major way is by financially sponsoring the lead developers and teams of developers that create and maintain the wonderful Emacs packages that so many of us use. Elisp Maintainers provides a fantastic collection of ways that one can donate to several prolific Emacs package developers. Please do so donate.

ggtags - Emacs frontend to GNU Global source code tagging system.

  •    Emacs

This package is part of GNU ELPA (M-x list-packages) and is also available on MELPA. The goal is to make working with GNU Global in Emacs as effortlessly and intuitively as possible and to integrate tightly with standard emacs packages. ggtags.el is tested in Emacs 24 and 25. Patches, feature requests and bug reports are welcome. Thanks.

goism - Not a fan of Emacs Lisp? Hack Emacs in Go!

  •    Go

goism is Emacs package that makes it possible to use Go programming language instead of Emacs Lisp inside Emacs. It provides Go intrinsics and emacs package to make it possible to control Emacs from your programs. Generated functions, methods and variables can be accessed from Emacs Lisp code.

frontmacs - A package-based, web-centric, customizable, awesome-by-default, acceptance-tested Emacs distribution curated by your friends at Frontside

  •    Emacs

A package-based, web-centric, customizable, awesome-by-default, acceptance-tested Emacs distribution curated by your friends at Frontside. We've been satisfied users of many a starter kit over the years, from the original Emacs Starter Kit, to Prelude and Spacemacs. Most starter kits you come across begin with a fork. You clone the repo, and then you're off to the races maintaining your own version. Any customizations you make are made to files under version control and so upgrading and keeping up with the community is a constant battle of merges, rebases, throw-aways and ultimately do overs. We know because we've been there.

prelude - Prelude is an enhanced Emacs 24

  •    Emacs

Prelude is an Emacs distribution that aims to enhance the default Emacs experience. Prelude alters a lot of the default settings, bundles a plethora of additional packages and adds its own core library to the mix. The final product offers an easy to use Emacs configuration for Emacs newcomers and lots of additional power for Emacs power users. Prelude is compatible ONLY with GNU Emacs 24.4+. In general you're advised to always run Prelude with the latest Emacs - currently 25.2.


markdown-mode - Emacs Markdown Mode

  •    Emacs

markdown-mode is a major mode for editing Markdown-formatted text. The latest stable version is markdown-mode 2.3, released on August 31, 2017. See the release notes for details. markdown-mode is free software, licensed under the GNU GPL, version 3 or later. The primary documentation for Markdown Mode is available below, and is generated from comments in the source code. For a more in-depth treatment, the Guide to Markdown Mode for Emacs covers Markdown syntax, advanced movement and editing in Emacs, extensions, configuration examples, tips and tricks, and a survey of other packages that work with Markdown Mode. Finally, Emacs is also a self-documenting editor. This means that the source code itself contains additional documentation: each function has its own docstring available via C-h f (describe-function), individual keybindings can be investigated with C-h k (describe-key), and a complete list of keybindings is available using C-h m (describe-mode).

emacs-which-key - Emacs package that displays available keybindings in popup

  •    Emacs

Allows for a concise syntax to specify replacement text using define-key or alternatives that use define-key internally. See the docstring and Custom String Replacement. Shows active bindings in current major-mode map.

diff-hl - Emacs package for highlighting uncommitted changes

  •    Emacs

diff-hl-mode highlights uncommitted changes on the left side of the window, allows you to jump between and revert them selectively. For the usage instructions and the list of commands, see the Commentary section inside the file.

emacs-async - Simple library for asynchronous processing in Emacs

  •    Emacs

You can install emacs-async package from ELPA or MELPA using package.el. You can also install from sources, in this case you should install using make and make install to ensure emacs-async is intalled in a standard load-path destination where other packages can find it easily when compiling.

elpy - Emacs Python Development Environment

  •    Emacs

Elpy is an Emacs package to bring powerful Python editing to Emacs. It combines and configures a number of other packages, both written in Emacs Lisp as well as Python. Then run M-x package-refresh-contents to load the contents of the new repository, and M-x package-install RET elpy RET to install elpy.

emacs.dz - Awesome emacs config files

  •    

Most of the people on this list are either heavy contributors to MELPA or people who get involved in the community beyond having only an .emacs.d dir. If you spend time checking out MELPA packages, /r/emacs or Emacs StackExchage you would probably know most of them. First you should ask yourself why would you want to get on this list? (I’m kiddin’…) Most of the times a pull request would suffice. Keep in mind though that I won’t accept self submission if the config is not vetted by the other people or is not original enough. One can also contribute by adding suggestions to this thread.

Yet Another Carbon Emacs Distribution

  •    

This project provides individual Apple Installer packages of Carbon Emacs for MacOS X 10.3 and 10.4 and AUCTeX packages for installation into Carbon Emacs. *********THIS PROJECT IS CLOSED. NO FURTHER WORK IS BEING DONE!*********

emacs-starter-kit - Because the Emacs defaults are not so great sometimes.

  •    

Version 3 of the Emacs Starter Kit is implemented as a prose guide to various packages and settings which can greatly improve the Emacs experience. Older versions of the Starter Kit attempted to be one-size-fits-all codebase intended to be dropped into your ~/.emacs.d directory wholesale. While this proved very popular, taking a big bundle of unrelated functionality leads to simply adopting things without developing any real understanding. When something goes wrong or even just behaves differently from what you'd like, you don't know where to look to fix it.

emacs-neotree - A emacs tree plugin like NerdTree for Vim.

  •    Emacs

A Emacs tree plugin like NerdTree for Vim. You can install the plugin using the packages on melpa.

cmake-ide - Use Emacs as a C/C++ IDE

  •    Emacs

cmake-ide will set variables and call functions for the installed dependent packages. It works by running CMake in Emacs in order to obtain the necessary compiler flags to pass to the other tools. Since all the dependencies are specified in the CMake scripts, there is no need to maintain a parallel dependency tracking system for Emacs. Just ask CMake.

quelpa - repo moved to framagit

  •    Emacs

Build and install your Emacs Lisp packages on-the-fly and directly from source. 2018/06/18 - code moved to framagit.org, please open issues here (github is only an MS mirror now 8) 2018/03/25 - support for various fetchers has been added again: wiki, bzr, cvs, darcs, fossil, svn.

Emacs-Elisp-Programming - Tutorial about programming Elisp and Emacs text editor customization.

  •    CSS

Emacs doesn’t need any presentation. Emacs is a software “Lisp Machine” that provides a programmable text editor, email reader, text web browser, image viwer, calculator, shell, games, easter-eggs and more. Emacs is programmed in Elisp, an Emacs own lisp dialect that is based on MacLisp, one of oldest lisp dialects, older than Common Lisp and Scheme, created in MIT. Emacs was written in 1976 by the legendary Richard Stallman. Despite many incompatibilities with Common Lisp it has many constructs similar to it and n excellent book about Common Lisp that is also useful to understand Elisp and Scheme is On Lisp - by Paul Graham. The user configuration file, which is executed when Emacs starts, is stored in the directory ~/.emacs.d/init.el or ~/.emacs. The first one is better because it is in the same directory of all emacs configuration files.

helm - Emacs incremental completion and selection narrowing framework

  •    Emacs

Helm is an Emacs framework for incremental completions and narrowing selections. It provides an easy-to-use API for developers wishing to build their own Helm applications in Emacs, powerful search tools and dozens of already built-in commands providing completion to almost everything. It is a must-have for anyone using Emacs as a main work environment. Helm has been widely adopted by many Emacs power-users. It is available in Melpa and can be easily installed from the Emacs package manager. Maintaining Helm requires a lot of work, which I have done voluntarily since 2011. As it demands lots of my time it gets increasingly difficult maintaining it without financial help. Thanks to all the people that are helping or have helped Helm development, but they are actually too few to continue serenely. By the way, after the release of version 3.0 I will have to stop developing Helm seriously until I get enough financial support, only providing a minimal bugfix maintenance. Thanks for your understanding If you feel Helm is making your daily work easier, please consider making a donation.

emacs-ipython-notebook - IPython notebook client in Emacs

  •    Emacs

It is stable enough for my day to day work, but I can't guarantee the safety for your notebook data. So please make sure you have backup. Emacs IPython Notebook (EIN) provides a IPython Notebook client and integrated REPL (like SLIME) in Emacs. While EIN makes notebook editing very powerful by allowing you to use any Emacs features, it also expose IPython features such as code evaluation, object inspection and code completion to the Emacs side. These features can be accessed anywhere in Emacs and improve Python code editing and reading in Emacs.

homebrew-emacs-plus - Emacs Plus formulae for the Homebrew package manager

  •    Ruby

Emacs Plus is GNU Emacs formulae based on emacs formulae. The difference is that some of the options available from emacs formulae are enabled by default in emacs-plus and some new additional options are available for user. With release of Emacs 26.1 many options were removed from the formula, as features behind them are already in released version.