Termit is an easy way to translate stuff in your terminal. You can check out its node.js npm version normit.
gem install termit
termit 'source_language' 'target_language' 'text'
Example:
termit en es "hey cowboy where is your horse?"
=> "Hey vaquero dónde está tu caballo?"
termit fr en "qui est votre papa?"
=> "Who's Your Daddy?"
Parenthesis are not necessary for text data input:
termit fr ru qui est votre papa
=> "Кто твой папочка?"
Specify a -t (talk) flag to use speech synthesis (requires mpg123):
normit en fr "hey cowboy where is your horse?" -t
=> "Hey cowboy où est votre cheval ?" # and a french voice says something about a horse
You can use termit as a speech synthesizer of any supported language without having to translate anything:
termit en en "hold your horses cowboy !" -t
=> "hold your horses cowboy !" # and an english voice asks you to hold on
Idea by Nedomas. See and hear your messages translated to target lang every time you commit. You can do this two ways: overriding the git
command, and using a post-commit hook in git.
In ~/.zshrc
export LANG=es
git(){[[ "$@" = commit\ -m* ]]&&termit en $LANG ${${@:$#}//./} -t;command git $@}
I am no shell ninja so if you know how to make it work in bash then please submit a PR.
Add a file named post-commit
to your project's .git/hooks
directory, with this in it:
termit en es "`git log -1 --pretty=format:'%s'`" -t
Remember to switch the languages according to your preference.
If you want this to be in every one of your git repositories, see this Stack Overflow answer.
To find all available language codes visit https://msdn.microsoft.com/en-us/library/hh456380.aspx
Works with Ruby 1.9.2 and higher.
To use speech synthesis you need to have mpg123 installed.
For Ubuntu:
sudo apt-get install mpg123
For MacOSX:
brew install mpg123
It was rewritten to work with Bing Translator . Thanks to Ragnarson for supporting it !
Termit works by scraping the private APIs and is therefore not recommended for use in production or on a large scale.