# Yomitan Settings

This page is taking longer than expected to load.

Due to a bug in Safari, it may be necessary to click the Yomitan button in the browser bar to fully load the page

## Profile

Active profile
Switch the active profile that is used for scanning.
Configure profiles…

## General

Enable Yomitan
Language
Language of the text that is being looked up.
Show the welcome guide on browser startup
Show "Lookup in Yomitan" in right-click menu
Maximum number of results
Adjust the maximum number of results shown for lookups.
Enable Yomitan API
Enable support for sending local web requests to fetch data from Yomitan.
This option may send data outside of Yomitan to local applications that request it (Privacy Policy). More…

To activate the Yomitan API, a native messaging component must be installed. A setup guide can be found here.

Less…

Allow bypassing css sanitization

Only enable this option if you trust the authors of your dictionaries or will perform sanitization outside of Yomitan. Malicious dictionaries can send malformed CSS to allow Javascript execution if injected into a webview or browser. More…

A malicious dictionary which contains malicious CSS may try to execute Javascript. For example, if the output of the Yomitan API is used in Anki, then the resulting Anki card may execute unintended Javascript. The risk in this case is similar to downloading a malicious Anki deck. Namely, in both cases, you are relying purely on Anki's sandbox to protect your machine and information from the malicious code. If the Anki sandbox works, card contents could be leaked (a minor confidential issue). If the sandbox fails, there is much more to worry about (actions being taken on your machine such as stealing credentials and sensitive information, or ransomware taking over your computer).

If you choose to disable the CSS sanitization, we recommend thinking end-to-end about where the Yomitan API output is used, and whether that destination is resilient to potentially malicious Javascript code being included, otherwise you are potentially risking the data and integrity of your system.

Sanitization bypass will allow CSS that cannot be sanitized to pass through the sanitizer unchanged. This ONLY applies to the Yomitan API, it will not make any other areas of Yomitan potentially vulnerable.

This can be required to retrieve CSS on some browsers which do not support the offscreen page necessary for full CSS sanitization in the Yomitan API on the backend. Yomitan will attempt to fall back on basic sanitization but this will fail for dictionaries making use of complex CSS.

Less…

## Dictionaries (# installed, # enabled)

Configure installed and enabled dictionaries…
Get recommended dictionaries…
Storage
Yomitan is using an indeterminate amount of storage. Yomitan is using approximately ? of ?.
Your system is running low on storage space.
Importing dictionaries may fail.
Yomitan is permitted unlimited storage.
Frequency sorting dictionary
Sort results using a frequency dictionary. More…

Enabling this option will sort search results using a specific dictionary. This can be beneficial when using multiple dictionaries which may not have consistent sorting information.

Less…

Frequency sorting mode (?)

Dictionary frequency data can be represented in one of two ways:

- Occurrence-based, where the frequency corresponds to a number of occurrences. Large values indicate a more common term.
- Rank-based, where the frequency value corresponds to a ranking index. Smaller values indicate a more common term.

The correct mode can be determined based on the contents of the dictionary; the Auto button attempts to auto-detect the correct value.

Less…

Persistent storage
Enable to help prevent the browser from unexpectedly clearing the database. More…

Web browsers will sometimes clear stored data if the device is running low on storage space. This can result in the imported dictionaries being deleted unexpectedly, causing Yomitan to stop functioning. Enabling persistent storage tells the browser that the data should not be deleted in those circumstances.

On Firefox and Firefox for Android, the storage information feature may be hidden behind a browser flag. To enable this flag, open about:config and search for dom.storageManager.enabled. Setting its value to true should allow storage information to be calculated.

It may not be possible to enable Persistent Storage on Firefox for Android.

Chromium-based browsers should not need to enable this setting since the Yomitan extension has the `unlimitedStorage` permission, which should prevent data deletion.[1]

Less…

## Scanning

Scan modifier key
Hold a key while moving the cursor to scan text. More…

A keyboard modifier key can be used to activate text scanning when the cursor is moved. Alternatively, the No key option can be used to scan text whenever the cursor is moved, without requiring any key to be held.

More advanced scanning input customization can be set up by enabling the Advanced option and clicking Configure advanced scanning inputs.

Less…

Scan resolution
Start the lookup scan at the word or character of the cursor position. More…

The scan resolution determines where the scan starts when the cursor is moved. The `Character` option will start scanning at the cursor's current position, while the `Word` option will start scanning at the beginning of the word.

Less…

