Age | Commit message (Collapse) | Author |
|
We store snippet source text in a slot of the <document> class thus
interring into the xapian index. This allows us to render search
snippets using only the xapian index without referring back to the git
repository.
* tissue/document.scm (<document>)[snippet-source-text]: New slot.
* tissue/document.scm (document-snippet-source-text): Delete method.
(document-html-snippet): Remove blank lines from snippet source text
before generating a snippet.
* tissue/commit.scm (document-snippet-source-text): Delete method.
(repository-commits): Initialize snippet-source-text.
* tissue/skribilo.scm (fragment-text): New function.
(document-fragment): Initialize snippet-source-text.
(document-text): Use fragment-text.
(document-snippet-source-text): Delete method.
* tissue/file-document.scm (file-text): New function.
(document-text): Use file-text.
(read-gemtext-document): Initialize snippet-source-text.
* tissue/issue.scm (read-gemtext-issue): Initialize
snippet-source-text.
* issues/skribilo-fragment-snippets-need-code-from-repo.gmi: Close
issue.
|
|
* tissue/commit.scm (document-snippet-source-text): Explain use of
commit-body.
|
|
* tissue/skribilo.scm (document-snippet-source-text): New method.
* issues/skribilo-fragment-snippets-need-code-from-repo.gmi: New
issue.
|
|
Since the checkouts are created in the system-dependent temporary
directory, we no longer need to change into the state directory.
* bin/tissue (tissue-web): Do not change into state directory when
checking out.
|
|
* tissue/git.scm (call-with-temporary-checkout): Create temporary
checkout in temporary directory, not in current directory.
|
|
Files in the repository may be read. So, we must change into a
checkout of the repository when handling requests.
* tissue/web/server.scm (handler): Change to repository directory when
handling requests.
|
|
* bin/tissue (tissue-web): Pass temporary checkout of git repository,
not merely a bare repository, to server handler.
|
|
* bin/tissue (pull): Use call-with-temporary-checkout.
|
|
* tissue/git.scm (call-with-temporary-checkout,
call-with-temporary-checkouts): New public functions.
* .dir-locals.el (scheme-mode): Set scheme-indent-function of
call-with-temporary-checkout and call-with-temporary-checkouts to 1.
|
|
* tissue.scm (#:web-files): Add release files.
* website/index.skb (Download): New section.
|
|
* website/releases/tissue-0.1.0.tar.lz,
website/releases/tissue-0.1.0.tar.lz.asc: New files.
|
|
* Makefile (check): Replace pre-inst-env with --no-auto-compile and
-L.
|
|
* Makefile (version, GIT, GPG, LZIP, distribute_files, dist_archive):
New variables.
(.PHONY): Add dist.
(dist, $(dist_archive), %.asc): New targets.
|
|
* website/index.skb (Documentation): Link to search interface.
|
|
No elements are being filtered. filter-map is unnecessary.
* tissue.scm (#:web-files): Replace filter-map with map.
|
|
* doc/tissue.skb (Tutorial): New chapter.
* tissue.scm (#:indexed-documents): Index it.
|
|
* doc/skribilo.scm (file): New public function.
|
|
* issues/resolve-aliases-when-searching-for-people.gmi: New file.
|
|
* tissue/issue.scm: Do not export index-issue.
|
|
Names of people as non-boolean since it may be required to match them
partially. Think searching for "arun" when the full name is "Arun
Isaac".
* tissue/issue.scm (document-boolean-terms): Remove creator, last
updater and assigned terms.
(document-term-generator): New method.
* tissue/search.scm (%boolean-prefixes): Move creator, lastupdater and
assigned to ...
(%boolean-prefixes): ... here.
|
|
* tissue/web/server.scm (start-web-server): Clean up socket file when
Unix sockets are used.
|
|
* tissue/git.scm (commit-deltas): Rename to ...
(commit-file-changes): ... this. Return list of pairs mapping old
files to new files.
(file-modification-table): Use commit-file-changes instead of
commit-deltas. Adapt to new return value.
* tests/git.scm: New file.
* .dir-locals.el (scheme-mode): Set scheme-indent-function for
with-variable and with-variables.
|
|
* tissue/web/server.scm (log-request): Log complete request URI, not
just the path.
|
|
* bin/tissue (main, pull): Add top level directory of repository to
load path.
|
|
* bin/tissue (pull): Create xapian directory only when it does not
exist.
|
|
Indexing might refer to files on the filesystem.
* bin/tissue (pull): Change to temporary clone of repository before
indexing.
|
|
* tissue/web/static.scm (build-website): Expect to be at the top level
of the repository to be exported.
* bin/tissue (pull): Create a temporary clone of the repository and
change to it before calling build-website.
|
|
* website/index.skb (Documentation): New section.
|
|
* tissue/web/dev.scm (handler): Allow files to shadow the search page.
* tissue/web/server.scm (handler): Allow files to shadow the search
page.
|
|
* Makefile: Add 2023 to Arun Isaac's copyright header.
|
|
The --parents flag of cp is not portable to macOS. Besides, install
correctly replaces destination files when they already exist.
* Makefile (install): Use install instead of cp and mkdir.
|
|
pairify was deprecated.
* tests/tissue.scm (pairify): Delete variable.
("pairify"): Delete test.
|
|
* tissue.scm: Import (tissue skribilo).
(#:indexed-documents): Add manual.
|
|
* .dir-locals.el: New file.
|
|
* tissue/skribilo.scm: New file.
|
|
* tissue/issue.scm: Do not import (git).
|
|
* tissue/file-document.scm (commits-affecting-file): New public
function.
(read-gemtext-document): Use commits-affecting-file.
|
|
Earlier, the document type returned was "file-document". It only
seemed to work because xapian split them into two terms—"file" and
"document".
* tissue/file-document.scm (document-type): Return "document".
* tissue/issue.scm (document-type): New generic method.
|
|
Earlier, the document type returned was "file-document". It only
seemed to work because xapian split them into two terms—"file" and
"document".
* tissue/file-document.scm (document-type): Return "document".
|
|
* tissue/commit.scm (document-id-term, document-recency-date): Refer
to metasyntactic variable COMMIT, not DOCUMENT.
|
|
We already have the mset from enquire-mset.
* tissue/search.scm (search-fold): Do not use
MSetIterator-mset-get. Reuse mset from enquire-mset.
|
|
The gemtext exporter is just a skribe exporter with different
defaults.
* tissue/web/static.scm (gemtext-exporter): Express in terms of
skribe-exporter.
|
|
* tissue/search.scm (search-fold): Limit to 1000 search results by
default.
* tissue/web/server.scm (search-handler): Limit to 1000 search results
by default.
|
|
* guix.scm: Import guile-xapian with the guix: prefix.
(guile-xapian): New variable.
|
|
We use font-ibm-plex on the tissue website.
* guix.scm: Import font-ibm-plex from (gnu packages fonts) with the
guix: prefix. Import (guix utils).
(font-ibm-plex): New variable.
(package)[native-inputs]: Add font-ibm-plex.
|
|
* issues/allow-checkboxes-without-a-space.gmi: New file.
* tissue/issue.scm (file-details): Add TODO note.
|
|
Functionally setting generic functions (like add-methods does) doesn't
work since methods can still refer to the old generic function. The
future of generic functions in the theming system is in doubt. It must
be rethought out carefully.
* tissue/web/themes.scm (add-methods): Delete function.
* tissue/web/themes/default.scm (default-theme): Replace add-methods!
with add-method.
|
|
* tissue/document.scm (object->scm, scm->object): Support symbols.
|
|
* doc/tissue.skb: Add identifiers to all chapters and sections.
|
|
* tissue/git.scm (git-top-level): Find git top level correctly even in
bare repositories.
|