【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
目标
- 快速收集
- 全文查找
- 支持
markdown
基本思路
- 使用
autohotkey
脚本来支持与CintaNotes
一样的Ctrl+F12
快速收集当前所选内容. - 使用
gvim
自带的vimgrep
命令来实现全文查找 - 使用
gvim
的vim-pandoc
和vim-pandoc-syntax
两个插件来支持markdown
,pandoc
工具来转换.
代码
- 快速收集
^f12::
clipboard = ;首先清空剪贴板,使 ClipWait 命令能检测到文本何时被复制到了剪贴板中。
Send ^c
ClipWait ;等待文本被复制到剪贴板中。
filename=e:\dknlnl\notes\万剑归宗\note-%A_Now%.mkd
;filename auther date
FileAppend, `%note-%A_Now%`n, %filename%
FileAppend, `%zhou512031123@gmail.com`n, %filename%
FileAppend, `%%A_Now%`n, %filename%
FileAppend, # note-%A_Now%`n`n, %filename%
FileAppend, %clipboard%, %filename%
ToolTip, note saved to %filename%
Sleep 3000
ToolTip
return
^f11::
clipboard = ;首先清空剪贴板,使 ClipWait 命令能检测到文本何时被复制到了剪贴板中。
Send ^c
ClipWait ;等待文本被复制到剪贴板中。
filename=e:\dknlnl\notes\万剑归宗\note-%A_Now%.mkd
;filename auther date
FileAppend, `%note-%A_Now%`n, %filename%
FileAppend, `%zhou512031123@gmail.com`n, %filename%
FileAppend, `%%A_Now%`n`n, %filename%
FileAppend, # note-%A_Now%`n`n, %filename%
FileAppend, %clipboard%, %filename%
run gvim %filename%
return
- 全文查找
vimrc
里的代码
"use vimgrep to search pattern
function! Ag(args)
execute "silent! vimgrep /" . a:args . "/g ./**/*"
botright copen
exec "redraw!"
"exec "only"
"o will open the file in a new tab
exec "nnoremap <silent> <buffer>o <C-w><CR><C-w>T"
endfunction
function! Ng(args)
execute "cd e:/dknlnl/notes/"
execute "silent! vimgrep /" . a:args . "/g ./**/*"
botright copen
exec "redraw!"
"exec "only"
"o will open the file in a new tab
exec "nnoremap <silent> <buffer>o <C-w><CR><C-w>T"
endfunction
command! -nargs=* -complete=file Ag call Ag(<q-args>)
command! -nargs=* -complete=file Ng call Ng(<q-args>)
ng.bat
里的代码
ng.bat
是一个批处理, 用于放在$PATH
环境变量用, 通过Ctrl+R
来快带调用.
start gvim -c "Ng %1"
- 支持
markdown
vundlerc
里的代码
使用vundle
来管理gvim
插件.
Bundle 'vim-pandoc/vim-pandoc'
Bundle 'vim-pandoc/vim-pandoc-syntax'
vimrc
里的代码
autocmd FileType PANDOC map <silent> <Leader>pd :!pandoc -t docx -o %:r.docx %<cr>
autocmd FileType PANDOC map <silent> <Leader>pt :!pandoc -t html -c default.css -o %:r.html %<cr>
效果
其它
- 为什么用
vimgrep
而不用其它查找工具比如grep
,ack
,ag
等等
因为后面这三个在在某些情况下似乎查不出需要的东西. 具体什么样的文件没有分析出来. 估计与文件编码有关. 但不确定.
pandoc
转换失败?
文件请使用utf-8
编码. set fileencoding=utf8
-
本折腾涉及
autohotkey
,gvim
,pandoc
三种工具, 如果你恰好在用这三个工具, 倒是可以折腾一下. 否则为这一个简陋的笔记引入三个工具实在太折腾了. -
本折腾适合与公司内部不允许使用外部笔记,同步工具的情况下的一种离线笔记. 当然离线笔记也有现成的工具,比如免费的职前面提到的
CintaNotes
, 收费的mybase
等. 只不过我想使用markdown
罢了. 我我还写了一个CintaNotes
插件, 用来支持markdown
高亮: VimCintaNotes插件
来源:oschina
链接:https://my.oschina.net/u/97321/blog/511621