Why Does Vim Undo/Redo Sometimes Not Work As Expected?

2025-05-30 12:03:33 323

4 Answers

Claire
Claire
2025-06-01 07:50:10
I’ve encountered my fair share of undo/redo quirks. One common issue is the way Vim handles undo branches. Unlike some editors, Vim doesn’t just linearly undo actions; it creates branches whenever you make changes after an undo. This means if you undo, change something, and then try to redo, you might not get back to where you expected because Vim sees it as a new branch.

Another culprit is the 'undolevels' setting. If it’s too low, Vim might discard older changes, making it impossible to undo past a certain point. Also, plugins or custom mappings can interfere with undo/redo behavior. For instance, some plugins overwrite the undo tree or remap 'u' and 'Ctrl+r' to their own functions. Always check your plugins and mappings if undo/redo feels off.
Grayson
Grayson
2025-06-02 09:46:16
Vim’s undo/redo quirks often come from its branching model. Unlike other editors, Vim tracks changes in a tree, not a line. If you undo and then edit, redo won’t work as expected because you’ve created a new branch. To avoid this, use 'g+' and 'g-' to move through time instead of just 'u' and 'Ctrl+r'.

Another issue is plugins. Some remap undo/redo keys or clear the undo history. Check your vimrc for conflicting mappings. Also, enable 'set undofile' to keep undo history between sessions. If all else fails, ':earlier' and ':later' can help jump to specific states.
Zane
Zane
2025-06-02 20:05:08
Vim’s undo system is powerful but can feel unpredictable. A big reason is its non-linear nature. When you undo and then make a new edit, Vim creates a branch in the undo tree. This means redoing won’t follow the same path as your undos. To navigate this, you can use ':undolist' to see branches or plugins like 'undotree' to visualize it.

Another gotcha is session handling. If you exit Vim or switch buffers, the undo history might reset unless you’ve configured persistent undo. Also, some commands like ':e!' or ':bufdo' can wipe the undo stack. If you rely heavily on undo/redo, consider mapping 'u' and 'Ctrl+r' to more predictable functions or using a plugin to simplify the workflow.
Gracie
Gracie
2025-06-05 02:49:01
Vim’s undo/redo behavior can be confusing, especially if you’re used to simpler editors. One thing that trips people up is the difference between 'u' (undo) and 'Ctrl+r' (redo). If you undo a bunch of changes and then make a new edit, Vim treats the undone changes as a separate branch. This means 'Ctrl+r' won’t bring back the original changes unless you navigate the undo tree with 'g+' or 'g-'.

Another issue is filetype-specific settings or autocommands that reset the undo history. For example, some filetypes automatically format or indent code, which can split the undo tree unexpectedly. Also, saving and reloading a file clears the undo history unless you have 'persistent undo' enabled. To fix this, add 'set undofile' to your vimrc and ensure the undo directory exists.
View All Answers
Scan code to download App

Related Books

