补全铅笔的英语单词怎么写。没写的怎么写?

Shell脚本中实现自动补全功能
我的图书馆
Shell脚本中实现自动补全功能
对于Linuxer来说,自动补全是再熟悉不过的一个功能了。当你在命令行敲下部分的命令时,肯定会本能地按下Tab键补全完整的命令,当然除了命令补全之外,还有文件名补全。Bash-completion自动补全这个功能是Bash自带的,但一般我们会安装bash-completion包来得到更好的补全效果,这个包提供了一些现成的命令补全脚本,一些基础的方便编写补全脚本,还有一个基本的配置脚本。但也正如之前说的,这个包不是必须的,只不过可以省些力气。bash-completion这个包的安装位置因不同的发行版会有所区别,但是大致上启用的原理是类似的,一般会有一个名为bash_completion的脚本,这个脚本会在初始化时加载。例如对于RHEL系统来说,这个脚本位于//bash_completion,而该脚本会由/etc/profile.d/bash_completion.sh中导入:& 1 # Check for interactive bash and that we haven't already been sourced. 2 [ -z "$BASH_VERSION" -o -z "$PS1" -o -n "$BASH_COMPLETION" ] && return 3
4 # Check for recent enough version of bash. 5 bash=${BASH_VERSION%.*}; bmajor=${bash%.*}; bminor=${bash#*.} 6 if [ $bmajor -gt 3 ] || [ $bmajor -eq 3 -a $bminor -ge 2 ]; then 7
if shopt -q progcomp && [ -r /etc/bash_completion ]; then 8
# Source completion code. 9
. /etc/bash_completion10
fi11 fi12 unset bash bmajor bminor&而在bash_completion脚本中会加载//bash_completion.d下面的补全脚本:&if [[ $BASH_COMPLETION_DIR != $BASH_COMPLETION_COMPAT_DIR && /
-d $BASH_COMPLETION_DIR && -r $BASH_COMPLETION_DIR && /
-x $BASH_COMPLETION_DIR ]]; then
for i in $(LC_ALL=C command ls "$BASH_COMPLETION_DIR"); do
i=$BASH_COMPLETION_DIR/$i
[[ ${i##*/} != @(*~|*.bak|*.swp|/#*/#|*.dpkg*|*.rpm@(orig|new|save)|Makefile*) /
&& -f $i && -r $i ]] && . "$i"
donefiunset i&补全脚本的名称一般就是命令名,这样比较容易查找:&$ ls i*iconv
iptables&内置补全命令Bash内置有两个补全命令,分别是compgen和complete。compgen命令根据不同的参数,生成匹配单词的候选补全列表,例如:&$ compgen -W 'hi hello how world' hhihellohow&compgen最常用的选项是-W,通过-W参数指定空格分隔的单词列表。h即我们在命令行当前键入的单词,执行完后会输出候选的匹配列表,这里是以h开头的所有单词。complete命令的参数有点类似compgen,不过它的作用是说明命令如何进行补全,例如同样使用-W参数指定候选的列表:&$ complete -W 'word1 word2 word3 hello' foo$ foo w&Tab&$ foo word&Tab&word1
word3&我们还可以通过-F参数指定一个补全函数:&$ complete -F _foo foo&现在键入foo命令后,会调用_foo函数来生成补全的列表,完成补全的功能,这一点正是补全脚本实现的关键所在,我们会在后面介绍。补全相关的内置变量除了上面的两个补全命令外,Bash还有几个内置的变量用来辅助补全功能,这里主要介绍其中三个:COMP_WORDS: 类型为数组,存放当前命令行中输入的所有单词;COMP_CWORD: 类型为整数,当前光标下输入的单词位于COMP_WORDS数组中的索引;COMPREPLY: 类型为数组,候选的补全结果;COMP_WORDBREAKS: 类型为字符串,表示之间的分隔符;COMP_LINE: 类型为字符串,表示当前的命令行输入;例如我们定义这样一个补全_foo:&$ function _foo(){
echo -e "/n"
declare -p COMP_WORDS
declare -p COMP_CWORD
declare -p COMP_LINE
declare -p COMP_WORDBREAKS}$ complete -F _foo foo&假设我们在命令行下输入以下内容,再按下Tab键补全:&$ foo bdeclare -a COMP_WORDS='([0]="foo" [1]="b")'declare -- COMP_CWORD="1"declare -- COMP_LINE="foo b"declare -- COMP_WORDBREAKS="
&对着上面的结果,我想应该比较容易理解这几个变量。当然正如我们之前据说,Bash-completion包并非是必须的,补全功能是Bash自带的。编写脚本补全脚本分成两个部分:编写一个补全函数和使用complete命令应用补全函数。后者的难度几乎忽略不计,重点在如何写好补全函数。难点在,似乎网上很少与此相关的文档,但是事实上,Bash-completion自带的补全脚本是最好的起点,可以挑几个简单的改改基本上就可以使用了。一般补全函数(假设这里依然为_foo)都会定义以下两个变量:&local cur prev&其中cur表示当前光标下的,而prev则对应上一个单词:&cur="${COMP_WORDS[COMP_CWORD]}"prev="${COMP_WORDS[COMP_CWORD-1]}"&初始化相应的变量后,我们需要定义补全行为,即输入什么的情况下补全什么内容,例如当输入-开头的选项的时候,我们将所有的选项作为候选的补全结果:&local opts="-h --help -f --file -o --output"if [[ ${cur} == -* ]] ; then
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0fi&不过再给COMPREPLY赋值之前,最好将它重置清空,避免被其它补全函数干扰。现在完整的补全是这样的:&function _foo() {
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
opts="-h --help -f --file -o --output"
if [[ ${cur} == -* ]] ; then
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
fi}&现在在命令行下就可以对foo命令进行参数补全了:&$ complete -F _foo foo$ foo --f
--output&当然,似乎我们这里的例子没有用到prev变量。用好prev变量可以让补全的结果更加完整,例如当输入--file之后,我们希望补全特殊的文件(假设以.sh结尾的文件):case "${prev}" in
-f|--file)
COMPREPLY=( $(compgen -o filenames -W "`ls *.sh`" -- ${cur}) );esac&现在再执行foo命令,--file参数的值也可以补全了:&$ foo --file&Tab&a.sh b.sh c.sh&安装补全脚本如果安装了Bash-completion包,可以将补全脚本放在//bash_completion.d目录下,或者放到~/.bash_completion文件中。如果没有安装Bash-completion包,可以把补全脚本放到~/.bashrc或者其它能被加载的初始化文件中。&原文地址 http://www.it165.net/os/html/8.html
TA的最新馆藏
喜欢该文的人也喜欢扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
下载作业帮安装包
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
“我的”英文怎么写.是“我的”不是“我” 还有“你的”英文怎么写根据句意及首字母提示补全单词This is my f()This is Miss Wang.she is my t()This is my m()This is my d()This is my s()
黎约践踏NIRW
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
mine yourfriend teacherdadsister
为您推荐:
其他类似问题
我的:my你的:your我汗你们都只回答一半的啊因为他答了一半,所以我就不再重复了。而且你主要的问题还是“我的”英文怎么写。是“我的”不是“我” 还有“你的”英文怎么写那我该采纳谁呢?还有我是因为写不下去了才把其他题目写到补充里面的,并没有说这是主题目啊...
因为他答了一半,所以我就不再重复了。而且你主要的问题还是“我的”英文怎么写。是“我的”不是“我” 还有“你的”英文怎么写
那我该采纳谁呢?还有我是因为写不下去了才把其他题目写到补充里面的,并没有说这是主题目啊
单词:friend teacher mother dad sister
还有呢?“我的”英文和“你的英文”
扫描下载二维码本站《游戏都会》所有小游戏作品版权归原作者享有,如无意之中侵犯了您的版权,请您按照来信告知,本网站将应您的要求3个工作日删除。
游戏都会专业专注于小游戏,为你提供更多更好的在线试玩。
Copyright (C) , All Rights Reserved.读完一篇英语文章,如何给出现的生词做笔记?是简略地按照词典抄写,还是只写音标和单词的意思? - 知乎4931被浏览161398分享邀请回答2.7K115 条评论分享收藏感谢收起/r/f0P64q3EhfD6remB9xZt (二维码自动识别)原豆瓣日志:从外媒学地道表达(豆瓣微博每日更新,敬请关注)微博:豆瓣专栏《打开英文写作的脑洞》感谢@ Felix Lew 在评论中提出的意见!欧陆词典的生词本的确可以作为过单词的方法。但是还是有几点想要说明:1、答主推荐的也是多平台使用的 2、答主知道生词本的功能,可以作为答主方法的补充,但是始终觉得自己把单词的释义写一遍、整理一遍来得印象深刻。而且生词本如何做到答主所提出的联想词归类法?这必须要靠人脑人力完成,虽然非礼,但是效果卓著。3、答主的方法完全免费。所需软件:1、.epub或者.Pdf的文档阅读器(iBook,
Skim,Adobe Reader,这样的软件有许多,相信有电脑的就一样有这样的软件)2、GoldenDict/BlueDict/Mdict (这几款软件支持各种格式的词典,好处就是可以下载许多词典,而且都是权威词典,你可以比对不同词典间的解释。后文附上答主使用的词典的百度云共享。)3、云笔记软件(evernote, 为知笔记,onenote,太多了,随你)Let’s get started!1、
下载怎样的杂志?在这里并不是想讨论杂志的内容。事实上,任何你可以下载到的以英语为母语出版的杂志,只要坚持阅读都能让你无论是在词汇量还是在语法上有质的提升。关键是请下载可以选中单词、句子的文档。2、
阅读中做些什么?好了,打开刚下载的杂志,一头扎进印满字母的屏幕……一般人的做法是这样:怎么办,这个单词我不认识,我查!噢,原来是这个意思,让我记一下哦!好,继续读……哎,后面一个单词我也不认识!我查!恩,再让我记一笔!这样读完一篇——哦不应该说是查完一篇文章可能需要一个多小时。到头来你所得到的通常只是一本词典的摘抄。当你积累了一本单词手册后你其实等于是对着一本自己编的词汇手册望洋兴叹。那么阅读中遇到生词到底应该怎么做?遇到不认识的单词你还是要查,因为答主知道,生词一多会影响阅读心情,从而很明显地影响阅读效率。所以有的老师推荐的别管生词,硬着头皮读下去!拜托……又不是考试,何必这么刁难自己。接下来就是关键了!正确的做法是:用答主推荐的那款单词软件去查,但不要立刻去记单词是什么意思!!!GoldenDict 可以屏幕取词,然后显示单词在各个词典中的释义。但是千万不要打开word或者笔记本记录遇到的生词和含义。读过查过就让它随风飘散吧!为什么答主可以这么任性?答主刚刚一连串查了replenish, dwindling, rouble, hose, invade, patch, unveil, launch这么多单词,难道答主就不会在读完后忘记吗?不会。打开GoldenDict,看看有什么?仔细看,右边。是的,所有刚才你插的单词全都被存进了记录里。最酷的是什么?它支持导出!刚才你查过的单词全都被收录进了可编辑的文档。多读几篇文章,可以边查边读,但是别记录,把记录的工作交给GoldenDict,读的过程你就专心读。当你读完后,你就会有好几页刚才遇到的生词,是不是很有成就感!3、
怎么整理刚才搜集到的单词?刚读完,还沉浸在终于读完半本杂志的成就感中?别懈怠,带着刚查完单词的记忆赶紧把历史记录导出来。然后,点开GoldenDict,
一个一个点右边历史记录里刚才查过的单词,尽量记住释义,回忆方才遇到的语境。很快地过一遍。然后根据回忆把你记得的释义写在单词边上。你会发现答主的例子中有很多空着——那是你不记得了。不要紧,继续靠自己写释义。中英文都无所谓,关键要写出意思。事实上,一些实词比如bond,当然是写中文债券更容易。而有的比如evade,其实写出同义词escape 会更好(同义词需归类后文说)。而且,不用像字典那样定义地很清楚明了,一个或几个字能概括到自己心中有数即可。好了,你收获了一篇开满天窗的单词表。再回到GoldenDict过一遍,特别留意方才没有记住的单词,并检查已写下的单词释义是否正确。好了,由于记忆很新鲜,而且写释义只是很简单的,所以亲测最多三遍你就能补全了!!!这样你就拥有了一张属于你自己的单词表,它拥有简单但是你自己心知肚明的释义,而不是一本词典的摘抄。这样的方法基本是在同样的时间里读了更多文章,积累的更多单词,而且关键是成就感满满!接下来一步其实有一些耗时,但是绝对物超所值!那就是【联想词归类】!很多时候你会发现一些单词似乎背过,其实情况是你遇到过它的同义词。你应该把同样的意思放在一起。而且还不限于此!长得像的,一词多意的你都可以放在一起!原则是能够相互联想!好比答主本科时做的这个由fume 引出的联想词群:再补一张脑图更清晰明了,看看怎么才能以一个fume 发射出那么多单词这个工程也并不是那么耗费力气的,因为ctrl+f可以在你学到一个新单词时帮你定位你联想到的另一个单词,然后放在那个单词下面。最后要用到各种云笔记。把你整理好的单词笔记放进去吧!今天的任务就此结束。4、
用!用!用!——复习之道。复习的时候不要背!瞪着那些单词瞪出红血丝也不如用一用来的有效。用有两种方法:写作、翻译。并不是让各位时间宝贵的学习者每天写上几百字。事实上,在脑海中,或者在草稿纸上,将你看到的单词造一个有趣的句子就好了。比你对着单词读10遍管用且省时。用上联想的词汇一起造一个长的、有情节的句子更好!!另一个方法是翻译,这是名家张爱玲的方法,在此也非常推荐。你可以把你造的句子试着优雅地翻成中文,然后再翻回来,对于单词的巩固有着极大的作用!补充:关于张爱玲的翻译学语言法。张爱玲说:要提高英文和中文的写作能力,有一个很好的方法,就是把自己的一篇习作由中文译成英文,再由英文译成中文,这样反复多次,尽量避免重复的词句。如果你常做这种练习,一定能使你的中文英文都有很大的进步。如果你有时间把学到的单词都试着写成文章那是最好(故事最好,越离奇越能够自己深刻印象,打开脑洞!答主有机会把这个写在豆瓣专栏里做彩蛋)如果没有时间写习作可以就造句。总之要运用,强迫自己运用,哪怕只是脑子里造些句子,给单词一些场景,远比对着屏幕或者纸张 看 单词有用多了。@????答主私藏mdict/goldendict词典们在此,不要错过下载?????????83162 条评论分享收藏感谢收起查看更多回答下次自动登录
现在的位置:
& 综合 & 正文
解决增强MyEclipse的代码提示功能实例化时自动补全不必要的单词问题
Sorry,出现了新的问题,还在解决中。。。下面的方法,请先不要使用。等待研究解决。--
解决实例化时自动补全不必要的单词问题
问题描述:
比如说写String 写 S 的时候没有提示 写到 St 的时候提示就出来了,所以我又加了大写字母,问题是在比如说我写 String sql = ""; 的时候 前面有个对象是 sqlStr 写到 sql 的时候就必须按 esc 要不然就会出来 sqlString。
这个问题让人很烦的,解决方法如下:
最后的话,就是自己写代码测试了,我就不说了。
另外,我把增强Eclipse ,MyEclipse 的代码提示功能(图文教程)V1.1.doc文档版的上传到资源里了,不用资源分的,需要的也可以下载。资源地址是
&&&&推荐文章:
【上篇】【下篇】

我要回帖

更多关于 小学生单词补全 的文章

 

随机推荐