edit cmd misleading when focusing commit msg in inspect view
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Rust
- Estrellas
- 22.5k
- Forks
- 774
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
**Describe the bug**
This is the best git tool, light, simple and visual!
However, I have found one that does not work as intended.
When in inspect mode on the Log tab, I cannot edit the commit message by clicking `shift + i` (vim keybinding).
**To Reproduce**
Steps to reproduce the behavior:
1. Go to Log tab
2. Click on `enter` and `l`(Inspect)
3. Focus Message block
4. click `shift + i`
**Expected behavior**
Able to edit commit messages.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Context (please complete the following information):**
- OS/Distro + Version: `macOS 12.5.1`
- GitUI Version `0.22.1`
- Rust version: `1.64`
**Additional context**
Log of the operation.
```
14:53:56 [TRACE] (6) mio::poll: [/Users/brew/Library/Caches/Homebrew/cargo_cache/registry/src/github.com-1ecc6299db9ec823/mio-0.8.5/src/poll.rs:532] registering event source with poller: token=Token(0), interests=READABLE
14:53:56 [TRACE] (1) gitui::watcher: [src/watcher.rs:21] poll watcher: false recommended: Fsevent
14:53:56 [TRACE] (6) mio::poll: [/Users/brew/Library/Caches/Homebrew/cargo_cache/registry/src/github.com-1ecc6299db9ec823/mio-0.8.5/src/poll.rs:532] registering event source with poller: token=Token(1), interests=READABLE
14:53:56 [TRACE] (1) gitui::app: [src/app.rs:119] open repo at: RefCell { value: Path(".") }
14:53:56 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:53:56 [TRACE] (1) gitui: [src/main.rs:200] app start: 4 ms
14:53:56 [TRACE] (1) gitui::app: [src/app.rs:477] update
14:53:56 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:53:56 [TRACE] (1) gitui::app: [src/app.rs:496] update_async: Git(Tags)
14:53:56 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:53:56 [TRACE] (1) gitui::app: [src/app.rs:496] update_async: Git(Branches)
14:53:56 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:53:56 [TRACE] (1) gitui::app: [src/app.rs:496] update_async: Git(Tags)
14:53:56 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:53:56 [TRACE] (1) gitui::app: [src/app.rs:496] update_async: Git(Branches)
14:53:56 [TRACE] (1) gitui::app: [src/app.rs:496] update_async: Git(Log)
14:53:56 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:53:56 [TRACE] (1) gitui::app: [src/app.rs:496] update_async: Git(Log)
14:53:56 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:53:58 [TRACE] (1) gitui::app: [src/app.rs:382] event: Input(Key(KeyEvent { code: Enter, modifiers: NONE, kind: Press, state: NONE }))
14:53:58 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:53:58 [TRACE] (1) asyncgit::commit_files: [asyncgit/src/commit_files.rs:83] request: CommitFilesParams { id: CommitId(d37cf315857616304739afcc65155f049347c25f), other: None }
14:53:58 [TRACE] (2) asyncgit::commit_files: [asyncgit/src/commit_files.rs:128] get_commit_files: CommitFilesParams { id: CommitId(d37cf315857616304739afcc65155f049347c25f), other: None } (1)
14:53:58 [TRACE] (1) gitui::app: [src/app.rs:496] update_async: Git(CommitFiles)
14:53:58 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:53:58 [DEBUG] (8) gitui::watcher: notify events: 1
14:53:58 [DEBUG] (8) gitui::watcher: notify [0]: DebouncedEvent { path: "/Users/aktdaaaa/sample/.git/gitui", kind: Any }
14:53:58 [TRACE] (1) gitui::app: [src/app.rs:477] update
14:53:58 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:54:00 [TRACE] (1) gitui::app: [src/app.rs:382] event: Input(Key(KeyEvent { code: Char('l'), modifiers: NONE, kind: Press, state: NONE }))
14:54:00 [TRACE] (1) asyncgit::commit_files: [asyncgit/src/commit_files.rs:83] request: CommitFilesParams { id: CommitId(d37cf315857616304739afcc65155f049347c25f), other: None }
14:54:00 [TRACE] (1) gitui::app: [src/app.rs:477] update
14:54:00 [TRACE] (2) asyncgit::commit_files: [asyncgit/src/commit_files.rs:128] get_commit_files: CommitFilesParams { id: CommitId(d37cf315857616304739afcc65155f049347c25f), other: None } (1)
14:54:00 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:54:00 [TRACE] (1) gitui::app: [src/app.rs:496] update_async: Git(CommitFiles)
14:54:00 [TRACE] (1) asyncgit::tags: [asyncgit/src/tags.rs:67] request
14:54:00 [TRACE] (1) asyncgit::diff: [asyncgit/src/diff.rs:98] request DiffParams { path: "DataTypes.md", diff_type: Commit(CommitId(d37cf315857616304739afcc65155f049347c25f)), options: DiffOptions { ignore_whitespace: false, context: 3, interhunk_lines: 0 } }
14:54:00 [TRACE] (1) gitui::app: [src/app.rs:496] update_async: Git(Diff)
14:54:01 [TRACE] (1) gitui::app: [src/app.rs:382] event: Input(Key(KeyEvent { code: Char('k'), modifiers: NONE, kind: Press, state: NONE }))
14:54:03 [TRACE] (1) gitui::app: [src/app.rs:382] event: Input(Key(KeyEvent { code: Char('I'), modifiers: SHIFT, kind: Press, state: NONE }))
14:54:05 [TRACE] (1) gitui::app: [src/app.rs:382] event: Input(Key(KeyEvent { code: Char('I'), modifiers: SHIFT, kind: Press, state: NONE }))
14:54:05 [TRACE] (1) gitui::app: [src/app.rs:382] event: Input(Key(KeyEvent { code: Char('I'), modifiers: SHIFT, kind: Press, state: NONE }))
14:54:07 [TRACE] (1) gitui::app: [src/app.rs:382] event: Input(Key(KeyEvent { code: Char('c'), modifiers: CONTROL, kind: Press, state: NONE }))
```
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con el manejo de eventos de teclado en src/app.rs y reproduce la secuencia de la pestaña Log: Enter, l, enfoca el bloque Message y después Shift+I. Traza cómo el foco del modo inspect maneja la tecla y compáralo con la capacidad esperada de editar mensajes de commit. Se considera terminado cuando la interacción reportada funciona según lo previsto y los pasos de reproducción ya no fallan.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- rust
- Área
- cli
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 55/100