summaryrefslogtreecommitdiff
path: root/src/cmds/converter
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-03-18 22:50:03 +0800
committer魏曹先生 <1992414357@qq.com>2026-03-18 22:50:03 +0800
commit74bc8902be593796eb6292151e08374072766e3e (patch)
treef3de024bf06753649ff2a51587ee5e54a1c92435 /src/cmds/converter
parent5372793a49567dcba7315bf8e7bc5a1cab2d5a76 (diff)
Add workspace sheet command with help and localization
Diffstat (limited to 'src/cmds/converter')
-rw-r--r--src/cmds/converter/make_sheet_error.rs22
-rw-r--r--src/cmds/converter/workspace_operation_error.rs59
2 files changed, 62 insertions, 19 deletions
diff --git a/src/cmds/converter/make_sheet_error.rs b/src/cmds/converter/make_sheet_error.rs
new file mode 100644
index 0000000..8bbc45d
--- /dev/null
+++ b/src/cmds/converter/make_sheet_error.rs
@@ -0,0 +1,22 @@
+use crate::systems::cmd::errors::CmdExecuteError;
+use just_enough_vcs::system::workspace::workspace::manager::sheet_state::error::MakeSheetError;
+use rust_i18n::t;
+
+pub struct MakeSheetErrorConverter;
+
+impl MakeSheetErrorConverter {
+ pub fn to_exec_error(err: MakeSheetError) -> CmdExecuteError {
+ match err {
+ MakeSheetError::SheetAlreadyExists => {
+ CmdExecuteError::Error(t!("make_sheet_error.sheet_already_exists").to_string())
+ }
+ MakeSheetError::SheetNotFound => {
+ CmdExecuteError::Error(t!("make_sheet_error.sheet_not_found").to_string())
+ }
+ MakeSheetError::Io(error) => CmdExecuteError::Io(error),
+ MakeSheetError::Other(error) => CmdExecuteError::Error(
+ t!("make_sheet_error.other", error = error.to_string()).to_string(),
+ ),
+ }
+ }
+}
diff --git a/src/cmds/converter/workspace_operation_error.rs b/src/cmds/converter/workspace_operation_error.rs
index f2f71d0..3e6252d 100644
--- a/src/cmds/converter/workspace_operation_error.rs
+++ b/src/cmds/converter/workspace_operation_error.rs
@@ -1,5 +1,6 @@
use crate::systems::cmd::errors::CmdExecuteError;
use just_enough_vcs::system::workspace::workspace::error::WorkspaceOperationError;
+use rust_i18n::t;
pub struct JVWorkspaceOperationErrorConverter;
@@ -9,26 +10,46 @@ impl JVWorkspaceOperationErrorConverter {
WorkspaceOperationError::Io(error) => CmdExecuteError::Io(error),
WorkspaceOperationError::Other(msg) => CmdExecuteError::Error(msg),
WorkspaceOperationError::ConfigNotFound => {
- CmdExecuteError::Error("Config not found".to_string())
- }
- WorkspaceOperationError::WorkspaceNotFound => {
- CmdExecuteError::Error("Workspace not found".to_string())
- }
- WorkspaceOperationError::HandleLock(handle_lock_error) => {
- CmdExecuteError::Error(format!("Handle lock error: {}", handle_lock_error))
- }
- WorkspaceOperationError::DataRead(data_read_error) => {
- CmdExecuteError::Error(format!("Data read error: {}", data_read_error))
- }
- WorkspaceOperationError::DataWrite(data_write_error) => {
- CmdExecuteError::Error(format!("Data write error: {}", data_write_error))
- }
- WorkspaceOperationError::DataApply(data_apply_error) => {
- CmdExecuteError::Error(format!("Data apply error: {}", data_apply_error))
- }
- WorkspaceOperationError::IDAliasError(id_alias_error) => {
- CmdExecuteError::Error(format!("ID alias error: {}", id_alias_error))
+ CmdExecuteError::Error(t!("workspace_operation_error.config_not_found").to_string())
}
+ WorkspaceOperationError::WorkspaceNotFound => CmdExecuteError::Error(
+ t!("workspace_operation_error.workspace_not_found").to_string(),
+ ),
+ WorkspaceOperationError::HandleLock(handle_lock_error) => CmdExecuteError::Error(
+ t!(
+ "workspace_operation_error.handle_lock",
+ error = handle_lock_error
+ )
+ .to_string(),
+ ),
+ WorkspaceOperationError::DataRead(data_read_error) => CmdExecuteError::Error(
+ t!(
+ "workspace_operation_error.data_read",
+ error = data_read_error
+ )
+ .to_string(),
+ ),
+ WorkspaceOperationError::DataWrite(data_write_error) => CmdExecuteError::Error(
+ t!(
+ "workspace_operation_error.data_write",
+ error = data_write_error
+ )
+ .to_string(),
+ ),
+ WorkspaceOperationError::DataApply(data_apply_error) => CmdExecuteError::Error(
+ t!(
+ "workspace_operation_error.data_apply",
+ error = data_apply_error
+ )
+ .to_string(),
+ ),
+ WorkspaceOperationError::IDAliasError(id_alias_error) => CmdExecuteError::Error(
+ t!(
+ "workspace_operation_error.id_alias_error",
+ error = id_alias_error
+ )
+ .to_string(),
+ ),
}
}
}