All Projects → gromnitsky → Wordnut

gromnitsky / Wordnut

Licence: gpl-3.0
Emacs major mode interface to WordNet lexical database

Labels

Projects that are alternatives of or similar to Wordnut

Emacs Datetime
Stars: ✭ 8 (-74.19%)
Mutual labels:  emacs
Doxymacs
Doxymacs is Doxygen + {X}Emacs.
Stars: ✭ 10 (-67.74%)
Mutual labels:  emacs
Hlinum Mode
This library extends linum-mode to highlight current line number.
Stars: ✭ 29 (-6.45%)
Mutual labels:  emacs
Metamorph
Transform your code in turing-complete ways
Stars: ✭ 9 (-70.97%)
Mutual labels:  emacs
Bonjourmadame
Say "Hello ma'am!"
Stars: ✭ 9 (-70.97%)
Mutual labels:  emacs
Nano Emacs
GNU Emacs / N Λ N O - Emacs made simple
Stars: ✭ 872 (+2712.9%)
Mutual labels:  emacs
Perfect Margin
[emacs] auto center emacs windows, work with minimap and/or linum-mode
Stars: ✭ 26 (-16.13%)
Mutual labels:  emacs
Vhdl Mode
A package for Sublime Text that aids coding in the VHDL language.
Stars: ✭ 31 (+0%)
Mutual labels:  emacs
Shader Mode
Unity shader editing mode for GNU Emacs
Stars: ✭ 10 (-67.74%)
Mutual labels:  emacs
Emacs.dz
Awesome emacs config files
Stars: ✭ 886 (+2758.06%)
Mutual labels:  emacs
Dakrone Light Theme
Dakrone's custom light Emacs theme
Stars: ✭ 9 (-70.97%)
Mutual labels:  emacs
Irony Mode
A C/C++ minor mode for Emacs powered by libclang
Stars: ✭ 851 (+2645.16%)
Mutual labels:  emacs
Magit Cheatsheet
Stars: ✭ 13 (-58.06%)
Mutual labels:  emacs
.emacs.d
bdd's Emacs configuration, split from bdd/.dotfiles/emacs directory.
Stars: ✭ 8 (-74.19%)
Mutual labels:  emacs
Yard Mode.el
Emacs minor mode for editing YARD tags
Stars: ✭ 29 (-6.45%)
Mutual labels:  emacs
Kaleidoscope.el
Control Kaleidoscope-powered devices from the comfort of your Emacs.
Stars: ✭ 8 (-74.19%)
Mutual labels:  emacs
Darkmine Theme
Yet another emacs dark color theme
Stars: ✭ 10 (-67.74%)
Mutual labels:  emacs
Geekbook
G33KB00K3 - fun to read & fun to write -- 🤓 eXtreme eXtendable note taking system for nerds/geeks (including scientists!) docs: http://geekbook.rtfd.io = beautiful html generator of your markdown-based notes
Stars: ✭ 31 (+0%)
Mutual labels:  emacs
Emacs Smart Hungry Delete
An emacs package to delete whitespace between words, parenthesis and other delimiters in a (not very) smart way.
Stars: ✭ 30 (-3.23%)
Mutual labels:  emacs
Cfgs
My personal configs
Stars: ✭ 14 (-54.84%)
Mutual labels:  emacs

Major mode interface to WordNet

Uses wn(1) for searching local wordnet db; injects results into *WordNut* buffer.

Features

  • Nothing to configure (except for optional custom keybindings).
  • Completion if wn(1) finds the query too ambiguous.
  • 1 buffer *WordNut* for all query results.
  • Back/forward/view history.

A screenshot of running wordnut

Requirements

Installation

If you have adaptive-wrap mode installed, wordnut will automatically use it to improve the text formatting (don't forget to add (require 'adaptive-wrap) in ~/.emacs).

Fedora

# dnf install wordnet

In ~/.emacs:

(add-to-list 'load-path "/the/dir/with/the/repo")
(require 'wordnut)

Windows

  1. You need a compiled Windows version of Wordnet 3.0. Googling gives us a bizzare WordNet 3.0 windows visual studio. Extract bin & dict directories from it to c:\Program Files\WordNet\3.0\ (for some reason the path is hard-coded).

  2. In %APPDATA%\.emacs:

     (if (eq 'windows-nt system-type)
     	(progn
     	  (add-to-list 'load-path "/the/dir/with/the/repo")
     	  (setq wordnut-cmd "c:/Program Files/WordNet/3.0/bin/wn.exe")
     	  (require 'wordnut)))
    

Keyboard shortcuts

There is no default global keybindings. Add something like:

(global-set-key [f12] 'wordnut-search)
(global-set-key [(control f12)] 'wordnut-lookup-current-word)

to begin with.

In the *WordNut* buffer:

kbd desc
Enter Lookup a word under the cursor
o A tooltip w/ a sense for the current lexical category
/ New search
l, r Move backward/forward in history
h View history
q Hide buffer

Auxiliary:

kbd desc
M-Up, M-Down Move between sections
Space PageDown
b, Backspace PageUp

Senses overview

When reading long entries it's easy to get lost in the number of word senses. For example, do M-x wordnut-search RET part RET. The verb part contains 12 senses. Its Synonyms/Hypernyms section has an entry:

** Sense 3
depart, part, start, start out, set forth, set off, set out, take off
	   => leave, go forth, go away
		  Phrasal Verb-> part with#1

To which meaning of all senses it exactly corresponds? You could scroll back to the overview section, manually find the verb section & look into the item 3. Then you scroll back.

Instead of doing this, press o when the cursor is somewhere in the Sense 3 subsection to auto-retrieve the text from the overview. If you press o (or Enter) when the curson is inside part with#1word, it gets you to the wordnet entry part withverbsense 1. To return to the part word, press l.

Bugs

  • ≈ 18KB is too much for such a small major mode.

TODO

  • Display a lexical category in the echo area akin to eldoc.
  • Custom URI handler for wordnut:part%20with#verb/1.
  • Mouse support.

Credits

The inspiration was wn-org.el mode.

License

GPLv3+.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].