Skip to content

> A powerful, secure and feature-rich tool via Google Translation in terminal._

License

Notifications You must be signed in to change notification settings

kabeep/node-translate-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

33 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

logo

A powerful, secure and feature-rich tool via Google Translation in terminal.


NodeJS License NPM Codecov Codacy CircleCI

English | ็ฎ€ไฝ“ไธญๆ–‡

Alt

usage-png

๐Ÿ“– Introduction

Using the node-translate API in the terminal.

The API bypasses token restrictions. If it is used in large quantities or for business, please support the work of Google Translation, which provides a lot of free credits.

Besides simple text translation, it also provides:

  • Adaptive translation language
  • Automatic correction of the source text
  • Getting source text from stdin
  • Polysemous translation results
  • Synonyms of the source text
  • Example sentences of the source text
  • Phonetic transcription of the source and translated text
  • Stable output and error prompts
  • Beautiful terminal styling
  • Internationalized prompt for terminal

โš™๏ธ Installation

npm install @kabeep/node-translate-cli --save
yarn add @kabeep/node-translate-cli
pnpm add @kabeep/node-translate-cli

๐Ÿš€ Usage

translate <text> [options]

options๏ผš
  -f, --from            The source language (language to be translated from)
                        specified as language name or ISO 639-1 code
                                                           [string] [default: "auto"]
  -t, --to              The target language (language to be translated to)
                        specified as language name or ISO 639-1 code
                                                           [string] [default: "auto"]
      --timeout         Timeout duration for the translation request in
                        milliseconds                       [number] [default: 30000]
      --stdin-timeout   You can use this parameter to avoid timeouts if stdin
                        takes too long (ms)                [number] [default: 5000]
  -r, --retry           Retry attempts for the translation request in case of
                        failure                            [number] [default: 0]
  -p, --show-phonetics  Show the pronunciation of the translated word
                                                           [boolean] [default: false]
  -s, --show-source     Show source text information       [boolean] [default: false]
  -d, --show-detail     Show translated detail information [boolean] [default: false]
  -l, --show-list       Show supported language list       [boolean] [default: false]
      --show-code       Show supported language code list  [boolean] [default: false]
      --show-adaptive   Show adaptive language             [boolean] [default: false]
  -v, --version         Show version                       [boolean]
  -h, --help            Show help info                     [boolean]

๐Ÿช„ Examples

Using stdin

echo "test" | translate -f en -t zh

Using iso-639-1 and text parameters

translate "test" --from=en --to=zh

Using language name and capitalized correction

translate "test" --from="ENGLISH" --to="chinese"

Adaptive source language

translate "test" -t zh

Self-detection of native language

translate "test" -f en

Autocorrect source text

translate "Thunk you"

Translate words and show synonyms, polysemy explanations and examples

translate "test" -d

Translate a word, phrase or sentence and show the source text and phonetic symbols

translate "test" -s -p

Set API timeout

translate "test" --timeout=60000

Set the timeout for the standard input stream

npm view node-translate-cli description | translate --stdin-timeout=30000

Set the number of retries when an API request fails

translate "test" -r 2

Show supported languages

translate -l

Show supported language codes

translate --show-code

Show supported adaptive languages

translate --show-adaptive

Show help information

translate -h

Show the version of current

translate -v

๐Ÿง™๐Ÿฝโ€โ™‚๏ธ Advanced

Using another npm package

npm install -g clipboard-cli

# Use the clipboard-cli to copy translation results to the clipboard
translate 'Translate this sentence to your clipboard' | clipboard

Using the static accessor $() method

git commit -m "$(translate 'feat: your commit content' -t zh)"

Alt

Using the pipe | symbol

npm info npm description | translate -t zh

Alt

Using the redirection > symbol

translate "่ฟ™ๆ˜ฏไธ€ๆฎตๆต‹่ฏ•ๆ–‡ๆœฌใ€‚" -t en > usage.txt

Alt

๐Ÿ”ง Autocorrect

Default white

Detect Language yellow

Detect Spelling red

Alt

๐Ÿข Network anomaly

When the network is abnormal, the terminal will change as shown in the figure below (they actually come from the same line).

Alt

โŒจ๏ธ Automatic line wrapping

When a single line of content is too long, the terminal will automatically wrap the line after the title.

Alt

๐ŸŒ i18n

Quickly contribute your language via ease-to-use node-translate-i18n in locale file are welcome, or notify me via Issues for handling.

Alt

๐Ÿ”— Related

๐Ÿค Contribution

Contributions via Pull Requests or Issues are welcome.

๐Ÿ“„ License

This project is licensed under the MIT License. See the LICENSE file for details.