Haskeline使得获取文件名标签完成功能非常容易:
module Main where
import System.Console.Haskeline
import System.Environment
mySettings :: Settings IO
mySettings = defaultSettings {historyFile = Just "myhist"}
main :: IO ()
main = do
args <- getArgs
let inputFunc = getInputLine
runInputT mySettings $ withInterrupt $ loop inputFunc 0
where
loop inputFunc n = do
minput <- handleInterrupt (return (Just "Caught interrupted"))
$ inputFunc (show n ++ ":")
case minput of
Nothing -> return ()
Just s -> do
outputStrLn ("line " ++ show n ++ ":" ++ …Run Code Online (Sandbox Code Playgroud) 我最近从Java开发和Eclipse IDE切换到C#.NET和VisualStudio 2010.我真正想念的是用于完成单词的Alt+ /Eclipse快捷方式.我不是在谈论IntelliSense自动完成的东西.我的意思是,我希望文本编辑器能够完成在文档中某处已经存在但不会出现在IntelliSense中的单词,例如字符串文字.
在Notepad ++中,它是Ctrl+ Enter快捷键.在Eclipse中,它是前面提到的Alt+/
VS2010可以这样做吗?如果不是默认情况下,任何人都可以指向一个体面的VB宏,我可以插入我的VS2010来做到这一点?
谢谢.
编辑
请注意,CODE完成(即大多数IDE /聪明的编辑器通过Ctrl + Space执行的操作)和简单的WORD完成(我正在寻找的)之间存在差异.单词完成不会尝试分析当前上下文,或猜测您可能会使用的类型/方法.所有这一切都试图通过查看光标位置并搜索当前文档中已经出现的类似单词来完成您开始键入的工作.
例如,如果我写 <?ph
可能会弹出以下单词(并且菜单中的php会突出显示,但不会显示在代码中):
php
phrase
phrases
Run Code Online (Sandbox Code Playgroud)
如果我点击Tab或CTRL+ N它只是去"Back at original."
如果我按Shift+ Tab或CTRL+ P就转到phrase.
虽然菜单中突出显示了php,但如果按Enter键ph则无法完成.
我不确定这是否是Vim中的正常行为或我的.vimrc有什么问题:
" SHORTCUTS
nnoremap <F4> :set filetype=html<CR>
nnoremap <F5> :set filetype=php<CR>
nnoremap <F3> :TlistToggle<CR>
" press space to turn off highlighting and clear any message already displayed.
nnoremap <silent> <Space> :nohlsearch<Bar>:echo<CR>
" set buffers commands
nnoremap <silent> <M-F8> :BufExplorer<CR>
nnoremap <silent> <F8> :bn<CR>
nnoremap <silent> <S-F8> :bp<CR>
" open NERDTree …Run Code Online (Sandbox Code Playgroud) 我知道 texmaker 有“单词完成”选项,通过右键单击单词。但是想象一下写你的论文并且一直需要自动完成!有没有更好/更用户友好的方式来使用 texmaker 做到这一点?