Commits on Jul 29, 2015
  1. Version 18.0

    dfishburn committed with vim-scripts Sep 25, 2013
    NF: Handle the @: command (Lingnan Dai).
    NF: Added new global option to specify the YankRing buffer name, g:yankring_buffer_name (Štefan Sakalík).
    BF: Did not properly highlight new commands in the YankRing window (Thilo Six).
Commits on Jun 14, 2013
  1. Version 17.0

    dfishburn committed with vim-scripts Apr 28, 2013
    NF: The yankring_history_dir option can now take a comma separated list.  First valid directory found will be used (Alex Bel).
    NF: YankRing can now monitor inserted text and place it in the ring. This is disabled by default, but can be enabled either through the YankRing window or via your .vimrc using the new option:
        g:yankring_record_insert = 1 (Alexandre Viau).
    BF: When g:yankring_persist = 0, the YankRing was still reading and writing to the yankring file (Vladimir Marek).
    BF: The YankRing menu entry, "Replace with Next", was performing the "Replace with Previous" action (Thilo Six).
Commits on Jan 28, 2013
  1. Version 16.0

    dfishburn committed with vim-scripts Jan 20, 2013
    BF: YankRing could report "YR: A register cannot be specified in replace mode" when using clipboard = unnamed or unnamedplus.  This can often happen when fetching previous values from the YankRing (i.e. <C-N> or <C-P>).
Commits on Jan 5, 2013
  1. Version 15.0

    dfishburn committed with vim-scripts Jan 2, 2013
    NF: Automatically turn off relativenumber for the YankRing window (Emma Tramp).
    NF: The YankRing window supports 1-9 to choose to paste those items for quicker access to the top 9 items.
    BF: When re-executing a macro using @<letter> and the macro used f, F, t, T, a "Press ENTER to continue" prompt was displayed (Greg Sexton).
    BF: Some documentation updates and script tweaks (Dominique Pellé).
    BF: The 0 register was updated during delete operations (Christian Brabandt).
    BF: When running a macro (@a), pressing @ displays a YankRing prompt (YR:Enter character:) to choose which macro name to run.  This prompt was displayed twice leading to a "Press ENTER or type command to continue" Vim message.  This change suppresses the "Press ENTER" message (Greg Sexton).
    BF: The YankRing prevented you from re-running the last macro using @@.
    BF: YRToggle (to disable / enable the YankRing) did not unmap @.
    BF: When prompted for a macro to run, if an invalid value was provided, Vim could report "E354: Invalid register name".
    BF: When using a Vim instance with < 80 columns and using a horizontal YankRing window after opening and closing the YankRing window the Vim window did not shrink back to its original size (Eric Weir).
    BF: Updated documented values of yankring_window_height and yankring_window_width (Paul).
    BF: It was not possible to paste from the * register if the clipboard option contains unnamedplus before unnamed (Marcin Szamotulski).
Commits on May 20, 2012
  1. Version 14.0

    dfishburn committed with vim-scripts Apr 5, 2012
    NF: The YankRing window supports 1-9 to choose to paste those items for quicker access to the top 9 items.
    NF: The YankRing now maps the @ key to run macros.  Not all actions performed during the macro are recorded by the YankRing as a number of items had to be unmapped to support the replay of actions which can prompt the user for input (i.e. t and f) (Asis Hallab).
    BF: When flipping between applications the system clipboard was not added to the YankRing in all cases.
    BF: The YankRing could report E121: Undefined variable: g:yankring_manual_clipboard_check (Thilo Six).
    BF: The YankRing could report: E132: Function call depth is higher than 'maxfuncdepth'.  When executing a YRClear or YRPop or when flipping between applications (Marcin Szamotulski).
    BF: Strange behaviour when opening the YankRing with :e [YankRing] instead of :YRShow (Marcin Szamotulski).
