Age | Commit message (Collapse) | Author |
|
* 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.
|
|
* bin/tissue (main): Do not build index or parameterize for `tissue
run-web'.
|
|
* 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.
|
|
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.
|
|
* bin/tissue (invalid-operand): Delete function.
(tissue-run-web): Read address and port from configuration file.
|
|
* 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.
|
|
* bin/tissue (tissue-search): Page results, and do not limit number of
results.
|
|
* bin/tissue (tissue-index): New function.
(print-usage): List `tissue index' subcommand.
(main): Call tissue-index.
|
|
* 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.
|
|
* 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.
|
|
* 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.
|
|
* tissue/document.scm (<document>)[web-uri]: New slot.
* bin/tissue (main): Set web-uri slot before indexing document.
|
|
* bin/tissue (tissue-search): Add missing argument to format.
|
|
* bin/tissue (tissue-search): Separate out search functionality into
search-fold in (tissue search).
* tissue/search.scm: New file.
|
|
* tissue/document.scm: Do not import (srfi srfi-9). Import (srfi
srfi-19), (ice-9 match) and (oop goops).
(<document>): Delete type.
(<document>, <file-document>): New classes.
(date->alist, alist->date, object->scm, scm->object): New functions.
(document->alist, alist->document, print-document): Delete functions.
(document-term-generator, document-type, document-id-term,
document-text, print): New generic methods.
(read-gemtext-document): Return <file-document> object.
(index-document): Delete function.
* tissue/issue.scm: Do not import (srfi srfi-9) and (srfi
srfi-19). Import (oop goops) and (tissue document).
(date->iso-8601, iso-8601->date): Move to tissue/document.scm.
(<issue>, <post>): Re-implement as class.
(issue->alist, post->alist, alist->issue, alist->post, index-issue):
Delete functions.
(print-issue): Rename to print, a generic method.
(print): Use document-title and file-document-path instead of
issue-title and issue-file respectively. Accept mset argument.
(print-issue-to-gemtext): Use document-title instead of issue-title.
(read-gemtext-issue): Return a <issue> object.
(document-term-generator): New generic methods.
* bin/tissue: Import (tissue document) without a prefix.
(print-document, alist->document, document->text, index-document):
Delete functions.
(tissue-search): Use the print generic function.
(main): Use the document-type, document-id-term,
document-term-generator generic functions and replace-document!
instead of index-document.
* tissue/conditions.scm (&unknown-document-type-violation): Delete
condition.
|
|
* tissue/web.scm: Rename to tissue/web/static.scm.
* bin/tissue: Import (tissue web static) instead of (tissue web).
* Makefile (sources): Add sources in tissue/web/.
|
|
* bin/tissue: Do not import (srfi srfi-19).
(print-issue, print-issue-to-gemtext): Move to tissue/issue.scm.
(human-date-string): Move to tissue/utils.scm.
* tissue/issue.scm: Import (term ansi-color).
* tissue/utils.scm: Import (srfi srfi-19).
|
|
* tissue/issue.scm (%issue-files): Delete parameter.
(issues): Delete function.
(read-gemtext-issue): New public function.
(file-modification-table-for-current-repository): New function.
* bin/tissue (main): Do not parameterize %issue-files.
|
|
* tissue/tissue.scm (<tissue-configuration>)[issue-files]: Delete
field.
[indexed-documents]: New field.
* tissue/tissue.scm (tissue-configuration): Remove issue-files
argument. Add indexed-documents argument.
* bin/tissue: Import (tissue document) with doc: prefix.
(print-document, alist->document, document->text, index-document): New
functions.
(tissue-search): Display search results for generalized documents
using print-document, alist->document and document->text.
(main): Index generalized documents using index-document.
|
|
* bin/tissue (rlast): Delete function.
|
|
* bin/tissue (invoke): Delete function.
|
|
* bin/tissue: Import (srfi srfi-9).
(<indexed-document>): New type.
|
|
We are moving to a dynamic web interface with issue searches. Static
issue listings are therefore obsolete.
* tissue/web.scm: Do not import (skribilo ast), (skribilo
lib), (skribilo package base), (skribilo utils keywords), (skribilo
writer) and (sxml simple).
(%tags-path): Delete parameter.
(issue-list-item): Delete markup.
(issue-listing, issue-list-item-markup-writer-action,
tag-issue-lister, tag-pages): Delete functions.
* bin/tissue (tissue-web): Do not parameterize %tags-path.
|
|
* bin/tissue (tissue-search): Assume is:open in queries.
|
|
* bin/tissue (tissue-search): Parse type field searches in queries.
|
|
* bin/tissue (tissue-list): Delete function.
(print-usage): Unlist list subcommand.
(main): Do not call tissue-list. Alias `tissue' to `tissue search'.
|
|
* bin/tissue (print-issue): Remove obsolete comment about highlighting
keywords.
|
|
* bin/tissue (tissue-search): Handle blank search queries as a special
case.
|
|
Bold issue keywords are too visually distracting. They compete with
highlit text in snippets.
* bin/tissue (print-issue): Unbolden issue keywords and show them all
on blue, instead of some on red and some on blue.
|
|
* bin/tissue (tissue-show): New function.
(print-usage): List search subcommand.
(main): Call tissue-search.
|
|
* bin/tissue: Import (ice-9 ftw), (git), (xapian wrap) and (xapian
xapian).
(delete-xapian-index): New function.
(%state-directory, %xapian-index): New variables.
(main): Build index if it does not exist.
* tissue/issue.scm: Import (xapian xapian).
(index-person): New function.
(index-issue): New public function.
|
|
* bin/tissue (print-issue): Print issue filename.
(tissue-list): Remove newline before printing total count.
|
|
* bin/tissue (print-issue, print-issue-to-gemtext): Do not accept
issue number argument.
(tissue-list): Do not pass issue number argument to print-issue and
print-issue-to-gemtext.
|
|
* bin/tissue (print-issue): Underline issue title.
|
|
* bin/tissue (tissue-edit): Delete function.
(print-usage): Unlist edit subcommand.
(main): Do not call tissue-edit.
|
|
* bin/tissue (tissue-show): Expect filename arguments instead of issue
numbers.
|
|
* bin/tissue: Import (term ansi-color).
(color, bold, red, green, yellow, blue, magenta, cyan, red-background,
green-background, yellow-background, blue-background,
magenta-background, cyan-background): Delete functions.
(print-issue, tissue-show): Use colorize-string from (term ansi-color)
instead of our own functions.
|
|
* bin/tissue: Import (srfi srfi-19).
(human-date-string): New function.
(print-issue, print-issue-to-gemtext): Use human-date-string instead
of relative dates captured from git.
|
|
* bin/tissue (git-updated-files, git-first-commit-since, tissue-news):
Delete functions.
* bin/tissue (main): Remove delegation to news subcommand.
* bin/tissue (print-usage): Unlist tissue-news.
|
|
If we always run with the top-level directory as the current
directory, we don't need to frequently discover the top-level
directory by walking the filesystem. Also, this sits nicer with a
migration from git to libgit2.
* bin/tissue (main): Run all subcommands with the top-level directory
as the current directory.
(load-config): Load tissue.scm without appending the top-level
directory to it.
(tissue-web): Find the top-level directory using getcwd instead of
git-top-level.
|
|
* bin/tissue (tissue-repl): New function.
(print-usage): Print usage of tissue repl subcommand.
(main): Call tissue-repl.
|
|
* tissue/tissue.scm: Import (tissue git).
(<tissue-configuration>)[issue-files]: New field.
(gemtext-files-in-directory): New function.
(tissue-configuration): Add #:issue-files keyword argument.
* tissue/issue.scm (%issue-files): New public parameter.
(issues): Read issues only from files in %issue-files.
* bin/tissue (main): Parameterize %issue-files.
|
|
* scripts/ccwl: Add --no-auto-compile to shebang.
|
|
With <file> objects specifying the files to export to the web, the
user has ultimate flexibility in their choice of what to export and
how to export.
* bin/tissue (tissue-web): Parameterize %project-name and
%tags-path. Use new signature of build-website.
* tissue/tissue.scm: Import (srfi srfi-1) and (srfi srfi-71).
(<tissue-configuration>)[web-files]: New field.
(tissue-configuration-web-files): New public function.
(tissue-configuration): New macro.
* tissue/web.scm: Import (srfi srfi-9).
(%project-name): New public parameter.
(<file>): New type.
(build-issue-listing): Delete function.
(copier, gemtext-reader, gemtext-exporter, skribe-exporter,
tag-issue-lister, tag-pages): New public functions.
(exporter, with-current-directory): New functions.
(build-website): Simply write <file> objects to files.
(replace-extension): Export.
|
|
* tissue/git.scm (git-top-level): New function.
* bin/tissue: Import (tissue git).
(load-config): Use git-top-level.
|
|
Pass the tissue -> `tissue list' alias through main again so that
parameters and other setup is done correctly.
* bin/tissue (main): Pass the tissue -> `tissue list' alias through
main again.
|
|
* bin/tissue (main): Load config and parameterize %aliases.
* tissue/issue.scm (%aliases): New public parameter.
(resolve-alias): New function.
(file-details): Resolve authors and assignees using aliases.
|
|
* bin/tissue (load-config): New function.
(tissue-web): Use load-config.
|
|
* tissue/issue.scm (<post>): New record type.
(file-details): Record all commits affecting a file, not just how
many.
* bin/tissue (print-issue, print-issue-to-gemtext): Apply length on
the output of issue-posts before use.
* tissue/web.scm (issue-list-item-markup-writer-action): Apply length
on posts before use.
|
|
issue-open returns a boolean. So, it makes sense to name it like a
predicate.
* bin/tissue (tissue-list): Replace issue-open with issue-open?.
* tissue/issue.scm (tissue): Export issue-open? instead of issue-open.
(<issue>): Rename issue-open to issue-open?.
* tissue/web.scm (issue-listing): Replace issue-open with issue-open?.
|