summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Zhao <jeff.no.zhao@gmail.com>2023-07-30 12:54:57 -0400
committerJeff Zhao <jeff.no.zhao@gmail.com>2023-07-30 12:54:57 -0400
commit5406d28a4d7dd94b4aa5b515315b25203f7b5677 (patch)
tree20b4922d8e576a95b2298f647f4a8c132dcbf9d7
parent11112087094046da2c6456ddbd9e90f982f86f11 (diff)
parent5b9fe16bc9f3ea57f329e531ae652d684b1876e9 (diff)
Merge branch 'main' of github.com:kamiyaa/joshuto
-rw-r--r--Cargo.lock159
-rw-r--r--Cargo.toml10
-rwxr-xr-xconfig/preview_file.sh6
-rw-r--r--docs/image_previews/combined_with_text.md4
-rw-r--r--src/commands/bookmark.rs4
-rw-r--r--src/commands/command_line.rs2
-rw-r--r--src/config/general/display_raw.rs2
-rw-r--r--src/config/option/display_option.rs2
-rw-r--r--src/config/theme/style.rs2
-rw-r--r--src/context/app_context.rs2
-rw-r--r--src/context/message_queue.rs2
-rw-r--r--src/context/ui_context.rs2
-rw-r--r--src/error/error_kind.rs2
-rw-r--r--src/error/error_type.rs1
-rw-r--r--src/event/process_event.rs2
-rw-r--r--src/io/io_worker.rs8
-rw-r--r--src/preview/preview_file.rs2
-rw-r--r--src/run.rs2
-rw-r--r--src/ui/backend.rs8
-rw-r--r--src/ui/views/tui_command_menu.rs6
-rw-r--r--src/ui/views/tui_folder_view.rs12
-rw-r--r--src/ui/views/tui_hsplit_view.rs10
-rw-r--r--src/ui/views/tui_progress_view.rs8
-rw-r--r--src/ui/views/tui_textfield.rs12
-rw-r--r--src/ui/views/tui_view.rs6
-rw-r--r--src/ui/views/tui_worker_view.rs6
-rw-r--r--src/ui/widgets/tui_dirlist.rs8
-rw-r--r--src/ui/widgets/tui_dirlist_detailed.rs8
-rw-r--r--src/ui/widgets/tui_dirlist_loading.rs8
-rw-r--r--src/ui/widgets/tui_file_preview.rs8
-rw-r--r--src/ui/widgets/tui_footer.rs10
-rw-r--r--src/ui/widgets/tui_help.rs8
-rw-r--r--src/ui/widgets/tui_menu.rs8
-rw-r--r--src/ui/widgets/tui_message.rs8
-rw-r--r--src/ui/widgets/tui_prompt.rs8
-rw-r--r--src/ui/widgets/tui_tab.rs8
-rw-r--r--src/ui/widgets/tui_text.rs8
-rw-r--r--src/ui/widgets/tui_topbar.rs10
-rw-r--r--src/ui/widgets/tui_worker.rs8
-rw-r--r--src/util/style.rs2
40 files changed, 208 insertions, 184 deletions
diff --git a/Cargo.lock b/Cargo.lock
index f9bbeeb..994e4a3 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -4,15 +4,6 @@ version = 3
[[package]]
name = "aho-corasick"
-version = "0.7.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "aho-corasick"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41"
@@ -92,12 +83,11 @@ checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42"
[[package]]
name = "bstr"
-version = "1.5.0"
+version = "1.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a246e68bb43f6cd9db24bea052a53e40405417c5fb372e3d1a8a7f770a564ef5"
+checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05"
dependencies = [
"memchr",
- "once_cell",
"regex-automata",
"serde",
]
@@ -248,9 +238,9 @@ checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d"
[[package]]
name = "equivalent"
-version = "1.0.0"
+version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88bffebc5d80432c9b140ee17875ff173a8ab62faad5b257da912bd2f6c1c0a1"
+checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
[[package]]
name = "errno"
@@ -343,11 +333,11 @@ dependencies = [
[[package]]
name = "globset"
-version = "0.4.10"
+version = "0.4.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "029d74589adefde59de1a0c4f4732695c32805624aec7b68d91503d4dba79afc"
+checksum = "1391ab1f92ffcc08911957149833e682aa3fe252b9f45f966d2ef972274c97df"
dependencies = [
- "aho-corasick 0.7.20",
+ "aho-corasick",
"bstr",
"fnv",
"log",
@@ -431,6 +421,12 @@ dependencies = [
]
[[package]]
+name = "indoc"
+version = "2.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2c785eefb63ebd0e33416dfcb8d6da0bf27ce752843a45632a67bf10d4d4b5c4"
+
+[[package]]
name = "inotify"
version = "0.9.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -643,9 +639,9 @@ dependencies = [
[[package]]
name = "num-traits"
-version = "0.2.15"
+version = "0.2.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
+checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2"
dependencies = [
"autocfg",
]
@@ -698,6 +694,12 @@ dependencies = [
]
[[package]]
+name = "paste"
+version = "1.0.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
+
+[[package]]
name = "pathdiff"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -739,7 +741,7 @@ dependencies = [
"phf_shared",
"proc-macro2",
"quote",
- "syn 2.0.22",
+ "syn 2.0.27",
]
[[package]]
@@ -783,18 +785,18 @@ dependencies = [
[[package]]
name = "proc-macro2"
-version = "1.0.63"
+version = "1.0.66"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb"
+checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
dependencies = [
"unicode-ident",
]
[[package]]
name = "quote"
-version = "1.0.29"
+version = "1.0.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105"
+checksum = "50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965"
dependencies = [
"proc-macro2",
]
@@ -841,12 +843,14 @@ dependencies = [
[[package]]
name = "ratatui"
-version = "0.21.0"
+version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce841e0486e7c2412c3740168ede33adeba8e154a15107b879d8162d77c7174e"
+checksum = "8285baa38bdc9f879d92c0e37cb562ef38aa3aeefca22b3200186bc39242d3d5"
dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.3.3",
"cassowary",
+ "indoc",
+ "paste",
"termion",
"unicode-segmentation",
"unicode-width",
@@ -883,32 +887,38 @@ dependencies = [
[[package]]
name = "regex"
-version = "1.8.4"
+version = "1.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0ab3ca65655bb1e41f2a8c8cd662eb4fb035e67c3f78da1d61dffe89d07300f"
+checksum = "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575"
dependencies = [
- "aho-corasick 1.0.2",
+ "aho-corasick",
"memchr",
+ "regex-automata",
"regex-syntax",
]
[[package]]
name = "regex-automata"
-version = "0.1.10"
+version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
+checksum = "39354c10dd07468c2e73926b23bb9c2caca74c5501e38a35da70406f1d923310"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax",
+]
[[package]]
name = "regex-syntax"
-version = "0.7.2"
+version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78"
+checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2"
[[package]]
name = "rustix"
-version = "0.38.1"
+version = "0.38.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbc6396159432b5c8490d4e301d8c705f61860b8b6c863bf79942ce5401968f3"
+checksum = "0a962918ea88d644592894bc6dc55acc6c0956488adcebbfb6e273506b7fd6e5"
dependencies = [
"bitflags 2.3.3",
"errno",
@@ -951,25 +961,25 @@ dependencies = [
[[package]]
name = "scopeguard"
-version = "1.1.0"
+version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
+checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
[[package]]
name = "serde"
-version = "1.0.164"
+version = "1.0.174"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e8c8cf938e98f769bc164923b06dce91cea1751522f46f8466461af04c9027d"
+checksum = "3b88756493a5bd5e5395d53baa70b194b05764ab85b59e43e4b8f4e1192fa9b1"
[[package]]
name = "serde_derive"
-version = "1.0.164"
+version = "1.0.174"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68"
+checksum = "6e5c3a298c7f978e53536f95a63bdc4c4a64550582f31a0359a9afda6aede62e"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.22",
+ "syn 2.0.27",
]
[[package]]
@@ -1000,9 +1010,9 @@ dependencies = [
[[package]]
name = "signal-hook"
-version = "0.3.15"
+version = "0.3.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "732768f1176d21d09e076c23a93123d40bba92d50c4058da34d45c8de8e682b9"
+checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801"
dependencies = [
"libc",
"signal-hook-registry",
@@ -1025,9 +1035,9 @@ checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de"
[[package]]
name = "smallvec"
-version = "1.10.0"
+version = "1.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
+checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9"
[[package]]
name = "static_assertions"
@@ -1084,9 +1094,9 @@ dependencies = [
[[package]]
name = "syn"
-version = "2.0.22"
+version = "2.0.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2efbeae7acf4eabd6bcdcbd11c92f45231ddda7539edc7806bd1a04a03b24616"
+checksum = "b60f673f44a8255b9c8c657daf66a596d435f2da81a555b06dc644d080ba45e0"
dependencies = [
"proc-macro2",
"quote",
@@ -1116,22 +1126,22 @@ dependencies = [
[[package]]
name = "thiserror"
-version = "1.0.40"
+version = "1.0.44"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac"
+checksum = "611040a08a0439f8248d1990b111c95baa9c704c805fa1f62104b39655fd7f90"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
-version = "1.0.40"
+version = "1.0.44"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
+checksum = "090198534930841fab3a5d1bb637cde49e339654e606195f8d9c76eeb081dc96"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.22",
+ "syn 2.0.27",
]
[[package]]
@@ -1162,9 +1172,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
[[package]]
name = "toml"
-version = "0.7.5"
+version = "0.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ebafdf5ad1220cb59e7d17cf4d2c72015297b75b19a10472f99b89225089240"
+checksum = "c17e963a819c331dcacd7ab957d80bc2b9a9c1e71c804826d2f283dd65306542"
dependencies = [
"serde",
"serde_spanned",
@@ -1183,9 +1193,9 @@ dependencies = [
[[package]]
name = "toml_edit"
-version = "0.19.11"
+version = "0.19.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "266f016b7f039eec8a1a80dfe6156b633d208b9fccca5e4db1d6775b0c4e34a7"
+checksum = "f8123f27e969974a3dfba720fdb560be359f57b44302d280ba72e76a74480e8a"
dependencies = [
"indexmap",
"serde",
@@ -1196,9 +1206,9 @@ dependencies = [
[[package]]
name = "trash"
-version = "3.0.4"
+version = "3.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb060e46f3142e73342a48e30f31d24e6657bab2d7cc7b4b3afa213ea7a13b74"
+checksum = "af3663fb8f476d674b9c61d1d2796acec725bef6bec4b41402a904252a25971e"
dependencies = [
"chrono",
"libc",
@@ -1218,9 +1228,9 @@ checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
[[package]]
name = "unicode-ident"
-version = "1.0.9"
+version = "1.0.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0"
+checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c"
[[package]]
name = "unicode-normalization"
@@ -1272,9 +1282,9 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
[[package]]
name = "uuid"
-version = "1.4.0"
+version = "1.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d023da39d1fde5a8a3fe1f3e01ca9632ada0a63e9797de55a879d6e2236277be"
+checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d"
dependencies = [
"getrandom",
"rand",
@@ -1283,13 +1293,13 @@ dependencies = [
[[package]]
name = "uuid-macro-internal"
-version = "1.4.0"
+version = "1.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8614dda80b9075fbca36bc31b58d1447715b1236af98dee21db521c47a0cc2c0"
+checksum = "f7e1ba1f333bd65ce3c9f27de592fcbc256dafe3af2717f56d7c87761fbaccf4"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.22",
+ "syn 2.0.27",
]
[[package]]
@@ -1347,7 +1357,7 @@ dependencies = [
"once_cell",
"proc-macro2",
"quote",
- "syn 2.0.22",
+ "syn 2.0.27",
"wasm-bindgen-shared",
]
@@ -1369,7 +1379,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.22",
+ "syn 2.0.27",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
@@ -1583,18 +1593,15 @@ checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
[[package]]
name = "winnow"
-version = "0.4.7"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca0ace3845f0d96209f0375e6d367e3eb87eb65d27d445bdc9f1843a26f39448"
+checksum = "81fac9742fd1ad1bd9643b991319f72dd031016d44b77039a26977eb667141e7"
dependencies = [
"memchr",
]
[[package]]
name = "xdg"
-version = "2.5.0"
+version = "2.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "688597db5a750e9cad4511cb94729a078e274308099a0382b5b8203bbc767fee"
-dependencies = [
- "home",
-]
+checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546"
diff --git a/Cargo.toml b/Cargo.toml
index d1441da..c6323e3 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -10,7 +10,7 @@ edition = "2021"
keywords = ["tui-rs", "ranger", "file_manager", "termion"]
[dependencies]
-ansi-to-tui = { version = "^3", optional = true }
+ansi-to-tui = { version = "^3.1.0", optional = true }
alphanumeric-sort = "^1"
chrono = "^0"
colors-transform = "^0"
@@ -33,9 +33,6 @@ structopt = "^0"
termion = "^2"
toml = "^0"
trash = { version = "^3", optional = true }
-tui = { version = "0.21", default-features = false, features = [
- "termion",
-], package = "ratatui" }
unicode-segmentation = "^1"
unicode-width = "^0"
users = "^0"
@@ -43,6 +40,11 @@ whoami = "^1"
xdg = "^2"
walkdir = "^2"
+[dependencies.ratatui]
+version = "^0"
+default-features = false
+features = ["termion"]
+
[dependencies.uuid]
version = "^1"
features = ["v4", "fast-rng", "macro-diagnostics"]
diff --git a/config/preview_file.sh b/config/preview_file.sh
index 15fa6fc..bb7cc7b 100755
--- a/config/preview_file.sh
+++ b/config/preview_file.sh
@@ -96,12 +96,16 @@ handle_extension() {
exit 1 ;;
## OpenDocument
- odt|ods|odp|sxw)
+ odt|sxw)
## Preview as text conversion
odt2txt "${FILE_PATH}" && exit 0
## Preview as markdown conversion
pandoc -s -t markdown -- "${FILE_PATH}" && exit 0
exit 1 ;;
+ ods|odp)
+ ## Preview as text conversion (unsupported by pandoc for markdown)
+ odt2txt "${FILE_PATH}" && exit 0
+ exit 1 ;;
## XLSX
xlsx)
diff --git a/docs/image_previews/combined_with_text.md b/docs/image_previews/combined_with_text.md
index 39dd8b3..b194ca3 100644
--- a/docs/image_previews/combined_with_text.md
+++ b/docs/image_previews/combined_with_text.md
@@ -31,7 +31,7 @@ case "$mimetype" in
tags=$(tmsu_tag_list)
echo "$dimension"
echo "$tags"
- meta_file="$(get_preview_meta_file $path)"
+ meta_file=$(get_preview_meta_file "$path")
let y_offset=`printf "${tags}" | sed -n '=' | wc -l`+2
echo "y-offset $y_offset" > "$meta_file"
exit 4
@@ -52,7 +52,7 @@ After we have the y-offset available, we adapt the “preview shown” hook scri
case "$mimetype" in
image/png | image/jpeg)
- meta_file="$(get_preview_meta_file $path)"
+ meta_file=$(get_preview_meta_file "$path")
y_offset=`cat "$meta_file" | grep "y-offset" | awk '{print $2}'`
y=$(( $y + $y_offset ))
show_image "$path" $x $y $width $height
diff --git a/src/commands/bookmark.rs b/src/commands/bookmark.rs
index 23db860..c810d56 100644
--- a/src/commands/bookmark.rs
+++ b/src/commands/bookmark.rs
@@ -2,9 +2,9 @@ use std::fs::File;
use std::io::Write;
use std::path;
+use ratatui::layout::Rect;
+use ratatui::widgets::Clear;
use termion::event::Event;
-use tui::layout::Rect;
-use tui::widgets::Clear;
use crate::config::{search_directories, BookmarkRaw, BookmarksRaw};
use crate::context::AppContext;
diff --git a/src/commands/command_line.rs b/src/commands/command_line.rs
index 608e5dd..5a311b9 100644
--- a/src/commands/command_line.rs
+++ b/src/commands/command_line.rs
@@ -24,7 +24,7 @@ pub fn read_and_execute(
if let Some(s) = user_input {
let trimmed = s.trim_start();
- context.commandline_context_mut().history_mut().add(trimmed);
+ let _ = context.commandline_context_mut().history_mut().add(trimmed);
let command = Command::from_str(trimmed)?;
command.execute(context, backend, keymap_t)
} else {
diff --git a/src/config/general/display_raw.rs b/src/config/general/display_raw.rs
index 295d30f..a340305 100644
--- a/src/config/general/display_raw.rs
+++ b/src/config/general/display_raw.rs
@@ -1,7 +1,7 @@
use std::convert::From;
+use ratatui::layout::Constraint;
use serde_derive::Deserialize;
-use tui::layout::Constraint;
use crate::config::option::{
DisplayMode, DisplayOption, LineMode, LineNumberStyle, TabDisplayOption,
diff --git a/src/config/option/display_option.rs b/src/config/option/display_option.rs
index eaeb971..24fa89c 100644
--- a/src/config/option/display_option.rs
+++ b/src/config/option/display_option.rs
@@ -1,6 +1,6 @@
use std::{collections::HashMap, path::PathBuf};
-use tui::layout::Constraint;
+use ratatui::layout::Constraint;
use crate::config::option::LineMode;
use crate::config::option::SortOption;
diff --git a/src/config/theme/style.rs b/src/config/theme/style.rs
index e4ee599..5ae24fd 100644
--- a/src/config/theme/style.rs
+++ b/src/config/theme/style.rs
@@ -2,7 +2,7 @@ use colors_transform::{Color, Rgb};
use serde_derive::Deserialize;
-use tui::style::{self, Style};
+use ratatui::style::{self, Style};
const fn default_color() -> style::Color {
style::Color::Reset
diff --git a/src/context/app_context.rs b/src/context/app_context.rs
index 4f605ce..7971562 100644
--- a/src/context/app_context.rs
+++ b/src/context/app_context.rs
@@ -56,7 +56,7 @@ impl AppContext {
let event_tx = events.event_tx.clone();
let mut commandline_context = CommandLineContext::new();
- commandline_context.history_mut().set_max_len(20);
+ let _ = commandline_context.history_mut().set_max_len(20);
let event_tx_for_fs_notification = event_tx.clone();
let watcher = notify::recommended_watcher(move |res| {
diff --git a/src/context/message_queue.rs b/src/context/message_queue.rs
index 0208b96..118e254 100644
--- a/src/context/message_queue.rs
+++ b/src/context/message_queue.rs
@@ -1,6 +1,6 @@
use std::collections::VecDeque;
-use tui::style::{Color, Style};
+use ratatui::style::{Color, Style};
pub struct Message {
pub content: String,
diff --git a/src/context/ui_context.rs b/src/context/ui_context.rs
index c5a8006..ff46041 100644
--- a/src/context/ui_context.rs
+++ b/src/context/ui_context.rs
@@ -1,4 +1,4 @@
-use tui::layout::Rect;
+use ratatui::layout::Rect;
#[derive(Clone, Debug, PartialEq, Eq)]
pub struct UiContext {
diff --git a/src/error/error_kind.rs b/src/error/error_kind.rs
index a03cd13..7260e2d 100644
--- a/src/error/error_kind.rs
+++ b/src/error/error_kind.rs
@@ -13,6 +13,8 @@ pub enum JoshutoErrorKind {
ParseError,
ClipboardError,
TomlDeError(toml::de::Error),
+
+ #[cfg(feature = "recycle_bin")]
TrashError,
Glob,
diff --git a/src/error/error_type.rs b/src/error/error_type.rs
index 31ffa23..4e2eaad 100644
--- a/src/error/error_type.rs
+++ b/src/error/error_type.rs
@@ -56,6 +56,7 @@ impl From<std::env::VarError> for JoshutoError {
}
}
+#[cfg(feature = "recycle_bin")]
impl From<trash::Error> for JoshutoError {
fn from(err: trash::Error) -> Self {
let cause = err.to_string();
diff --git a/src/event/process_event.rs b/src/event/process_event.rs
index c207740..f215d9a 100644
--- a/src/event/process_event.rs
+++ b/src/event/process_event.rs
@@ -2,9 +2,9 @@ use std::io;
use std::path;
use notify;
+use ratatui::layout::{Constraint, Direction, Layout};
use signal_hook::consts::signal;
use termion::event::{Event, Key, MouseButton, MouseEvent};
-use tui::layout::{Constraint, Direction, Layout};
use uuid::Uuid;
use crate::commands::{cursor_move, parent_cursor_move, reload};
diff --git a/src/io/io_worker.rs b/src/io/io_worker.rs
index 42a3ef5..b8d5113 100644
--- a/src/io/io_worker.rs
+++ b/src/io/io_worker.rs
@@ -200,11 +200,17 @@ impl IoWorkerThread {
total_bytes,
total_bytes,
);
+ #[cfg(feature = "recycle_bin")]
if self.options.permanently {
remove_files(&self.paths)?;
} else {
trash_files(&self.paths)?;
}
+ #[cfg(not(feature = "recycle_bin"))]
+ {
+ remove_files(&self.paths)?;
+ }
+
Ok(progress)
}
}
@@ -323,6 +329,7 @@ pub fn recursive_cut(
}
}
+#[cfg(feature = "recycle_bin")]
fn trash_error_to_io_error(err: trash::Error) -> std::io::Error {
match err {
trash::Error::Unknown { description } => {
@@ -351,6 +358,7 @@ where
Ok(())
}
+#[cfg(feature = "recycle_bin")]
fn trash_files<P>(paths: &[P]) -> std::io::Result<()>
where
P: AsRef<path::Path>,
diff --git a/src/preview/preview_file.rs b/src/preview/preview_file.rs
index d115480..96fccb3 100644
--- a/src/preview/preview_file.rs
+++ b/src/preview/preview_file.rs
@@ -3,7 +3,7 @@ use std::process::{Command, Output};
use std::thread;
use std::time;
-use tui::layout::Rect;
+use ratatui::layout::Rect;
use crate::context::AppContext;
use crate::event::AppEvent;
diff --git a/src/run.rs b/src/run.rs
index 32a3093..a2e81b3 100644
--- a/src/run.rs
+++ b/src/run.rs
@@ -13,8 +13,8 @@ use crate::ui::views::TuiView;
use uuid::Uuid;
+use ratatui::layout::Rect;
use termion::event::Event;
-use tui::layout::Rect;
pub fn run_loop(
backend: &mut ui::AppBackend,
diff --git a/src/ui/backend.rs b/src/ui/backend.rs
index e67b5e9..b5b9833 100644
--- a/src/ui/backend.rs
+++ b/src/ui/backend.rs
@@ -1,10 +1,10 @@
use std::io::{self, stdout, Write};
+use ratatui::backend::TermionBackend;
+use ratatui::widgets::Widget;
use termion::raw::{IntoRawMode, RawTerminal};
use termion::screen::AlternateScreen;
use termion::screen::IntoAlternateScreen;
-use tui::backend::TermionBackend;
-use tui::widgets::Widget;
#[cfg(feature = "mouse")]
use termion::input::MouseTerminal;
@@ -37,7 +37,7 @@ impl New for Screen {
}
// pub type TuiBackend = TermionBackend<Screen>;
-pub type TuiTerminal = tui::Terminal<TermionBackend<Screen>>;
+pub type TuiTerminal = ratatui::Terminal<TermionBackend<Screen>>;
pub struct AppBackend {
pub terminal: Option<TuiTerminal>,