Files
chai.nvim/HOW_CHAI_SHOULD_WORK.md

50 lines
1.2 KiB
Markdown

# How chai should work
## 1. chai buffers URIs:
Chai buffer uirs should be
- `chai://PROVIDER/USER/REPO/OBJECT`
- `chai://git:remote/OBJECT`
- `chai://OBJECT` - (shortcut for `chai://git:origin/OBJECT`)
## 2. Objects
- *nothing*: repo
- `/issues`: list of issues
- `/issue/ID`: for issue number *ID*
- `/issue/new`: for creating new issue
- `/prs`: list of pull/merge requests
- `/pr/ID`: for pull request number *ID*
- `/pr/new`: for creating new pull requests
## 3. How buffers should work
## 3.1. `/issues` and `/prs`:
should show list of issues/PRs, you should be able to click on any issue/PR to see/edit it
## 3.2. `/issues/ID` and `/pr/ID`
should show info in first block header in second block, in another block description and under it list of comments
## 3.3. `/issues/new` and `/prs/new`
in first block metadata and info, in second block name in third block description (shows diffs dynamicly)
## 3.4. *nothing*
should show repo name, list of contributors, keybinds for showing issues and prs etc
## 4. `:Chai` command
creates `chai://` buffer in new neovim tab
syntax should be
`:Chai *repo info* *object info*`
so it could be
`:Chai kpgpmc femkromek chai.nvim issues 1`
or
`:Chai git:origin issues 1`
or
`:Chai issues 1`