• Home
  • Most Popular
  • Submit
  • About Us
  • Contact Us

Softpile

Free Downloads

Categories
  • Home
  • Most Popular
  • Communications
  • Desktop
  • Games & Entertainment
  • Graphic Apps
  • Network & Internet
  • Security & Privacy
  • System Utilities
Alternative to itextsharp 2022.11.10347
IronPDF offers an itextsharp alternative for HTML to PDF conversion with C# code examples, documentation, and ...
VShell Server for Linux and Mac 4.8
VShell is a versatile and secure file transfer server that supports multiple protocols and is compatible ...
PDF Studio PDF Editor for Linux 2022
PDF Studio is a cost-effective PDF editor that delivers full compatibility with the PDF Standard. It's ...
VQ Probe for Linux 1.5
VQ Probe is a comprehensive software tool that enables objective and subjective video quality analysis. The ...
Resilient Server 2.3
This Debian GNU/Linux (Buster) based software has a customized partitioning scheme that enhances robustness against filesystem ...
Valentina Studio for Linux 9.6
Valentina Studio is a cross-platform GUI manager for Mac, Windows, and Linux. It allows users to ...
VPN Lifeguard for Linux 1.0.58
The software monitors VPN connection and automatically terminates apps during connection loss, re-establishes the connection and ...
G_Viewer 0.84
G_Viewer is a Linux software that serves as both a file system and photo/image viewer. It ...
Checksome File Hash Tool for Linux 1.1
This software allows for the generation and verification of file hashes. It is a quick and ...
KeyWrangler Password Manager for Linux 1.2
A password management software that is secure, offline and extensible. It offers military-grade encryption to protect ...
Home Linux gapbuffer Download

gapbuffer

July 31, 2009
This software package provides a gap buffer, a data structure commonly used in editing and manipulating text. It allows for efficient editing operations by minimizing the amount of memory that needs to be reallocated when inserting or deleting text.
Version 1.03
License MIT/X Consortium License
Platform Linux
Supported Languages English
Homepage www.scintilla.org
Developed by Neil Hodgson
Gap buffers are highly efficient mutable sequences that are commonly used to store text in text editors. Their implementation utilizes the concept of locality of modification, which helps avoid copying large amounts of data, and also allocates additional elements to prevent memory allocation from dominating performance. With the movable gap between the two data parts, insertions and deletions in GapBuffer are carried out at the gap.

The GapBuffer's item type can either be a character, a Unicode character or an integer, which is determined based on the constructor argument's type. Additionally, the GapBuffer implements Python's sequence protocol, enabling easy manipulation of the data.

For instance, you can use the GapBuffer's insert and extend methods, similar to Python lists, to modify the data. Retrieving portions of the data directly is also allowed, rather than with a slice and conversion using retrieve(start, length) method.

To reduce memory consumption while using a GapBuffer, users must explicitly ask it to release memory. Incrementing the values of a segment with increment(start, length, value) is also feasible when maintaining the starting position of every line in a document.

Furthermore, the GapBuffer protocol implementation permits it to be used with advanced features such as regular expression searches and writing to files. Users can also customize their data structure by incorporating more item types, such as those available from the array module, to the constructor's typecode keyword parameter.

One minor concern is that the code could be made cleaner, and with less detailed knowledge of the data structure distributed throughout the code. The consumption of arguments in the code should also be regulated, making it easier to include alternative methods and item types.

In conclusion, the GapBuffer is a reliable, efficient option for mutable sequence storage, particularly when it comes to text editors. Its implementation allows easy manipulation of data while keeping memory allocation under control. Furthermore, its compatibility with advanced features makes it an ideal choice for a wide variety of applications.
What's New

Version 1.03: N/A

Free Download 6.4K
339
  • Share on:

Most Popular

  1. Quicksilver Forums 1.4.2
    155
  2. Dvgrab 3.4
    102
  3. DynVPN 1.0
    92
  4. SlideMap 1.2.2
    82
  5. CherryTV 0.1
    81
  6. porm r2
    79
  7. Swiftfox 3.0b5pre-2
    77
  8. Java Games 1.0
    76
  9. Clewarecontrol 0.8
    75
  10. fuseftp 0.8
    74

Related Downloads

iPlotz
This software allows users to create wireframes, mockups, and prototypes for websites ...
OMD - OnLine Medical DataBase
OnLine Medical DataBase is a management software designed for physicians, clinics, hospitals, ...
Gnome Brave (mac os)
GNOME desktop now features Mac OS-inspired icons for a sleek and stylish ...
SWTJasperViewer
SWTJasperViewer is a component for viewing JasperReports in SWT/JFace applications and Eclipse ...
WebSwf Slide Show Creator
WebSwf creates slide shows in Macromedia SWF Flash format. This multi-user program ...
SVN::Notify::Filter
SVN::Notify offers output filters creation to tailor notifications to your specific needs. ...
nagios-check_internet
Nagios-check_internet is a plugin for Nagios that verifies internet connectivity by pinging ...
GwenRename
GwenRename is a batch renaming software solution that allows users to rename ...
PhpWebGallery
PhpWebGallery is an effortless-to-install image gallery software with an administration panel that ...
ExEf
ExEf is a powerful RealTime DSP software that offers recording functionality for ...
Copyright © 1999-2025 Softpile Free Downloads
  • Most Popular
  • Submit
  • About Us
  • Contact Us
  • Privacy Policy
  • Disclaimer
  • Terms of Use

Can we use your data to tailor ads for you?

Our partners will collect data and use cookies for ad personalization and measurement.

By choosing "I agree", closing this pop-up or clicking on any element on the page, you agree to the use of cookies to help us provide you with a better user experience.

Learn how Softpile and our partners collect and use data.

You can change your choice at any time in our privacy center.

Cookie Settings

Our website stores four types of cookies. At any time you can choose which cookies you accept and which you refuse. You can read more about what cookies are and what types of cookies we store in our Cookie Policy.

are necessary for technical reasons. Without them, this website may not function properly.

are necessary for specific functionality on the website. Without them, some features may be disabled.

allow us to analyse website use and to improve the visitor's experience.

allow us to personalise your experience and to send you relevant content and offers, on this website and other websites.