aur/README
2026-01-27 14:22:10 -05:00

155 lines
3.4 KiB
Text
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[![Project Status: Active The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
[![License](https://img.shields.io/badge/License-0BSD-blue.svg)](/LICENSE)
[![Language](https://img.shields.io/badge/Language-C-blue.svg)](https://en.wikipedia.org/wiki/C_(programming_language))
## Summary
Blindtaste is a lightweight, low-latency terminal "blackboard" designed for capturing quick thoughts and fleeting information without the overhead of a traditional text editor.
It operates by taking over the terminal interface to provide a distraction-free writing environment that is significantly faster than commercial alternatives.
> **Note:** This project is still being developed. As the software grows larger and more powerful, more information will be added.
## Features
### High Performance
Starts in milliseconds-measured at **10x faster** than Microsoft Word or LibreOffice.
### Zero Disk I/O
Text remains in the terminal scrollback **in memory** after exit without cluttering your filesystem.
### Low Latency
Optimized for non-canonical read operations, ensuring **zero lag** between keystrokes and display.
### Memory Efficient
Uses a **dynamic input buffer** that scales with your thoughts.
### Cross-Platform
Robust handling of line endings (\r\n) for consistent behavior across different terminal emulators.
## Technical Implementation
Blindtaste achieves its speed and "blackboard" feel by manipulating low-level terminal flags to bypass standard processing:
### Raw Mode
It disables canonical mode (ICANON), echo (ECHO), and signal processing (ISIG). This prevents the shell from interpreting your notes as commands.
### Optimized I/O
Uses the write() system call instead of printf() for reduced overhead and sets a 1-byte minimum for read operations to ensure immediate character processing.
### State Recovery
The software captures your environment's original terminal configurations and restores them upon exit, ensuring your terminal remains functional.
## Installation
### Arch Linux
#### Download the compilation script
```bash
git clone https://aur.archlinux.org/blindpaste.git
```
#### Enter directory
```bash
cd blindpaste
```
#### Make the package
```bash
makepkg -sfi
```
### Gentoo Linux
#### Enable the Guru repository
```bash
sudo emerge -av app-eselect/eselect-repository
sudo eselect repository enable guru
sudo emaint sync -r guru
```
#### Download and compile the package
```bash
sudo emerge -av app-text/blindpaste
```
### Source
#### Download the source code
```bash
git clone https://git.projectgrid.net/blindpaste.git
```
#### Enter directory
```bash
cd blindpaste
```
#### Make and Install
```bash
sudo make install
```
## Usage
### Quick note-taking
```bash
bp
```
### Stream editing
```bash
env | bp
```
### "Copy-on-writing"
```bash
sudo blindpaste /etc/fstab
```
### Bonus: Print message
```bash
bp HelloWorld!
```
### Bonus 2: Use as Git pager
```bash
git config --global core.pager "blindpaste"
```
## Bug Reports & Contributing
Please report any issues or hardware edge cases via the issue tracker on my [git portal](https://projectgrid.net/museum/blindpaste)!
## Author
|Maintainer|Gabrel Oliveira da Silva
|------------|-------------------------
|Status|Maintained/Active
|Web-Page|https://projectgrid.net
|Patch Work|https://projectgrid.net/museum/blindpaste
|SCM|git://git.projectgrid.net/blindpaste.git
|Files|*