Age | Commit message (Expand) | Author |
2022-07-03 | tissue: Read files from git repository, not from the working tree.•••This also frees us from checking if the file actually exists in the
working tree.
* bin/tissue (tissue-show): Use call-with-file-in-git instead of
call-with-input-file.
(load-config): Use call-with-file-in-git and eval-string instead of
load.
* tissue/document.scm: Import (tissue git).
(document-text, read-gemtext-document): Use call-with-file-in-git
instead of call-with-input-file.
* tissue/issue.scm (file-details): Read from a port instead of from a
file.
(read-gemtext-issue): Call file-details with a port reading the file
committed into the git repository.
* tissue/web/server.scm: Import (tissue git).
* tissue/web/static.scm (exporter): Use call-with-file-in-git instead
of call-with-input-file.
| Arun Isaac |
2022-07-03 | git: Add call-with-file-in-git utility.•••* tissue/git.scm (call-with-file-in-git): New public function.
| Arun Isaac |
2022-07-03 | git: Find git tracked files from HEAD, not from index.•••The index is the staging area. We really only want to look at files
already committed into the git repository. In addition, a pleasant
side-effect is that this gets rid of many of the additional bindings
from libgit2.
* tissue/git.scm: Import only %null-pointer from (system foreign). Do
not import (bytestructures guile).
(pointer->bytestructure, bytestructure->pointer, pointer->index-time,
pointer->index-entry, repository-index, index-version,
index-entry-count, index-entry, index-entries): Delete functions.
(%oid, %index-time, %index-entry): Delete variables.
(<index-time>, <index-entry>): Delete types.
(head-tree): New function.
(git-tracked-files): Find git tracked files from HEAD, not from index.
| Arun Isaac |
2022-07-01 | web: server: Make CSS a host-specific parameter.•••* bin/tissue (tissue-run-web): Pass CSS as a host-specific parameter.
* tissue/web/server.scm (handler): Remove css argument. Accept CSS as
a host-specific parameter.
(start-web-server): Remove css argument.
| Arun Isaac |
2022-07-01 | bin: Do not build index or parameterize for `tissue run-web'.•••* bin/tissue (main): Do not build index or parameterize for `tissue
run-web'.
| Arun Isaac |
2022-06-30 | web: server: Support virtual hosts.•••* bin/tissue (tissue-run-web): Add hosts configuration option.
* tissue/web/server.scm: Import (tissue utils).
(start-web-server): Add host parameters argument.
(handler): Read database based on Host header.
| Arun Isaac |
2022-06-30 | web: server: Grant read-write permissions to all on Unix socket.•••* tissue/web/server.scm (start-web-server): Grant read-write
permissions to all on Unix socket.
| Arun Isaac |
2022-06-30 | bin: Introduce listen specification for web service.•••The new listen specification unifies unix sockets, IP addresses and
ports, all into one string.
* bin/tissue (address->socket-address): Delete function.
(listen->socket-address): New function.
(tissue-run-web): Use listen->socket-address instead of
address->socket-address. Specify default listen instead of default
address and port.
| Arun Isaac |
2022-06-30 | bin: Read web service parameters from configuration file.•••* bin/tissue (invalid-operand): Delete function.
(tissue-run-web): Read address and port from configuration file.
| Arun Isaac |
2022-06-30 | web: server: Make CSS representationally more concise.•••* tissue/web/server.scm (%css): Make CSS representationally more
concise by removing blank lines and squeezing one-rule blocks into a
single line.
| Arun Isaac |
2022-06-30 | web: server: Do not pad search results.•••* tissue/web/server.scm (%css)[.search-results]: Do not pad.
| Arun Isaac |
2022-06-30 | web: server: Add class to search results ul list.•••* tissue/web/server.scm (make-search-page): Add class "search-results"
to search results ul.
| Arun Isaac |
2022-06-30 | web: server: Display estimated number of matches.•••* tissue/web/server.scm: Import (xapian wrap). Import parse-query
from (xapian xapian) renaming it to xapian:parse-query.
(make-search-page): Display estimated number of matches.
(handler): Pass estimated number of matches to make-search-page.
| Arun Isaac |
2022-06-30 | search: Separate out query parsing into public function.•••* tissue/search.scm: Import parse-query from (xapian xapian) renaming
it to xapian:parse-query.
(parse-query): New public function.
(search-fold): Use parse-query.
| Arun Isaac |
2022-06-30 | web: server: Re-indent make-search-page.•••* tissue/web/server.scm (make-search-page): Re-indent.
| Arun Isaac |
2022-06-29 | Makefile: Remove top_level_module_dir suffix from scmdir and godir.•••* Makefile (scmdir, godir): Remove top_level_module_dir suffix.
| Arun Isaac |
2022-06-29 | Makefile: Preserve directory structure during installation.•••* Makefile (install): Preserve directory structure when installing
sources and objects.
| Arun Isaac |
2022-06-29 | Makefile: Remove dependencies of phony target `install'.•••* Makefile (install): Remove dependencies.
| Arun Isaac |
2022-06-29 | web: server: Self-document search filters.•••* tissue/web/server.scm (make-search-page): Self-document search
filters.
(%css)[.search-hint, .search-filter]: New rules.
| Arun Isaac |
2022-06-29 | search: Rename last-updater to lastupdater.•••Xapian doesn't seem to like hyphens.
* tissue/search.scm (search-fold): Rename last-updater to lastupdater.
| Arun Isaac |
2022-06-29 | search: Return all results by default.•••* tissue/search.scm (search-fold, search-map): Set default value of
#:maximum-items argument to all documents.
* bin/tissue (tissue-search): Do not pass #:maximum-items to
search-map.
| Arun Isaac |
2022-06-29 | web: server: List search results even on home page.•••* tissue/web/server.scm (handler): List search results even on home
page.
| Arun Isaac |
2022-06-29 | web: server: Pre-fill search box with current query.•••* tissue/web/server.scm (make-search-page): Accept query argument.
(handler): Pass query argument to make-search-page.
| Arun Isaac |
2022-06-29 | web: server: Add document type identifiers in web output.•••* tissue/web/server.scm (%css)[.search-result-title,
.search-result-document, .search-result-issue,
.search-result-open-issue, .search-result-closed-issue]: New rules.
| Arun Isaac |
2022-06-29 | issue: Remove space at the beginning of search result metadata.•••* tissue/issue.scm (document->sxml): Remove space at the beginning of
search result metadata.
| Arun Isaac |
2022-06-29 | document: Add search result title CSS class.•••* tissue/document.scm (document->sxml): Add search result title CSS
class.
* tissue/issue.scm (document->sxml): Add search result title CSS
class.
| Arun Isaac |
2022-06-29 | document: Add CSS classes identifying document type.•••* tissue/document.scm (document->sxml): Add search-result-document
class.
* tissue/issue.scm (document->sxml): Add search-result-issue and
search-result-open-issue/search-result-closed-issue classes.
| Arun Isaac |
2022-06-29 | search: AND is:open filter with search query.•••* tissue/search.scm (search-fold): AND is:open filter with search
query.
| Arun Isaac |
2022-06-29 | document: Print identifier identifying type of search result.•••* tissue/document.scm (print): Print DOCUMENT identifier.
* tissue/issue.scm (print): Print ISSUE identifier.
| Arun Isaac |
2022-06-29 | bin: Page search results, and do not limit number of results.•••* bin/tissue (tissue-search): Page results, and do not limit number of
results.
| Arun Isaac |
2022-06-29 | document: Accept port argument when printing to text.•••* tissue/document.scm (print): Accept port argument.
* tissue/issue.scm (print): Accept port argument.
| Arun Isaac |
2022-06-29 | utils: Add call-with-output-pipe.•••* tissue/utils.scm (call-with-output-pipe): New function.
| Arun Isaac |
2022-06-29 | document: Remove blank line between title and snippet.•••* tissue/document.scm (print): Remove blank line between title and
snippet.
| Arun Isaac |
2022-06-29 | web: server: Use div instead of span for snippets and metadata.•••A div is already a block element. There is no need to use a span and
then make it a block element.
* tissue/document.scm (document->sxml): Use div instead of span for
snippets and metadata.
* tissue/issue.scm (document->sxml): Use div instead of span for
snippets and metadata.
* tissue/web/server.scm (%css)[.search-result-metadata]: Remove
"display: block" property.
| Arun Isaac |
2022-06-29 | document: Remove blank lines in search snippets.•••Blank lines waste precious space in search snippets.
* tissue/document.scm (document-html-snippet): Remove blank lines in
search snippets.
| Arun Isaac |
2022-06-29 | document: Abstract out HTML snippet generation.•••* tissue/document.scm (document-html-snippet): New function.
(document-snippet, document-sxml-snippet): Use document-html-snippet.
| Arun Isaac |
2022-06-29 | tissue: Add `tissue index' subcommand.•••* bin/tissue (tissue-index): New function.
(print-usage): List `tissue index' subcommand.
(main): Call tissue-index.
| Arun Isaac |
2022-06-29 | search: Limit number of search results.•••* tissue/search.scm (search-fold, search-map): Accept maximum number
of search results and offset as arguments.
* bin/tissue (tissue-search): Do not print number of search
results. Use search-map instead of search-fold.
| Arun Isaac |
2022-06-29 | search: Accept search query as a single string.•••* tissue/search.scm (search-fold, search-map): Accept search query as
a single string instead of a list of strings.
* bin/tissue (tissue-search): Pass a single search string to
search-fold.
* tissue/web/server.scm (handler): Pass a single search string to
search-map.
| Arun Isaac |
2022-06-29 | web: server: Add web server for search.•••* tissue/web/server.scm: New file.
* tissue/document.scm (document-sxml-snippet): New public function.
(document->sxml): New generic method.
* tissue/issue.scm: Import (web uri).
(document->sxml): New generic method.
* bin/tissue: Import (system repl server) and (tissue web server).
(address->socket-address, tissue-run-web): New function.
(print-usage): List `tissue run-web' subcommand.
(main): Call tissue-run-web.
| Arun Isaac |
2022-06-29 | document: Add web-uri slot to <document> class.•••* tissue/document.scm (<document>)[web-uri]: New slot.
* bin/tissue (main): Set web-uri slot before indexing document.
| Arun Isaac |
2022-06-29 | document: Abstract out document snippet selection.•••* tissue/document.scm: Import (htmlprag).
(document-snippet): New public function.
(print): Use document-snippet.
* tissue/issue.scm (print): Use document-snippet.
| Arun Isaac |
2022-06-28 | web: static: Move sanitize-string to (tissue issue).•••* tissue/web/static.scm (sanitize-string): Move to tissue/issue.scm.
| Arun Isaac |
2022-06-28 | document: Add slot-set utility.•••* tissue/document.scm (slot-set): New public function.
| Arun Isaac |
2022-06-28 | tissue: Add missing argument to format in tissue-search.•••* bin/tissue (tissue-search): Add missing argument to format.
| Arun Isaac |
2022-06-28 | search: Add search-map.•••* tissue/search.scm (search-map): New function.
| Arun Isaac |
2022-06-28 | document: Override write to print object slots and values.•••* tissue/document.scm: Import (srfi srfi-1).
(write): New generic method.
| Arun Isaac |
2022-06-28 | bin: Separate out search into (tissue search).•••* bin/tissue (tissue-search): Separate out search functionality into
search-fold in (tissue search).
* tissue/search.scm: New file.
| Arun Isaac |
2022-06-28 | issue: Prefix ! to destructive function index-person.•••* tissue/issue.scm (index-person): Rename to index-person!.
(document-term-generator): Update invocations of index-person.
| Arun Isaac |
2022-06-28 | issue: Deprecate unix-time->date utility.•••* tissue/issue.scm (unix-time->date): Delete function.
| Arun Isaac |