Not The Daddies She Expected
Not The Daddies She Expected
Warning! 18+ Let's put her in the golden cage." He suggested. A smile formed on Jackson's face when he heard his twin brother's insistence. It doesn't seem like the solution to the problem, but it would give them enough time to figure out their new sex slave out. "Then bring her out when we want to fuck her or when she needs our dicks inside her." Married, sex-deprived Anna didn't expect that her sexual fantasies will be fulfilled to the peak when she decided to accept the invite of the Twins sibling she met on Tumblr until she got to their mansion and she was caged and prisoned after signing a legal consensual form. "Why did you accept our invite? Tell us again, " Jacob asked Anna as he slapped her already, red swollen cheek. "Because I want you guys to treat me like a sex slave, " Anna gulped. Anna Walson, 18 years old virgin and high school dropout who was maltreated by her father after her mother's death was sold to his creditor, got entangled with the Michealson brothers whom she met on an online platform. She had sexual relations with them, which in turn made the twins run a background check on her because they NOW wanted her to themselves ONLY.
9.2
113 Chapters
Angel's Work
Angel's Work
That guy, he's her roommate. But also a demon in human skin, so sinful and so wrong she had no idea what he was capable of. That girl, she's his roommate. But also an angel in disguise, so pure, so irresistible and so right he felt his demon ways melting. Aelin and Laurent walk on a journey, not together but still on each other's side. Both leading each other to their destination unknowing and Knowingly. Complicated and ill-fated was their story.
9.4
15 Chapters
Why Mr CEO, Why Me
Why Mr CEO, Why Me
She came to Australia from India to achieve her dreams, but an innocent visit to the notorious kings street in Sydney changed her life. From an international exchange student/intern (in a small local company) to Madam of Chen's family, one of the most powerful families in the world, her life took a 180-degree turn. She couldn’t believe how her fate got twisted this way with the most dangerous and noble man, who until now was resistant to the women. The key thing was that she was not very keen to the change her life like this. Even when she was rotten spoiled by him, she was still not ready to accept her identity as the wife of this ridiculously man.
9.7
62 Chapters
Why Me?
Why Me?
Why Me? Have you ever questioned this yourself? Bullying -> Love -> Hatred -> Romance -> Friendship -> Harassment -> Revenge -> Forgiving -> ... The story is about a girl who is oversized or fat. She rarely has any friends. She goes through lots of hardships in her life, be in her family or school or high school or her love life. The story starts from her school life and it goes on. But with all those hardships, will she give up? Or will she be able to survive and make herself stronger? Will she be able to make friends? Will she get love? <<…So, I was swayed for a moment." His words were like bullets piercing my heart. I still could not believe what he was saying, I grabbed his shirt and asked with tears in my eyes, "What about the time... the time we spent together? What about everything we did together? What about…" He interrupted me as he made his shirt free from my hand looked at the side she was and said, "It was a time pass for me. Just look at her and look at yourself in the mirror. I love her. I missed her. I did not feel anything for you. I just played with you. Do you think a fatty like you deserves me? Ha-ha, did you really think I loved a hippo like you? ">> P.S.> The cover's original does not belong to me.
10
107 Chapters
The One who does Not Understand Isekai
The One who does Not Understand Isekai
Evy was a simple-minded girl. If there's work she's there. Evy is a known workaholic. She works day and night, dedicating each of her waking hours to her jobs and making sure that she reaches the deadline. On the day of her birthday, her body gave up and she died alone from exhaustion. Upon receiving the chance of a new life, she was reincarnated as the daughter of the Duke of Polvaros and acquired the prose of living a comfortable life ahead of her. Only she doesn't want that. She wants to work. Even if it's being a maid, a hired killer, or an adventurer. She will do it. The only thing wrong with Evy is that she has no concept of reincarnation or being isekaid. In her head, she was kidnapped to a faraway land… stranded in a place far away from Japan. So she has to learn things as she goes with as little knowledge as anyone else. Having no sense of ever knowing that she was living in fantasy nor knowing the destruction that lies ahead in the future. Evy will do her best to live the life she wanted and surprise a couple of people on the way. Unbeknownst to her, all her actions will make a ripple. Whether they be for the better or worse.... Evy has no clue.
10
23 Chapters
WHY ME
WHY ME
Eighteen-year-old Ayesha dreams of pursuing her education and building a life on her own terms. But when her traditional family arranges her marriage to Arman, the eldest son of a wealthy and influential family, her world is turned upside down. Stripped of her independence and into a household where she is treated as an outsider, Ayesha quickly learns that her worth is seen only in terms of what she can provide—not who she is. Arman, cold and distant, seems to care little for her struggles, and his family spares no opportunity to remind Ayesha of her "place." Despite their cruelty, she refuses to be crushed. With courage and determination, Ayesha begins to carve out her own identity, even in the face of hostility. As tensions rise and secrets within the household come to light, Ayesha is faced with a choice: remain trapped in a marriage that diminishes her, or fight for the freedom and self-respect she deserves. Along the way, she discovers that strength can be found in the most unexpected places—and that love, even in its most fragile form, can transform and heal. Why Me is a heart-wrenching story of resilience, self-discovery, and the power of standing up for oneself, set against the backdrop of tradition and societal expectations. is a poignant and powerful exploration of resilience, identity, and the battle for autonomy. Set against the backdrop of tradition and societal expectations, it is a moving story of finding hope, strength, and love in the darkest of times.But at the end she will find LOVE.
Not enough ratings
160 Chapters

Related Questions

Where Can I Read The Redo Of Healer Light Novel Online?

