This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Gap buffer" – news · newspapers · books · scholar · JSTOR(April 2012) (Learn how and when to remove this message)
A gap buffer in computer science is a dynamic array that allows efficient insertion and deletion operations clustered near the same location. Gap buffers are especially common in text editors, where most changes to the text occur at or near the current location of the cursor. The text is stored in a large buffer in two contiguous segments, with a gap between them for inserting new text. Moving the cursor involves copying text from one side of the gap to the other (sometimes copying is delayed until the next operation that changes the text). Insertion adds new text at the end of the first segment; deletion deletes it.
Text in a gap buffer is represented as two strings, which take very little extra space and which can be searched and displayed very quickly, compared to more sophisticated data structures such as linked lists. However, operations at different locations in the text and ones that fill the gap (requiring a new gap to be created) may require copying most of the text, which is especially inefficient for large files. The use of gap buffers is based on the assumption that such recopying occurs rarely enough that its cost can be amortized over the more common cheap operations. This makes the gap buffer a simpler alternative to the rope for use in text editors[1] such as Emacs.[2]
^Mark C. Chu-Carroll. "Gap Buffers, or, Don’t Get Tied Up With Ropes?" ScienceBlogs, 2009-02-18. Accessed 2013-01-30.
A gapbuffer in computer science is a dynamic array that allows efficient insertion and deletion operations clustered near the same location. Gap buffers...
due to bicarbonate's activity as a buffer (without a concurrent increase in Cl−). Thus, finding a high anion gap should result in a search for conditions...
data structures such as a gapbuffer. This data structure was invented by J Strother Moore. For this description, we use buffer as the immutable block to...
Bit array Bit field Bitboard Bitmap Circular buffer Control table Image Dope vector Dynamic array Gapbuffer Hashed array tree Lookup table Matrix Parallel...
lists can do this in constant time. This disadvantage is mitigated by the gapbuffer and tiered vector variants discussed under Variants below. Also, in a...
Buffers and chain couplers (also known as "buffers and screw", "screw", and "screwlink") are the de facto International Union of Railways (UIC) standard...
Wiktionary, the free dictionary. In computing, buffer underrun or buffer underflow is a state occurring when a buffer used for communicating between two devices...
more complicated sequence data structures. A typical text editor uses a gapbuffer, a linked list of lines (as in PaperClip), a piece table, or a rope, as...
followed by most subsequent Emacs implementations. Rather than using TECO's gapbuffer representation for the text being edited, it used a doubly linked list...
writing whenever the buffer is refilled. Recorders with such buffer underrun protection handle the interruption with an extremely small gap in the recorded...
computers. MINCE used a gapbuffer to fit within 48kB, and implemented a very efficient virtual memory system to support multiple buffers and a maximum file...
performance gap between the processing speed of the compute nodes and the Input/output (I/O) bandwidth of the storage systems. Burst buffers are often built...
A riparian buffer or stream buffer is a vegetated area (a "buffer strip") near a stream, usually forested, which helps shade and partially protect the...
sections uncoupled by using the side buffers. They have an extra high buffer plate to prevent the buffers from buffer-locking in tight vertical curves. The...
regulates the acidity of the blood by four buffering mechanisms. Bicarbonate buffering system Intracellular buffering by absorption of hydrogen atoms by various...
In social psychology, social buffering is a phenomenon where social connections can alleviate negative consequences of stressful events. Although there...
used to calculate a number of object attributes, including link gap and object buffer, drift, and float. As objects and their relationships are added...
capacitor (functioning as both a smoothing capacitor as well as a reservoir, buffer or bulk capacitor), choke, resistor, Zener diode and resistor, or voltage...
Potassium spatial buffering is a mechanism for the regulation of extracellular potassium concentration by astrocytes. Other mechanisms for astrocytic...
via a buffer store leaving a series of fixed gaps in each frame. The data rate is thus 2.112 Mbit/s x (number of bits in a frame – number of gaps)/(number...
based on a heterojunction formed between semiconductors with dissimilar band gaps. They are a hybrid technology, combining aspects of conventional crystalline...
tris-hydroxymethylaminomethonium) or the newer SB buffer or BBS buffer (borate buffered saline) in coating procedures. Borate buffers (usually at pH 8) are also used as...
the data is received least significant bit first, and to avoid having to buffer octets of data, the receiver typically uses the right shifting CRC-32. This...