Coder Social home page Coder Social logo

kamwithk / exstatic Goto Github PK

View Code? Open in Web Editor NEW
92.0 3.0 6.0 55.9 MB

Zero effort language learning reading tracker with graphs and stats

License: GNU General Public License v3.0

JavaScript 17.98% Jupyter Notebook 48.63% TypeScript 7.30% Svelte 26.08%

exstatic's Issues

Deleting huge chunks of text seems to remove more characters than intended.

After I've erroneously activated skip mode and gotten a bazillion characters thrown into exstatic at once, when I delete said lines I end up with way lower character count than I actually started with, ruining my stats for the day.

For today, I accidentally added around 11k characters in three lines, and then deleted them. And through my texthooker log I can see that I had read roughly 14k characters read today, yet I am left with exstatic claiming I have read only 900 after deleting those three lines.

Integration with animebook?

So far this program covers Visual Novels, Manga, and Light Novels/books. Games aren't really able to be covered given how they work. So that just leaves covering anime as a learning source. I personally use this to watch anime, I don't know the technical details but I wonder if at some point it might be possible to scrape data from it aswell? : https://github.com/animebook/animebook.github.io As an alternative there's also this: https://github.com/ripose-jp/Memento but I don't have any personal experience. So overall just a question/suggestion for a feature to maybe add one day

Text isn't detected after rebooting the PC.

I decided to open this to share the issue, and I will update it when I have time to test why this is happening. After rebooting the PC, I open the browser, VN, and Textractor. It hooks properly. The tracker page doesn't update at all when I start reading.

It's the same VN. I didn't change the path. The first time I deleted everything and got it to work, I decided to setup things locally. It worked well. Now I rebooted my PC again, and got the same problem.

I managed to get it to work but I have no idea what did it. I deleted textractor and added it again, did the same with the exSTATic plugin. It somehow started working again. This problem persists across browsers.

I will try troubleshooting this when I need to reboot again or when I get some free time, but maybe the developer can point me in the right direction?

This entire project is amazing, thanks for creating it.

Proper behavior for games with the same name or moving directory

I was counting the amount of hours I had read a visual novel and realized that the count was off.
I then did some digging and found a odd behavior.
I had moved the directory in which I had a game installed and exStatic failed to add the hours spent on the game before the game was moved.

ae8a2bbe-4c41-4298-8336-d272d2fa060c,Monkeys!!,Games/Monkeys!!/Monkeys!!.exe,vn,2023-01-05,37156,3443,10870.281999111176,3.4181265953393036

15ef8184-c2e3-423d-a595-085494d9d37e,Monkeys!!,Games/Monkeys/Monkeys!!.exe,vn,2023-01-06,31550,2895,7333.98899936676,4.301888099740009

Changing it to the follow in the exported csv and importing it fixed it.

ae8a2bbe-4c41-4298-8336-d272d2fa060c,Monkeys!!,Games/Monkeys/Monkeys!!.exe,vn,2023-01-05,37156,3443,10870.281999111176,3.4181265953393036

15ef8184-c2e3-423d-a595-085494d9d37e,Monkeys!!,Games/Monkeys/Monkeys!!.exe,vn,2023-01-06,31550,2895,7333.98899936676,4.301888099740009

This miscount was fixed by changed the first line's given identifer to match the given identifer of the second.
If this is expected behavior, the stats window should show Two different Monkeys!! . Currently it combines them visual but the actual data is not combined.
If this is not expected behavior, then the stats should be merged or directory names should not be used for the given identifier

Support for accepting raw text strings

Currently exSTATic seems to accept lines in a specific json format. Sending regular text lines, for example lines captured from OCR programs such as mangaOCR, does not work.

Adding support for this would enable exSTATic to be used by a wide variety of apps other than just Textractor and in my opinion future proof it in case Textractor stops working or becomes obsolete for whatever reason.

Any way to delete an entry / mass delete lines?

I messed up a hook that fed a bunch of junk text into exstatic, deleting it 1 by 1 would take too long so I was wondering if I could just scrap the whole entry or if there was a more efficient way to delete the junk lines

have pause button

I think it would be useful to have a way to pause the timer like in https://anacreondjt.gitlab.io/texthooker.html
I for one would benefit by it by pausing it to do lookups or when stopping playing.
My current workaround is by shortening the max AFK secs but its annoying. There is no optimal time that I can set that will alleviate this pain

Some Japanese typographic symbols are counted while others are not

In calculations.js the ignore variable contains a list of typographic symbols to ignore for character counting purposes. I've found two relatively common characters, the fullwidth full stop . and the katakana middle dot ・ that are not in this list. The middle dot is also in the Wikipedia page that the code refers (https://en.wikipedia.org/wiki/List_of_Japanese_typographic_symbols).

I'm sure there are many other characters that can show up that this list does not cover, and adding them all one by one is not very feasible. In that case I think going the other way and having a regex allow list is a better idea.

I went through unicode blocks of Japanese and Roman unicode blocks and came up with a set of ranges. The blocks contain special marks as well as characters that should be counted, so instead of using the entire block I took only the parts that should count as characters.

Hiragana U+3041 to U+3096

Katakana U+30A1 to U+30FA

Numbers U+FF10 to U+FF19

Roman Uppercase Letters U+FF21 to U+FF3A

Roman Lowercase Letters U+FF41 to U+FF5A

Half-width Katakana (not sure if should be included) U+FF66 to U+FF9D

CJK unifed ideographs - Common and uncommon kanji: U+4E00 - U+9FAF

CJK unified ideographs Extension A - Rare kanji: U+3400 to U+4DBF

Or, another idea might be to make it so the user can provide their own characters or regex to match in the settings page?

Adjust idle timer within Mokuro when using exSTATic

Just wanted to say, briefly, that the extension is awesome, really enjoying it so far! I think this is more in line with a feature request rather than a bug but I find that when using the extension here: https://kamwithk.github.io/exSTATic/tracker.html you can adjust the "max AFK time" as well as the "inactivity blur" whereas when reading a Mokuro generated .html there doesn't seem to be any way to do that. Due to me not being a great reader I find that the page enters "idle" which blurs the whole page until I double click again to clear the idle status pretty often.

Edit: I'm using the latest "firefox" build from the extensions section if that matters.

Firefox forces insecure ws websockets to upgrade to secure wss causing it to never connect

I don't know exactly what is wrong with version 0.0.9, but unfortunately it can't receive information from the textractor. Until yesterday everything was normal, but after this update this failure appeared. I have now gone back to version 0.0.8, and it is still working without any problems. Please do know that I love your project. It's very simple, but the thought of coding something like this makes me nauseous. That being said, for heaven's sake, please test the versions properly before updating them
I almost suffered a heart attack when it didn't work here

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.