作为马特拉布特的一个外部编辑,我使用的是Libert和gVim。
在Matlab编辑中,你可以使用F5。 我试图在Vim复制这一产品(从gvim-gtk
Debian书包封)。
我知道,有可能将姓名或现有档案或选定案文按“星号”方式送交马特拉布:
execute !echo " ."run( ".expand("%:p")." )" . "| matlab -nojvm
execute !matlab -nodisplay < .expand("%:p")
noremap <C-CR> :?%%?;/%%/w !matlab -nojvm
但我想利用Matlab GUI(我已经开过)。
这里,我认为我可以找到解决办法:
a. 动向使用关键地图,以便:
- (a) Put in the clipboard something like:
run( path-to-file )
orcd( folder );run( filename )
. - (b) Call a shell command that gives the focus to the Matlab GUI
- (a) Put in the clipboard something like:
此时此刻,我应设在马特拉布指挥窗口,因此,我仅新闻Ctrl-,应当保持剪辑的内容。 (尽管我关于六氯环己烷的过夜,我还是使用“Matlab”与“Windows”关键约束器。)
Step 1(a):
The following will put the run( filename )
command to the clipboard, and Matlab will paste it when Ctrl-V is pressed:
let @+="run( ".expand("%:p")." )"
下面两个指挥部将与欧伦特中纽顿的过去合作,但这不是我所希望的,因为我想避免这一步骤的用意:
let @*="run( ".expand("%:p")." )"
execute !echo " . "run( ".expand("%:p")." )" . "| xclip
<>Step 1(b): 为了注重马特拉布窗口,我使用了以下指挥系统:
wmctrl -a MATLAB &
This works well, but it might also raise a browser window, if it happens to have a page open with the word Matlab in its title (like the one you are reading at the moment).
另见更为复杂的解决办法:。 是否有一条中子指令来确定与某一特定过程有关的窗户识别?。
My (now old) option, but Ctrl-V does not work! Only mouse pasting does:
function! MatRun()
let @+="run( ".expand("%:p")." )"
let @*="run( ".expand("%:p")." )"
:call system( xclip , @+)
!wmctrl -a MAT
endfunction
map <F5> :call MatRun() <cr><cr>
Somehow, Ctrl- 如果与<代码>wmctrl<>/code>合并,则不适用(见以下表格)。 对我来说,整个要点是避免为这一行动使用 mo。
Thank you for your help.
Update: a working option
我的坏处正在使用<代码>xclip。 如果我已经使用<代码>xclip -selection c。 见下文。
如果有人找到更好的解决办法,例如:在马特拉布指挥窗口直接开车,确保你掌握指挥窗口(,-0),或避免将浏览器窗户带上wmctrl
。