Scan using middle mouse button
Hold the middle mouse button while moving the cursor to scan text.
Configure advanced scanning inputs… (# defined)
Scan delay (in milliseconds)
Change the delay before scanning occurs when no modifier key is required.
Scan without mouse move
Allow scanning words under the pointer without the pointer being in motion.
Select matched text
Search text with non-Japanese, Chinese, or Korean characters
Only applies when language is set to Japanese, Chinese, Cantonese, or Korean.
Layout-aware scanning
Use webpage styling information to determine where line breaks are likely to be.
Deep content scanning
Enable scanning text that is covered by other layers.
Normalize CSS zoom
Correct the pointer location on webpages where CSS `zoom` is used. More…

The non-standard CSS `zoom` property interferes with the normal calculation of the pointer coordinates when scanning webpages. This property is discouraged from being used and its use is rare, but some webpages may still use it.

Enabling this option, which is on by default, will take the value of this property into account when scanning webpage content. It is currently put behind an option in case there are unforeseen negative side effects.

This setting does not have any effect in Firefox, as it does not implement the `zoom` property.

Less…

Wildcard scanning
Enable suffix wildcard when looking up scanned webpage text. More…

Rather than searching for the source text exactly, the text will only be required to be a prefix of an existing term. For example, scanning 読み will effectively search for 読み*, which may bring up additional results such as 読み方.

This will likely cause scanning and lookup to be slower, and the results may not be as relevant.

Less…

Text scan length
Change how many characters are read when scanning for terms.
Setting this value too high (100+) may impact performance.
Configure input action prevention…

## Popup Behavior

Allow scanning search page content
Text on the search page can be scanned for definitions, which will open a popup.
Allow scanning popup content
Text inside of popups can be scanned for definitions, which will open a new popup.
Maximum number of child popups
Change the limit on the number of popups that may be generated.
Allow scanning popup source terms
Auto-hide search popup
When an existing popup is present, upon scanning again, hide the existing popup even if no definitions are found when scanning again.
Delay (in milliseconds)
Hide popup on cursor exit
When the cursor exits the popup, the popup will be hidden.
Delay (in milliseconds)
Reduced motion scrolling
Scrolls by a configurable height (similar to pagination), reducing animations. Useful on e-readers and e-ink screens.
Scale
Percentage of the popup's height scrolled per step.
Swipe threshold
Minimum distance on touch devices for a swipe to be recognized as scrolling. Lower values can feel more responsive but increase the chance for misinputs.
px
Search terms when clicking text from the results list
Show iframe popups in the root frame (?)

By default, scanning text inside of an embeded `<iframe>` element will open a new popup inside of that frame, which can sometimes be limiting due to the frame's size. When this option is enabled, the popup will be created in the root of the page, if possible.

Note that when this option is enabled, there is a possibility that the extension can interfere with the underlying webpage, since it must send messages to the webpage in order to determine the correct position of the popup. This typically does not cause issues, but if anything unexpected happens, this option could be the cause.

Less…

## Appearance

Theme
Adjust the style of Yomitan.
Body
Shadow
Action bar appearance
Control when and where the action bar is visible.
Visibility
Location
Font family
Change the font family used in Yomitan. More…
The font family can be changed to any font installed on your system.
You can input things such as `sans-serif`, `serif`, or `monospace`.
If you want to specify one or multiple specific fonts, you can type them in manually separated by commas, for example

    "Noto Sans JP", "Meiryo", sans-serif

Less…

Font size
Change the font size used in popups, in pixels.
Line height
Change the space between lines of text in popups. This will usually be a decimal number between 1 and 2.
Compact glossaries
Display term glossaries using a more compact layout.
Compact tags
Show fewer repeated tags for term glossaries.
Show tags for expressions and their readings
These tags can be scanned if the options for popup content scanning are enabled.
Show debug information
A menu option to log debugging information will be shown in the search results.
Term display style
Change how terms and their readings are displayed.
Reading mode
Change what type of furigana is displayed for parsed text. Japanese only.
Frequency display style
Change how frequency information is presented.
Selection indicator style
Change how the selected definition entry is visually indicated.
Pitch accent display styles
Japanese only. More…
Downstep notation Downstep position Graph

Pitch accents for terms and expressions can be shown if a dictionary supporting pitch accents is installed. There are currently three different ways that pitch accents can be presented:

- Downstep notation - よむ
- Downstep position - [1]
- Graph -

Less…

Configure collapsible dictionaries…
Configure custom CSS…

## Result Display

Result grouping mode
Change how related results are grouped. More…

- No grouping - Every definition will be listed as a separate entry.
- Group term-reading pairs - Definitions for the same term with the same reading will be grouped together.
- Group by term - Definitions for the same term will be grouped together, regardless of reading variations.

- Group related terms - Related terms that share the same definitions will be grouped together.

  The Primary dictionary option should be assigned to a dictionary which contains related term information, and configuring the Secondary dictionaries will allow definitions for the related terms to be included from other dictionaries.

  Not all dictionaries are able to be selected as the Primary dictionary.

Less…

Primary dictionary
Secondary dictionaries…
Average frequencies
Compress frequency tags into one "Average" frequency tag based on the harmonic mean.

## Popup Position & Size

Display mode
Change the layout of the popup. More…

The Default mode will position the popup relative to the scanned text. The Full Width mode will anchor the popup to the top or bottom of the screen and take up the full width of the screen, which can be useful on devices with touch screens.

Less…

Scale
Control the scaling factor of the popup.
Auto-scale (?)
Zoom level Viewport

Auto-scaling will scale the popup automatically based on the browser's zoom levels in order to keep the popup at a constant physical size, regardless of the zoom level. Zoom level uses the zoom level that is typically used on desktop browsers, and Viewport uses the zoom level that is typically used on mobile browsers.

Less…

Size
Control the size of the popup, in pixels.
Width
Height
Horizontal text positioning
Change where the popup is positioned relative to horizontal text.
Vertical text positioning
Change where the popup is positioned relative to vertical text.
Horizontal text offset
Change the distance the popup is placed relative to horizontal text.
x
y
Vertical text offset
Change the distance the popup is placed relative to vertical text.
x
y

## Search Window

Open…
Sticky search header
Search header stays on the page when scrolling down.
Use a native browser window instead of an embedded popup (?)

Instead of showing definitions in a popup embedded into the webpage, a native browser window containing the popup content will be opened instead. This window will be shared across all tabs.

Less…

Size
Control the size of the window, in pixels.
Width
Height
Left position
Control the left position of the window, in pixels.
x
Mode
Top position
Control the top position of the window, in pixels.
y
Mode
Window style
Change the appearance of the window.
Type
State

## Audio

Enable audio playback for terms
Show a clickable speaker icon next to search results.
This option may send term, reading, and/or language outside of Yomitan to fetch audio (Privacy Policy).
Auto-play search result audio
The audio for the first result will be played automatically.
Audio fallback sound
The sound to play when Yomitan fails to fetch audio.
Audio volume
Adjust the volume audio is played at, in percent.
Configure audio playback sources…

## Text Parsing

Info…

Yomitan is able to scan the sentence surrounding a term and parse individual words of the query on the search page. This information can also be added to Anki cards to provide additional context.

Less…

Parse sentences using Yomitan's internal parser
Sentence words are parsed using Yomitan's dictionaries. More…

Yomitan's internal parser is a simple algorithm which can parse sentences using the installed dictionaries. It works by repeatedly detecting the longest term at the start of the sentence and advancing until no text remains. This provides decent results for the general case, but since grammatical structure is not taken into account, it can sometimes yield incorrect segmentation.

Less…

Parse sentences using MeCab
Sentence words are parsed using a third-party program. Japanese only.
This option may send search query data outside of Yomitan for parsing (Privacy Policy). More…

MeCab is a third-party program which uses its own dictionaries and parsing algorithm to decompose sentences into individual words. MeCab may provide more accurate parsing results than Yomitan's internal parser.

In order for Yomitan to use it, both MeCab and a native messaging component must be installed. A setup guide can be found here.

Less…

Show space between parsed words
Sentence scanning extent
Adjust how many characters are bidirectionally scanned to form a sentence.
Sentence termination characters

## Translation

Dictionary search resolution

"A dog"　→　search for "A dog","A do", "A d", "A"

or

"A dog"　→　"A dog", "A"

Configure custom text replacement patterns…

## Anki

Info…

Yomitan supports automatic flashcard creation for Anki, a free application designed to assist in remembering information. This feature requires installation of the AnkiConnect plugin.
See the Yomitan wiki for a setup guide.

Less…

Enable Anki integration
Connection status: … Details…
This option may send limited information about the current webpage, information contained in Yomitan dictionary entries, and/or relevant user settings outside of Yomitan to Anki (Privacy Policy).

Log error to console

Attempting to connect to Anki can sometimes return an error message which includes "Invalid response", which may indicate that the value of the AnkiConnect server address option is incorrect. Resetting it to the default value may fix issues that are occurring.

Notice for macOS users: If Yomitan has issues connecting to AnkiConnect, it may be necessary to adjust some system settings. See this link for details.

AnkiConnect server address
Change the URL of the AnkiConnect server. More…

The default address for a server on the same device is http://127.0.0.1:8765. If Anki is running and AnkiConnect is installed, clicking this URL should open a page showing the current version of AnkiConnect.

Less…

Card tags
List of space or comma separated tags to add to the card.
API key
Pass a secret value to AnkiConnect API calls.
Check for card duplicates
Check for duplicates across all models (?)

By default, duplicate checks are only performed for notes created with the same model. Enabling this option will check for duplicates across all model types.

Less…

Duplicate card scope (?)

A card is considered a duplicate if the value of the first field matches that of any other card. By default, this check will include cards across all decks in a collection, but this constraint can be relaxed by using either the Deck or Deck root option.

The Deck option will only check for duplicates in the target deck. The Deck root option will additionally check for duplicates in all child decks of the root deck. This allows adding cards that are unique for decks including a subdeck structure. For decks which don't have any parent-child hierarchy, both options function the same.

Less…

When a duplicate is detected (?)

- Overwriting a card can result in the loss of data.
- Duplicate cards of a different note type cannot be overwritten.
- If there are multiple duplicate cards, the first card found will be overwritten.
- You can customize overwriting for each field in the `Configure Anki card format…` menu.

Less…

Screenshot format
Adjust the format and quality of screenshots created for cards.
Quality (%)
Format
Idle download timeout (in milliseconds)
The maximum time before an idle download will be cancelled; 0 = no limit. More…

Audio files can be downloaded from remote servers when creating Anki cards, and sometimes these downloads can stall due to server or internet connectivity issues. When this setting has a non-zero value, if a download has stalled for longer than the time specified, the download will be cancelled.

Less…

Suspend new cards
New cards will be suspended when a note is added.
Note viewer window
Clicking the View added note button shows this window. More…

AnkiConnect releases after around 2022-05-29 support a new note editor window which can be shown when clicking the View added note button. This can be tested using the buttons below. If an error occurs, Anki and/or AnkiConnect may need to be updated.

Less…

Show card tags and flags (?)

When coming across a word that is already in an Anki deck, two buttons can appear that show the tags and flags the card has. If set to Non-standard, all tags that are included in the Card tags option will be filtered out from the list. If set to Custom, only tags that are included in the Target tags option will be shown. If no tags remain after filtering, then the tags button will not be shown. If no flags are found, the flags button will not be shown.

Less…

Force Anki sync on adding card
May cause issues when using in conjuction with Ankiconnect Android, and/or slow or metered connections.
Target tags
List of space or comma separated tags.
Configure Anki flashcards…
Customize handlebars templates…
Generate notes (experimental)…

## Clipboard

Info…

Yomitan can watch the system clipboard and automatically search on the search page when text is copied. This can be useful for using Yomitan to scan text from external applications.

This feature requires Yomitan to have clipboard reading permissions, and when this option is enabled, the clipboard will be frequently checked for new text.

Less…

Enable background clipboard text monitoring
Open the search page in a new window when text is copied to the clipboard.
Enable search page clipboard text monitoring
The query on the search page will be automatically updated with text in the clipboard.
Maximum clipboard text search length
Limit the number of characters used when searching clipboard text.
Clipboard text search mode
Change how the search page reacts to new text in the clipboard.

## Shortcuts

Yomitan has two categories of keyboard shortcuts:

- Standard keyboard shortcuts are controlled by the extension, and can be added, removed, and configured to work on webpages that Yomitan functions on.
- Native keyboard shortcuts are controlled by the web browser, and function globally within the web browser or system-wide.

Configure standard keyboard shortcuts…
Configure native keyboard shortcuts…

## Backup

Yomitan can import and export settings files which can be used to restore settings, share settings across devices, and to help to debug problems. These files will only contain settings and will not contain dictionaries. Dictionaries must be imported separately. However, you can also import a previously exported collection of dictionaries. See the next section about that.
You can try to export the entire collection of your dictionaries into a single large file that you can try to import from other browsers or devices. Importing the collection like that is a destructive operation and will replace your current database of dictionaries so please proceed with caution. These operations can take a lot of time depending on the size of your database, especially to start and to complete, so have patience.
See yomichan-data-exporter for instructions to export your data from older Yomichan installations.
Placeholder text.
Placeholder text.

## Accessibility

Enable Google Docs compatibility mode (?)

Google Docs now uses canvas-based rendering to display content[2] which prevents Yomitan from being able to scan text using the standard methods. Enabling this option will force Google Docs webpages to expose some additional text information which should allow Yomitan to still work.

If any profile has this setting enabled, compatibility mode will be activated; profile conditions are ignored.

Google has changed this compatibility implementation several times, and the changes do not seem to be announced or documented. Therefore, it is possible that this feature could stop working at any time the future without warning.

Less…

## Security

Configure Yomitan Permissions
Use a secure container around popups (?)

On supported browsers, a popup's `iframe` element will be embeded inside of a container with a closed shadow DOM. This container prevents scripts running on the underlying web page from being able to discover the `iframe`, which helps avoid situations where the web page might try to modify or use the Yomitan popup for an unintended purpose.

Less…

Use secure popup frame URL (?)

When this option is enabled, the URL of the `iframe` element will be assigned by directly changing the location of the `iframe`'s internal document, rather than using the `iframe`'s `src` attribute. This results in the extension URL not being exposed to the underling web page, and thus making it harder to detect the presence of Yomitan.

Less…