Czy istnieje standardowe polecenie uniksowe do sprawdzania koniugacji czasowników angielskich?


19

Po niedawnym spotkaniu z listą słów i wordnetem , dwoma własnymi wspaniałymi odkryciami, szukam teraz podobnego narzędzia, choć prostszego, które przejmie bezokolicznik czasownika i zwróci prosty imiesłów przeszłości i przeszłości. Przykład:

$ verbteacher throw

Simple past: threw
Past participle: thrown

Czy ktoś wie gdzie znaleźć verbteacher(1)?

Odpowiedzi:


22

Najprostszym sposobem jest napisanie go samemu. Na pierwszy rzut oka znalazłem całkiem niezłą stronę internetową, która może dostarczyć nam wszystkich potrzebnych informacji. Dlatego wszystko, co musimy zrobić, to napisać funkcję, która ją przeanalizuje. Więc pięć minut z bashi voila:

 $ function verbteacher() { 
    wget -qO - http://conjugator.reverso.net/conjugation-english-verb-$1.html | \
    sed -n "/>Preterite\|>Past</{s@<[^>]*>@ @g;s/\s\+/ /g;/e I/s/.* I \([^ ]*\) you .*/Simple past: \1/;/ Past/s/ Past /Past participle: /;p}" ; 
 }
 $ verbteacher go
Simple past: went
Past participle: gone 
 $ verbteacher throw
Simple past: threw
Past participle: thrown 

Możesz więc umieścić tę funkcję w swoim ~ / .bashrc i używać jej, dopóki strona nie zmieni swojej struktury. Mam nadzieję, że nigdy tego nie zrobi.

Oczywiście nie będzie działać bez połączenia z Internetem. Mam nadzieję, że to nie jest dla ciebie krytyczne.


Dziękuję Ci! Z pewnością tak się stanie, chociaż po odkryciu listy słów i słownika miałem nadzieję, że istnieje coś dość standardowego, o czym nie wiedziałem.
sadpluto

0

możesz użyć pliku słownika zawierającego wszystkie słowa w języku angielskim. Możesz znaleźć jeden online. Możesz trochę zmodyfikować plik skryptu, aby pobrać słowo z pliku i wyprowadzić go do pliku tekstowego, który przechowuje wynik odwołania. Następnie użyj tego pliku, aby utworzyć nową wersję funkcji, która używa tego pliku / bazy danych do ich wyszukiwania.

najprostszym sposobem byłoby umieszczenie danych wyjściowych każdego terminu w osobnej linii, z oddzielonymi wynikami. wystarczy dopasować char tylko pierwsze słowo każdego wiersza, aby było bardziej wydajne.

Jeśli to zrobisz, prześlij wyniki do skryptu / bazy danych typu open source, ponieważ myślę, że może być więcej. Myślę, że fajnie byłoby zintegrować go z Libra Office i pozwolić, aby był używany również z terminala.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.