en.ts 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. import { SubmitKey } from "../store/config";
  2. import type { LocaleType } from "./index";
  3. const en: LocaleType = {
  4. WIP: "Coming Soon...",
  5. Error: {
  6. Unauthorized:
  7. "Unauthorized access, please enter access code in settings page.",
  8. },
  9. ChatItem: {
  10. ChatItemCount: (count: number) => `${count} messages`,
  11. },
  12. Chat: {
  13. SubTitle: (count: number) => `${count} messages with ChatGPT`,
  14. Actions: {
  15. ChatList: "Go To Chat List",
  16. CompressedHistory: "Compressed History Memory Prompt",
  17. Export: "Export All Messages as Markdown",
  18. Copy: "Copy",
  19. Stop: "Stop",
  20. Retry: "Retry",
  21. Delete: "Delete",
  22. },
  23. Rename: "Rename Chat",
  24. Typing: "Typing…",
  25. Input: (submitKey: string) => {
  26. var inputHints = `${submitKey} to send`;
  27. if (submitKey === String(SubmitKey.Enter)) {
  28. inputHints += ", Shift + Enter to wrap";
  29. }
  30. return inputHints + ", / to search prompts";
  31. },
  32. Send: "Send",
  33. Config: {
  34. Reset: "Reset to Default",
  35. SaveAs: "Save as Mask",
  36. },
  37. },
  38. Export: {
  39. Title: "All Messages",
  40. Copy: "Copy All",
  41. Download: "Download",
  42. MessageFromYou: "Message From You",
  43. MessageFromChatGPT: "Message From ChatGPT",
  44. },
  45. Memory: {
  46. Title: "Memory Prompt",
  47. EmptyContent: "Nothing yet.",
  48. Send: "Send Memory",
  49. Copy: "Copy Memory",
  50. Reset: "Reset Session",
  51. ResetConfirm:
  52. "Resetting will clear the current conversation history and historical memory. Are you sure you want to reset?",
  53. },
  54. Home: {
  55. NewChat: "New Chat",
  56. DeleteChat: "Confirm to delete the selected conversation?",
  57. DeleteToast: "Chat Deleted",
  58. Revert: "Revert",
  59. },
  60. Settings: {
  61. Title: "Settings",
  62. SubTitle: "All Settings",
  63. Actions: {
  64. ClearAll: "Clear All Data",
  65. ResetAll: "Reset All Settings",
  66. Close: "Close",
  67. ConfirmResetAll: "Are you sure you want to reset all configurations?",
  68. ConfirmClearAll: "Are you sure you want to reset all data?",
  69. },
  70. Lang: {
  71. Name: "Language", // ATTENTION: if you wanna add a new translation, please do not translate this value, leave it as `Language`
  72. All: "All Languages",
  73. Options: {
  74. cn: "简体中文",
  75. en: "English",
  76. tw: "繁體中文",
  77. es: "Español",
  78. it: "Italiano",
  79. tr: "Türkçe",
  80. jp: "日本語",
  81. de: "Deutsch",
  82. },
  83. },
  84. Avatar: "Avatar",
  85. FontSize: {
  86. Title: "Font Size",
  87. SubTitle: "Adjust font size of chat content",
  88. },
  89. Update: {
  90. Version: (x: string) => `Version: ${x}`,
  91. IsLatest: "Latest version",
  92. CheckUpdate: "Check Update",
  93. IsChecking: "Checking update...",
  94. FoundUpdate: (x: string) => `Found new version: ${x}`,
  95. GoToUpdate: "Update",
  96. },
  97. SendKey: "Send Key",
  98. Theme: "Theme",
  99. TightBorder: "Tight Border",
  100. SendPreviewBubble: {
  101. Title: "Send Preview Bubble",
  102. SubTitle: "Preview markdown in bubble",
  103. },
  104. Mask: {
  105. Title: "Mask Splash Screen",
  106. SubTitle: "Show a mask splash screen before starting new chat",
  107. },
  108. Prompt: {
  109. Disable: {
  110. Title: "Disable auto-completion",
  111. SubTitle: "Input / to trigger auto-completion",
  112. },
  113. List: "Prompt List",
  114. ListCount: (builtin: number, custom: number) =>
  115. `${builtin} built-in, ${custom} user-defined`,
  116. Edit: "Edit",
  117. Modal: {
  118. Title: "Prompt List",
  119. Add: "Add One",
  120. Search: "Search Prompts",
  121. },
  122. },
  123. HistoryCount: {
  124. Title: "Attached Messages Count",
  125. SubTitle: "Number of sent messages attached per request",
  126. },
  127. CompressThreshold: {
  128. Title: "History Compression Threshold",
  129. SubTitle:
  130. "Will compress if uncompressed messages length exceeds the value",
  131. },
  132. Token: {
  133. Title: "API Key",
  134. SubTitle: "Use your key to ignore access code limit",
  135. Placeholder: "OpenAI API Key",
  136. },
  137. Usage: {
  138. Title: "Account Balance",
  139. SubTitle(used: any, total: any) {
  140. return `Used this month $${used}, subscription $${total}`;
  141. },
  142. IsChecking: "Checking...",
  143. Check: "Check",
  144. NoAccess: "Enter API Key to check balance",
  145. },
  146. AccessCode: {
  147. Title: "Access Code",
  148. SubTitle: "Access control enabled",
  149. Placeholder: "Need Access Code",
  150. },
  151. Model: "Model",
  152. Temperature: {
  153. Title: "Temperature",
  154. SubTitle: "A larger value makes the more random output",
  155. },
  156. MaxTokens: {
  157. Title: "Max Tokens",
  158. SubTitle: "Maximum length of input tokens and generated tokens",
  159. },
  160. PresencePenlty: {
  161. Title: "Presence Penalty",
  162. SubTitle:
  163. "A larger value increases the likelihood to talk about new topics",
  164. },
  165. },
  166. Store: {
  167. DefaultTopic: "New Conversation",
  168. BotHello: "Hello! How can I assist you today?",
  169. Error: "Something went wrong, please try again later.",
  170. Prompt: {
  171. History: (content: string) =>
  172. "This is a summary of the chat history between the AI and the user as a recap: " +
  173. content,
  174. Topic:
  175. "Please generate a four to five word title summarizing our conversation without any lead-in, punctuation, quotation marks, periods, symbols, or additional text. Remove enclosing quotation marks.",
  176. Summarize:
  177. "Summarize our discussion briefly in 200 words or less to use as a prompt for future context.",
  178. },
  179. },
  180. Copy: {
  181. Success: "Copied to clipboard",
  182. Failed: "Copy failed, please grant permission to access clipboard",
  183. },
  184. Context: {
  185. Toast: (x: any) => `With ${x} contextual prompts`,
  186. Edit: "Contextual and Memory Prompts",
  187. Add: "Add a Prompt",
  188. },
  189. Plugin: {
  190. Name: "Plugin",
  191. },
  192. Mask: {
  193. Name: "Mask",
  194. Page: {
  195. Title: "Prompt Template",
  196. SubTitle: (count: number) => `${count} prompt templates`,
  197. Search: "Search Templates",
  198. Create: "Create",
  199. },
  200. Item: {
  201. Info: (count: number) => `${count} prompts`,
  202. Chat: "Chat",
  203. View: "View",
  204. Edit: "Edit",
  205. Delete: "Delete",
  206. DeleteConfirm: "Confirm to delete?",
  207. },
  208. EditModal: {
  209. Title: (readonly: boolean) =>
  210. `Edit Prompt Template ${readonly ? "(readonly)" : ""}`,
  211. Download: "Download",
  212. Clone: "Clone",
  213. },
  214. Config: {
  215. Avatar: "Bot Avatar",
  216. Name: "Bot Name",
  217. },
  218. },
  219. NewChat: {
  220. Return: "Return",
  221. Skip: "Skip",
  222. Title: "Pick a Mask",
  223. SubTitle: "Chat with the Soul behind the Mask",
  224. More: "Find More",
  225. NotShow: "Not Show Again",
  226. ConfirmNoShow: "Confirm to disable?You can enable it in settings later.",
  227. },
  228. };
  229. export default en;