[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Speed improvements to ido.el

From: Daniel Skarda
Subject: Speed improvements to ido.el
Date: Tue, 20 Nov 2012 19:25:17 +0100


I like to use ido mode for everything, including very large lists (like M-x or info). Unfortunately ido is not suitable for such lists. On my old notebook, performance is not amazing, so I took the challenge and spend some time with profiler.

I improved the performance in several steps:

- inlined several functions
- disabled ido-case-fold for some completions (eg commands)
- prunning collections based on character bitmaps
- caching character bitmaps during completion or for same completions
- caching intermediate completion lists when adding new characters

You can view my changes on github:

- https://github.com/orfelyus/ido-speed-hack

- (and optionally) https://github.com/orfelyus/ido-better-flex

ido-speed-hack includes large changes (bitmaps) while ido-mode-el includes minor changes to ido.el 

The changes made huge speed improvements on my notebook and ido does not feel sluggish even with very large lists. 

Could you please test my improvements? I would appreciate any feedback.

ps: I am not subscribed to the mailing list, please keep me in Cc

reply via email to

[Prev in Thread] Current Thread [Next in Thread]