mirror of
https://github.com/archlinux/aur.git
synced 2026-01-27 20:28:31 +01:00
155 lines
3.4 KiB
Text
155 lines
3.4 KiB
Text
[](https://www.repostatus.org/#active)
|
||
[](/LICENSE)
|
||
[](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|*
|