4 Answers2025-09-22 07:29:17
Hunting for the 'Redo of Healer' light novel online can feel like a mini-quest, and I’ve done a bit of digging for friends who asked the same thing. First place I check is official eBook stores — BookWalker (global), Amazon Kindle, Kobo, and Barnes & Noble often carry licensed light novels or will list a publisher link if an English edition exists. If there’s an official English release it usually shows up on those platforms or on the publisher’s site. Sometimes the manga and the light novel are handled by different companies, so it’s worth searching the publisher catalogs directly. If you don’t find an English edition, the original Japanese web novel for 'Redo of Healer' started on sites like Shōsetsuka ni Narō, and Japanese eBook stores (BookWalker JP, Amazon JP) sell the compiled light novel volumes. Libraries or library apps like Libby/OverDrive sometimes pick up popular light novels too, so I check there when I’m trying to avoid buying multiple copies. I’m pretty picky about supporting creators, so I try official channels first — but I get it, sometimes the only way is importing a Japanese edition. In any case, the content is pretty divisive, so be prepared for that when you go hunting.

Which Publisher Released The Redo Of Healer Light Novel Overseas?

4 Answers2025-09-22 12:54:23
I got a little giddy when I tracked down who published the English edition of 'Redo of Healer'—it was Seven Seas Entertainment. The original Japanese title is 'Kaifuku Jutsushi no Yarinaoshi', written by Rui Tsukiyo with illustrations by Shiokonbu, and Seven Seas picked up the license for the official English translation and distribution overseas, especially in North America. They’re the ones who put out the novels in print and digital formats, and they treated it like one of their more mature, controversial titles, with content warnings and age-gating where needed. I’ll admit the whole thing stirred up a lot of chat in communities I hang out in, and Seven Seas’ decision to publish it felt pretty deliberate — they know there’s an audience for darker, edgier fantasy. If you’re trying to find these volumes, look for their editions at online retailers, indie bookstores that carry manga and light novels, or libraries that stock more niche pop culture reads. Personally, seeing that a mainstream niche publisher released it made me curious to compare the translation choices to fan translations I’d seen before.

How Do I Use Sudo With Wq In Vim To Save Protected Files?

3 Answers2025-09-07 04:29:38
Totally hit this snag before — you open a file in vim, make your edits, and then bam: permission denied when you try to save. The neat little trick I use most often is this one-liner from inside vim: :w !sudo tee % >/dev/null What that does is write the buffer to the sudoed 'tee' command, which will overwrite the original file as root. The % expands to the current filename, so the full flow is: vim hands the file contents to sudo tee, tee writes it with elevated rights, and the >/dev/null part hides the tee output so your buffer stays as-is. After that you can do :q to quit. I like this because it’s fast and doesn’t require reopening the file as root. If you want a slightly cleaner approach, consider using sudoedit (sudo -e) to open files with your preferred editor as a temporary safe copy — it edits a temp file and then installs it as root, which is safer from a security perspective. For convenience I sometimes create a vim command or mapping, like cnoremap W!! w !sudo tee % >/dev/null, so typing :W!! saves without fuss. Also, if you frequently need root saves, the plugin 'sudo.vim' (provides commands like :SudoWrite) is worth installing. Each method has trade-offs: the tee trick is quick, sudoedit is safer, and opening vim with sudo from the start (sudo vim file) works but bypasses some safety models.

Which Materials Make The Most Durable Vim Wrench Models?

4 Answers2025-09-04 14:49:03
If I had to pick a short list right off the bat, I'd put chrome-vanadium and S2 tool steel at the top for most durable vim wrench models. Chrome-vanadium (Cr-V) is what you'll see on a lot of high-quality ratchets and hex sets—it balances hardness and toughness well, resists wear, and takes a nice finish. S2 is a shock-resisting tool steel that's common for bits and hex keys designed to take a lot of torque without snapping. For heavy, impact-style use, chrome-molybdenum (Cr-Mo) or 4140/6150 alloys are common because they absorb shocks better and can be heat-treated for high strength. Finish and heat treatment matter as much as base alloy. Hardened and tempered tools in the HRC 52–62 range tend to last; too hard and they become brittle, too soft and they round off. Coatings like black oxide, phosphate, or nickel chrome help with corrosion; TiN or other nitriding can up wear resistance. In short: pick S2 or Cr-V for everyday durability, Cr-Mo for impact-duty, and pay attention to heat treatment and finish for real longevity. I tend to favor sets with solid forging and clear HRC specs—that’s saved me from snapping a hex at an awkward moment.

How Should I Maintain A Vim Wrench To Prevent Rust?

