agzam/wiktionary-bro.el

Etymology lookup/Wiktionary browser in Emacs

17

stars

37

commits

Emacs Lisp

primary language

Aug 24, 2026

updated

README

#+TITLE: Etymology Lookup/Wiktionary browser in Emacs.
[[https://github.com/agzam/wiktionary-bro.el/actions/workflows/run-tests.yml][https://github.com/agzam/wiktionary-bro.el/actions/workflows/run-tests.yml/badge.svg]]

#+html: <img src="./test/screenshot.png" width="1000px" alt="screenshot">

** Usage
- Install using your favorite package manager, is published on [[https://melpa.org/#/wiktionary-bro][MELPA]].
  
- Use it: ~M-x wiktionary-bro-dwim~
  - =<TAB>= to collapse/expand sections
  - =RET= on Wiktionary links to navigate to that entry (opens in wiktionary-bro buffer)
  - =RET= on Wikipedia/external links to open in browser
  - =C-c C-l= to change the language and re-render the current entry (shows available languages)

- Pronunciation gets played via ffplay (typically bundled in ffmpeg), or you can set it to play through any other app by setting ~wiktionary-bro-audio-player~

- Note that the content won't be wrapped, this is done so the tables are rendered properly.

*** Multi-language support
- Set ~wiktionary-bro-language~ to change the default language (e.g., ="fr"= for French, ="de"= for German)
- In a wiktionary-bro buffer, press =C-c C-l= to change the language and re-render the entry
- The language picker shows only languages that have an entry for the current word
- Links within wiktionary-bro buffers respect the current language setting

*** External links
- External links (Wikipedia, etc.) open in EWW by default
- To use your system browser instead:
  #+begin_src emacs-lisp
  (defun wiktionary-use-system-browser-h ()
    "Use system browser for external links in wiktionary-bro."
    (setq-local browse-url-browser-function #'browse-url-default-browser))

  (add-hook 'wiktionary-bro-mode-hook #'wiktionary-use-system-browser-h)
  #+end_src
    
** Example configuration
*** Doom Emacs
=packages.el=:
#+begin_src emacs-lisp
(package! wiktionary-bro)
#+end_src

=config.el=:
#+begin_src emacs-lisp
(use-package! wiktionary-bro
  :commands (wiktionary-bro-dwim)
  :config
  (map! :leader
    :desc "Wiktionary"
    "xlw" #'wiktionary-bro-dwim))
#+end_src

** Similar packages for writing

Wiktionary is an amazing dictionary, a comprehensive toolkit with main focus on word etymology, but it also gives you:

- Definitions 
- Pronunciation 
- Parts of speech 
- Translations 
- Related words 
- Inflections 

You may like some other packages in the same space and maybe add them to your writer's toolkit:

- [[https://melpa.org/#/define-it][define-it]] :: definition lookup
- [[https://melpa.org/#/define-word][define-word]] :: definition lookup - grabs it from wordnik.com
- [[https://github.com/jamescherti/quick-sdcv.el][quick-sdcv]] :: modern fork of much older [[https://melpa.org/#/sdcv][sdcv.el]] - interface to Stardict CLI. Lifesaver for when you suddenly have no internet.
- [[https://melpa.org/#/mw-thesaurus][mw-thesaurus]] :: Merriam-Webster Thesaurus. There are a bunch of other thesauri packages, some of them are for quick and simple lookup/replacement, some of them are much more complex. This one displays results in an org-mode outline (just like wiktionary-bro)

Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.

Contributors

agzam

36 commits

fuzy112

1 commits

agzam/wiktionary-bro.el

Etymology lookup/Wiktionary browser in Emacs

17

stars

37

commits

Emacs Lisp

primary language

Aug 24, 2026

updated

README

#+TITLE: Etymology Lookup/Wiktionary browser in Emacs.
[[https://github.com/agzam/wiktionary-bro.el/actions/workflows/run-tests.yml][https://github.com/agzam/wiktionary-bro.el/actions/workflows/run-tests.yml/badge.svg]]

#+html: <img src="./test/screenshot.png" width="1000px" alt="screenshot">

** Usage
- Install using your favorite package manager, is published on [[https://melpa.org/#/wiktionary-bro][MELPA]].
  
- Use it: ~M-x wiktionary-bro-dwim~
  - =<TAB>= to collapse/expand sections
  - =RET= on Wiktionary links to navigate to that entry (opens in wiktionary-bro buffer)
  - =RET= on Wikipedia/external links to open in browser
  - =C-c C-l= to change the language and re-render the current entry (shows available languages)

- Pronunciation gets played via ffplay (typically bundled in ffmpeg), or you can set it to play through any other app by setting ~wiktionary-bro-audio-player~

- Note that the content won't be wrapped, this is done so the tables are rendered properly.

*** Multi-language support
- Set ~wiktionary-bro-language~ to change the default language (e.g., ="fr"= for French, ="de"= for German)
- In a wiktionary-bro buffer, press =C-c C-l= to change the language and re-render the entry
- The language picker shows only languages that have an entry for the current word
- Links within wiktionary-bro buffers respect the current language setting

*** External links
- External links (Wikipedia, etc.) open in EWW by default
- To use your system browser instead:
  #+begin_src emacs-lisp
  (defun wiktionary-use-system-browser-h ()
    "Use system browser for external links in wiktionary-bro."
    (setq-local browse-url-browser-function #'browse-url-default-browser))

  (add-hook 'wiktionary-bro-mode-hook #'wiktionary-use-system-browser-h)
  #+end_src
    
** Example configuration
*** Doom Emacs
=packages.el=:
#+begin_src emacs-lisp
(package! wiktionary-bro)
#+end_src

=config.el=:
#+begin_src emacs-lisp
(use-package! wiktionary-bro
  :commands (wiktionary-bro-dwim)
  :config
  (map! :leader
    :desc "Wiktionary"
    "xlw" #'wiktionary-bro-dwim))
#+end_src

** Similar packages for writing

Wiktionary is an amazing dictionary, a comprehensive toolkit with main focus on word etymology, but it also gives you:

- Definitions 
- Pronunciation 
- Parts of speech 
- Translations 
- Related words 
- Inflections 

You may like some other packages in the same space and maybe add them to your writer's toolkit:

- [[https://melpa.org/#/define-it][define-it]] :: definition lookup
- [[https://melpa.org/#/define-word][define-word]] :: definition lookup - grabs it from wordnik.com
- [[https://github.com/jamescherti/quick-sdcv.el][quick-sdcv]] :: modern fork of much older [[https://melpa.org/#/sdcv][sdcv.el]] - interface to Stardict CLI. Lifesaver for when you suddenly have no internet.
- [[https://melpa.org/#/mw-thesaurus][mw-thesaurus]] :: Merriam-Webster Thesaurus. There are a bunch of other thesauri packages, some of them are for quick and simple lookup/replacement, some of them are much more complex. This one displays results in an org-mode outline (just like wiktionary-bro)

Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.

See what people are saying

Contributors

agzam

36 commits

fuzy112

1 commits

Languages

Emacs Lisp

97.4%

Makefile

2.6%