# Yomichan for Chrome #
Yomichan for Chrome turns your browser into a tool for building Japanese language literacy by helping you to decipher
texts which would be otherwise too difficult tackle. This extension was inspired in part by
[Rikaichan](https://addons.mozilla.org/en-US/firefox/addon/rikaichan/) and
[Rikaikun](https://chrome.google.com/webstore/detail/rikaikun/jipdnfibhldikgcjhfnomkfpcebammhp?hl=en), but it stands
apart in its goal of being a all-encompassing learning tool as opposed to a mere browser-based dictionary. It is the
natural evolution of the [Yomichan](https://foosoft.net/projects/yomichan) plugin that I developed for Anki when I began learning Japanese
in early 2011.
## Requirements ##
For basic functionality:
* [Google Chrome](https://www.google.com/chrome/browser/desktop/)
For automatic flash card creation:
* [AnkiConnect](https://foosoft.net/projects/anki-connect/)
* [Anki](http://ankisrs.net/)
For development:
* [7-Zip](http://www.7-zip.org/)
* [Git LFS](https://git-lfs.github.com/)
* [Go](https://golang.org/)
* [Handlebars](http://handlebarsjs.com/)
* [Node.js](https://nodejs.org/)
## Installation ##
Yomichan can downloaded free of charge from the [Chrome Web
Store](https://chrome.google.com/webstore/detail/yomichan/ogmnaimimemjmbakcfefmnahgdfhfami). If you find this extension
helpful and appreciate the time that was spent developing it, I would kindly ask that you leave a positive review. Your
support and feedback encourages continued development of this tool.
[![Chrome web store](https://foosoft.net/projects/yomichan-chrome/img/store.png)](https://chrome.google.com/webstore/detail/yomichan/ogmnaimimemjmbakcfefmnahgdfhfami)
## Usage ##
Yomichan can be used as a standalone extension, or in conjunction with [Anki](http://ankisrs.net) via
[AnkiConnect](https://foosoft.net/projects/anki-connect).
### Basic Functionality ###
1. Left-click on the ![](https://foosoft.net/projects/yomichan-chrome/img/logo.png) icon to enable or disable Yomichan for the current browser instance.
2. Right-click on the ![](https://foosoft.net/projects/yomichan-chrome/img/logo.png) icon and select *Options* to display the Yomichan options page.
3. Hold down Shift (or the middle mouse button) as you hover over text to see term definitions.
4. Resize the definition window by dragging the bottom-left corner inwards or outwards.
5. Click on the Kanji links in the definition window to view additional information about those characters.
6. Click on the ![](https://foosoft.net/projects/yomichan-chrome/img/play-audio.png) icon to hear the term pronounced by a native speaker.
### Anki Integration ###
1. Open the *Install Add-on* dialog by selecting *Tools* > *Add-ons* > *Browse & Install* in Anki.
2. Input *2055492159* into the text box labeled *Code* and press the *OK* button to proceed.
3. Restart Anki when prompted to do so in order to complete the installation of AnkiConnect.
4. In Chrome, open the Yomichan options page by right-clicking the ![](https://foosoft.net/projects/yomichan-chrome/img/logo.png) icon and selecting *Options*.
5. Check the *Enable AnkiConnect* checkbox in the *General Options* group.
6. Activate the *Terms* or the *Kanji* tab, depending on the type of card template you wish to configure.
7. Select the Anki deck and model to use when creating new cards (see the [Anki Manual](http://ankisrs.net/docs/manual.html) for more details).
8. Populate the model fields with markup representing contextual properties for the current vocabulary term or Kanji:
* **Term Markers**
* `{audio}`: Audio sample of a native speaker's pronunciation in MP3 format (if available).
* `{expression}`: Term written in Kanji (will be written in Kana if Kanji is not available).
* `{glossary-list}`: List of definitions with items expressed as a numbered list.
* `{glossary}`: List of definitions with items delimited using semicolons.
* `{reading}`: Kana reading for the term (empty for terms where the expression is the reading).
* `{sentence}`: Sentence, quote, or phrase in which the term appears in the source content.
* `{tags}`: Grammar and usage tags providing additional information about the term.
* `{url}`: Address of the web page in which the current vocabulary term appeared in.
* **Kanji Markers**
* `{character}`: Unicode glyph representing the current Kanji.
* `{glossary-list}`: List of definitions with items expressed as a numbered list.
* `{glossary}`: List of definitions with items delimited using semicolons.
* `{kunyomi}`: Kunyomi (Japanese reading) for the current Kanji expressed in Katakana.
* `{onyomi}`: Onyomi (Chinese reading) for the current Kanji expressed in Hiragana.
* `{url}`: Address of the web page in which the current vocabulary term appeared in.
9. Click on the ![](https://foosoft.net/projects/yomichan-chrome/img/add-expression.png) icon to add the current expression using Kanji (e.g. 食べる).
10. Click on the ![](https://foosoft.net/projects/yomichan-chrome/img/add-reading.png) icon to add the current expression using the reading alone (e.g. たべる).
## Frequently Asked Questions ##
* **Is it possible to use Yomichan with files saved locally on my computer?**
It in order to be able use Yomichan with local files, you must first tick the *Allow access to file URLs* checkbox
for Yomichan on the chrome extensions page.
* **When are you going to port Yomichan to $MYBROWSER?**
I am considering creating a Firefox port once I am satisfied with the feature set of the Chrome extension. I may
consider other browsers in the future, as long as porting would be trivial and the browser in question runs natively
on Linux. This is not a high priority Firefox already has good extensions for Japanese learning (and I use Chrome
exclusively).
* **When are you going to add support for $MYLANGUAGE?**
Developing Yomichan required a significant understanding of Japanese sentence structure and grammar. I presently
have no time to invest in learning yet another language; therefore other languages will not be supported. I will
also not be accepting pull request containing this functionality, as I will ultimately be the one maintaining your
code.
* **When are you going to add support for [EPWING](https://ja.wikipedia.org/wiki/EPWING) J-J dictionaries?**
This is a long-term goal, and I do not yet have a timeline for this feature. That being said, I believe that I have
figured out how to make this work in the restrictive Chrome extension environment, and mostly have to develop a new
tool to support extraction of data from this format.
## Screenshots ##
[![Term definitions](https://foosoft.net/projects/yomichan-chrome/img/term-thumb.png)](https://foosoft.net/projects/yomichan-chrome/img/term.png)
[![Kanji information](https://foosoft.net/projects/yomichan-chrome/img/kanji-thumb.png)](https://foosoft.net/projects/yomichan-chrome/img/kanji.png)
[![General options](https://foosoft.net/projects/yomichan-chrome/img/options-general-thumb.png)](https://foosoft.net/projects/yomichan-chrome/img/options-general.png)
[![Anki options](https://foosoft.net/projects/yomichan-chrome/img/options-anki-thumb.png)](https://foosoft.net/projects/yomichan-chrome/img/options-anki.png)
## License ##
GPL