Skip to content

gophergala2016/ago

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

82 Commits
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

ago

ago is a go program. The name will be changed in future, maybe.

In short, the program chooses useful words in specific documents that need to be understanded well and helps user to understand them well. The help will be made by listing the each word and its meaning, and let user to test whether he is understanding the word well in himself. The self test result will feedback the important word election.

This program has made for author's english vocabulary memorization training. Because the description of the program is general, however, the program can be used for wider general case. For example, terminologies for specific area such as computer science or mathematics.

Workflow

At first, the program receives multiple specific documents. The documents could be pdf, url, etc in future. For now, however, it receives text file only. The program counts frequency of each word in the documents. Words that used frequently be measured as important.

After that, when user requires, the program shows the each word in importance order. For each word, the program gives the user to remember the meaning of the word. When user let program knows he has spent enough time to remember, program shows the meaning of the word and few useful informations about the word to user. User can let the program knows whether he remembered the meaning well or not. If user says he is remembering the meaning well, importance of the word becomes lower. In other case, the importance becomes higher.

Usage

Basic usage is similar to other familiar CLI tools like git, perf, etc. The usage is as below:

ago <command> [arguments ...]

In short, ago supports several subcommands with optional arguments for thse subcommands. User can use those subcommands to manage documents and words.

Commands are:

  • add-docs: Put one or more documents under management of ago. Currently, only text file is supported. User can specify files they want to add by giving path to the files as argument. ago automatically extracts words inside the documents into its internal storage and manage their importance with referenced count and user feedback.
  • ls-docs: List currently added documents. Output of the command is name of document and its id. Because different documents may have same name, a document should be identified by the id.
  • rm-docs: Remove one or more documents from ago. User should give id(s) of documents they want to remove as argument. Removed documents not be displayed via ls-docs and words under the documents will be removed from ago, too.`
  • dic: Search meaning of a word and its usage example using dictionary. Currently, it uses Daum English-Korean Dictionary[1] service. However, as the design says, it can be alternated to English dictionary or other in future as user want. This command is quite useful for non-English native terminal familiar hacker. In the case, he can reduce time consumed by dictionary searching because terminal is close and dictionary on browser or book shelf is far.
  • test: Start a self test. Within test, ago gives a important word and gives time for user to remember the meaning of the word. After that, user can signal ago. ago shows real meaning and usage example of the word to user by using the dic command internally. After that, user can feedback ago whether he remembered the meaning well or not. The feedback be used to calculate the importance of the word.

Usage Example

Below is an example of ago usage. It has lots of assumptions not described here. However, clever one like you may understand the meaning well ;)

$ ./ago ls-docs
$ ./ago add-docs ~/linux/README ~/linux/Documentation/SubmittingPatches
$ ./ago ls-docs
0: README
1: SubmittingPatches
$
$ ./ago rm-docs 1
$ ./ago ls-docs
0: README
$
$ ./ago dic hack
Meaning
โ‘ ๋‚œ๋„์งˆํ•˜๋‹ค โ‘ก๋Š™์€ ๋ง โ‘ข๊ณ ์šฉ๋œ

Examples
 The attacks have been conducted by an iPhone-hacking wonder kid.
 ๋“ฃ๊ธฐ ์‹œ์ž‘ (Teentimes) ๊ทธ ๊ณต๊ฒฉ์€ ์•„์ดํฐ ํ•ดํ‚น ์›๋” ํ‚ค๋“œ์— ์˜ํ•ด ํ–‰ํ•ด์ ธ ์™”๋‹ค.
 It seems as if a series of hacking incidents are plaguing the nation.
 ๋“ฃ๊ธฐ ์‹œ์ž‘ (Teentimes) ์ผ๋ จ์˜ ํ•ดํ‚น ์‚ฌ๊ณ ๋“ค์ด ํ•œ๊ตญ์„ ๊ดด๋กญํžˆ๋Š” ๊ฒƒ ๊ฐ™๋‹ค.
 Hacking companies to "help them" in the long run is still unjustified.
 ๋“ฃ๊ธฐ ์‹œ์ž‘ (Teentimes) "๊ทธ๋“ค์„ ๋•๊ธฐ ์œ„ํ•œ" ํ•ดํ‚น ํšŒ์‚ฌ๋“ค์€ ๊ฒฐ๊ตญ ์ •๋‹นํ™”๋˜์ง€ ์•Š๋Š”๋‹ค.
 2nd Statement: Hacks can be used as a powerful and effective artistic
 expression.
 ๋“ฃ๊ธฐ ์‹œ์ž‘ (Teentimes) 2์ฐจ ์ง„์ˆ : ํ•ดํ‚น์€ ๊ฐ•๋ ฅํ•˜๊ณ  ํšจ๊ณผ์ ์ธ ์˜ˆ์ˆ ์  ํ‘œํ˜„์œผ๋กœ
 ์“ฐ์—ฌ์งˆ ์ˆ˜ ์žˆ๋‹ค.
 Having said that Nintendo has been hacked and Sony has been hacked twice.
 ๋“ฃ๊ธฐ ์‹œ์ž‘ (Teentimes) ๊ทธ๋ ‡๊ธฐ๋Š” ํ•ด๋„ ๋‹Œํ…๋„๋„ ํ•ดํ‚น์„ ๋‹นํ–ˆ๊ณ  ์†Œ๋‹ˆ๋„ ๋‘ ๋ฒˆ์ด๋‚˜
 ํ•ดํ‚น์„ ๋‹นํ–ˆ๋‹ค.
 ์˜ˆ๋ฌธ ๋”๋ณด๊ธฐ

$ ./ago test
Let the game begin

Ready? (Yes/[No])
y
==============================================
Question 1/5:

 [[ the ]]


Press Enter after you remember the meaning of it:

 Reference: 185 Test success/fail: 0/0

----------------------------------------------
The maning of the was:
Meaning
โ‘ ๊ทธ โ‘ก๊ทธ๋Ÿด์ˆ˜๋ก โ‘ข๋”์šฑ๋”

Example
The problems do not magically disappear, but you may feel better.
 ๋“ฃ๊ธฐ ์‹œ์ž‘ (Kidstimes) ๊ทธ ๋ฌธ์ œ๋“ค์ด ๋งˆ๋ฒ•์ฒ˜๋Ÿผ ์‚ฌ๋ผ์ง€์ง€๋Š” ์•Š์ง€๋งŒ, ๋„ˆ๋Š” ๊ธฐ๋ถ„์ด
 ๋‚˜์•„์งˆ์ง€๋„ ๋ชฐ๋ผ.
 Every point that you do not challenge makes your opponent's argument stronger.
 ๋“ฃ๊ธฐ ์‹œ์ž‘ (Kidstimes) ๋‹น์‹ ์ด ์ด์˜๋ฅผ ์ œ๊ธฐํ•˜์ง€ ์•Š๋Š” ๋ชจ๋“  ์˜๊ฒฌ์€ ๋‹น์‹ ์˜ ์ƒ๋Œ€ํŽธ์˜
 ์ฃผ์žฅ์„ ๋”์šฑ ๊ฐ•ํ•˜๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
 A bike can become more so if you attach Fontus to the bike.
 ๋“ฃ๊ธฐ ์‹œ์ž‘ (Kidstimes) ๋งŒ์•ฝ ์—ฌ๋Ÿฌ๋ถ„์ด ์ž์ „๊ฑฐ์— Fontus๋ฅผ ๋ถ€์ฐฉํ•œ๋‹ค๋ฉด, ๊ทธ๊ฒƒ์€ ๋”์šฑ
 ๊ทธ๋ ‡๊ฒŒ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
 You can donate money to the NoPhone project on a website.
 ๋“ฃ๊ธฐ ์‹œ์ž‘ (Kidstimes) ๋‹น์‹ ์€ ์›น์‚ฌ์ดํŠธ์—์„œ ๋…ธํฐ ํ”„๋กœ์ ํŠธ์— ๋ˆ์„ ๊ธฐ๋ถ€ํ•  ์ˆ˜
 ์žˆ์Šต๋‹ˆ๋‹ค.
 Once you do, learning it will become fun instead of work.
 ๋“ฃ๊ธฐ ์‹œ์ž‘ (Kidstimes) ์ผ๋‹จ ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด, ๊ทธ๊ฒƒ์„ ๋ฐฐ์šฐ๋Š” ๊ฒƒ์€ ์ผํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ
 ์ฆ๊ฑฐ์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
 ์˜ˆ๋ฌธ ๋”๋ณด๊ธฐ

----------------------------------------------
Were you understanding it well? (Yes/No)
y
your feedback, Yes applied
----------------------------------------------



==============================================
Question 2/5:

 [[ to ]]


Press Enter after you remember the meaning of it:

 Reference: 83 Test success/fail: 0/0

License

GPL v3

Author

SeongJae Park (sj38.park@gmail.com)

About

ago is _a go_ program.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages