Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Odd placement of redo / undo markers.

オープン
#276 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
50/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
javascript
領域
frontend

調査の方向性

Start by reproducing the undo/redo behavior shown in the linked Vim and CodeMirror-vim videos, then trace the undo-marker handling in the repository. Compare newline insertion and popup opening with Vim's grouping behavior. Done means ordinary insert-mode edits form matching undo/redo markers without popup windows creating unexpected markers.

索引モデルが issue の本文から書いたものです。

説明

Codemirror-vim's undo/redo markers don't match vim's and don't really make sense.

  • It seems that in codemirror-vim, any newline forms an undo/redo marker.
  • Also a popup window opening somehow forms an undo marker.

In these videos I am largely staying in insert mode the entire time until the end where I undo/redo.
Notice how in vim it is one exact undo/redo marker:

Comparing vim:

https://github.com/user-attachments/assets/d43c4a0a-4fcd-4bfc-9a7c-fce02396db18

But in codemirror-vim, each newline and popup creates an undo marker.

Codemirror-vim:

https://github.com/user-attachments/assets/d9c4e666-4dad-4bf0-b2ec-90b8013eb547

I will say one nice thing that code mirror-vim does right, is it places the cursor at the start of the redone change. Hardly any other vim emulators get this right. But the breaking up of undo markers seems very different from vim's, and in the case of popups - seems like a bug.

主要言語
JavaScript
スター
473
フォーク
55
PR マージ指標
30日以内にマージされた PR はありません

環境構築

  • Dockerfile・Docker Compose ファイルなし
  • プルリクエストのテンプレートあり
  • コントリビューションガイドなし

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

replit/codemirror-vim のほかの issue

replit/codemirror-vim の issue をすべて見る

似ている issue

JavaScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。