public final class

KillRing

extends Object
java.lang.Object
   ↳ jline.console.KillRing

Class Overview

The kill ring class keeps killed text in a fixed size ring. In this class we also keep record of whether or not the last command was a kill or a yank. Depending on this, the class may behave different. For instance, two consecutive kill-word commands fill the same slot such that the next yank will return the two previously killed words instead that only the last one. Likewise yank pop requires that the previous command was either a yank or a yank-pop.

Summary

Public Constructors
KillRing(int size)
Creates a new kill ring of the given size.
KillRing()
Creates a new kill ring of the default size.
Public Methods
void add(String str)
Adds the string to the kill-ring.
void addBackwards(String str)
Adds the string to the kill-ring product of killing backwards.
boolean lastYank()
Returns true if the last command was a yank.
void resetLastKill()
Resets the last-kill state.
void resetLastYank()
Resets the last-yank state.
String yank()
Yanks a previously killed text.
String yankPop()
Moves the pointer to the current slot back and returns the text in that position.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public KillRing (int size)

Creates a new kill ring of the given size.

public KillRing ()

Creates a new kill ring of the default size. .

See Also
  • DEFAULT_SIZE

Public Methods

public void add (String str)

Adds the string to the kill-ring. Also sets lastYank to false and lastKill to true.

public void addBackwards (String str)

Adds the string to the kill-ring product of killing backwards. If the previous command was a kill text one then adds the text at the beginning of the previous kill to avoid that two consecutive backwards kills followed by a yank leaves things reversed.

public boolean lastYank ()

Returns true if the last command was a yank.

public void resetLastKill ()

Resets the last-kill state.

public void resetLastYank ()

Resets the last-yank state.

public String yank ()

Yanks a previously killed text. Returns null if the ring is empty.

public String yankPop ()

Moves the pointer to the current slot back and returns the text in that position. If the previous command was not yank returns null.