Liking cljdoc? Tell your friends :D

com.blockether.vis.internal.foundation.editing.core

Host-side file reading, search, listing and versioned line editing.

cat and grep print a file version once and plain line numbers, which patch consumes. One patch validates every edit before replacing one file. list-directories supplies the Python ls shim. Standard Python owns file creation, copying, moving and deletion.

Paths are confined to the session's allowed roots. Host operations also consult extension-owned :fs/access gates.

Host-side file reading, search, listing and versioned line editing.

`cat` and `grep` print a file version once and plain line numbers, which
`patch` consumes. One patch validates every edit before replacing one file.
`list-directories` supplies the Python `ls` shim. Standard Python owns file
creation, copying, moving and deletion.

Paths are confined to the session's allowed roots. Host operations also
consult extension-owned `:fs/access` gates.
raw docstring

com.blockether.vis.internal.foundation.editing.diff

Unified-diff rendering and line accounting for versioned patches. Independent of the tool and activity namespaces.

Unified-diff rendering and line accounting for versioned patches.
Independent of the tool and activity namespaces.
raw docstring

com.blockether.vis.internal.foundation.editing.escapes

Unicode-escape hygiene for model-authored edit TEXT.

Public surface: decode-unicode-escapes — undo the \uXXXX drift a model writes when it means the character itself, and nothing else.

Unicode-escape hygiene for model-authored edit TEXT.

Public surface: `decode-unicode-escapes` — undo the `\uXXXX` drift a model
writes when it means the character itself, and nothing else.
raw docstring

com.blockether.vis.internal.foundation.editing.version

Versioned line addresses: the vocabulary cat and grep print and patch spends.

A file version is the first 8 hex chars of the SHA-256 of its UTF-8 text. A read prints the version ONCE in its header (path @3f9a1c2b) and each line as a plain number (131│ text). patch names that version and its line numbers. When the file changed after the read, the edit is moved through a diff from the shown version to the current file, and refused only when its own lines changed.

split-content-lines / char-offset-at-line blob <-> line/char coordinates content-version / parse-version text -> version, input -> version render-numbered-block / header [[ln text]…] -> N│ text rows remember! / recall bounded cache of shown versions note-shown! / shown-ranges / covers? the lines that each version showed edit-span line span -> char span

Everything is pure except the cache. The cache holds the text of each version that a read showed, keyed by canonical path and version, so a remap can diff from it. It drops the oldest texts above store-max-chars.

Versioned line addresses: the vocabulary `cat` and `grep` print and `patch` spends.

A file version is the first 8 hex chars of the SHA-256 of its UTF-8 text. A read
prints the version ONCE in its header (`path @3f9a1c2b`) and each line as a plain
number (`131│ text`). `patch` names that version and its line numbers. When the
file changed after the read, the edit is moved through a diff from the shown
version to the current file, and refused only when its own lines changed.

  split-content-lines / char-offset-at-line   blob <-> line/char coordinates
  content-version / parse-version             text -> version, input -> version
  render-numbered-block / header              [[ln text]…] -> `N│ text` rows
  remember! / recall                          bounded cache of shown versions
  note-shown! / shown-ranges / covers?        the lines that each version showed
  edit-span                                   line span -> char span

Everything is pure except the cache. The cache holds the text of each version
that a read showed, keyed by canonical path and version, so a remap can diff
from it. It drops the oldest texts above `store-max-chars`.
raw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
←Move to previous article
→Move to next article
Ctrl+/Jump to the search field
× close