• Stars
    star
    144
  • Rank 255,590 (Top 6 %)
  • Language
    Python
  • License
    MIT License
  • Created over 6 years ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Python module to discover the etymology of words

ety

PyPI version Python versions Wheel Support Documentation Status
Build Status Code style: black


Intro

@jmsv and @parker57 started a side project to analyse etymologies of text written by various historical authors, expecting there to already be a library for retrieving etymological data. On discovering that this wasn't the case, ety was created!

There isn't a single source of truth for etymologies; words' origins can be heavily disputed. This package's source data, Gerard de Melo's Etymological Wordnet, is mostly mined from Wiktionary. Since this is a collaboratively edited dictionary, its data could be seen as the closest we can get to a public consensus.

Install

pip

pip install ety

Usage

Module

>>> import ety

>>> ety.origins("potato")
[Word(batata, language=Taino)]

>>> ety.origins("drink", recursive=True)
[Word(drync, language=Old English (ca. 450-1100)), Word(drinken, language=Middle English (1100-1500)), Word(drincan, language=Old English (ca. 450-1100))]

>>> print(ety.tree("aerodynamically"))
aerodynamically (English)
โ”œโ”€โ”€ -ally (English)
โ””โ”€โ”€ aerodynamic (English)
    โ”œโ”€โ”€ aero- (English)
    โ”‚   โ””โ”€โ”€ แผ€ฮฎฯ (Ancient Greek (to 1453))
    โ””โ”€โ”€ dynamic (English)
        โ””โ”€โ”€ dynamique (French)
            โ””โ”€โ”€ ฮดฯ…ฮฝฮฑฮผฮนฮบฯŒฯ‚ (Ancient Greek (to 1453))
                โ””โ”€โ”€ ฮดฯฮฝฮฑฮผฮนฯ‚ (Ancient Greek (to 1453))
                    โ””โ”€โ”€ ฮดฯฮฝฮฑฮผฮฑฮน (Ancient Greek (to 1453))

CLI

After installing, a command-line tool is also available. ety -h outputs the following help text describing arguments:

usage: ety [-h] [-r] [-t] words [words ...]

positional arguments:
  words            the search word(s)

optional arguments:
  -h, --help       show this help message and exit
  -r, --recursive  search origins recursively
  -t, --tree       display etymology tree

Examples

$ ety drink
drink   # List direct origins
 โ€ข drync (Old English (ca. 450-1100))
 โ€ข drinken (Middle English (1100-1500))

$ ety drink -r   # Recursive search
drink
 โ€ข drync (Old English (ca. 450-1100))
 โ€ข drinken (Middle English (1100-1500))
 โ€ข drincan (Old English (ca. 450-1100))

$ ety drink -t   # Etymology tree
drink (English)
โ”œโ”€โ”€ drinken (Middle English (1100-1500))
โ”‚   โ””โ”€โ”€ drincan (Old English (ca. 450-1100))
โ””โ”€โ”€ drync (Old English (ca. 450-1100))

Development

In a virtual environment - Pipenv is recommended:

python setup.py install

More Repositories

1

gatsby-plugin-prettier-build

prettify gatsby build output
JavaScript
30
star
2

simple-mern

the simplest MERN (MongoDB, Express, React and Node) setup
JavaScript
26
star
3

l293d

Python module to drive DC motors from a Raspberry Pi using the L293D chip
Python
18
star
4

angularjs-flask

Some lovely boilerplate for an AngularJS + Python Flask web app โ€“ The minimumish code required to get a simple to-do list app running
JavaScript
12
star
5

oaty

Object Array Transposer(y) - JS objects with multiple key/value structures
TypeScript
10
star
6

cosmic-horizon

c3's c++ game project: a text-based space adventure
C++
9
star
7

astonhack2017

AstonHack 2017 - FaktNews: A browser extension to grade the trustworthiness of sites you visit
Python
6
star
8

gh-pixelz

Generate pixel art in the style of the GitHub contributions chart because why not
TypeScript
5
star
9

memgit

uses isomorphic-git and memfs to host an in-memory git repo
JavaScript
4
star
10

gitignore-dl

CLI tool to get a .gitignore file for your language from GitHub's collection
TypeScript
4
star
11

xunit-to-nunit

Converts C# XUnit tests to NUnit tests
C#
4
star
12

vite-react-antd-tailwind

React on Vite starter with Ant Design and TailwindCSS
TypeScript
4
star
13

dotfiles

my dotfiles for macos/linux/wsl
Shell
4
star
14

html-to-docx-buffer

html-to-docx without fs
JavaScript
4
star
15

cuteid

cute id generator
TypeScript
4
star
16

not-my-type

is it human? is it a bot? who knows
JavaScript
3
star
17

keep-tray

๐Ÿ’ก Google Keep in the system tray
JavaScript
3
star
18

pastille

A percentage indicator chart thing for Angular
TypeScript
3
star
19

hypothesis-testing-calculator

A2 Computing project: Hypothesis Testing Calculator for the binomial distribution, written in WinForms C# and Xamarin C# for Android
C#
3
star
20

tellus-rover-v2

A Raspberry Pi controlled car โ€” hopefully better than the last one
Java
2
star
21

brumhack7

BrumHack 7.0 (2017)
Python
2
star
22

word-html-to-docx

Convert HTML files to DOCX using Word
Python
2
star
23

prisma-to-python

Parse prisma.schema files and output models as Python classes
TypeScript
2
star
24

led-matrix-bcd-clock

A binary clock written in python using the max7219 driver on a Raspberry Pi Zero
Python
2
star
25

pdf-diff

Compare 2 PDFs
JavaScript
2
star
26

windows95-calculator

windows 95 calculator but in react
HTML
2
star
27

blocc

blockchain thing in python
Python
2
star
28

ety-js

WIP: Node module to find the etymological origins of a word (based on https://github.com/jmsv/ety-python)
JavaScript
2
star
29

hackthemidlands2k18

HackTheMidlands2018
JavaScript
1
star
30

ruhacking

filmder // University of Reading Hackathon
Python
1
star
31

nextjs-antd-tailwind

NextJS 12 setup with Typescript, Ant Design and Tailwind CSS
TypeScript
1
star
32

amigos-calc

amigos.org.uk donation results calculator
CSS
1
star
33

python-packagify

๐Ÿ python scripts โžก๏ธ package ๐Ÿ“ฆ
Python
1
star
34

react-charts-comparison

Comparison of a few React charting libraries
TypeScript
1
star
35

gatsby-starter-bootstrap-blog

GatsbyJS starter based on on Bootstrap 4 example blog https://getbootstrap.com/docs/4.0/examples/blog
JavaScript
1
star
36

cu-attendance-system

206CDE - Real World Project - 1718JANMAY - Group 8B
Python
1
star
37

cuteid-pwa

pwa interface for cute id generator (https://github.com/jmsv/cuteid)
JavaScript
1
star
38

castle-susan

a good castle โ€“ probably the best castle
JavaScript
1
star
39

nx-nextjs-antd-tailwind

Next.JS with Ant Design and Tailwind as an Nx monorepo
TypeScript
1
star
40

anvilhack-iv

AnvilHack IV - 2018-02-24
JavaScript
1
star
41

sentence-makerer

generate sentences based on a text file and random numbers
Python
1
star