summaryrefslogtreecommitdiff
path: root/gnosis.el
AgeCommit message (Expand)Author
2024-01-04gnosis-db: Redo as defconstThanos Apollo
2024-01-04gnosis-review: Add review session for due notes of deckThanos Apollo
2024-01-04Add gnosis-define-deck...Function to export deck notes as & import them as DECK Thanos Apollo
2024-01-04Add gnosis-export-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 Thanos Apollo
2024-01-04Add dd gnosis-export-note..."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 Thanos Apollo
2024-01-04Add gnosis-get-notes-for-deck...Return a list of ID vlaues for each note with value of deck-id DECK Thanos Apollo
2024-01-04gnosis-add-note-fields: Add condition-case & update docstringThanos Apollo
2024-01-04Remove gnosis-faces.el & notes.el...Add faces on gnosis.el Thanos Apollo
2024-01-04Add gnosis-edit-mode & map...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 Thanos Apollo
2024-01-04Add gnosis-get-deck-due-notes...Get due notes of specified deck-id Thanos Apollo
2024-01-04Update docstrings & fix typosThanos Apollo
2024-01-04Add gnosis-edit-update-note...a loop to update values of fields using gnosis-update Thanos Apollo
2024-01-03Add gnosis-edit-contents...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. Thanos Apollo
2024-01-03Add gnosis-edit-note...Prompt user to either edit contents note or change ef values Thanos Apollo
2024-01-03Add gnosis-edit-ef...Edit easiness factor values and update them on gnosis-db. Thanos Apollo
2024-01-03Add gnosis-replace-item-at-index...Used to change/edit values at gnosis-db, that are represented as lists, such as ef Thanos Apollo
2024-01-03gnosis-review--session: Redo with read-char-choice...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 Thanos Apollo
2024-01-03Rewrite gnosis-suspend-deck as cl-defunThanos Apollo
2024-01-03Update docstrings...- Update documentation for adding notes. - Replace Get -> Return Thanos Apollo
2024-01-01gnosis-review-commit: Only commit the total number of notes reviewedThanos Apollo
2024-01-01Clean/Trim review functions...- 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 Thanos Apollo
2024-01-01gnosis-review-get-due-notes: Flatten returned listThanos Apollo
2024-01-01gnosis-prompt-tag: Add "q" on options...Fixing issue when having require-match t, user can't select "q" Thanos Apollo
2024-01-01When reviewing by tag, check if note id is suspendedThanos Apollo
2024-01-01Fix typos & indentationThanos Apollo
2024-01-01Add gnosis-suspend-noteThanos Apollo
2024-01-01Add gnosis-review-commit...Creates git repo and commit review session Thanos Apollo
2024-01-01Use file-name-as-directoryThanos Apollo
2023-12-31Redo gnosis-dev.elThanos Apollo
2023-12-31Add gnosis-db-version...Version for gnosis-db current implementation. Remove duplicate code as well. Thanos Apollo
2023-12-30Add note type 'double'...Essentialy a note type that generates 2 basic card types form the input of one, by reversing the question/answer. Thanos Apollo
2023-12-30gnosis-tag-prompt: fix optional values...- 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 Thanos Apollo
2023-12-30Database: Add second-image column for table extras...second-image will be path of an image to gnosis-images-dir, which will be displayed AFTER user-input. Thanos Apollo
2023-12-30Add gnosis-select-image...Prompt user to select image from gnosis-images-dir and return it's path as a string. Thanos Apollo
2023-12-30Add gnosis-directory-files...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. Thanos Apollo
2023-12-30Make sure gnosis-db has been in/zed before selecting/inserting value...Add gnosis-db-init to gnosis--insert-into & gnosis-select Thanos Apollo
2023-12-30Fix typosThanos Apollo
2023-12-30Adding notes/decks: Warn user if using testing env...- 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 Thanos Apollo
2023-12-30Rename gnosis-unique-tags -> gnosis-get-tags--uniqueThanos Apollo
2023-12-30Rewrite gnosis-prompt-tag as gnosis-tag-prompt...Optionally take custom prompt. Thanos Apollo
2023-12-30Redo gnosis-db: emacsql-sqlite-open fix...Redo with emacsql-sqlite as emacsql-sqlite-open has proven to be buggy Thanos Apollo
2023-12-30Add gnosis-db-init...Function to create gnosis essential files & db schemas Thanos Apollo
2023-12-29gnosis-dev: Change default testing valuesThanos Apollo
2023-12-29Update cloze review...- Fix 'looping issues' - Fix revealing all clozes as false & other face issues - Now reveal unanswered clozes as unanswered - Display user-input answer Thanos Apollo
2023-12-29Add gnosis-review-cloze-reveal-unanswered...This is just a rewritten version of the previous gnosi-review-cloze-reveal. Loop for clozes, and 'reveal them' with gnosis-face-cloze-unanswered Thanos Apollo
2023-12-29gnosis-display: Rewrite cloze-reveal...Rewrite as cl-defun with keywords, change previous default values. New: Optionally add custom face Thanos Apollo
2023-12-29Redo gnosis-completing-read...'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. Thanos Apollo
2023-12-29gnosis-mode: Disable read-only modeThanos Apollo
2023-12-29cloze: Reveal only one cloze if successful input...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. Thanos Apollo
2023-12-29display: start with \n for the main/question partThanos Apollo