我想要一本 bash 字典,所以我找到了gnome-dictionary
。然而,只需键入gnome-dictionary
就会弹出一个 GUI 框。在gnome-dictionary --help
和 man 文件中,它表示 a-n
或--no-window
标志将禁用 GUI 弹出窗口并在标准输出上打印结果。但这是行不通的。相反,它说你应该看到任何很酷的事情的帮助。
手册页引用了 gnome-utils 2.13.4。
编辑
接受的一些“额外材料”回答。
# for `.bz2`; for `.gz`, drop `j` for `z`
# create (`sudo mkdir -p ...`) path if not there
add-dict () {
sudo tar -xvjf $1 -C /usr/share/stardict/dic
}
alias sd="sdcv"
wd () {
sdcv $1 | /usr/bin/fold --spaces --width=73
}
答案1
离线
如果您可以使用 StarDict 之外的其他工具gnome-dictionary
,sdcv
。
安装
$ sudo apt-get install sdcv
字典
要安装词典,您可以从以下列表中选择它们:
- http://abloz.com/huzheng/stardict-dic/dict.org/
- http://abloz.com/huzheng/stardict-dic/misc/
- 免费在线计算词典
- 行话文件- 黑客俚语的综合概要,阐释了黑客传统、民间传说和幽默的许多方面
- GNU Linux 英英词典
从上面提供的站点下载 .gz 或 .bz2 tarball 后,您可以使用以下命令之一安装它:
.gz
$ sudo tar -xvzf downloaded.tar.gz -C /usr/share/stardict/dic
.bz2
$ sudo tar -xvjf downloaded.tar.bz2 -C /usr/share/stardict/dic
那么让我们安装 GNU Linux 英英词典:
$ sudo tar -xvjf stardict-xfardic-gnu-linux-2.4.2.tar.bz2 -C /usr/share/stardict/dic
stardict-xfardic-gnu-linux-2.4.2/
stardict-xfardic-gnu-linux-2.4.2/xfardic-gnu-linux.dict.dz
stardict-xfardic-gnu-linux-2.4.2/xfardic-gnu-linux.ifo
stardict-xfardic-gnu-linux-2.4.2/xfardic-gnu-linux.idx
您可以查看安装了哪些词典sdcv
:
未安装
$ sdcv -l Dictionary's name Word count
安装一本词典
$ sdcv -l Dictionary's name Word count GNU/Linux English-English Dictionary 16694
测试一下
$ sdcv Linux
Found 1 items, similar to Linux.
-->GNU/Linux English-English Dictionary
-->Linux
使用免费软件工具设计并移植到多种硬件架构的 UNIX 兼容操作系统(和内核)。 Linux 最初由 Linus Torvalds 于 1991 年开发。Linux 是开源软件 (OSS),旨在成为竞争专有操作系统的可行替代方案。来自 Redhat-9-Glossary http://www.tldp.org/LDP/Linux-Dictionary/
在线的
我知道您只是在寻找离线模式,但我想我也会将此在线选项添加到组合中,只是为了完整性。
您可以从命令行使用 dict.org 服务来查找字典定义curl
。
$ curl dict://dict.org/d:YourWord
抬头
例如,让我们查找“help”:
$ curl dict://dict.org/d:help
220 pan.alephnull.com dictd 1.12.0/rf on Linux 3.0.0-14-server <auth.mime> <[email protected]>
250 ok
150 3 definitions retrieved
151 "Help" gcide "The Collaborative International Dictionary of English v.0.48"
Help \Help\ (h[e^]lp), v. t. [imp. & p. p. {Helped} (h[e^]lpt)
(Obs. imp. {Holp} (h[=o]lp), p. p. {Holpen} (h[=o]l"p'n)); p.
pr. & vb. n. {Helping}.] [AS. helpan; akin to OS. helpan, D.
helpen, G. helfen, OHG. helfan, Icel. hj[=a]lpa, Sw. hjelpa,
Dan. hielpe, Goth. hilpan; cf. Lith. szelpti, and Skr. klp to
be fitting.]
您还将获得其用法的几个示例:
1. To furnish with strength or means for the successful
performance of any action or the attainment of any object;
to aid; to assist; as, to help a man in his work; to help
one to remember; -- the following infinitive is commonly
used without to; as, "Help me scale yon balcony."
--Longfellow.
[1913 Webster]
2. To furnish with the means of deliverance from trouble; as,
to help one in distress; to help one out of prison. "God
help, poor souls, how idly do they talk!" --Shak.
[1913 Webster]
...
...
您还可以获得同义词:
Syn: To aid; assist; succor; relieve; serve; support;
sustain; befriend.
您还可以得到正确的用法:
Usage: To {Help}, {Aid}, {Assist}. These words all agree in
the idea of affording relief or support to a person
under difficulties. Help turns attention especially to
...
...
字典
dict.org 网站提供超过 77 种词典:
$ curl dict://dict.org/show:db
因此,您可以查找不同的词典(免费在线计算词典 - FOLDOC):
$ curl dict://dict.org/d:help:foldoc
或者你可以查询全部:
$ curl dict://dict.org/d:help:*
最佳匹配
d:
您可以使用匹配运算符,而不是使用运算符查找特定单词m:
:
$ curl dict://dict.org/m:help
您可以更改要使用的匹配策略:(精确、前缀、后缀,甚至 soundex):
$ curl dict://dict.org/m:help::prefix
您可以使用此命令列出所有策略:
$ curl dict://dict.org/show:strat
例如:
$ curl dict://dict.org/m:help::prefix
220 pan.alephnull.com dictd 1.12.0/rf on Linux 3.0.0-14-server <auth.mime> <[email protected]>
250 ok
152 13 matches found
gcide "Help"
gcide "Helped"
gcide "Helper"
gcide "Helpful"
gcide "Helpfully"
gcide "Helpfulness"
...
...
参考
答案2
我的机器上的版本gnome-dictionary
没有版本开关,也没有--no-window
下面列出的开关--help-all
手册页引用了 gnome-utils v2.13.4 并列出了开关,--no-window
但是当从控制台尝试使用适当的开关时,它会失败且没有显示。
细读来源很明显,不再有控制台选项,并且文档已经过时。
侏儒是目前是一个快速移动的目标。
答案3
这并不是不提供无窗口选项的真正答案gnome-dictionary
,但另一种方法是使用lynx
,并从互联网上的 reference.com 获取参考定义。
#!/bin/sh
lynx -dump -nolist -pseudo_inlines \
'http://dictionary.reference.com/search?q='$1'&r=67' \
| tail -n +13 | less -r
还有其他类似的方法/示例http://baldwinsoftware.com/wiki/pmwiki.php?n=Main.Bashsearch
看一看。
答案4
自从我很久以前发布这个问题以来,我找到了Emacs的W3M和M-x dictionary
模式。虽然不完全gnome-dictionary
适用于 CLI,但我想我应该在这里共享两个接口,因为它们调用模块来完成我想要的事情:字典(实际上是字典)的 CL 接口。
(defun lookup-word (wrd)
"Look up a word in Wiktionary with `w3m'."
(interactive
(list
(read-string
(format "lookup word (%s): " (thing-at-point 'word))
nil nil (thing-at-point 'word)) ))
(w3m (format "http://en.wiktionary.org/wiki/%s" (downcase wrd))) )
(defun dict (wrd)
"Look up WRD with `dictionary'."
(interactive
(list
(read-string
(format "lookup word (%s): " (thing-at-point 'word))
nil nil (thing-at-point 'word) )))
(dictionary-search wrd dictionary-default-dictionary) )