Age | Commit message (Collapse) | Author |
|
|
|
|
|
Function to export deck notes as & import them as DECK
|
|
"Export notes for deck in FILENAME."
FILENAME: The name of the file to save the exported deck.
This function prompts the user to provide a deck name and allows the
user to specify a filename for exporting notes belonging to that deck.
It then retrieves all the notes associated with the deck and exports
them.
The exported notes are formatted as an Emacs Lisp code block that can
be evaluated to recreate the deck with its associated notes. The
resulting code is saved to a file with the provided FILENAME and a
'.el' extension is added automatically.
Each note is exported using the `gnosis-export-note` function. The
generated code includes a call to `gnosis-define-deck` with the deck
name and all notes formatted as nested lists
|
|
"Export fields for note with value of id ID."
ID: Identifier of the note to export.
This function retrieves the fields of a note with the given ID and
inserts them into the current buffer. Each field is represented as a
property list entry. The following fields are exported: type, main,
options, answer, tags, extra-notes, image, and second-image.
The exported fields are formatted as key-value pairs with a colon,
e.g., :field value. The fields are inserted sequentially into the
buffer. For certain field values, like lists or nil, special
formatting is applied.
If the value is a list, the elements are formatted as strings and
enclosed in double quotes.
If the value is nil, the field is exported as :field nil.
All other values are treated as strings and exported with double
quotes.
The final exported note is indented using the `indent-region' function
|
|
Return a list of ID vlaues for each note with value of deck-id DECK
|
|
|
|
Add faces on gnosis.el
|
|
gnosis-edit-mode, a mode derived from emacs-lisp with that has keybind
C-c C-c to a #'lambda that evaluates & kills buffer, exiting
recursive-edit loop
|
|
Get due notes of specified deck-id
|
|
|
|
a loop to update values of fields using gnosis-update
|
|
This function creates an Emacs Lisp buffer named *gnosis-edit* and populates it
with the values of the note identified by the specified ID. The note values are
inserted as keywords for the `gnosis-edit-update-note' function.
|
|
Prompt user to either edit contents note or change ef values
|
|
Edit easiness factor values and update them on gnosis-db.
|
|
Used to change/edit values at gnosis-db, that are represented as
lists, such as ef
|
|
Previous implemntation with completing-read takes 1+
keypresses (select option & enter). Using read-char-choice we reduce
it to 1.
Maybe we can add a custom option for next, to optionally be e.g space to make it more anki like
|
|
|
|
- Update documentation for adding notes.
- Replace Get -> Return
|
|
|
|
- Redo review as gnosis-review where user selects notes to review
- Notes are passed to gnosis-review--session, where all logic is
handled
This makes it easier to add new features in the future & maintain
|
|
|
|
Fixing issue when having require-match t, user can't select "q"
|
|
|
|
|
|
|
|
Creates git repo and commit review session
|
|
|
|
|
|
Version for gnosis-db current implementation.
Remove duplicate code as well.
|
|
Essentialy a note type that generates 2 basic card types form the
input of one, by reversing the question/answer.
|
|
- Fix prompt formatting issues
- Add optional match value, by default nil
- This is used to require match for suspending/reviewing specific
notes, match should be nil only when adding new notes
|
|
second-image will be path of an image to gnosis-images-dir, which will
be displayed AFTER user-input.
|
|
Prompt user to select image from gnosis-images-dir and return it's
path as a string.
|
|
Return a list of file paths as strings in DIR, filter results with
REGEX. This funciton will be used to prompt user to select files, such
as images.
|
|
Add gnosis-db-init to gnosis--insert-into & gnosis-select
|
|
|
|
- Add gnosis-testing variable, when any function such as those in
gnosis-dev create a testing env, they should also change this value to t
|
|
|
|
Optionally take custom prompt.
|
|
Redo with emacsql-sqlite as emacsql-sqlite-open has proven to be buggy
|
|
Function to create gnosis essential files & db schemas
|
|
|
|
- Fix 'looping issues'
- Fix revealing all clozes as false & other face issues
- Now reveal unanswered clozes as unanswered
- Display user-input answer
|
|
This is just a rewritten version of the previous
gnosi-review-cloze-reveal.
Loop for clozes, and 'reveal them' with gnosis-face-cloze-unanswered
|
|
Rewrite as cl-defun with keywords, change previous default values.
New: Optionally add custom face
|
|
'gnosis-completing-read' alternative version to completing-read.
Rewritten to just configure text properties of strings.
Display opitons with additional info with text properties, padding &
choosable face.
|
|
|
|
If user-input is correct (t), reveal cloze with gnosis-face-correct, then prompt for the
next one.
If user-input is incorrect (nil) reveal all clozes with
gnosis-face-false.
|
|
|