From 0d5a5d121245fd2a143d769988e10322cbd387ae Mon Sep 17 00:00:00 2001 From: sxyazi Date: Sat, 19 Aug 2023 00:22:50 +0800 Subject: [PATCH] .. --- app/src/app.rs | 11 ++++++++++- config/src/boot/boot.rs | 2 +- shared/src/term/cursor.rs | 16 ++++------------ 3 files changed, 15 insertions(+), 14 deletions(-) diff --git a/app/src/app.rs b/app/src/app.rs index a71072e9..2b36a781 100644 --- a/app/src/app.rs +++ b/app/src/app.rs @@ -1,4 +1,5 @@ use core::{emit, files::FilesOp, input::InputMode, Event}; +use std::ffi::OsString; use anyhow::{Ok, Result}; use config::{keymap::{Control, Key, KeymapLayer}, BOOT}; @@ -182,7 +183,15 @@ impl App { s }); - std::fs::write(p, paths.as_bytes()).ok(); + #[cfg(target_os = "windows")] + { + std::fs::write(p, paths.to_string_lossy().as_bytes()).ok(); + } + #[cfg(not(target_os = "windows"))] + { + use std::os::unix::ffi::OsStrExt; + std::fs::write(p, paths.as_bytes()).ok(); + } return emit!(Quit); } diff --git a/config/src/boot/boot.rs b/config/src/boot/boot.rs index 8cebd9b4..c5f48c4c 100644 --- a/config/src/boot/boot.rs +++ b/config/src/boot/boot.rs @@ -45,7 +45,7 @@ impl Default for Boot { let boot = Self { cwd: cwd.unwrap_or("/".into()), cache_dir: env::temp_dir().join("yazi"), - state_dir: xdg::BaseDirectories::with_prefix("yazi").unwrap().get_state_home(), + state_dir: Xdg::state_dir().unwrap(), cwd_file: args.cwd_file, chooser_file: args.chooser_file, diff --git a/shared/src/term/cursor.rs b/shared/src/term/cursor.rs index b5eb9b5a..f4ac5b2f 100644 --- a/shared/src/term/cursor.rs +++ b/shared/src/term/cursor.rs @@ -1,11 +1,7 @@ -use anyhow::Result; use std::io::{stdout, Write}; -use crossterm::{ - cursor::{self, MoveTo, RestorePosition, SavePosition, SetCursorStyle}, - execute, queue, - terminal::{Clear, ClearType}, -}; +use anyhow::Result; +use crossterm::{cursor::{MoveTo, RestorePosition, SavePosition, SetCursorStyle}, execute, queue, terminal::{Clear, ClearType}}; use crate::Term; @@ -45,12 +41,8 @@ impl Term { } #[inline] - pub fn set_cursor_block() -> Result<()> { - Ok(execute!(stdout(), SetCursorStyle::BlinkingBlock)?) - } + pub fn set_cursor_block() -> Result<()> { Ok(execute!(stdout(), SetCursorStyle::BlinkingBlock)?) } #[inline] - pub fn set_cursor_bar() -> Result<()> { - Ok(execute!(stdout(), SetCursorStyle::BlinkingBar)?) - } + pub fn set_cursor_bar() -> Result<()> { Ok(execute!(stdout(), SetCursorStyle::BlinkingBar)?) } }