mirror of
https://github.com/Llewellynvdm/zoxide.git
synced 2024-11-22 21:05:16 +00:00
Remove i32 conversion from fzf helper
This commit is contained in:
parent
dc5f965b0c
commit
5d709bded5
26
src/util.rs
26
src/util.rs
@ -45,15 +45,8 @@ pub fn fzf_helper(now: Epoch, mut dirs: Vec<Dir>) -> Result<Option<String>> {
|
|||||||
|
|
||||||
for dir in dirs.iter() {
|
for dir in dirs.iter() {
|
||||||
// ensure that frecency fits in 4 characters
|
// ensure that frecency fits in 4 characters
|
||||||
let frecency = if dir.rank > 9999.0 {
|
let frecency = clamp(dir.rank, 0.0, 9999.0);
|
||||||
9999
|
writeln!(fzf_stdin, "{:>4.0} {}", frecency, dir.path)
|
||||||
} else if dir.rank > 0.0 {
|
|
||||||
dir.rank as i32
|
|
||||||
} else {
|
|
||||||
0
|
|
||||||
};
|
|
||||||
|
|
||||||
writeln!(fzf_stdin, "{:>4} {}", frecency, dir.path)
|
|
||||||
.with_context(|| anyhow!("could not write into fzf stdin"))?;
|
.with_context(|| anyhow!("could not write into fzf stdin"))?;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -89,3 +82,18 @@ pub fn fzf_helper(now: Epoch, mut dirs: Vec<Dir>) -> Result<Option<String>> {
|
|||||||
_ => bail!("fzf returned an unknown error"),
|
_ => bail!("fzf returned an unknown error"),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// FIXME: replace with f64::clamp once it is stable <https://github.com/rust-lang/rust/issues/44095>
|
||||||
|
#[must_use = "method returns a new number and does not mutate the original value"]
|
||||||
|
#[inline]
|
||||||
|
pub fn clamp(val: f64, min: f64, max: f64) -> f64 {
|
||||||
|
assert!(min <= max);
|
||||||
|
let mut x = val;
|
||||||
|
if x < min {
|
||||||
|
x = min;
|
||||||
|
}
|
||||||
|
if x > max {
|
||||||
|
x = max;
|
||||||
|
}
|
||||||
|
x
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user