Online-Wörterbuch pocket.dict.cc abfragen

Um schnell etwas zu übersetzen, muss man keinen Browser anwerfen; das geht auch auf der Konsole :)

Parameter

Optional können mit -l (kleines L) die Sprachen (von -> nach) angegeben werden; für Deutsch nach Esperanto z.B. deeo:

dic -l deeo baum
Baum {m}
    arbo

Ohne Angabe von -l wird per Voreinstellung von Deutsch nach Englisch übersetzt.

Als Shell-Funktion

Die folgenden Zeilen kann man z. B. in die ~/.bashrc oder eine andere Datei eintragen die in einer Sitzung eingelesen wird:

function dic() 
{ 
    DIC_HIST="$HOME/.local/share/dic_history"

    if [ "$1" = "-l" ]; then
        local _lang=$2;
        shift 2;
    else
        local _lang=deen;
    fi; 

    if [ "$1" = "-h" ]; then
        cat "${DIC_HIST}"
        return 
    fi  

    if [ "${_lang}" == "deen" ];
    then
        _lang=""
    else        
        _lang="${_lang}."
    fi      

    w3m -dump "https://${_lang}pocket.dict.cc?s=\"$*\"" | sed -r -e '/^([ ]{5,}.*)$/d' -e '1,2d' -e '/^$/d' -e '/^\[/d'
    echo "$@" >> "${DIC_HIST}"
}

Beispiele

dic blumentopf
Blumentopf {m} 
    flowerpot
    plant pot
...

Oder mit mehreren Wörtern:

dic in die Irre führen
in die Irre führen
    to mislead
...

Link zum Wörterbuch: https://pocket.dict.cc

In OpenBox integrieren

Script erstellen

Dafür erstellt man ein ausführbares Bash-Script mit folgendem Inhalt:

#!/bin/bash
>>>die oben genannte Funktion komplett hier eintragen<<<

dic $(xsel) | less

Eventuell muss man noch das Paket xsel installieren…

Tastenkürzel erstellen

Dann erstellt man ein neues Tastenkürzel in der entsprechenden ~/.config/openbox/rc.xml (oder ~/.config/openbox/lxde-rc.xml bei LXDE):

    <keybind key="W-t">
      <action name="Execute">
        <command>xterm -geometry 60x40 -e /pfad/zu/dic.sh</command>
      </action>
    </keybind>

Konfiguration neu einlesen und fertig.

Ergebnis

Nun kann man ein Wort irgendwo mit der linken Maustaste markieren und dann Win+t drücken; das Ergebnis:

Zuletzt geändert 2022-03-29 05:03:36 +0200 CEST durch Natenom (init, 1c39149)