4 Answers2025-09-04 07:21:21
Honestly, I treat my tools a little like prized comics on a shelf — I handle them, clean them, and protect them so they last. When it comes to a vim wrench, the simplest habit is the most powerful: wipe it down after every use. I keep a small stash of lint-free rags and a bottle of light machine oil next to my bench. After I finish a job I wipe off grit and sweat, spray a little solvent if there’s grime, dry it, then apply a thin coat of oil with a rag so there’s no wet residue to attract rust. For bits of surface rust that sneak in, I’ll use fine steel wool or a brass brush to take it off, then neutralize any remaining rust with a vinegar soak followed by a baking soda rinse if I’ve used acid. For long-term protection I like wax — a microcrystalline wax like Renaissance or even paste car wax gives a water-repellent layer that’s pleasantly invisible. If the wrench has moving parts, I disassemble and grease joints lightly and check for play. Storage matters almost as much as treatment: a dry toolbox with silica gel packets, not left in a damp car or basement, keeps rust away. Little routines add up — a five-minute wipe and oil once a month will make that wrench feel like new for years.

How Do You Install Plugins In M Vim On MacOS?

4 Answers2025-09-03 18:14:39
If you're running MacVim (the mvim command) on macOS, the simplest, most reliable route for me has been vim-plug. It just feels clean: drop a tiny bootstrap file into ~/.vim/autoload, add a few lines to ~/.vimrc, then let the plugin manager handle the rest. For vim-plug I run: curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim. After that I edit ~/.vimrc and add: call plug#begin('~/.vim/plugged') Plug 'tpope/vim-sensible' Plug 'junegunn/fzf', { 'do': { -> fzf#install() } } call plug#end() Then I launch MacVim with mvim and run :PlugInstall (or from the shell mvim +PlugInstall +qall) and watch the plugins clone and install. A few handy things: if a plugin needs build steps, check its README; some require ctags, ripgrep, or Python support. Also remember MacVim reads your ~/.vimrc (and you can put GUI tweaks in ~/.gvimrc). If you prefer built-in package management, the pack/start method works too: mkdir -p ~/.vim/pack/vendor/start && git clone ~/.vim/pack/vendor/start/, then restart mvim.

How Does M Vim Compare To Neovim For Plugins?

4 Answers2025-09-03 18:19:40
Okay, here’s the short version first, but then I’ll expand — I love geeking out about editor choices. For plugins, Neovim is the one that pushed the ecosystem forward: it brought a clean RPC-based plugin model, first-class async job handling, and a modern Lua API that plugin authors love. That means a lot of recent plugins are written in Lua or expect Neovim-only features like virtual text, floating windows, and extmarks. The result is snappier, more feature-rich plugins that can do things without blocking the UI. If you use 'm vim' (think classic Vim or MacVim builds), you still get a massive, mature plugin ecosystem. Many plugin authors keep compatibility with Vim, and core functionality works fine — but some newer plugins either require extra patches, rely on Vim being compiled with specific features (job control, Python/Ruby/Node support), or are Neovim-only because they use the Lua or RPC APIs. Practically, that means your favorite long-lived plugins like statuslines, file explorers, and linters usually work on either, but cutting-edge integrations (native LSP clients, modern completion engines written in Lua) will feel more at home in Neovim. My take: if you want modern plugins, async performance, and future-facing features, Neovim wins. If you prefer a familiar Vim experience, GUI comforts on macOS, or rely on plugins that haven’t migrated, 'm vim' still serves well. I ended up switching because I wanted Lua-based configs and non-blocking LSP, but I still keep a light Vim profile around for quick GUI sessions.

What Are The Best Startup Optimizations For M Vim?

5 Answers2025-09-03 05:08:31
Oh wow, trimming 'mvim' startup is one of those tiny joys that makes the whole day smoother. I usually start by profiling so I know what's actually slow: run mvim --startuptime ~/vim-startup.log and open that log. It quickly shows which scripts or plugins dominate time. Once I know the culprits, I move heavy things into autoload or optional plugin folders so they only load when needed. Next, I use lazy-loading with a plugin manager like 'vim-plug' (Plug 'foo', { 'on': 'SomeCommand' } or 'for': ['python', 'javascript']). Put plugins you need immediately in 'start' and everything else in 'opt' or load by filetype. Also disable unnecessary providers (let g:loaded_python_provider = 0, let g:loaded_ruby_provider = 0) if you don't use them — that shave off seconds. Finally, keep UI tweaks minimal for GUI start: font fallback, complex statuslines and external helpers (like large LSPs) can wait until you open a project. After a few iterations of profile → defer → test, 'mvim' feels snappy and more pleasant to use.
Explore and read good novels for free
Free access to a vast number of good novels on GoodNovel app. Download the books you like and read anywhere & anytime.
Read books for free on the app
SCAN CODE TO READ ON APP
DMCA.com Protection Status