esc

Externally Scriptable Editor

git clone git://mccd.space/esc

commit e6222930773400360585979333368915ce793502
parent 811fc0683d28f6af18e0472b97f0944c65ddfd45
Author: Marc Coquand <marc@coquand.email>
Date:   Tue, 24 Feb 2026 10:47:20 +0100

*

Diffstat:
Aesc-backup.7 | 30++++++++++++++++++++++++++++++
Desc-history.7 | 29-----------------------------
Aesc-ipc.5 | 43+++++++++++++++++++++++++++++++++++++++++++
3 files changed, 73 insertions(+), 29 deletions(-)
diff --git a/esc-backup.7 b/esc-backup.7
@@ -0,0 +1,30 @@
+.TH esc-backup 7
+
+.SH NAME
+esc-backup - Esc editor revision history management system
+
+.SH DESCRIPTION
+
+.PP
+.B esc(1) 
+features an automatic revision history. 
+.B esc(1)
+automatically takes temporary snapshots of the file unless explicitily
+disabled by providing the  
+.B disable-snapshots-flag
+flag to the program. If the partition where the file resides is a CoW
+partition, such as
+.B btrfs(5)
+, then a reflink is created instead of a regular file copy. 
+
+.PP
+Snapshots are taken every time the file is saved, and are stored in the
+directory 
+.B XDG_DATA_HOME/esc/history 
+with the absolute location. Up to ten copies are kept for
+each file. 
+
+.SH SEE ALSO
+.B btrfs(5)
+.B cp(1)
+.B esc-ipc(5)
diff --git a/esc-history.7 b/esc-history.7
@@ -1,29 +0,0 @@
-.TH esc-history 7
-
-.SH NAME
-esc-history - Esc editor revision history management system
-
-.SH DESCRIPTION
-
-.PP
-.B esc(1) 
-features an automatic revision history. 
-.B esc(1)
-automatically takes temporary snapshots of the file unless explicitily
-disabled by providing the  
-.B disable-snapshots-flag
-flag to the program. If the partition where the file resides is a CoW
-partition, such as
-.B btrfs(5)
-, then a reflink is created instead of a regular file copy. 
-
-.PP
-Snapshots are taken every time the file is saved, and are stored in the
-same directory as the file being edited, with the format
-.B .esc-file name-version number~
-where the version number is numerical up to 10. More copies than that are
-automatically deleted. 
-
-.SH SEE ALSO
-.B btrfs(5)
-.B cp(1)
diff --git a/esc-ipc.5 b/esc-ipc.5
@@ -0,0 +1,43 @@
+.TH esc-ipc 7
+
+.SH NAME
+
+esc-ipc - Esc editor fuse filesystem
+
+.SH DESCRIPTION
+
+.PP
+.B esc(1)
+mounts a pseudo-filesystem for each process under 
+.B XDG_RUNTIME_DIR/esc/\fIpid\fR
+using 
+.B fuse(4)
+which is automatically unmounted when the process is finished.
+
+.SS Overview
+Underneath 
+.B XDG_RUNTIME_DIR/esc/\fIpid\fR
+, there are the following groups of files and subdirectories.
+
+.IP /cursor 25
+the current column and row of the selection and cursor.
+
+.IP \fI/cwd\fR 25
+Symlink to the current working directory.
+
+.IP /buffer/\fIn\fR/body 25
+The body of the \fIn\fRth buffer. Writable.
+
+.IP /buffer/\fIn\fR/path 25
+Currently opened filename, relative to \fI/cwd\fR. 
+
+.IP /buffer/\fIn\fR/ranges 25
+The highlighting ranges of the currently open file.
+
+.IP /buffer/\fIn\fR/history/\fIdate\fR 25
+A snapshot of the state of the buffer at moment \fIdate\fR. 
+
+.SH SEE ALSO
+.B patch(1)
+.B diff(1)
+.B esc-backup(7)