Skip to content
Snippets Groups Projects
  1. May 03, 2021
    • Yorhel's avatar
      Implement --exclude-kernfs and --exclude-pattern · a28a0788
      Yorhel authored
      Eaiser to implement now that we're linking against libc.
      
      But exclude pattern matching is extremely slow, so that should really be
      rewritten with a custom fnmatch implementation. It's exactly as slow as
      in ncdu 1.x as well, I'm surprised nobody's complained about it yet.
      And while I'm at it, supporting .gitignore-style patterns would be
      pretty neat, too.
      a28a0788
    • Yorhel's avatar
      Link to ncurses + some rudimentary TUI frameworky stuff · 826c2fc0
      Yorhel authored
      I tried playing with zbox (pure Zig termbox-like lib) for a bit, but I
      don't think I want to have to deal with the terminal support issues that
      will inevitably come with it. I already stumbled upon one myself: it
      doesn't properly put the terminal in a sensible state after cleanup in
      tmux. As much as I dislike ncurses, it /is/ ubiquitous and tends to kind
      of work.
      826c2fc0
  2. May 01, 2021
  3. Apr 29, 2021
    • Yorhel's avatar
      Add CLI argument parsing · e2805da0
      Yorhel authored
      e2805da0
    • Yorhel's avatar
      WIP: Experimenting with a rewrite to Zig & a new data model · 0783d357
      Yorhel authored
      The new data model is supposed to solve a few problems with ncdu 1.x's
      'struct dir':
      - Reduce memory overhead,
      - Fix extremely slow counting of hard links in some scenarios
        (issue #121)
      - Add support for counting 'shared' data with other directories
        (issue #36)
      
      Quick memory usage comparison of my root directory with ~3.5 million
      files (normal / extended mode):
      
        ncdu 1.15.1:     379M / 451M
        new (unaligned): 145M / 178M
        new (aligned):   155M / 200M
      
      There's still a /lot/ of to-do's left before this is usable, however,
      and there's a bunch of issues I haven't really decided on yet, such as
      which TUI library to use.
      
      Backporting this data model to the C version of ncdu is also possible,
      but somewhat painful. Let's first see how far I get with Zig.
      0783d357
Loading