notepad-plus-plus / notepad-plus-plus/notepad-plus-plus
Notepad++ starts to lag with very long lines
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 29.4k
- Forks
- 5.4k
- PR merge metrics
- No merged PRs in 30d
Description
Description of the Issue
When current screen with a text contains 8-12 lines with a length of each line more than 64K the application start to lag on navigation, the cursor becomes slow.
Steps to Reproduce the Issue
- Create the new text file, fill it with text lines of standard lengths (80-120 character), in the amount of 100-200 lines for free navigation.
- Now, create long lines with length more than 64K, it can be easily created by selecting a whole line and pressing multiple times Ctrl+D, until required length is achieved. Remove the selection and duplicate the long line ten times using the same hotkey Ctrl+D.
Expected Behavior
Navigation using cursor should be very fast as usually.
Actual Behavior
Navigation using cursor becomes very slow.
Debug Information
Notepad++ v7.5.1 (64-bit)
Build time : Aug 29 2017 - 02:38:44
Path : C:\Program Files\Notepad++\notepad++.exe
Admin mode : OFF
Local Conf mode : OFF
OS : Windows 7 (64-bit)
Plugins : AutoSave.dll mimeTools.dll NppConverter.dll nppcrypt.dll PluginManager.dll
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the lag with the described file containing 8–12 lines longer than 64K, using Ctrl+D to create and duplicate them. Profile cursor navigation while comparing normal-length and very long lines, then verify that navigation remains responsive in the reported scenario without regressing ordinary text movement.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- desktop, performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100