Commits on Mar 7, 2012
  1. Version 13.0

    dfishburn committed with vim-scripts Feb 28, 2012
    NF: [p, ]p, [P, ]P are now supported within the YankRing window (Alexandre Provencio).
    NF: When using the console version of Vim the yankring was not detecting the "+ register automatically as the FocusGained event does not fire in console mode.  When new elements are added or the YankRing is shown the clipboard will be checked for new values (Giuseppe Rota).
    NF: Added a new option, g:yankring_manual_clipboard_check which when enabled will manually check for clipboard changes at certain times within the YankRing.  This option is not used if the GUI is running as the FocusGained will perform checks at appropriate times (Erik Westrup).
    BF: With clipboard=unnamed replacing the previous paste with a different value from the YankRing did not work in all cases (Chris Lott).
    BF: Under certain conditions the YankRing would still check the system clipboard even if g:yankring_clipboard_monitor == 0.  This can lead to delays when attempting to access the clipboard when running in console mode.  Starting Vim with the -X switch removes the delay (Erik Westrup).
    BF: Incorrect syntax setting cpoptions (Thilo Six).
Commits on Sep 18, 2011
  1. Version 12.0

    dfishburn committed with vim-scripts Sep 17, 2011
    NF: Added support for the clipboard option "unnamedplus" which was added after 7.3 (Hong Xu).
    NF: When displaying the YankRing using YRShow, a new command "R" has been added to display all of Vim's registers [0-9a-z].
    BF: YRMapsDelete did not remove the normal mode @ map, which interfers with recorded macros (Philippe Vaucher ).
