Seringkali saya bertemu bug di undo-tree, di mana saya tidak bisa mengulang, dengan bug yang diketahui berikut , laporan lain & reddit utas .
primitive-undo: Unrecognized entry in undo list undo-tree-canary
Ini benar - benar buruk dan dapat menyebabkan hilangnya pekerjaan jika Anda tidak sengaja menyimpan versi terbaru file tersebut.
Karena saya tidak pernah menggunakan fungsi undo tree branching, mungkinkah menggunakan emacs linear undo dengan mode jahat?
Catatan: Saya sudah mencoba pengaturan (global-undo-tree-mode -1)
langsung setelah (evil-mode 1)
itu menonaktifkan membatalkan pohon, tetapi mengulang (Ctrl-R) tidak berfungsi setelah melakukan ini.
evil
undo
undo-tree-mode
gagasanman42
sumber
sumber
Jawaban:
Penulis
undo-tree.el
, Toby Cubitt, saat ini terlalu sibuk untuk memperbaiki bug khusus ini. Jika dia punya waktu di masa depan, dia mungkin akan menyelidiki masalah ini lebih lanjut. Penulis telah mengindikasikan bahwa ia mengalami kesulitan mereproduksi kesalahan dengan andal, dan baru-baru ini tidak dapat mereproduksi dengan menggunakan cabang master. Ini hanya terjadi ketika menggunakan undo / redo-in-region. Sementara itu penulis menyarankan untuk mematikan fitur undo / redo-in-region.Saya akan sangat mendorong siapa pun yang termotivasi untuk datang dengan cara yang dapat diandalkan untuk mereproduksi masalah mulai dari
emacs -q
menggunakan rilis stabil Emacs saat ini (misalnya, 25.2.1) dan juga dengan versi terbaru dari cabang utama, dan kemudian kirimkan penerima tersebut ke nomor pelacakan bug 16377 dengan salinan karbon kepada para peserta (Stefan, Toby, Barry, dan Keith).Nomor pelacakan utama adalah 16377, dan ada nomor pelacakan terkait 16523:
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=16377
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=16523
Berikut ini solusinya yang mematikan
undo/redo-in-region
fitur:sumber
undo-tree-enable-undo-in-region
adalahnil
; dan, saya juga belum pernah melihatnya terjadi di luar menggunakan undo-in-region. Jika Anda dapat membuat resep untuk mereproduksi kesalahan, silakan laporkan ke tim Emacs - salinan karbon untuk Dr. Cubitt juga akan membantu, dan jika tidak terlalu banyak masalah, saya yakin akan menghargai resep jika Anda dapat menemukan yang bisa diandalkan. Maaf Anda mengalami masalah ...undo-tree
secara resmi bagian darielpa
repositori. Anda dapat menggunakan bug standar laporan Emacs; Namun, hasil akhirnya mungkin sama - yaitu, menunggu Dr. Cubitt menemukan waktu luang dalam jadwal sibuknya ... Pada titik tertentu, guru undo lain mungkin datang dan membantu dalam menjaga paket. Saya menghabiskan banyak waktu untuk membuat garpu kustom dari undo-tree yang dapat membatalkan / mengulang secara semi-linear, dan saya masih hanya memiliki pemahaman dasar tentang bagaimana semuanya bekerja ...Tampaknya Anda dapat mengedit evil-pkg.el di ~ / .emacs.d / elpa / evil-xxxxxxx / dir dan menghapus undo-tree sebagai persyaratan:
sumber
sumber
undo-tree
paket keluar dari jalan sehingga tidak memuat. Sekarang menggunakan "redo" gagal denganWrong type argument: commandp, redo
.Edit, ini sekarang paket yang bisa digunakan untuk undo / redo dengan evil-mode - undo-fu .
Menambahkan jawaban untuk pertanyaan sendiri karena saya sudah menggunakan evil wo o undo-tree untuk beberapa waktu sekarang.
Ini bekerja sangat baik untuk membatalkan / mengulang yang membungkus emacs tanpa sesuatu yang berat seperti
undo-tree
atauredo+
.sumber