Extension: Rooster Observer - Edit LingQs for all lesson words

Yes! This would be great! (Had to sleep on this because it was later in the evening for me)

Yes! Hopefully!

Note: I have noticed for Korean that it can be very tricky to get good definitions consistently from one source (though I have been very happy with Papago for free definitions overall — with some caveats and DeepL for free limited use. But, they mainly excel in translating sentence by sentence).

I note this because I have noticed “Wikitionary” and Navar Dictionary don’t always pull up results for Korean words consistently. So I look forward to seeing how the Wikipedia import function performs for Korean.

Makes sense!

Great idea! I think there might be more to me not being able to see this column (unless it counts the word count for this as “lifetime links” and seriously have a lot of links built up as a LingQ user, lol).

I’m still just seeing a blank box in the “NEW WORD” section like before:

This works great! I was having trouble picturing it (how it would work/process) until you added it. “Line Starters” is user-friendly wording, and I like it a lot!

Had to un-install and reinstall to get the updated version (guess my audio updates aren’t set right or something). These buttons work great. Also, love this!

Side note/complete guess: But it seems like clicking “More Hints” can result in hint results that seem a bit better and less cluttered with the word appearing in Korean Characters (Hangeul) within the meaning!

So you may be on to something here:

It may take a good while to get those popular definitions that aren’t exactly the best weeded out. (This may make things tricky with an "add all blue LingQs in one click feature that I thought I saw somewhere in one of the posts. Since, the most popular will continue to be the most popular, even though it may not be the best definition.)

Nice! Makes things easier!

1 Like

Dictionaries coming in the next update (just need to figure out how to design this damn UI to be user friendly!)

Audio when you click on the word at the top and the fragment should be out tomorrow too.

Ok. I’ll increase the limit to something dumb in the next update and we will see if it works.

Im thinking about a dropdown box where you just select the line starters that you want in the LingQ. With 1 button to add all if you want.

Maybe i"ll display the ‘All Hints’ result in a separate popup for that word. like a Grid or Rows. Then can close it instead of leaving 30 hints clogging up the screen.

I don’t think its happening soon. We just need to use our best judgment right now.

1 Like

I like this idea! Then it offers more customization for users who may want more/fewer columns.

Other potential column ideas:

  • Hanja: [“common Hanja in South Korea written as 父母 for parents, 學生 for students, and 學校 for school.”]
  • Phonetic: [Note: This would allow users to create their own pronunciations of the word, or what I would love to use is the “Phonetic Hangeul” of words so I can use Korean characters to create the pronunciation “hints” for Korean words because romanization/transliteration throws me off as a beginner learner. Could also be called “Pronunciation”]

Ex. Of Phonetic Hangeul: Word: 전화 [Phonetic: 저놔]

1 Like

Hey roosterburton,

Would you be able to make a LingQ extension to easily customize keyboard/mouse-button hotkeys for this site, easy enough to use for non-scripters?


Hi @Vardan_Yervadian

I can look at this but I’ll need some help. I don’t use the shortcuts currently. Can you tell me what there are currently shortcuts for and how to access the keybindings on this site?

1 Like

I second this, if there could be a way to modify keyboard shortcuts that would be unreal!

This post has a breakdown of the current shortcuts if it helps.

1 Like

That’s great. I’ll check it out and see how the settings are applied. It might involve a manual remapping and disable of the old keys, or could be something as simple as change ‘X’ key to ‘Y’.

1 Like

@Vardan_Yervadian @mhast

It is definitely possible to remap these keys in an easy popup menu. It’s on the todo!

It would be saved in local storage which means that would need to set them for every different browser you use. Could also save preferences in some database but that’s out of scope for this.

1 Like

That’s incredible, I would 100% use this addon if you are able to create it… it would be a total game changer for me. Thanks for all your hard work, all of these addons are great and I’m excited to check out what comes next.


I’m looking at it right now, might get a version out today.

edit: → something like this


second edit: → The keyboard events are happening directly from the javascript and not via a keydown in the html. What this means is… It is absolutely possible to remap any key. The caveat is that I need to actually reprogram all of those functions individually. Which is quite painful… and time consuming.


For the first version of the script I’ll do some simpler ones like change the tts key and the toggle translation button. Stay tuned on the main web extensions page.

third edit: → Please let me know which keybindings you actually use and i’ll include those in the first version.

1 Like


→ The word limit bug has been solved.
→ You will now see all words for any size lesson.

Nerd notes

→ The script encountered errors when there was no data available on a word it was trying to see.
→ We now check if no data and just display no selectable buttons nothing for that word
→ Full individual word count for a lesson is listed in the console.



→ Observer Lite has been merged into Observer
→ Now displays all words, even if no options
→ Slight graphics upgrade

Nerd notes

→ ObserverLITE was also having the same problems, I merged the scripts to be more efficient.


Yes!! I have all the boxes! Great work!

1 Like

Wow, you work quick, haha. So the main shortcuts I use are:

(arrow keys) - move left/right between lingqs and up/down choosing from the list on the righthand definition panel
(enter) - choose definition
(1,2,3,4) - rating lingq’s
(x) - ignore lingq
(k) - make lingq known

Just as an example, I’d probably switch this around so that it’s more like vim (the text editor) where your hands stay over homerow. It would probably look something like this:

(hjkl) - movement
(space) - choose definition
(asdf) - rate lingqs 1-4
(v) - make lingq known
(c) - ignore lingq

It would be amazing if you could also set a key to select the text box for entering your own definition… I don’t think there’s currently a keyboard shortcut to do that so I’m guessing that would be a ton of work. If that was possible you could basically use only the keyboard and never touch the mouse!

Shift + movement for jumping between pages would be awesome too but the above are the main ones that are used non-stop for me.

Thanks again for working on this, really excited to check out the addon.


My dad always tells me… You can sleep when you are dead.

This is not too complicated. It will involve finding the correct endpoints and elements on the LingQ reader. (Which may change and break the script at some point)

Sounds good, you will have the option to set key to whatever you want. If i end up developing this a bit I’ll likely have preloaded keybinding configs you can swap between.

This is no problem. There exists a function built in to editablecontainers in Javascript which LingQ is using for their textbox. We just call .focus() on the box and its done.

I’ll have a look at how it works.

Appreciate the kind words. Thanks very much.

Edit: I have found the action that handles the keyboard shortcuts, I will see if I can intercept the keybindings to it and replace somehow.

Lets find out…

second edit: It works!

I have successfully intercepted the keydown, made it trigger with a new key and sent the response as the old key without changing any function. This means… Easy rebinding of everything…

I’ll get cracking on those bindings you use and get this extension released.

third edit: → coming soon! Just going to work out some GUI changes and I’ll get it released.






Didn’t get everything I wanted done in this patch but it will do for now.
Spent a bit of time sorting out some bugs. Code is complicated and I badly need to restructure it.

Bug Fixes

→ Fixed Create button → now appends button to top of container

→ Fixed Update Button Displaying hint Text

New in 1.27


Ignore New Words


Mark Word Known


Delete existing LingQs


→ Fixed console error outside of reader
→ Fixed known words showing as ‘4’ instead of ‘5’
→ Added more Text to Speech

→ Bug fix for tags not displaying on Linged/Known words
→ Added ‘Ignored Words’ popup.

1 Like

I was working more with LingQing via LingQ observer, and I was wondering if — like the line starters for LingQs — we could have line starters for our LingQ’s notes section:

  • Direct Meaning:
  • Contextual Meaning:
  • Root Words:
  • Root Word Meanings:
  • Hanja:
  • Phonetic:
  • Phrase:
  • Grammar:

For more personal versions of these LingQs.

When the toggle line starters were created, I thought they were line starters for the notes section rather than the “meaning” section of the LingQ for the whole community. I’m only now realizing that they appear as a meaning of a LingQ over a Note of a LingQ.

Sorry, I must have been out of it not to realize this before.

Regardless, the community could use the line starters to contribute to public LingQ meanings.

This way, learners know where the meaning input came from exactly.

And use the notes section to personalize more detailed information (using the same line starters that are in the meanings section of Rooster Observer) that would be too much/personalized (to the learner) to appear on a public meaning of a LingQ.

Quick side question: Was there a reason for us not to be able to add notes via the Rooster Observer to our LingQs in addition to the meanings?

Would this be a premium feature instead?

I also noticed that when you toggle and use the line starters, it creates one larger LingQ rather than having multiple saved meanings for one LingQ. Is there a way, in addition to that, to create an experience like within Ling where multiple meanings are attached to one word?:

I have detailed notes on the Dictionary / Notes Section implementation for Observer just haven’t gotten around to it yet. Will be included in the Free version.

Sure, I’ll add it these the notes. Its going to require some serious UI re-design so not show how fast these Observer updates will be happening.

1 Like

No worries, just super excited for the updates whenever you can make them!

Thank you!

You’re killing it! :smiley:

Great work @jpp025 Ill attach that. Good to know the addon is helping!

1 Like

:heart_eyes: :heart_eyes: :heart_eyes:

Wow! That was quick work! This is exactly what I was hoping!

Can a “Grammar:” line starter be added to the “Toggle Line Starters”?

Edit: It’d be used differently than the grammar tags by LingQ towards the top. This would give the ability for a more detailed side-by-side breakdown (or sentence explanation) of grammar (like in the above image).


Copy of my Firefox add-on review, if you start a “Testimonial” Section for the Rooster Observer and want to use it (you have my permission :slightly_smiling_face:):

This is a solid add-on to up your efficiency in LingQing within LingQ! I love it and will continue to use it — though maybe in its other forms since I love more than one Rooster Extension. I’m checking it out within the Master LingQ (Premium) addon (see Rooster’s web extension support page for info on that) soon.

With Rooster Observer, learners can see the LingQ(/potential LingQ) add grammar tags, add meanings (more than one in the most recent update), toggle line starters for your notes section of a LingQ, and update LingQs that you’ve already made/ignored.

My target language is Korean, and I’ve found a smoother process in LingQing via Rooster Observer since it’s compact and comprehensive.

My setup is Rooster Observer (while I’m in sentence mode) + Rooster Hotkeys to LingQ and study more efficiently for me.

1 Like