summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Duffield <jessedduffield@gmail.com>2023-08-01 10:06:48 +1000
committerGitHub <noreply@github.com>2023-08-01 10:06:48 +1000
commite932aaaeafa1fb16276ab9c36e1e33c971e38019 (patch)
treeb50f31a7d8fdc411a28ddbfc5bbbe83bac63efe9
parentb44d0c4bde35b781be89f608fff6a56c0af2994b (diff)
parent917cfd758689064d5af52c3393f41bb0f731625e (diff)
Internationalise logging of commands (#2852)
-rw-r--r--pkg/commands/git_commands/rebase.go41
-rw-r--r--pkg/commands/oscommands/os.go43
-rw-r--r--pkg/gui/controllers/local_commits_controller.go29
-rw-r--r--pkg/gui/controllers/merge_conflicts_controller.go2
-rw-r--r--pkg/i18n/english.go34
5 files changed, 131 insertions, 18 deletions
diff --git a/pkg/commands/git_commands/rebase.go b/pkg/commands/git_commands/rebase.go
index d491b6f5e..5732bc0d3 100644
--- a/pkg/commands/git_commands/rebase.go
+++ b/pkg/commands/git_commands/rebase.go
@@ -104,7 +104,13 @@ func (self *RebaseCommands) MoveCommitDown(commits []*models.Commit, index int)
sha := commits[index].Sha
- self.os.LogCommand(fmt.Sprintf("Moving TODO down: %s", utils.ShortSha(sha)), false)
+ msg := utils.ResolvePlaceholderString(
+ self.Tr.Log.MoveCommitDown,
+ map[string]string{
+ "shortSha": utils.ShortSha(sha),
+ },
+ )
+ self.os.LogCommand(msg, false)
return self.PrepareInteractiveRebaseCommand(PrepareInteractiveRebaseCommandOpts{
baseShaOrRoot: baseShaOrRoot,
@@ -118,7 +124,13 @@ func (self *RebaseCommands) MoveCommitUp(commits []*models.Commit, index int) er
sha := commits[index].Sha
- self.os.LogCommand(fmt.Sprintf("Moving TODO up: %s", utils.ShortSha(sha)), false)
+ msg := utils.ResolvePlaceholderString(
+ self.Tr.Log.MoveCommitUp,
+ map[string]string{
+ "shortSha": utils.ShortSha(sha),
+ },
+ )
+ self.os.LogCommand(msg, false)
return self.PrepareInteractiveRebaseCommand(PrepareInteractiveRebaseCommandOpts{
baseShaOrRoot: baseShaOrRoot,
@@ -149,7 +161,13 @@ func (self *RebaseCommands) InteractiveRebase(commits []*models.Commit, index in
}
func (self *RebaseCommands) EditRebase(branchRef string) error {
- self.os.LogCommand(fmt.Sprintf("Beginning interactive rebase at '%s'", branchRef), false)
+ msg := utils.ResolvePlaceholderString(
+ self.Tr.Log.EditRebase,
+ map[string]string{
+ "ref": branchRef,
+ },
+ )
+ self.os.LogCommand(msg, false)
return self.PrepareInteractiveRebaseCommand(PrepareInteractiveRebaseCommandOpts{
baseShaOrRoot: branchRef,
instruction: daemon.NewInsertBreakInstruction(),
@@ -157,7 +175,14 @@ func (self *RebaseCommands) EditRebase(branchRef string) error {
}
func (self *RebaseCommands) EditRebaseFromBaseCommit(targetBranchName string, baseCommit string) error {
- self.os.LogCommand(fmt.Sprintf("Beginning interactive rebase from '%s' onto '%s", baseCommit, targetBranchName), false)
+ msg := utils.ResolvePlaceholderString(
+ self.Tr.Log.EditRebaseFromBaseCommit,
+ map[string]string{
+ "baseCommit": baseCommit,
+ "targetBranchName": targetBranchName,
+ },
+ )
+ self.os.LogCommand(msg, false)
return self.PrepareInteractiveRebaseCommand(PrepareInteractiveRebaseCommandOpts{
baseShaOrRoot: baseCommit,
onto: targetBranchName,
@@ -412,7 +437,13 @@ func (self *RebaseCommands) CherryPickCommits(commits []*models.Commit) error {
commitLines := lo.Map(commits, func(commit *models.Commit, _ int) string {
return fmt.Sprintf("%s %s", utils.ShortSha(commit.Sha), commit.Name)
})
- self.os.LogCommand(fmt.Sprintf("Cherry-picking commits:\n%s", strings.Join(commitLines, "\n")), false)
+ msg := utils.ResolvePlaceholderString(
+ self.Tr.Log.CherryPickCommits,
+ map[string]string{
+ "commitLines": strings.Join(commitLines, "\n"),
+ },
+ )
+ self.os.LogCommand(msg, false)
return self.PrepareInteractiveRebaseCommand(PrepareInteractiveRebaseCommandOpts{
baseShaOrRoot: "HEAD",
diff --git a/pkg/commands/oscommands/os.go b/pkg/commands/oscommands/os.go
index 4a77310b5..fc13eedf0 100644
--- a/pkg/commands/oscommands/os.go
+++ b/pkg/commands/oscommands/os.go
@@ -117,7 +117,15 @@ func (c *OSCommand) Quote(message string) string {
// AppendLineToFile adds a new line in file
func (c *OSCommand) AppendLineToFile(filename, line string) error {
- c.LogCommand(fmt.Sprintf("Appending '%s' to file '%s'", line, filename), false)
+ msg := utils.ResolvePlaceholderString(
+ c.Tr.Log.AppendingLineToFile,
+ map[string]string{
+ "line": line,
+ "filename": filename,
+ },
+ )
+ c.LogCommand(msg, false)
+
f, err := os.OpenFile(filename, os.O_APPEND|os.O_RDWR|os.O_CREATE, 0o600)
if err != nil {
return utils.WrapError(err)
@@ -154,7 +162,13 @@ func (c *OSCommand) AppendLineToFile(filename, line string) error {
// CreateFileWithContent creates a file with the given content
func (c *OSCommand) CreateFileWithContent(path string, content string) error {
- c.LogCommand(fmt.Sprintf("Creating file '%s'", path), false)
+ msg := utils.ResolvePlaceholderString(
+ c.Tr.Log.CreateFileWithContent,
+ map[string]string{
+ "path": path,
+ },
+ )
+ c.LogCommand(msg, false)
if err := os.MkdirAll(filepath.Dir(path), os.ModePerm); err != nil {
c.Log.Error(err)
return err
@@ -170,7 +184,13 @@ func (c *OSCommand) CreateFileWithContent(path string, content string) error {
// Remove removes a file or directory at the specified path
func (c *OSCommand) Remove(filename string) error {
- c.LogCommand(fmt.Sprintf("Removing '%s'", filename), false)
+ msg := utils.ResolvePlaceholderString(
+ c.Tr.Log.Remove,
+ map[string]string{
+ "filename": filename,
+ },
+ )
+ c.LogCommand(msg, false)
err := os.RemoveAll(filename)
return utils.WrapError(err)
}
@@ -265,7 +285,14 @@ func PrepareForChildren(cmd *exec.Cmd) {
func (c *OSCommand) CopyToClipboard(str string) error {
escaped := strings.Replace(str, "\n", "\\n", -1)
truncated := utils.TruncateWithEllipsis(escaped, 40)
- c.LogCommand(fmt.Sprintf("Copying '%s' to clipboard", truncated), false)
+
+ msg := utils.ResolvePlaceholderString(
+ c.Tr.Log.CopyToClipboard,
+ map[string]string{
+ "str": truncated,
+ },
+ )
+ c.LogCommand(msg, false)
if c.UserConfig.OS.CopyToClipboardCmd != "" {
cmdStr := utils.ResolvePlaceholderString(c.UserConfig.OS.CopyToClipboardCmd, map[string]string{
"text": c.Cmd.Quote(str),
@@ -277,7 +304,13 @@ func (c *OSCommand) CopyToClipboard(str string) error {
}
func (c *OSCommand) RemoveFile(path string) error {
- c.LogCommand(fmt.Sprintf("Deleting path '%s'", path), false)
+ msg := utils.ResolvePlaceholderString(
+ c.Tr.Log.RemoveFile,
+ map[string]string{
+ "path": path,
+ },
+ )
+ c.LogCommand(msg, false)
return c.removeFileFn(path)
}
diff --git a/pkg/gui/controllers/local_commits_controller.go b/pkg/gui/controllers/local_commits_controller.go
index 696e4e717..4a2627cdc 100644
--- a/pkg/gui/controllers/local_commits_controller.go
+++ b/pkg/gui/controllers/local_commits_controller.go
@@ -421,10 +421,15 @@ func (self *LocalCommitsController) handleMidRebaseCommand(action todo.TodoComma
}
self.c.LogAction("Update rebase TODO")
- self.c.LogCommand(
- fmt.Sprintf("Updating rebase action of commit %s to '%s'", commit.ShortSha(), action.String()),
- false,
+
+ msg := utils.ResolvePlaceholderString(
+ self.c.Tr.Log.HandleMidRebaseCommand,
+ map[string]string{
+ "shortSha": commit.ShortSha(),
+ "action": action.String(),
+ },
)
+ self.c.LogCommand(msg, false)
if err := self.c.Git().Rebase.EditRebaseTodo(commit, action); err != nil {
return false, self.c.Error(err)
@@ -452,7 +457,14 @@ func (self *LocalCommitsController) moveDown(commit *models.Commit) error {
// logging directly here because MoveTodoDown doesn't have enough information
// to provide a useful log
self.c.LogAction(self.c.Tr.Actions.MoveCommitDown)
- self.c.LogCommand(fmt.Sprintf("Moving commit %s down", commit.ShortSha()), false)
+
+ msg := utils.ResolvePlaceholderString(
+ self.c.Tr.Log.MovingCommitDown,
+ map[string]string{
+ "shortSha": commit.ShortSha(),
+ },
+ )
+ self.c.LogCommand(msg, false)
if err := self.c.Git().Rebase.MoveTodoDown(commit); err != nil {
return self.c.Error(err)
@@ -487,10 +499,13 @@ func (self *LocalCommitsController) moveUp(commit *models.Commit) error {
// logging directly here because MoveTodoDown doesn't have enough information
// to provide a useful log
self.c.LogAction(self.c.Tr.Actions.MoveCommitUp)
- self.c.LogCommand(
- fmt.Sprintf("Moving commit %s up", commit.ShortSha()),
- false,
+ msg := utils.ResolvePlaceholderString(
+ self.c.Tr.Log.MovingCommitUp,
+ map[string]string{
+ "shortSha": commit.ShortSha(),
+ },
)
+ self.c.LogCommand(msg, false)
if err := self.c.Git().Rebase.MoveTodoUp(self.c.Model().Commits[index]); err != nil {
return self.c.Error(err)
diff --git a/pkg/gui/controllers/merge_conflicts_controller.go b/pkg/gui/controllers/merge_conflicts_controller.go
index c90ada92e..86f49489c 100644
--- a/pkg/gui/controllers/merge_conflicts_controller.go
+++ b/pkg/gui/controllers/merge_conflicts_controller.go
@@ -215,7 +215,7 @@ func (self *MergeConflictsController) HandleUndo() error {
}
self.c.LogAction("Restoring file to previous state")
- self.c.LogCommand("Undoing last conflict resolution", false)
+ self.c.LogCommand(self.c.Tr.Log.HandleUndo, false)
if err := os.WriteFile(state.GetPath(), []byte(state.GetContent()), 0o644); err != nil {
return err
}
diff --git a/pkg/i18n/english.go b/pkg/i18n/english.go
index 84f881c5d..6dee00467 100644
--- a/pkg/i18n/english.go
+++ b/pkg/i18n/english.go
@@ -587,6 +587,7 @@ type TranslationSet struct {
MarkedCommitMarker string
Actions Actions
Bisect Bisect
+ Log Log
}
type Bisect struct {
@@ -609,6 +610,23 @@ type Bisect struct {
Bisecting string
}
+type Log struct {
+ EditRebase string
+ MoveCommitUp string
+ MoveCommitDown string
+ CherryPickCommits string
+ HandleUndo string
+ HandleMidRebaseCommand string
+ MovingCommitUp string
+ MovingCommitDown string
+ RemoveFile string
+ CopyToClipboard string
+ Remove string
+ CreateFileWithContent string
+ AppendingLineToFile string
+ EditRebaseFromBaseCommit string
+}
+
type Actions struct {
CheckoutCommit string
CheckoutTag string
@@ -1456,5 +1474,21 @@ func EnglishTranslationSet() TranslationSet {
CompletePromptIndeterminate: "Bisect complete! Some commits were skipped, so any of the following commits may have introduced the change:\n\n%s\n\nDo you want to reset 'git bisect' now?",
Bisecting: "Bisecting",
},
+ Log: Log{
+ EditRebase: "Beginning interactive rebase at '{{.ref}}'",
+ MoveCommitUp: "Moving TODO down: '{{.shortSha}}'",
+ MoveCommitDown: "Moving TODO down: '{{.shortSha}}'",
+ CherryPickCommits: "Cherry-picking commits:\n'{{.commitLines}}'",
+ HandleUndo: "Undoing last conflict resolution",
+ HandleMidRebaseCommand: "Updating rebase action of commit {{.shortSha}} to '{{.action}}'",
+ MovingCommitUp: "Moving commit {{.shortSha}} up",
+ MovingCommitDown: "Moving commit {{.shortSha}} down",
+ RemoveFile: "Deleting path '{{.path}}'",
+ CopyToClipboard: "Copying '{{.str}}' to clipboard",
+ Remove: "Removing '{{.filename}}'",
+ CreateFileWithContent: "Creating file '{{.path}}'",
+ AppendingLineToFile: "Appending '{{.line}}' to file '{{.filename}}'",
+ EditRebaseFromBaseCommit: "Beginning interactive rebase from '{{.baseCommit}}' onto '{{.targetBranchName}}",
+ },
}
}