aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--misc/langdrill/000_pkg_config.diff21
-rw-r--r--misc/langdrill/010_cxx_standard.diff33
-rw-r--r--misc/langdrill/010_min_max.diff21
-rw-r--r--misc/langdrill/010_vdk_updates.diff61
-rw-r--r--misc/langdrill/020_documentation.diff15
-rw-r--r--misc/langdrill/030_french_utf8.diff40
-rw-r--r--misc/langdrill/030_japanese.diff1126
-rw-r--r--misc/langdrill/030_swedish.diff248
-rw-r--r--misc/langdrill/040_link.diff21
-rw-r--r--misc/langdrill/050_cflags.diff61
-rw-r--r--misc/langdrill/050_install.diff63
-rw-r--r--misc/langdrill/README2
-rw-r--r--misc/langdrill/langdrill.SlackBuild100
-rw-r--r--misc/langdrill/langdrill.info10
-rw-r--r--misc/langdrill/slack-desc19
15 files changed, 1841 insertions, 0 deletions
diff --git a/misc/langdrill/000_pkg_config.diff b/misc/langdrill/000_pkg_config.diff
new file mode 100644
index 0000000000000..fe19bcb5ec3db
--- /dev/null
+++ b/misc/langdrill/000_pkg_config.diff
@@ -0,0 +1,21 @@
+diff -ru langdrill-0.3-orig/src/Makefile langdrill-0.3/src/Makefile
+--- langdrill-0.3-orig/src/Makefile 2006-03-14 23:46:31.000000000 -0800
++++ langdrill-0.3/src/Makefile 2006-03-14 23:48:17.000000000 -0800
+@@ -16,7 +16,7 @@
+ DEF_FLAGS = -DTARGET='"$(TARGET)"' \
+ -DDRILL_DEF='"$(DRILL_DEF)"' \
+ -DDRILL_DIR='"$(DRILL_DIR)"' \
+- -I /usr/include/gtk-2.0/
++ `pkg-config --cflags gtk+-2.0`
+
+ ###### Test for Debian GNU/Linux
+ # If your system is not Debian GNU/Linux please modify the values after
+@@ -37,7 +37,7 @@
+ endif
+
+ CC = g++
+-LFLAGS = `vdk-config-2 --libs`
++LFLAGS = `vdk-config-2 --libs` `pkg-config --libs gtk+-2.0`
+
+
+ ####### Implicit rules
diff --git a/misc/langdrill/010_cxx_standard.diff b/misc/langdrill/010_cxx_standard.diff
new file mode 100644
index 0000000000000..1a22aaddcccfc
--- /dev/null
+++ b/misc/langdrill/010_cxx_standard.diff
@@ -0,0 +1,33 @@
+--- langdrill-0.3.orig/src/config.hh
++++ langdrill-0.3/src/config.hh
+@@ -31,7 +31,7 @@
+
+ #include <stdio.h>
+ #include <string.h>
+-#include <fstream.h>
++#include <fstream>
+ #include <stdlib.h>
+ #include <vdk/dlist.h>
+
+--- langdrill-0.3.orig/src/main.hh
++++ langdrill-0.3/src/main.hh
+@@ -29,7 +29,7 @@
+ #ifndef __main_hh__
+ #define __main_hh__
+
+-#include <fstream.h>
++#include <fstream>
+ #include <unistd.h>
+ #include <time.h>
+
+--- langdrill-0.3.orig/src/config.cc
++++ langdrill-0.3/src/config.cc
+@@ -347,7 +347,7 @@
+ char message[MAX_CHARS_FOR_MESSAGE];
+ iconv_t direct = (iconv_t)-1, reverse = (iconv_t)-1;
+
+- ifstream in(_name);
++ std::ifstream in(_name);
+ while(1){
+ in.getline(buff,MAX_CHARS_FOR_STRING);
+ lineNr++;
diff --git a/misc/langdrill/010_min_max.diff b/misc/langdrill/010_min_max.diff
new file mode 100644
index 0000000000000..a55f3f71010a1
--- /dev/null
+++ b/misc/langdrill/010_min_max.diff
@@ -0,0 +1,21 @@
+The minimum and maximum operators were never terribly portable and have
+been dropped by GCC 4.2.
+Index: langdrill-0.3/src/main.cc
+===================================================================
+--- langdrill-0.3.orig/src/main.cc 2007-07-15 12:52:38.000000000 +0100
++++ langdrill-0.3/src/main.cc 2007-07-15 12:54:01.000000000 +0100
+@@ -460,9 +460,11 @@
+ // keys. In such a case, we must take some precations
+ setActiveButtons( keyTotalNr );
+
+- // is this minimum operator portable ??
+- // it should work with egcs at least !!
+- int cols = keyTotalNr <? atoi(_setup.quizzAnswerNr);
++ int cols;
++ if (keyTotalNr < atoi(_setup.quizzAnswerNr))
++ cols = keyTotalNr;
++ else
++ cols = atoi(_setup.quizzAnswerNr);
+
+ int rows = keyTotalNr;
+ int *set = new int[cols];
diff --git a/misc/langdrill/010_vdk_updates.diff b/misc/langdrill/010_vdk_updates.diff
new file mode 100644
index 0000000000000..447054e370f12
--- /dev/null
+++ b/misc/langdrill/010_vdk_updates.diff
@@ -0,0 +1,61 @@
+--- langdrill-0.3.orig/src/main.cc
++++ langdrill-0.3/src/main.cc
+@@ -962,17 +962,17 @@
+ MyLangForm::AboutClicked( VDKObject*)
+ {
+ Application()->
+- MessageBox( " Let's talk about Language Drills",
+- " Brought to you by\n"
+- " Ionutz Borcoman\n"
+- " <borco@usa.net>\n"
+- " <borco@borco-ei.eng.hokudai.ac.jp>\n"
+- " \n"
+- " Nothing would have been possible without\n"
+- " Mario Motta's VDK\n"
+- " <mmotta@guest.net>"
+- "\n",
+- MB_OK | MB_ICONINFORMATION ) ;
++ VDKMessageBox( " Let's talk about Language Drills",
++ " Brought to you by\n"
++ " Ionutz Borcoman\n"
++ " <borco@usa.net>\n"
++ " <borco@borco-ei.eng.hokudai.ac.jp>\n"
++ " \n"
++ " Nothing would have been possible without\n"
++ " Mario Motta's VDK\n"
++ " <mmotta@guest.net>"
++ "\n",
++ VDK_OK | VDK_ICONINFORMATION ) ;
+ return true;
+ }
+
+@@ -985,12 +985,12 @@
+ if( _timerRunning==true
+ || _timerCheck->Checked==true ){
+ bool answ = ( Application()->
+- MessageBox("Language Drill Message",
+- " Are you sure you want to close \n"
+- " the Language Drills ?\n"
+- " The Timer seems to be active !",
+- MB_YESNO)
+- == IDYES );
++ VDKMessageBox("Language Drill Message",
++ " Are you sure you want to close \n"
++ " the Language Drills ?\n"
++ " The Timer seems to be active !",
++ VDK_YESNO)
++ == VDK_IDYES );
+ if( answ == false ){
+ return true;
+ } else {
+@@ -1052,8 +1052,9 @@
+ gtk_signal_emit_stop_by_name( GTK_OBJECT(_simpleQuizzText->WrappedWidget()),
+ "key_press_event");
+ QuizzAnswerClicked( obj );
++ return true;
+ }
+- return true;
++ return false;
+ }
+
+
diff --git a/misc/langdrill/020_documentation.diff b/misc/langdrill/020_documentation.diff
new file mode 100644
index 0000000000000..0bc5bc4495ff8
--- /dev/null
+++ b/misc/langdrill/020_documentation.diff
@@ -0,0 +1,15 @@
+--- langdrill-0.3.orig/README
++++ langdrill-0.3/README
+@@ -1,9 +1,9 @@
+ This is langrill, a language drill program. It is used to test your
+-vocabulary in foreign languages. It has some Japanese support included.
++vocabulary in foreign languages. It has Japanese support included.
+
+-http://borco-ei.eng.hokudai.ac.jp/~borco/vdk/langdrill.html
++http://storm.prohosting.com/borco/programming/langdrill.html
+
+-Mail suggestions and bug reports to borco@borco-ei.eng.hokudai.ac.jp.
++Mail suggestions and bug reports to Ionutz Borcoman <borco@go.ro>.
+
+ This program is inspired from JavaDrill. However no code from JavaDrill
+ was used. JavaDrill can be found at:
diff --git a/misc/langdrill/030_french_utf8.diff b/misc/langdrill/030_french_utf8.diff
new file mode 100644
index 0000000000000..5d71d72f4ed74
--- /dev/null
+++ b/misc/langdrill/030_french_utf8.diff
@@ -0,0 +1,40 @@
+--- langdrill-0.3.orig/src/french.drill
++++ langdrill-0.3/src/french.drill
+@@ -2,9 +2,6 @@
+ sense=0
+ directSenseName=French
+ reverseSenseName=English
+-# UTF-8 is the default encoding
+-directEncoding=ISO-8859-1
+-reverseEncoding=UTF-8
+ quizzAnswerNr=8
+ hQuizz=40
+ wQuizz=300
+@@ -24,7 +21,7 @@
+ useTimer=1
+
+ [Numbers]
+-z�ro=zero
++zéro=zero
+ un=one
+ deux=two
+ trois=three
+@@ -95,15 +92,15 @@
+ [Time: Months]
+
+ janvier=January
+-f�vrier=February
++février=February
+ mars=March
+ avril=April
+ mai=May
+ juin=June
+ juillet=July
+-ao�t=August
++août=August
+ septembre=September
+ octobre=October
+ novembre=November
+-d�cembre=December
++décembre=December
+
diff --git a/misc/langdrill/030_japanese.diff b/misc/langdrill/030_japanese.diff
new file mode 100644
index 0000000000000..8555a43fb0771
--- /dev/null
+++ b/misc/langdrill/030_japanese.diff
@@ -0,0 +1,1126 @@
+--- langdrill-0.3.orig/src/Makefile
++++ langdrill-0.3/src/Makefile
+@@ -11,7 +11,7 @@
+ MAN_PAGE = ../docs/langdrill.1
+
+ DRILL_DEF = default.drill
+-DRILL_SUP = romaji.drill french.drill
++DRILL_SUP = japanese.drill romaji.drill french.drill
+
+ DEF_FLAGS = -DTARGET='"$(TARGET)"' \
+ -DDRILL_DEF='"$(DRILL_DEF)"' \
+@@ -76,6 +76,6 @@
+ install: all
+ install -d $(BIN_DIR) $(DRILL_DIR) $(MAN_DIR)
+ install ./$(TARGET) $(BIN_DIR)
+- install -m644 $(DRILL_DEF) $(DRILL_DIR)
+- install -m644 $(MAN_PAGE) $(MAN_DIR)
+ install -m644 $(DRILL_SUP) $(DRILL_DIR)
++ ln -sf japanese.drill $(DRILL_DIR)/$(DRILL_DEF)
++ install -m644 $(MAN_PAGE) $(MAN_DIR)
+--- langdrill-0.3.orig/src/japanese.drill
++++ langdrill-0.3/src/japanese.drill
+@@ -0,0 +1,1103 @@
++[Application]
++sense=0
++directSenseName=Japanese
++reverseSenseName=English
++quizzAnswerNr=8
++hQuizz=40
++wQuizz=300
++# the timer value is given in minutes.
++# it represents the time between the automatical
++# activation of the langdrill.
++timer=10
++# use this to set how many good answers the langdrill
++# waits till hides by itself. limitedAnswer must be 1
++# for this to take effect
++limitedAnswerNr=25
++limitedAnswers=1
++
++# set to 1 if you want the window to be hidden when you
++# try to close it and the useTimer is 1
++hideWindow=0
++useTimer=1
++
++[Hiragana]
++あ=a
++い=i
++う=u
++え=e
++お=o
++
++か=ka
++き=ki
++く=ku
++け=ke
++こ=ko
++
++さ=sa
++し=shi
++す=su
++せ=se
++そ=so
++
++た=ta
++ち=chi
++つ=tsu
++て=te
++と=to
++
++な=na
++に=ni
++ぬ=nu
++ね=ne
++の=no
++
++は=ha
++ひ=hi
++ふ=fu
++へ=he
++ほ=ho
++
++ま=ma
++み=mi
++む=mu
++め=me
++も=mo
++
++や=ya
++ゆ=yu
++よ=yo
++
++ら=ra
++り=ri
++る=ru
++れ=re
++ろ=ro
++
++わ=wa
++を=o (wo)
++
++ん=n
++
++[Katakana]
++ア=A
++イ=I
++ウ=U
++エ=E
++オ=O
++
++カ=KA
++キ=KI
++ク=KU
++ケ=KE
++コ=KO
++
++サ=SA
++シ=SHI
++ス=SU
++セ=SE
++ソ=SO
++
++タ=TA
++チ=CHI
++ツ=TSU
++テ=TE
++ト=TO
++
++ナ=NA
++ニ=NI
++ヌ=NU
++ネ=NE
++ノ=NO
++
++ハ=HA
++ヒ=HI
++フ=FU
++ヘ=HE
++ホ=HO
++
++マ=MA
++ミ=MI
++ム=MU
++メ=ME
++モ=MO
++
++ヤ=YA
++ユ=YU
++ヨ=YO
++
++ラ=RA
++リ=RI
++ル=RU
++レ=RE
++ロ=RO
++
++ワ=WA
++ヲ=O
++
++ン=N
++
++[Numbers]
++ぜろ=0
++いち=1
++に=2
++さん=3
++し / よん=4
++ご=5
++ろく=6
++しち / なな=7
++はち=8
++く / きゅう=9
++じゅう=10
++じゅういち=11
++じゅうに=12
++じゅうさん=13
++じゅうよん=14
++じゅうご=15
++じゅうろく=16
++じゅうなな=17
++じゅうはち=18
++じゅうきゅう=19
++にじゅう=20
++にじゅういち=21
++にじゅうに=22
++ににじゅうさん=23
++にじゅうよん=24
++にじゅうご=25
++にじゅうろく=26
++にじゅうなな=27
++にじゅうはち=28
++にじゅうきゅう=29
++さんじゅう=30
++さんじゅういち=31
++さんじゅうに=32
++さんじゅうさん=33
++さんじゅうよん=34
++さんじゅうご=35
++さんじゅうろく=36
++さんじゅうなな=37
++さんじゅうはち=38
++さんじゅうきゅう=39
++よんじゅう=40
++ごじゅう=50
++ろくじゅう=60
++ななじゅう=70
++はちじゅう=80
++きゅうじゅう=90
++ひゃく=100
++にひゃく=200
++さんびゃく=300
++よんひゃく=400
++ごひゃく=500
++ろっぴゃく=600
++ななひゃく=700
++はっぴゃく=800
++きゅうひゃく=900
++せん=1000
++にせん=2000
++さんぜん=3000
++よんせん=4000
++ごせん=5000
++ろくせん=6000
++ななせん=7000
++はっせん=8000
++きゅうせん=9000
++ひゃくまん=10000
++
++
++[Time: Days of the week]
++
++げつようび [月曜日]=Monday
++かようび [火曜日]=Tuesday
++すいようび [水曜日]=Wednesday
++もくようび [木曜日]=Thursday
++きんようび [金曜日]=Friday
++どようび [土曜日]=Saturday
++にちようび [日曜日]=Sunday
++なんようび=What day of the week
++日 (ひ)=sun; sunshine; day
++曜日 (ようび)=day of the week
++
++
++[Time: Days of the month]
++
++ついたち=first day of the month
++ふつか=second, two days
++みっか=third, three days
++よっか=fourth, four days
++いつか=fifth, five days
++むいか=sixth, six days
++なのか=seventh, seven days
++ようか=eight, eight days
++ここのか=ninth, nine days
++とおか=tenth, ten days
++じゅうよっか=fourteenth, forteen days
++はつか=twentieth, twenty days
++にじゅうよっか=twenty fourth, twenty four days
++ーにち=-th day of the month, -days
++なんにち=which day of the month, how many days
++
++
++[Time: General]
++
++いつ=when
++
++いま=now
++ーじ=- o'clock
++ーふん(ーぷん)=- minutes
++はん=half past
++なんじ=what time
++なんぷん=how many minutes
++
++ごぜん=a.m., morning
++ごご=p.m., afternoon
++
++あさ=morning
++ひる=day time, noon
++ばん(よる)=night, evening
++
++おととい=the day before yesterday
++きのう=yesterday
++きょう=today
++あした=tomorrow
++あさって=the day after tomorrow
++
++けさ=this morning
++こんばん=tonight
++
++まいあさ=every morning
++まいばん=every night
++まいにち=every day
++
++〜から=from ~
++〜まで=up to ~, untill ~
++
++ーがつ=-th month of the year
++なんがつ=what month
++
++せんしゅう=last week
++こんしゅう=this week
++らいしゅう=next week
++
++せんげつ=last month
++こんげつ=this month
++らいげつ=next month
++
++きょねん=last year
++ことし=this year
++らいねん=next year
++
++〜かい=~ times
++
++いちにち(1−にち)=one day (as a period of time)
++〜じかん=~ hour (s)
++〜しゅうかん=~ week (s)
++〜かげつ=~ month (s)
++〜ねん=~ year (s)
++どのくらい=how long, how many
++〜ぐらい=about ~ (referring to an amount or period of time)
++
++それから=and, then (the next thing), furthermore
++
++ひま[な]=free time
++
++[Words: Lesson 1]
++
++わたし=I
++わたしたち=we
++あなた=you
++あのひと=that person, he, she
++みなさん=ladies and gentlemen, all of you
++
++せんせい=teacher, instructor
++けんしゅうせい=trainee
++〜さん=Mr. Mrs. Miss
++
++だれ、どなた=who
++
++はい=yes
++いいえ=no
++
++でんき=electricity, electric light
++きかい=machinery
++じどうしゃ=automobile, car
++コンピューター=computer
++
++せんもん=speciality, specialization of study
++
++−さい=~ years old
++
++なんさい、おいくつ=how old
++
++にほん=Japan
++インド=India
++インドネシア=Indonesia
++かんこく=Korea
++ちゅうごく=China
++フィリピン=Philippines
++タイ=Thailand
++マレーシア=Malaysia
++
++〜じん=a national of ~
++
++おはよございます。=Good morning.
++はじめまして。=How do you do ?
++どうぞよろしく。=Nice to meet you.
++
++
++[Words: Lesson 2]
++
++これ=this (thing here)
++それ=that (thing near you)
++あれ=that (thing over there)
++
++この〜=this ~ (here)
++その〜=that ~ (near you)
++あの〜=that ~ (over you)
++
++ほん=book
++ざっし=magazine
++じしょ=dictionary
++ノート=notebook
++かみ=paper
++しんぶん=newspaper
++てがみ=letter
++えんぴつ=pencil
++ボールペン=ballpoint pen
++シャープペンシル=propelling pencil
++
++たばこ=tabacco, cigarette
++マッチ=match
++ライター=(chigarette) lighter
++はいざら=ashtray
++かぎ=key
++とけい=watch, clock
++かばん=bag, briefcase
++はこ=box
++テープレコーダー=tape recorder
++でんわ=telephone
++いす=chair
++つくえ=desk
++まど=window
++ドア=door
++
++ラジオ=radio
++テレビ=television
++カメラ=camera
++
++なん=what
++そう=so
++
++おねがいします。=Please. (when asking for a favour)
++どうぞ。=Please. Here you are. (when offering something)
++
++[どうも]ありがとございます。=Thank you [very much].
++あ=Oh ! Ah ! (when suddenly remembering or noticing something)
++ちょっと=a little, for a moment
++まってください。=Please wait.
++ちがいます。=No, it isn't. You are wrong.
++
++
++[Words: Lesson 3]
++
++ここ=here, this place
++そこ=there, that place near you
++あそこ=that place over you
++どこ=where
++
++こちら=this way, polite of "koko"
++そちら=that way, polite of "soko"
++あちら=that way, polite of "asoko"
++どちら=which way, polite of "doko"
++
++きょうしつ=classroom
++しょくどう=dining hall, canteen
++おてあらい(トイレ)=toilet
++ロビー=lobby
++うけつけ=reception desk
++じむしょ=office
++へや=room
++にわ=garden
++[けんしゅう]センター=the center [for trainees]
++エレベーター=elevator, lift
++
++うち=house
++かいしゃ=company
++くに=country
++
++うりば=counter, department (in a department store)
++
++ーかい=-th floor
++
++ーえん=-yen
++いくら=how much
++
++ひゃく=a hundred
++せん=a thousand
++ーまん=ten thousand
++
++アメリカ=the United States
++イギリス=Britain, the United Kingdom
++
++[ちょっと]すみません。=Excuse me.
++どうも=Thank you. (alone expresses casual thanks)
++いらっしゃい[ませ]。=Welcome. May I help you ? (greeting to a customer or a guest)
++じゃ。=Well. O.K.
++[これ]をください。=Please give me [this].
++
++[Words: Lesson 4]
++
++おきます=get up
++ねます=sleep, go to bed
++はたらきます=work
++やすみます=take a rest, take a holiday
++べんきょうします=study
++おわります=finish
++
++いま=now
++ーじ=- o'clock
++ーふん(ーぷん)=- minutes
++はん=half past
++なんじ=what time
++なんぷん=how many minutes
++
++ごぜん=a.m., morning
++ごご=p.m., afternoon
++
++あさ=morning
++ひる=day time, noon
++ばん(よる)=night, evening
++
++おととい=the day before yesterday
++きのう=yesterday
++きょう=today
++あした=tomorrow
++あさって=the day after tomorrow
++
++けさ=this morning
++こんばん=tonight
++
++まいあさ=every morning
++まいばん=every night
++まいにち=every day
++
++にほんご=the Japanese language
++べんきょう=study (noun)
++こうぎ=lecture
++けんがく=(factory) visit for study and observation
++
++〜から=from ~
++〜まで=up to ~, untill ~
++
++げつようび=Monday
++かようび=Tuesday
++すいようび=Wednesday
++もくようび=Thursday
++きんようび=Friday
++どようび=Saturday
++にちようび=Sunday
++なんようび=What day of the week
++
++そうですあ。=I see. (When making agreeable response)
++たいへんですね。=It must be hard for you (When expressing appreciation or sympathy)
++
++
++[Words: Lesson 5]
++
++いきます=go
++きます=come
++かえります=go home, return (vb.I)
++
++こうじょう=factory
++えき=railway station
++ぎんこう=bank
++びょういん=hospital
++デパート=department store
++スーパー=supermarket
++ほんや=bookshop
++〜や=~ store
++
++ーがつ=-th month of the year
++なんがつ=what month
++
++ついたち=first day of the month
++ふつか=second, two days
++みっか=third, three days
++よっか=fourth, four days
++いつか=fifth, five days
++むいか=sixth, six days
++なのか=seventh, seven days
++ようか=eight, eight days
++ここのか=ninth, nine days
++とおか=tenth, ten days
++じゅうよっか=fourteenth, forteen days
++はつか=twentieth, twenty days
++にじゅうよっか=twenty fourth, twenty four days
++ーにち=-th day of the month, -days
++なんにち=which day of the month, how many days
++いつ=when
++
++せんしゅう=last week
++こんしゅう=this week
++らいしゅう=next week
++
++せんげつ=last month
++こんげつ=this month
++らいげつ=next month
++
++きょねん=last year
++ことし=this year
++らいねん=next year
++
++ひこうき=aircraft
++ふね=ship
++でんしゃ=electric train
++バス=bus
++タクシー=taxi
++ちかてつ=subway
++しんかんせん=the Shinkansen, the bullet train
++あるいて=on foot
++
++ひと=person
++ともだち=friend
++こいびと=sweethart
++ひとりで=alone
++
++ーばんせん=platform -, -th platform
++
++
++[Words: Lesson 6]
++たべます=eat
++のみます=drink
++すいます[たばこを〜]=smoke [a cigarette]
++かきます=write, draw, paint
++よみます=read
++ききます=listen
++みます=see, look at, watch
++かいます=buy
++とります[しゃしんを〜]=take [a photograph]
++じっしゅうします=do practical thing
++します[ピンポンを〜]=play [table tennis]
++します=do
++あいます[おともだちに〜]=meet [a friend]
++
++ごはん=a meal, cooked rice
++あさごはん=breakfast
++ひるごはん=lunch
++ばんごはん=supper
++パン=bread
++たまご=egg
++にく=meat
++さかな=fish
++やさい=vegetable
++りんご=apple
++
++ぎゅうにゅう(ミルク)=milk
++おちゃ=green tea
++コーヒー=coffee
++こうちゃ=black tea
++ジュース=juice
++ビール=beer
++[おー]さけ=alcohol, Japanese rice wine
++みず=water
++
++ネクタイ=necktie
++シャツ=shirt
++くつ=shoes
++テープ(カセットテープ)=(cassette) tape
++フィルム=film
++しゃしん=photograph
++えいが=movie
++ピンポン=table-tennis
++
++なに=what
++
++いっしょに=together
++
++それから=after that, and than
++
++〜と〜=and (conjunction used only with nouns)
++
++もしもし=Hello. (on the telephone)
++
++[あした]ひまですか.=Are you free [tomorrow] ?
++ええ=Yes
++いいですね。=That's good.
++わかりました。=I see. O.K.
++またあした。=See you tomorrow.
++
++
++[Words: Lesson 7]
++
++きります=cut
++しゅうりします=repair
++かけます[でんわを〜]=make a phone call
++
++;; give && receive verbs
++もらいます=receives
++あげます=gives
++
++かします=lends
++かります=borrows
++
++ならいます=learns
++おしえます=teaches
++
++はし=chopsticks
++ナイフ=knife
++フォーク=fork
++スプーン=spoon
++
++はさみ=scissors
++ドライバー=screwdriver
++スパナ=spanner, wrench
++ペンチ=cutting pliers
++
++おかね=money
++プレゼント=present, gift
++レポート=report
++
++かぞく=family
++おとうさん=father
++おかあさん=mother
++おにいさん=elder brother
++おねえさん=elder sister
++おとうと=young brother
++いもうと=young sister
++おくさん=(someone's else) wife
++かない=(one's own) wife
++しゅじん=(one's own) husband
++ごしゅじん=(someone's else) husband
++こども=child
++
++えいご=the English language
++〜ご=~language
++
++もう=already
++まだ=not yet
++
++これから=Soon, from now on.
++
++おめでとうございます。=Congratulations. (birthday, New Year's Day, ...)
++わあ=wow, oh ! (expression of surprise)
++どういたしまして。=Never mind. Not at all. You're welcome.
++いい[シャツ]ですね。=It's a nice [shirt], isn't it.
++
++
++[Words: Lesson 8]
++
++きれい(な)=beautiful, clean
++ハンサム(な)=handsome
++しんせつ(な)=kind
++ゆめい(な)=famous
++げんき(な)=healthy, sound, cheerful
++しずか(な)=quiet
++にぎやか(な)=lively
++
++おおきい=big, large
++ちいさい=small, little
++あたらしい=new
++ふるい=old (not of age)
++いい(よい)=good
++わるい=bad
++あつい=hot
++さむい=cold, chilly (weather)
++つめたい=cold (temperature)
++むずかしい=difficult
++やさしい=easy
++たかい=expensive; tall, high
++やすい=cheap
++ひくい=low
++おもしろい=interesting
++おいしい=tasty, delicious
++
++しろい=white
++くろい=black
++あかい=red
++あおい=blue
++
++しけん=examination
++しゅくだい=homework
++たべもの=food
++さくら=cherry blossom
++はな=flower
++まち=town
++やま=mountain
++ふじさん=Mt. Fuji
++ところ=place
++
++どう=how
++どんな〜=what kind of ~
++どれ=which one
++
++たいへん=very
++あまり=not so ~ (used in a negative sentence)
++
++そして=and (connecting sentences)
++
++〜が、〜=~, but ~
++
++やあ=Hi! (used by males, this is a casual greeting)
++
++しばるくですね。=Long time no see.
++おげんきですか。=How are you?
++どうぞこちらへ。=this way, please.
++(コーヒー)はいきがですか。=Won't you have (a cup of coffee)?
++いただきます。=Thank you. I accept. (customarily said before a meal)
++ごちそうさま(でした)。=That was delicious.
++そうですね。=Well let me see. (pausing)
++
++
++[Words: Lesson 9]
++
++わかります=understand
++あります=have
++
++すき(な)=like
++きらい(な)=dislike
++じょうず(な)=good at
++へた(な)=poor at
++
++ひらがな=Hiragana script
++かたかな=Katakana Script
++ローマじ=The Roman alphabet
++かんじ=Chinese characters
++
++りょうり=dish (cooked food), cooking
++くだもの=fruit
++のみます=drinks
++ぶたにく=pork
++とりにく=chicken
++ぎゅうにく=beef
++みかん=orange
++バナナ=banana
++
++おんがく=music
++うた=song
++ダンス=dance
++ギター=guitar
++スポーツ=sport
++サッカー=soccer
++テニス=tennis
++
++じかん=time
++
++たくさん=many, much
++すこし=a little, few
++よく=well
++だいたい=almost, roughly
++ぜんぜん=not at all (used in negative sentence)
++
++もちろん=of course
++
++どして=why
++〜から=because ~
++
++びょうき=illness
++くすり=medicine
++あたま=head
++おなか=stomach
++いたい(あたまが〜)=have a (stomach) ache
++ねつがありまさ=have a fever
++かぜをひじゅました=have caught a cold
++やすみます(かいしゃを〜)=take a day off (from the company)
++
++なんですか。=May I help you?
++すみませんが、Excuse me, but when ~
++どいしましたか。=What's the matter (with you)?
++
++
++[Words: Lesson 10]
++
++います=exist, be (living things)
++あります=exist, be (inanimate things)
++
++いろいろ[な]=various
++
++うえ=on, above
++した=under, below, beneath
++まえ=front
++うしろ=back, behind
++みぎ=right (side)
++ひだり=left (side)
++なか=in, inside
++そと=outside
++となり=next (door)
++あいだ=between, among
++ちかく=near
++
++もの=thing
++ちず=map
++けしゴム=eraser
++セロテープ=sellotape, clear adhesive tape
++ホッチキス=stapler
++パスポート=passport
++ベッド=bed
++
++おとこのひと=man
++おんなのひと=woman
++おとこのこ=boy
++おんなのこ=girl
++
++レストラン=restaurant
++こうえん=park
++たいしけん=embassy
++ゆうびんきょく=post office
++ポスト=post box
++がっこう=school
++
++〜や〜= ~ and ~ and so on
++
++あのう=Excuse me, but (used when talking to someone with hesitation)
++いってまいります。=I'm going to leave now.
++いっていらっしゃい。=I hope you have a pleasant trip. Have a good time.
++
++
++[Words: Lesson 11]
++
++います、[こどもが〜]=have [a child]
++います、[にほんに〜]=stay, be [in Japan]
++かかります=take (referring to time)
++
++ひとつ=one (when counting things)
++ふたつ=two (when counting things)
++みっつ=three (when counting things)
++よっつ=four (when counting things)
++いつつ=five (when counting things)
++むっつ=six (when counting things)
++ななつ=seven (when counting things)
++やっつ=eight (when counting things)
++ここのつ=nine (when counting things)
++とお=ten (when counting things)
++いくつ=how many (when counting things)
++
++ひとり=one person
++ふたり=two persons
++〜にん=~ people
++
++〜だい=(counter for machines, cars, ...)
++〜まい=(counter for paper, stamps, ...)
++〜かい=~ times
++
++きょうだい=brothers and sisters
++
++きっぷ=ticket
++ふうとう=envelope
++きって=postage stamp
++エアメール=airmail
++にもつ=baggage, parcel
++
++いちにち(1−にち)=one day (as a period of time)
++〜じかん=~ hour(s)
++〜しゅうかん=~ week(s)
++〜かげつ=~ month(s)
++〜ねん=~ year(s)
++どのくらい=how long, how many
++〜ぐらい=about ~ (referring to an amount or period of time)
++
++ぜんぶで=in total
++
++〜だけ=only ~, exactly
++
++それから=and, then (the next thing), furthermore
++
++
++[Words: Lesson 12]
++
++ひま[な]=free time
++
++いそがしい=busy
++ちかい=near
++とおい=far
++はやい=early, fast
++おそい=slow
++おおい、[ひとが〜]=many [people]
++すくない、[ひとが〜]=few [people]
++あたたかい=warm
++すずしい=cool
++あまい=sweet
++からい=hot (taste), spicy
++たのしい=enjoyable, pleasant
++わかい=young
++いい、[コーヒー〜]=prefer [coffee]
++
++てんき=weather, fine weather
++あめ=rain
++ゆき=snow
++くもり=cloudy
++
++やすみ=holiday, an absence
++りょこう=trip, tour
++パーティー=party
++みせ=store, shop
++クラス=a class (a group of students)
++
++どちら=which (from two)
++どちらも=both
++
++いちばん=number one, the most ~
++とても=very
++ずっと=far~, much ~ (comparing one thing with others)
++
++でも=but
++
++ただいま。=I'm home. (used by the one returning home)
++おかえりなさい。=Welcome home ! (said to one just returned home)
++つかれました。=(I'm) tired.
++
++
++[Words: Lesson 13]
++
++あそびます I(あそぶ、あそんで)=enjoy oneself, play
++おくります[にもつを〜](おくる、おくって)=send [baggage, parcel]
++かえます II(かえる、かえて)=change
++けっこんします III(〜する、〜して)=get married
++かいものします III(〜する、〜して)=do shopping
++さんぽします[こうえんを〜] III(〜する、〜して)=take a walk [in the park]
++けんぶつします[まちを〜] III(〜する、〜して)=do sightseeing [in a town]
++けんがくします[こうじょうを〜] III(〜する、〜して)=visit [a factory]
++はいります[へやに〜] I(はえる、はいって)=enter [the room]
++でます[へやを〜] II(でる、でて)=go out [of the room]
++
++ほしい=want (something)
++
++ビデオ=video cassette recorder, video tape
++ラジカセ=radio cassette tape recorder
++ステレオ=stereo
++くるま=vehicle
++おみやげ=souvenir, present
++
++いつも=always
++ときどき=sometimes
++
++どこか=somewhere, some place
++なにか=something
++
++いいてんきですね。=Nice weather, isn't it ?
++そおですね。=Yes, it is. I agree.
++
++おなかがすきました。=(I'm) hungry.
++おなかがいっぱいです。=(I'm) full.
++のどがかわきました。=(I'm) thirsty.
++そうしましょう。=Let's do that. (when agreeing with someone's suggestion)
++
++
++[Words: Lesson 14]
++
++よびます I(よぶ、よんで)=call
++いそぎます I(いそぐ、いそいで)=hurry
++まちます I(まつ、まって)=wait
++とります I(とる、とって)=take
++てつだいます I(てつだう、てつたって)=help (with a task)
++いいます I(いう、いって)=say
++はなします I(はなす、はなして)=speak
++おぼえます II(おぼえる、おぼえて)=remember, memorize
++おしえます II(おしえる、 おしえて)=tell, teach
++みせます II(みせる、 みせて)=show
++ふります[あめが〜] I(ふる、 ふるて)=rain
++
++ことば=word, language
++なまえ=name
++じゅうしょ=address
++でんわばんごう=telephone number
++しょ=salt
++さとう=sugar
++かさ=umbrella
++
++タイプ=typewriter, typewriting
++ワープロ=word processor
++
++つかいかた=method of use
++かきかた=method of writing
++よみかた=method of reading
++
++ゆっくり=slowly
++もういちど=one more time, once more
++また=again, next time
++もうすこし=a little more
++はやく=fast, early
++すぐ=immediately
++あとで=later
++
++[やすいの]はありませんか。=Don't you have [a cheaper one] ?
++こちらはいかがですか。=How about this ?
++いかが=how; in what way
++ううん...=Hmm ... (when wondering what to do)
++[どうも]すみません。=I'm [very] sorry. (an apology)
++またきます。=I'll come again. (can be used as an excuse when leaving a shop without buying anything)
++
++
++[Words: Lesson 15]
++
++つかいます I(つかう、つかって)=use
++つけます II(つける、つけて)=turn on (a light, ...)
++けします I(けす、けして)=turn off (a light, ...)
++あけます II(あける、あけて)=open
++しめます II(しめる、しめて)=shut
++すわります[いすに〜] I(すわる、すわって)=sit down [on a chair]
++たちます I(たつ、たって)=stand up
++おきます I(おく、おいて)=put
++つくります I(つくる、つくって)=make, produce
++うります I(うる、 うって)=sell
++しります I(しる、しって)=get to know
++もちます I(もつ、もって)=hold
++すみます I(すむ、 すんで)=be going to live
++
++しっています=know
++もっています=be holding, have
++すんでいます[とうきょうにー]=live [in Tokyo]
++
++きんえん=no smoking
++
++せいひん=products
++せっけん=soaps
++タオル=towel
++
++どくしん=single, unmaried
++
++[お]しごと=work, business
++エンジニア=engineer
++かいしゃいん=company employee
++ぎんこういん=bank employee
++がくせい=student
++
++だいがく=university
++
++うえ の[いもと]=elder [elder sister]
++した の[いもと]=younger [younger sister]
++いもうとさん=(someone else's) younger sister
++
++[Words: Lesson 17]
++
++わすれます II(わすれる、わするて)=forget
++なくします I(なくす、なくして)=lose
++しんぱいします III(〜する、〜して)=worry
++き を つけます [くるまに〜] II(き を つける、き を つけて)=pay attention to [a car]
++いれます II(いれる、いれて)=put in, insert
++だします I(だす、だして)=take out, hand in
++とめます II(とめる、とめて)=stop, park (a car)
++かえします I(かえす、かえして)=give back
++はらいます I(はらう、はらって)=pay
++ぬぎます I(ぬぐ、ぬいで)=take off (clothes, shoes, etc.)
++さわります [きかい に 〜] I(さわる、さわって)=touch [a machine]
++
++たいせつ[な]=important, precious
++すごい=Brilliant! Great! (express astonishment and admiration)
++
++あぶない=dangerous
++
++おと=sound
++ロボット=robot
++きょか=permission
++スイッチ=switch
++
++クーラー=air conditioner
++ヒーター=heater
++
++まいしゅう=every week
++
++〜までに=before ~, by ~ (indicating time limit)
++
++ですから=therefore, so
++
++だめです。=That's not good. You must not.
++ざんねんです。=I'm sorry (to hear that). That's a pity.
diff --git a/misc/langdrill/030_swedish.diff b/misc/langdrill/030_swedish.diff
new file mode 100644
index 0000000000000..86e8ce12a1930
--- /dev/null
+++ b/misc/langdrill/030_swedish.diff
@@ -0,0 +1,248 @@
+--- langdrill-0.3.orig/src/Makefile
++++ langdrill-0.3/src/Makefile
+@@ -11,7 +11,7 @@
+ MAN_PAGE = ../docs/langdrill.1
+
+ DRILL_DEF = default.drill
+-DRILL_SUP = japanese.drill romaji.drill french.drill
++DRILL_SUP = japanese.drill romaji.drill french.drill swedish.drill
+
+ DEF_FLAGS = -DTARGET='"$(TARGET)"' \
+ -DDRILL_DEF='"$(DRILL_DEF)"' \
+--- langdrill-0.3.orig/src/swedish.drill
++++ langdrill-0.3/src/swedish.drill
+@@ -0,0 +1,234 @@
++[Application]
++sense=0
++directSenseName=Swedish
++reverseSenseName=English
++quizzAnswerNr=8
++hQuizz=40
++wQuizz=300
++# the timer value is given in minutes.
++# it represents the time between the automatical
++# activation of the langdrill.
++timer=10
++# use this to set how many good answers the langdrill
++# waits till hides by itself. limitedAnswer must be 1
++# for this to take effect
++limitedAnswerNr=25
++limitedAnswers=1
++
++# set to 1 if you want the window to be hidden when you
++# try to close it and the useTimer is 1
++hideWindow=0
++useTimer=1
++
++[Numbers]
++noll=zero
++ett=one
++två=two
++tre=three
++fyra=four
++fem=five
++sex=six
++sju=seven
++åtta=eight
++nio=nine
++tio=ten
++elva=eleven
++tolv=twelve
++tretton=thirteen
++fjorton=fourteen
++femton=fifteen
++sexton=sixteen
++sjutton=seventeen
++arton=eighteen
++nitton=nineteen
++tjugo=twenty
++tjugoett=twenty-one
++tjugotvå=twenty-two
++tjugotre=twenty-three
++tjugofyra=twenty-four
++tjugofem=twenty-five
++tjugosex=twenty-six
++tjugosju=twenty-seven
++tjugoåtta=twenty-eight
++tjugonio=twenty-nine
++trettio=thirty
++fyrtio=forty
++femtio=fifty
++sextio=sixty
++sjuttio=seventy
++åttio=eighty
++nittio=ninety
++hundra=one hundred
++tvåhundra=two hundred
++trehundra=three hundred
++fyrahundra=four hundred
++femhundra=five hundred
++sexhundra=six hundred
++sjuhundra=seven hundred
++åttahundra=eight hundred
++niohundra=nine hundred
++tusen=one thousand
++tvåtusen=two thousand
++tretusen=three thousand
++fyratusen=four thousand
++femtusen=five thousand
++sextusen=six thousand
++sjutusen=seven thousand
++åttatusen=eight thousand
++niotusen=nine thousand
++tiotusen=ten thousand
++
++
++[Time: Days of the week]
++
++måndag=Monday
++tisdag=Tuesday
++onsdag=Wednesday
++torsdag=Thursday
++fredag=Friday
++lördag=Saturday
++söndag=Sunday
++
++
++[Time: Months]
++
++januari=January
++februari=February
++mars=March
++april=April
++maj=May
++juni=June
++juli=July
++augusti=August
++september=September
++oktober=October
++november=November
++december=December
++
++
++[Expressions]
++
++Hej!=Hi!
++Hejdå! (alt. Adjö!)=Goodbye!
++Tack så mycket!=Thank you very much! (when reciving things, etc.)
++Hur är det? (alt. Hur står det till?)=How are you?
++Ursäkta.=Excuse me.
++Förlåt (så mycket). (alt. Jag är ledsen.)=I'm (really) sorry.
++Godmorgon!=Goodmorning!
++
++
++[Words: Pronouns]
++
++jag=I
++mig (alt. mej)=me
++du=you
++dig (alt. dej)=you (obj.)
++hon=she
++henne=her (obj.)
++han=he
++honom=him
++det/den=it
++vi=we
++oss=us
++ni=you (pl.)
++er=you (pl. obj.)
++de (alt. dom)=they
++dem (alt. dom)=them
++
++
++[Words: Nature]
++
++ett träd=a tree
++en sjö=a lake
++en fågel=a bird
++en sten=a stone
++en blomma=a flower
++ett djur=an animal
++ett hav=a sea
++en buske=a shrub
++en katt=a cat
++ett berg=a mountain
++en fjäril=a butterfly
++en drake=a dragon
++en fisk=a fish
++
++
++[Words: Verbs]
++
++att vara (jag/du/.. är)=to be (I/you/.. am/are/..)
++att ha (jag/du/.. har)=to have (I/you/.. have/..)
++att se (jag/du/.. ser)=to see (I/you/.. see/..)
++att säga (jag/du/.. säger)=to say (I/you/.. say/..)
++att fråga (jag/du/.. frågar)=to ask (I/you/.. ask/..)
++att gå (jag/du/.. går)=to walk (I/you/.. walk/..)
++att sova (jag/du/.. sover)=to sleep (I/you/.. sleep/..)
++att äta (jag/du/.. äter)=to eat (I/you/.. eat/..)
++att komma (jag/du/.. kommer)=to come (I/you/.. come)
++att ge (jag/du/.. ger)=to give (I/you/.. give)
++
++
++[Lesson: ?]
++
++Jag frågar dej (en sak).=I am asking you (something).
++Ser du honom?=Are you seeing him?
++Jag ser honom.=I am seeing him.
++Jag är en fisk.=I'm a fish.
++Vi sover här.=We are sleeping here.
++Hon ger en sten till mej.=She is giving me a stone.
++
++
++[Words: ?]
++
++en sak=a thing
++hur=how
++till=to
++var=where
++
++
++[Lesson: Age]
++
++en ålder=an age
++ett år=a year
++gammal=old
++ung=young
++Hur gammal är du?=How old are you?
++Jag är fyrtiotvå år (gammal).=I am forty-two years (old).
++Du är tjugosju år (gammal).=You are twenty-seven years (old).
++De är arton år (gammla).=They are eighteen years (old).
++Hon är femtio år (gammal).=She is fifty years (old).
++Han är trettionio år (gammal).=He is thirty-nine years (old).
++Jag är åtta år (gammal).=I am eight years (old).
++Det är tre år (gammalt).=It is three years (old).
++Du är ung.=You are young.
++Du är gammal.=You are old.
++
++
++[Words: Countries]
++
++Australien=Australia
++Brasilien=Brazil
++Italien=Italy
++Spanien=Spain
++Rumänien=Romania
++Danmark=Denmark
++Sverige=Sweden
++Norge=Norway
++Kina=China
++Kanada=Canada
++Frankrike=France
++Japan=Japan
++Grönland=Greenland
++Island=Iceland
++Tyskland=Germany
++Ryssland=Russia
++Greekland=Greece
++England=England
++USA=USA
++Amerika=America
++
++
++[Lesson: ?2]
++
++Var kommer du ifrån?=Where are you from?
++Jag kommer ifrån Grönland.=I am from Greenland.
++
diff --git a/misc/langdrill/040_link.diff b/misc/langdrill/040_link.diff
new file mode 100644
index 0000000000000..cf11143cffe4e
--- /dev/null
+++ b/misc/langdrill/040_link.diff
@@ -0,0 +1,21 @@
+From: Markus Koschany <apo@debian.org>
+Date: Fri, 19 Jan 2018 10:39:45 +0100
+Subject: link against only needed libraries
+
+---
+ src/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/Makefile b/src/Makefile
+index c0b467b..aec5e4e 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -37,7 +37,7 @@ else
+ endif
+
+ CC = g++
+-LFLAGS = `vdk-config-2 --libs` `pkg-config --libs gtk+-2.0`
++LFLAGS = -Wl,--as-needed `vdk-config-2 --libs` `pkg-config --libs gtk+-2.0`
+
+
+ ####### Implicit rules
diff --git a/misc/langdrill/050_cflags.diff b/misc/langdrill/050_cflags.diff
new file mode 100644
index 0000000000000..52dccb8c484a6
--- /dev/null
+++ b/misc/langdrill/050_cflags.diff
@@ -0,0 +1,61 @@
+diff -ur langdrill-0.3/src/Makefile langdrill-0.3/src/Makefile
+--- langdrill-0.3/src/Makefile 2018-03-19 10:15:09.855912688 -0700
++++ langdrill-0.3/src/Makefile 2018-03-19 10:13:38.535093214 -0700
+@@ -16,7 +16,9 @@
+ DEF_FLAGS = -DTARGET='"$(TARGET)"' \
+ -DDRILL_DEF='"$(DRILL_DEF)"' \
+ -DDRILL_DIR='"$(DRILL_DIR)"' \
+- `pkg-config --cflags gtk+-2.0`
++ `pkg-config --cflags gtk+-2.0` \
++ `vdk-config-2 --cflags` \
++ -Wall
+
+ ###### Test for Debian GNU/Linux
+ # If your system is not Debian GNU/Linux please modify the values after
+@@ -27,16 +29,15 @@
+ DRILL_DIR=$(DESTDIR)/usr/share/langdrill
+ BIN_DIR=$(DESTDIR)/usr/bin
+ MAN_DIR=$(DESTDIR)/usr/share/man/man1
+- CFLAGS = -Wall `vdk-config-2 --cflags` $(DEF_FLAGS)
+ else
+ MY_MESSAGE_OF_THE_DAY=">>" $(TARGET) compilled for NON-Debian GNU/Linux system. "<<"
+ DRILL_DIR=$(DESTDIR)/usr/local/share/langdrill
+ BIN_DIR=$(DESTDIR)/usr/local/bin
+ MAN_DIR=$(DESTDIR)/usr/local/man/man1
+- CFLAGS = -Wall -g `vdk-config-2 --cflags` $(DEF_FLAGS)
+ endif
+
+ CC = g++
++CFLAGS = -g
+ LFLAGS = -Wl,--as-needed `vdk-config-2 --libs` `pkg-config --libs gtk+-2.0`
+
+
+@@ -45,7 +46,7 @@
+ .SUFFIXES: .cc
+
+ .cc.o: $(SRC)
+- $(CC) $(CFLAGS) -c $*.cc -o $@
++ $(CC) $(CFLAGS) $(DEF_FLAGS) -c $*.cc -o $@
+
+ ####### Build rules
+
+@@ -62,16 +63,16 @@
+
+ $(TARGET): tarclean $(OBJ)
+ @echo $(MY_MESSAGE_OF_THE_DAY)
+- $(CC) $(CFLAGS) -o $(TARGET) $(OBJ) $(LFLAGS)
++ $(CC) $(CFLAGS) $(DEF_FLAGS) -o $(TARGET) $(OBJ) $(LFLAGS)
+
+ run: tarclean $(OBJ)
+ @echo $(MY_MESSAGE_OF_THE_DAY)
+- $(CC) $(CFLAGS) -o $(TARGET) $(OBJ) $(LFLAGS)
++ $(CC) $(CFLAGS) $(DEF_FLAGS) -o $(TARGET) $(OBJ) $(LFLAGS)
+ ./$(TARGET)
+
+ build: clean tarclean $(OBJ)
+ @echo $(MY_MESSAGE_OF_THE_DAY)
+- $(CC) $(CFLAGS) -o $(TARGET) $(OBJ) $(LFLAGS)
++ $(CC) $(CFLAGS) $(DEF_FLAGS) -o $(TARGET) $(OBJ) $(LFLAGS)
+
+ install: all
+ install -d $(BIN_DIR) $(DRILL_DIR) $(MAN_DIR)
diff --git a/misc/langdrill/050_install.diff b/misc/langdrill/050_install.diff
new file mode 100644
index 0000000000000..2af54f7851101
--- /dev/null
+++ b/misc/langdrill/050_install.diff
@@ -0,0 +1,63 @@
+diff -ur langdrill-0.3/src/Makefile langdrill-0.3/src/Makefile
+--- langdrill-0.3/src/Makefile 2018-03-19 09:36:36.277390675 -0700
++++ langdrill-0.3/src/Makefile 2018-03-19 09:55:06.065284069 -0700
+@@ -1,6 +1,5 @@
+ ###### Files & Directories
+ DESTDIR=
+-MY_DEBIAN_SYSTEM=
+
+
+ SRC = main.cc\
+@@ -20,21 +19,10 @@
+ `vdk-config-2 --cflags` \
+ -Wall
+
+-###### Test for Debian GNU/Linux
+-# If your system is not Debian GNU/Linux please modify the values after
+-# "else" statement. Modifying the values before else is useless, unless
+-# you also set MY_DEBIAN_SYSTEM=1
+-ifeq ($(MY_DEBIAN_SYSTEM),1)
+- MY_MESSAGE_OF_THE_DAY=">>" $(TARGET) compilled for Debian GNU/Linux system. "<<"
+- DRILL_DIR=$(DESTDIR)/usr/share/langdrill
+- BIN_DIR=$(DESTDIR)/usr/bin
+- MAN_DIR=$(DESTDIR)/usr/share/man/man1
+-else
+- MY_MESSAGE_OF_THE_DAY=">>" $(TARGET) compilled for NON-Debian GNU/Linux system. "<<"
+- DRILL_DIR=$(DESTDIR)/usr/local/share/langdrill
+- BIN_DIR=$(DESTDIR)/usr/local/bin
+- MAN_DIR=$(DESTDIR)/usr/local/man/man1
+-endif
++PREFIX ?= /usr/local
++DRILL_DIR ?= $(PREFIX)/share/langdrill
++BIN_DIR ?= $(PREFIX)/bin
++MAN_DIR ?= $(PREFIX)/share/man
+
+ CC = g++
+ CFLAGS = -g
+@@ -62,21 +50,18 @@
+ rm -f $(TARGET) core *~
+
+ $(TARGET): tarclean $(OBJ)
+- @echo $(MY_MESSAGE_OF_THE_DAY)
+ $(CC) $(CFLAGS) $(DEF_FLAGS) -o $(TARGET) $(OBJ) $(LFLAGS)
+
+ run: tarclean $(OBJ)
+- @echo $(MY_MESSAGE_OF_THE_DAY)
+ $(CC) $(CFLAGS) $(DEF_FLAGS) -o $(TARGET) $(OBJ) $(LFLAGS)
+ ./$(TARGET)
+
+ build: clean tarclean $(OBJ)
+- @echo $(MY_MESSAGE_OF_THE_DAY)
+ $(CC) $(CFLAGS) $(DEF_FLAGS) -o $(TARGET) $(OBJ) $(LFLAGS)
+
+ install: all
+- install -d $(BIN_DIR) $(DRILL_DIR) $(MAN_DIR)
+- install ./$(TARGET) $(BIN_DIR)
+- install -m644 $(DRILL_SUP) $(DRILL_DIR)
+- ln -sf japanese.drill $(DRILL_DIR)/$(DRILL_DEF)
+- install -m644 $(MAN_PAGE) $(MAN_DIR)
++ install -d $(DESTDIR)$(BIN_DIR) $(DESTDIR)$(DRILL_DIR) $(DESTDIR)$(MAN_DIR)/man1
++ install ./$(TARGET) $(DESTDIR)$(BIN_DIR)
++ install -m644 $(DRILL_SUP) $(DESTDIR)$(DRILL_DIR)
++ ln -sf japanese.drill $(DESTDIR)$(DRILL_DIR)/$(DRILL_DEF)
++ install -m644 $(MAN_PAGE) $(DESTDIR)$(MAN_DIR)/man1
diff --git a/misc/langdrill/README b/misc/langdrill/README
new file mode 100644
index 0000000000000..3cd2bf0a44494
--- /dev/null
+++ b/misc/langdrill/README
@@ -0,0 +1,2 @@
+This is langrill, a language drill program. It is used to test your
+vocabulary in foreign languages.
diff --git a/misc/langdrill/langdrill.SlackBuild b/misc/langdrill/langdrill.SlackBuild
new file mode 100644
index 0000000000000..298cdcf1891d6
--- /dev/null
+++ b/misc/langdrill/langdrill.SlackBuild
@@ -0,0 +1,100 @@
+#!/bin/sh
+
+# Slackware build script for langdrill
+
+# Copyright 2018 Hunter Sezen California, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+PRGNAM=langdrill
+VERSION=${VERSION:-0.3}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -eu
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/${PRGNAM}_$VERSION.orig.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+for patch in $CWD/0?0_*.diff; do
+ patch -p1 < "$patch"
+done
+
+make \
+ PREFIX=/usr \
+ CFLAGS="$SLKCFLAGS"
+
+make install \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ MAN_DIR=/usr/man
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS BUGS COPYING INSTALL NEWS README THANKS TODO \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/misc/langdrill/langdrill.info b/misc/langdrill/langdrill.info
new file mode 100644
index 0000000000000..ab90139f53bd8
--- /dev/null
+++ b/misc/langdrill/langdrill.info
@@ -0,0 +1,10 @@
+PRGNAM="langdrill"
+VERSION="0.3"
+HOMEPAGE="https://tracker.debian.org/pkg/langdrill"
+DOWNLOAD="http://http.debian.net/debian/pool/main/l/langdrill/langdrill_0.3.orig.tar.gz"
+MD5SUM="70afbf1d33ead7cec4dbf5d2d0782c4c"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="vdk"
+MAINTAINER="Hunter Sezen"
+EMAIL="orbea@fredslev.dk"
diff --git a/misc/langdrill/slack-desc b/misc/langdrill/slack-desc
new file mode 100644
index 0000000000000..a4507b07d1c8f
--- /dev/null
+++ b/misc/langdrill/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+langdrill: langdrill (language drill tests)
+langdrill:
+langdrill: This is langrill, a language drill program. It is used to test your
+langdrill: vocabulary in foreign languages.
+langdrill:
+langdrill: Homepage: https://tracker.debian.org/pkg/langdrill
+langdrill:
+langdrill:
+langdrill:
+langdrill:
+langdrill: