Comments (4)
Our transversal is currently not parallel because we sort entries alphabetically.
Windows has super slow IO. Anytime I see people having issues with IO speed like this it's Windows (if you are on WSL its even worse still) on Linux/macos it's never an issue for projects of practical size (I work on massive legacy codebases).
We can likely offer an option to disable the sorting and allow parallel transversal. It's not too useful since it's only a secondary tie breaker as soon as you enter a query.
Caching the filesystem does not make sense. For small directories it's not necessary and for large directories the memory consumption is prohibitive (you wouldn't want to cache $HOME or /).
And .ignore does prevent entering directories if a glob matches a directory
from helix.
Can you provide a simpler reproduction case - a different similarly large project?
The Linux kernel is often used when people need a huge project to test with.
I just tried untar'ing this tarball of 85,000 files and then opening hx
in the directory:
https://git.kernel.org/torvalds/t/linux-6.10-rc2.tar.gz
It opened instantly. On Linux.
from helix.
The log isn't irrelevant, this line might be insightful:
helix/helix-term/src/ui/mod.rs
Line 218 in 31bcde3
Can you provide a simpler reproduction case - a different similarly large project? Cloning unreal engine is convoluted
from helix.
@liquidev One thing you can try is the new dev drive (built on top of ReFS) windows 11 comes with (you didn't specify windows version, so assuming 11). I've noticed various I/O improvements myself. Your milage may vary.
link: https://learn.microsoft.com/en-us/windows/dev-drive/
from helix.
Related Issues (20)
- swapping the space (f and F) keys, provide unexpected behavior.
- Formatting issues from tutor
- Helix is slow in SSHFS HOT 2
- Show current workspace with working directory in status line
- Syntax Highlighting for Rust Macros
- Unintuitive line movements with relative line numbers
- Remap scrolls HOT 1
- Combine status line with command line HOT 1
- Dynamically determine config value HOT 1
- Enable OSC52 automatically if connected via SSH HOT 1
- Race condition when typing before symbol picker opens HOT 1
- Separate `:rename` command that moves within the current directory
- Allow remapping of dot HOT 1
- commands with international keyboard
- Error in languages.toml
- Rust Method Chain Indentation
- cmake-format not working as cmake formatter
- Panic in insert mode when undoing changes.
- Does Helix support CSHTML? HOT 1
- Support lsp_workspace_commands with arguments
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from helix.