You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on May 27, 2024. It is now read-only.
The read and write commands: interaction with YAML
Parsing cygnet.yaml (or abbotsbury.yaml) into a list of articles
Making sure that this is done every time the directory is changed
Saving upon exiting the directory / the programme. I think cygnet's backup system has generally been unnecessary.
The list command: pretty-printing articles
The open command: file system management
The sort command
The cite command
The add command
Fetching data from Crossref
Implementing asynchronous HTTP for multiple requests
The delete command
The edit command
Tempfile creation
Calling vim (or $EDITOR) from inside the program
The fetch command
The search command
Less important features
The import command. Quite rare, my usual workflow is to add the DOI, then fetch and open, rather than to download a PDF from the web. Still, this is helpful with (for example) emailed papers.
The update command. I don't remember the last time I manually did this.
Manual PDF management
addpdf
deletepdf
Other stuff
abbot cite subcommand (right now cygnet uses a cygnet-cite entry point which is clunky)
Other datatypes, particularly...
Books
Theses
Pipes, allowing search results to be piped into cite (for example). We should plan this ahead of time, and have commands like search or list return two things: (1) a list of references, (2) text that can be printed to stdout. If it is part of a pipe, then we can pass (1) to the next function, and if not, then we can just print the text.
Better megaparsec usage, including better command identification and better error reporting.
A new command. This would let us enter metadata manually, and is important for books which have not very good metadata in Crossref.
A command for "quick" tagging (technically can be done using edit, but we would usually like to tag something without going into vim).
A search_tag command (abbreviated to s_tag, st, or similar), which only searches in tags.
Let search work with acronyms. We can do this crudely by "abbreviating" the title (taking the first letter of each word) and adding it to the haystack.
Don't destroy user input from new if the parsing fails :-(
Modify book to use subtitles as well
The text was updated successfully, but these errors were encountered:
Roadmap
Major features already in
cygnet
cd
cd -
to return to previous directoryquit
commandhelp
commandData.Text
read
andwrite
commands: interaction with YAMLcygnet.yaml
(orabbotsbury.yaml
) into a list of articlescygnet
's backup system has generally been unnecessary.list
command: pretty-printing articlesopen
command: file system managementsort
commandcite
commandadd
commanddelete
commandedit
command$EDITOR
) from inside the programfetch
commandsearch
commandLess important features
import
command. Quite rare, my usual workflow is toadd
the DOI, thenfetch
andopen
, rather than to download a PDF from the web. Still, this is helpful with (for example) emailed papers.update
command. I don't remember the last time I manually did this.addpdf
deletepdf
Other stuff
abbot cite
subcommand (right nowcygnet
uses acygnet-cite
entry point which is clunky)search
results to be piped intocite
(for example). We should plan this ahead of time, and have commands likesearch
orlist
return two things: (1) a list of references, (2) text that can be printed to stdout. If it is part of a pipe, then we can pass (1) to the next function, and if not, then we can just print the text.new
command. This would let us enter metadata manually, and is important for books which have not very good metadata in Crossref.edit
, but we would usually like to tag something without going into vim).search_tag
command (abbreviated tos_tag
,st
, or similar), which only searches in tags.search
work with acronyms. We can do this crudely by "abbreviating" the title (taking the first letter of each word) and adding it to the haystack.new
if the parsing fails :-(The text was updated successfully, but these errors were encountered: