Age | Commit message (Collapse) | Author |
|
The authors function, if required in the future, must be reimplemented
using guile-git in (tissue git).
* tissue/issue.scm (authors): Delete public function.
|
|
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.
|
|
While making the repository argument mandatory makes git-tracked-files
more of a pure function, users would still prefer to implicitly refer
to the current repository in their tissue.scm configuration files.
* tissue/git.scm (git-tracked-files): Make repository argument
optional.
|
|
* bin/tissue (tissue-search): Assume is:open in queries.
|
|
* bin/tissue (tissue-search): Parse type field searches in queries.
|
|
* tissue/issue.scm (issue->alist): Add (type . issue) pair.
(index-issue): Index type:issue.
|
|
* 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.
|
|
* tissue/issue.scm: Export record type predicates issue? and post?.
|
|
* 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.
|
|
* tissue/issue.scm (date->iso-8601, iso-8601->date): New functions.
(issue->alist, post->alist, alist->issue, alist->post): New public
functions.
|
|
* 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.
|
|
* pre-inst-env: New file.
|
|
* Makefile (%.go): Disable auto-compile.
|
|
* tissue/utils.scm (call-with-input-pipe): Delete function.
|
|
* tissue/git.scm: Import (rnrs hashtables) and (ice-9 match).
(commit-deltas): New function.
(file-modification-table): New public function.
* tissue/issue.scm: Import (git).
(file-details): Do not lookup git history for file using `git log'.
(issues): Use file-modification-table to lookup git history.
|
|
* tissue/git.scm: Import (srfi srfi-19).
(commit-date): New public function.
|
|
* tissue/git.scm: Import %null-pointer from (system foreign).
(diff-find-similar!): New function.
|
|
Accepting a repository argument makes git-tracked-files a better
stand-alone utility.
* tissue/git.scm (git-tracked-files): Accept repository argument.
* tissue/tissue.scm (gemtext-files-in-directory): Pass repository
argument to git-tracked-files.
|
|
* tissue/git.scm (current-git-repository): New public function.
|
|
* tissue/issue.scm (<issue>)[created-relative-date,
last-updated-relative-date]: New fields.
* tissue/issue.scm (<post>)[post-relative-date]: New field.
* tissue/issue.scm (file-details): Do not collect relative dates.
(issues): Do not initialize created-relative-date and
last-updated-relative-date fields.
|
|
The web subcommand generates static sites which may have to live on
for a long time. Relative dates are meaningless in such a context.
* tissue/web.scm: Import (srfi srfi-19).
(issue-list-item): Do not accept #:created-relative-date and
#:last-updated-relative-date.
(issue-listing): Do not pass #:created-relative-date and
#:last-updated-relative-date.
(issue-list-item-markup-writer-action): Do not use
#:created-relative-date and #:last-updated-relative-date.
|
|
* 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.
|
|
* tissue/git.scm: Import (rnrs arithmetic bitwise), (srfi
srfi-9), (git), (git types), and selected symbols from (system
foreign) and (bytestructures guile).
(pointer->bytestructure, bytestructure->pointer, pointer->index-time,
pointer->index-entry, repository-index, index-version,
index-entry-count, index-entry, index-entries):
New functions.
(%oid, %index-time, %index-entry): New variables
(<index-time>, <index-entry>): New types.
(git-tracked-files): Implement using guile-git.
|
|
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.
|
|
* tissue/utils.scm (call-with-current-directory): New public function.
|
|
* 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.
|
|
* .gitignore: New file.
|
|
* Makefile (.PHONY): Add clean.
(clean): New target.
|
|
* scripts/ccwl: Add --no-auto-compile to shebang.
|
|
* tissue/git.scm (git-top-level): Implement independent of the git
command.
|
|
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.
|
|
* tissue/git.scm: New file.
* tissue/issue.scm: Import (tissue git).
(issues): Use git-tracked-files.
|
|
* tissue/issue.scm (authors): Sort returned list of authors in
lexicographic order.
|
|
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.
|
|
For some reason, `git shortlog' outputs nothing inside a Guix
derivation.
* tissue/issue.scm (file-details): Build list of authors from list of
issues instead of relying on `git shortlog'.
|
|
* tissue/issue.scm (issues): Arrange posts oldest first.
(<issue>)[posts]: Comment on order of contents.
|
|
* tissue/issue.scm (authors): New public function.
|
|
* 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.
|