Commits on Oct 18, 2010
  1. Version 11.0

    dfishburn committed with vim-scripts Aug 12, 2010
    NF: Documented the global variables to customize the location of the YankRing menu.
    NF: The YankRing menu now shows the maps used for the default actions to help learn them more easily.
    NF: Added g:yankring_menu_root and g:yankring_menu_priority (David Barsam).
    NF: Added a warning indicating a stored value has been truncated based on g:yankring_max_element_length and a new option to suppress this warning, g:yankring_warn_on_truncate (Hans-Günter).
    BF: The YRAfterMaps() function (if it exists) was not re-run if YRToggle was used to disable and enable the YankRing.
    BF: Multibyte strings may not have been pasted correctly (Dr. Chip).
    BF: When pasting a string of 1111's, and additional -1 could also be included in the output.
  2. Version 10.0

    dfishburn committed with vim-scripts Feb 1, 2010
    NF: Change the buffer name to [YankRing] to resemble other non-user buffers.
    NF: Added g:yankring_min_element_length which can prevent items from being added to the YankRing if they are too small.  For example, single character deletes (Vedran M).
    BF: When shifting focus back to Vim, the YankRing may incorrectly report: "YR:Failed to change to the yankring buffer, please contact author".
    BF: When entering Vim for the first time and hitting "p" nothing was pasted (Mark Huiskes).
    BF: When entering Vim for the first time and the yankring_clipboard_monitor = 1, the clipboard entry was not automatically added to the yankring.
    BF: When overriding the default and setting g:yankring_window_use_bottom = 0, the YankRing would report the error (Sergey Khorev):  E21: Cannot make changes, 'modifiable' is off
  3. Version 9.0

    dfishburn committed with vim-scripts Aug 30, 2009
    BF: You cannot execute a macro with ":normal @a".  It is still not possible, but you can execute it with ":normal! @a" (A S Budden).
    BF: When g:yankring_persist = 0 the YankRing could go into an infinite loop (A S Budden).
    BF: When replaying a macro which used any of the zap keys (f,F,t,T,/,?) you were prompted again for the string to match on (Ovidiu C).
    BF: When checking the clipboard for changes (g:yankring_clipboard_monitor == 1) only add the item if it is not already in the ring.  Previously, the item was moved to the top of the YankRing each time you flipped focus.
  4. Version 8.0

    dfishburn committed with vim-scripts Dec 30, 2008
    NF: Changed the implementation of YRGetSearch() (David Liang).
    BF: Under some unknown circumstances, the yankring can fail to change to the correct buffer.  Put in code to double check and abort.
    BF: Yanking and pasting a line which ends in a backslash resulted in the backslash being replaced by "@@@".
    BF: When repeating a command (".") which used any of the zap keys (f,F,t,T,/,?) you were prompted again for the string to match on (Vasilii Pascal).
  5. Version 7.0

    dfishburn committed with vim-scripts Nov 15, 2008
    NF: Added support for the / and ? motions so that y/search is supported (Vasilii Pascal).
    NF: When the YankRing window is displayed (or updated) an additional check is made against the default register.  If it has changed since the YankRing recorded it, the value will be added to the history.
    NF: Added support for more motions h, j, k, l, H, M, L, ^, 0, -, +, _.  And a pile of g motions g_, g^, gm, g$, gk, gj, gg, ge, gE.
    NF: The YankRing window will display a message it is operating in a limited mode if not using Vim 7.2 or the correct patch level.
    BF: Correction to some internal code which could lead to an endless loop (John Beckett).
    BF: Opening and closing the YankRing window with "set report=0" reported "1 line less" messages (Bill McCarthy).
    BF: Changed the default value of g:yankring_paste_check_default_buffer to check if the default paste buffer has changed when pressing 'p'.  For example, if a plugin has changed the default registers it will be pasted rather than the top item from the YankRing.
    BF: YRMapsDelete did not remove all the maps created by the YankRing.
    BF: Under particular circumstances, yanking text with embedded @ characters were not properly stored and retrieved from the YankRing (Andrew Long).
    BF: Changed to use xmaps instead of vmaps so that the maps only work in visual mode and not select mode (David Liang).
  6. Version 6.1

    dfishburn committed with vim-scripts Oct 31, 2008
    BF: If the g:yankring_history_dir contains spaces (default on Windows) an error was reported.  A simple work around was to let g:yankring_history_dir = 'c:\Vim' or no spaces (Matt).
    All Windows users should download this version.
  7. Version 6.0

    dfishburn committed with vim-scripts Oct 30, 2008
    NF: The YankRing now maintains the history in a file.  This means if you are running multiple instances of Vim, they all see the same yankring whether you are using X, Windows, SSH or Screen.
    NF: The location and name of the file is configurable by the user.
    NF: The g:yankring_separator is no longer used and has been removed.
    NF: The g:yankring_max_element_length can be used to limit the size of an element in the yankring.
    NF: The g:yankring_share_between_instances can be used to indicate whether each instance of Vim running on a machine should share the history file or whether each should have their own individual history file.
    NF: The g:yankring_clipboard_monitor can be used to indicate whether changes to the system clipboard should be added to the YankRing (default is on).
    NF: The YankRing window can toggle the clipboard monitor by pressing 'c'.  See the help in the window by pressing ?.
    NF: Added some highlighting to the YankRing window (Marty Grenfell).
  8. Version 5.0

    dfishburn committed with vim-scripts Sep 22, 2008
    NF: The yankring can recognize certain Vim commands which do not change the contents of a buffer and not attempt to capture it.
    NF: The global variables which allow you to customize the behaviour are now space separated instead of comma separated.  This provides greater flexibility but will require you to modify your vimrc (if you have customized it). (Andy Wokula)
    BF: If using <C-O> from within insert mode, the yankring inserted characters into the buffer instead of capturing the changes, this was fixed by Andy Wokula (Agathoklis Hatzimanikas).
    BF: The yankring did not properly account for all the different forms of counts "5yy" worked but "y5y" did not (Edwin Shao).
  9. Version 4.1

    dfishburn committed with vim-scripts Aug 9, 2008
    NF: The yankring now allows you to override which operators should be ignored (yankring_ignore_operator).  By default this is set for the standard Vim operators which do not modify any registers (Examples: = and gu) (Andy Wokula).
    NF: The yankring did not map v_x (Matt Tolton).
    BF: The expression register (quote=) was not accounted for correctly (Agathoklis Hatzimanikas).
    BF: Using the v:operator variable must be escaped when used in a regular expression.
  10. Version 4.0

    dfishburn committed with vim-scripts Jun 24, 2008
    NF: The yankring by default now captures all |text-objects| and all motions (|motion.txt|) which Vim supports.  Version 3.0 only supported a subset of the basic motion commands.
    NF: Prior to this version only predefined maps triggered the capture of data into the yankring.  These maps only supported yanks and deletes.  The yankring now also supports operator-pending mode, which allows a greater range of operations to be automatically captured and added to the yankring.
    Operating pending mode functionality requires Vim 7.2 or Vim 7.1 with patch #205.  If using Vim 7.1 you can determine this with:
           echo has("patch205")
    NF: Prior to this version only yanks and deletes were registered in the yankring.  Changes are now also captured into the yankring.
    NF: The yankring will also capture the system cliboard when focus is returned to the vim window.  This is useful if you copy text between applications.
    NF: The yankring window always opened bottom horizontal.  Now it can be opened top or bottom and horizontal or vertically.  This can be controlled via variables in your .vimrc.
    BF: The yankring has an option to persist between instances of Vim by storing the values in global variables within the viminfo.  This has led to some unusual ordering of items in the ring from conflicts between instances.  This option has been turn off by default.
    BF: Their was an issue with yanking using y$.
  11. Version 3.0

    dfishburn committed with vim-scripts Sep 7, 2007
    NF: Converted the yankring to use the new Vim7's List object which means it is no longer compatible with Vim6.
    NF: By default the yankring will now maintain the yankring's items persistently by default.  It does this via the |viminfo| file. This means the contents of the yankring rely on the internal variables of only 1 Vim instance.
    BF: YRToggle was not unmapping 'gp' and 'gP'.
    BF: YRSearch prompted the user for a regex even if one was provided on the command line.
    BF: If g:yankring_manage_numbered_reg is enabled, the "." operator did not correctly repeat the previous action (Pedro DeRose).
  12. Version 2.2

    dfishburn committed with vim-scripts Oct 21, 2005
    BF: If you pressed '?' to toggle the display of the help in the
    yankring window, the yankring window would close.  This also applied to
    'a', which allowed you to toggle the autoclose feature.
  13. Version 2.1

    dfishburn committed with vim-scripts Oct 11, 2005
    NF: Much improved usability, the yankring now has a "GUI" to service
        the yankring.  If YRShow or YRSearch is used, a split buffer is
        opened which displays all the elements in the yankring.  There
        are a number of maps that allow you to interact with the
        contents.  The window can be positioned vertically or
        horizontally as well as being sized all through options
        specified in your vimrc.
    NF: Added the ability for the yankring to override Vim's numbered
        registers.  Instead of the numbered registers holding the last
        yanked value, and the 9 previous deletes, they will now reflect
        the top 10 items in the yankring.  This allows you to reference
        them directly with "5p.
    NF: YRPop can now delete any items from the yankring, rather
        that just from the top.
    NF: YRSetTop has been removed, it is no longer required as the
        internal representation of the yankring has changed.
    BF: If g:yankring_ignore_duplicate is set (which is the default)
        you could get some unpredicable results when moving
        backwards and forwards (<C-P> and <C-N>) through the
        previous values.
  14. Version 2.0 Beta1a

    dfishburn committed with vim-scripts Aug 22, 2005
    Some people reported an error when selecting the first item from the yankring.
  15. Version 2.0 Beta1

    dfishburn committed with vim-scripts Aug 20, 2005
    Added a new split buffer that allows you to visually interact with the yankring.  This makes using it much better, no more commands you need to remember.
    Previous commands are still available.  The new buffer is configurable.  Please see the tutorial for further details.
    Feedback is greatly appreciated.
  16. Version 1.6

    dfishburn committed with vim-scripts May 7, 2005
    NF: YRSearch is similar to YRGetElem.  Given a regular expression it will interactively display all the elements in the yankring that match the regular expression.  You can enter the number of the element to paste it.  If you have many elements within the yankring, this can help you identify them more easily.
    NF: Updated the default history size from 30 to 100, which is partially the reason for the YRSearch command.
    NF: By default it supports "gp" and "gP", in addition to "p" and "P".
    NF: Added support for the expression register (:h quote=).  Here is an example of how it is used:
  17. Version 1.5

    dfishburn committed with vim-scripts Apr 1, 2005
    NF: The yankring now respects the cpoptions setting, if 'y' is included and you press '.', the previous yank command is executed and added to the yankring.  You can also add this behaviour by setting this in your |vimrc|:
           let g:yankring_dot_repeat_yank = 1
    NF: Duplicates will not be added to the yankring by default.  If a duplicate is found, the element will be moved to the top of the yankring.  This can be controlled by setting this in your |vimrc|:
           let g:yankring_ignore_duplicate = 0 (1 is default)
    BF: Regression from version 1.4, the '.' operator may incorrectly insert garbage.
  18. Version 1.4

    dfishburn committed with vim-scripts Mar 27, 2005
    NF: YRToggle has been updated.  If you toggle the yankring off (disable) the maps it creates are removed.  Calling YRToggle again will recreate the maps.  This truly disables the yankring, where the previous version attempted to do this via code.
    BF: Using the '.' operator was not corrected replaying operations that did not move text in some way (g~t_) changed the case of the text but a '.' did not replay it.
    BF: When replacing previously pasted text the yankring did not respect what key was used to paste the text originally.  All replaced items were pasted using 'p', even if you had originally pasted the text with 'P'.