Skip to content

Releases: svent/sift

v0.9.0

23 Oct 16:14
Compare
Choose a tag to compare

Version 0.9.0 introduces several new options/features:

  • --conf
  • --field-sep
  • --byte-offset
  • Support for custom types

A detailed description can be found in this blog post: https://svent.github.io/2016/10/23/sift-version-0.9-released/

This version also removes the cgo dependency while improving the performance for line counting and case conversions.

The latest version of can sift can be downloaded here: https://sift-tool.org/download

v0.8.0

08 Feb 23:25
Compare
Choose a tag to compare

Version 0.8.0 introduces several new features:

  • search using smart case via option -s or --smart-case
  • the options ipath and exclude-ipath are availabe as case insensitive alternatives to path and exclude-path
  • follow symlinks via --follow
  • show column numbers for matches via --column (useful for editor integration etc.)

The latest version of can sift can be downloaded here: https://sift-tool.org/download

v0.7.1

07 Jan 00:24
Compare
Choose a tag to compare

Version 0.7.1 fixes a bug in the new --targets option that can lead to messed up output in some environments.

The latest version of can sift can be downloaded here: https://sift-tool.org/download

v0.7.0

04 Jan 17:51
Compare
Choose a tag to compare

This release contains a small performance improvement and implements several feature requests/issues:

  • #46 (Implement option --word-regexp/-w to match on word boundaries only)
  • #49 (Improve handling of line length errors)
  • #51 (Fix handling of custom output separator for multiline matches)
  • #53 (Implement option --only-matching)
  • #47 (Implement option --targets to list selected files)

The last one enables fast file listing based on sifts filtering capabilities without actually searching the files. As @Rican7 mentioned in the issue, this allows e.g. to use sift as driver for CtrlP (a vim plugin).

The result is much more powerful than just implementing the option -g known from ack/the silver searcher - you can now use sift to list files and combine all filtering options, not just filter the path based on a regular expression.

An example based on the linux kernel source code (version 3.18.2):
sift --targets --git --path net -x c --files '*test*' --exclude-dirs wireless

This lists all files that:

  • contain "net" in the path ("net" is used as a regular expression here, like in the mentioned -g option)
  • are c code files (extension *.c)
  • contain "test" in the filename

And while searching, sift will

  • respect .gitignore files
  • not descend into directories named "wireless"

While your average use case should be much less complex, this shows the flexibility of the solution.

You can download the new binaries here: https://sift-tool.org/download