Python中文
首页
教程
问答
标签
搜索
登录
注册
在vim中应用于选择的函数
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>当vim在ssh会话中运行时,我正在编写一个删除所选文本(以特殊方式)的函数:</p> <pre><code>python << EOF def delSelection(): buf = vim.current.buffer (lnum1, col1) = buf.mark('<') (lnum2, col2) = buf.mark('>') # get selected text # lines = vim.eval('getline({}, {})'.format(lnum1, lnum2)) # lines[0] = lines[0][col1:] # lines[-1] = lines[-1][:col2+1] # selected = "\n".join(lines) + "\n" # passStrNc(selected) # delete selected text lnum1 -= 1 lnum2 -= 1 firstSeletedLine = buf[lnum1] firstSeletedLineNew = buf[lnum1][:col1] lastSelectedLine = buf[lnum2] lastSelectedLineNew = buf[lnum2][(col2 + 1):] newBuf = ["=" for i in range(lnum2 - lnum1 + 1)] newBuf[0] = firstSeletedLineNew newBuf[-1] = lastSelectedLineNew print(len(newBuf)) print(len(buf[lnum1:(lnum2 + 1)])) buf[lnum1:(lnum2 + 1)] = newBuf EOF function! DelSelection() python << EOF delSelection() EOF endfunction python << EOF import os sshTty = os.getenv("SSH_TTY") if sshTty: cmd6 = "vnoremap d :call DelSelection()<cr>" vim.command(cmd6) EOF </code></pre> <p>显然,vim在所选的每一行上都调用函数,这破坏了函数的整体目的。我应该如何正确地做到这一点?你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>好的,我知道了。我只需要在调用函数之前添加一个Esc键:</p> <pre><code>python << EOF import os sshTty = os.getenv("SSH_TTY") if sshTty: cmd6 = "vnoremap d <esc>:call DelSelection()<cr>" vim.command(cmd6) EOF </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
对从字符串的偶数位置返回最大整数的函数进行编码时出现问题
2 回答
对从数据库中选择的值进行类型测试
6 回答
对从数据库获取的线程注释进行分组
4 回答
对从文件中读取的列表进行排序?
5 回答
对从文件对话框加载图像有什么建议吗?
7 回答
对从文件导入的列表排序。。。Python
6 回答
对从文档中提取的数字列表调用sum()
4 回答
对从查询中提取的distict值进行排序
10 回答
对付布劳斯特_handlers.BlobstoreUploadHand
10 回答
对代码和变量使用dict
7 回答
对代码对象使用uncompyle6的正确方法是什么?
4 回答
对代码段的所有更改的时间表,以恢复b
8 回答
对代码的小改动会产生AttributeError(Python、Networkx)
6 回答
对以“test\开头的文件名也执行pydocstyle
6 回答
对以append模式打开的Python文件对象调用tell()如果不是手动查找,则返回0
8 回答
对以下代码中~的函数感到好奇
2 回答
对以十为单位的输入应用规范化
10 回答
对以完全相同的方式相互引用的两个列表(整数和卡片对象列表)进行排序
10 回答
对以数字开头的列运行Pandas查询(Python 3)
1 回答
对以连字符开头的参数使用python argparse模块
6 回答