{"id":16164842,"url":"https://github.com/aperezdc/zsh-notes","last_synced_at":"2025-03-18T23:30:36.522Z","repository":{"id":142776987,"uuid":"139006855","full_name":"aperezdc/zsh-notes","owner":"aperezdc","description":"Quick selection widget for Markdown notes, inspired by terminal_velocity","archived":false,"fork":false,"pushed_at":"2020-07-02T08:14:57.000Z","size":14,"stargazers_count":13,"open_issues_count":0,"forks_count":2,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-28T12:55:43.385Z","etag":null,"topics":["notes-tool","plugin","zsh"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aperezdc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2018-06-28T11:04:04.000Z","updated_at":"2025-01-03T02:47:46.000Z","dependencies_parsed_at":"2023-04-27T00:05:29.212Z","dependency_job_id":null,"html_url":"https://github.com/aperezdc/zsh-notes","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aperezdc%2Fzsh-notes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aperezdc%2Fzsh-notes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aperezdc%2Fzsh-notes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aperezdc%2Fzsh-notes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aperezdc","download_url":"https://codeload.github.com/aperezdc/zsh-notes/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244325069,"owners_count":20435033,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["notes-tool","plugin","zsh"],"created_at":"2024-10-10T02:48:04.782Z","updated_at":"2025-03-18T23:30:36.238Z","avatar_url":"https://github.com/aperezdc.png","language":"Shell","readme":"# zsh-notes\n\nzsh-notes is a [zsh](http://www.zsh.org/) plugin inspired by\n[terminal_velocity](https:/A/www.seanh.cc/terminal_velocity/). It provides a\nfast interface to create and access a set of\n[Markdown](https://en.wikipedia.org/wiki/Markdown) text files inside a\ndirectory.\n\n- [fzf](https://github.com/junegunn/fzf) is used for locating files. It\n  will be searched in `${PATH}`.\n- `${EDITOR}` is launched to view and edit files. Like most tools do,\n  `${VISUAL}` will be tried as well, with `vi` as last fallback.\n\nThe plugin defines one Zle widgets:\n\n- `notes-edit-widget`: Opens the file selector, and invokes the text\n  editor on the selected file or creates a new one. The input buffer is\n  left untouched.\n\nthe following functions:\n\n- `notes-home`: Prints the directory where Markdown file are stored.\n- `notes-list-files`: Prints a list of absolute paths to all the files\n  contained in the directory returned by `notes-home`.\n- `notes-list`: Prints a list of names (sans the `.md` suffix) for all\n  the files listed by `notes-list-files`, with the prefix directory\n  returned by `notes-home` removed.\n- `notes-pick-fzf`: Opens a file selector, and prints the chosen item\n  to standard output.\n\nIn the file selector, the usual `fzf` key bindings apply, plus the following\nadditional ones:\n\n- `Ctrl-N`: Creates a new file named after the query string, regardless\n  of whether it matches files or not.\n\n- `Tab`: Toggle the preview panel.\n\n\n## Installation\n\nThe plugin can be installed manually by obtaining a copy and sourcing it.\nIt is recommended to use a plugin manager, e.g. when using\n[zplug](https://github.com/zplug/zplug):\n\n```sh\nzplug aperezdc/zsh-notes\n```\n\n\n## Configuration\n\nBy default the widgets defined by the plugin are not bound. A typical\nconfiguration could be:\n\n```sh\n# Ctrl-N: Open the notes selector.\nbindkey '^N' notes-edit-widget\n```\n\nAdditional configuration is done using Zsh styles. The following lists\nthe available styles and their defaults:\n\n```sh\n# If unset, ~/Notes is used as default.\nzstyle :notes home  ''\n\n# When set, exits the notes widget after one use.\nzstyle :notes:widget once no\n\n# Choose the picker used by the widget. Supported values: fzf, skim, fzy.\nzstyle :notes:widget picker fzf\n```\n\nWhen using `fzf` or `skim` it's possible to show a side panel with a preview\nof the notes. The `cat` command is used by default, but any program that can\nrender Markdown to ANSI terminal escapes should do (for example\n[mdcat](https://github.com/lunaryorn/mdcat) and\n[lowdown](https://kristaps.bsd.lv/lowdown/) are known to work well):\n\n```sh\n# Enable preview panel. Disabled by default.\nzstyle :notes:widget:preview enabled yes\n\n# The default is \"cat\", but can be any command that renders to ANSI escapes:\nzstyle :notes:widget:preview command lowdown -Tterm\n\n# Alternative using mdcat:\nzstyle :notes:widget:preview command mdcat -l\n```\n","funding_links":[],"categories":["Plugins"],"sub_categories":["ZSH on Windows","Zinit (née zplugin)"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faperezdc%2Fzsh-notes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faperezdc%2Fzsh-notes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faperezdc%2Fzsh-notes/lists"}