给出一个python文件,下面不断重复:
def myFunction(a, b, c):
if a:
print b
elif c:
print 'hello'
Run Code Online (Sandbox Code Playgroud)
我想使用熟悉的vim移动来移动并编辑此文件.例如,使用(,),[[,]],{,}或使用像di这样的命令删除/ yanking /更改文本.
在其他语言(如C++,Java,C#等)中,你有大括号,因此使用像di这样的运动可以很容易地找到匹配的大括号并对该块进行操作.事实上,如果我在上面的文本中使用'b'字符并在vim中执行di),它会成功删除两个parens之间的文本.
我认为问题在于python检测代码块.使用(,),[[,]],{或}作为动作几乎都做同样的事情,带你到开始(在def线上方或在def线上)或结束(在函数的最后一行之后)功能.据我所知,没有办法轻易告诉vim"为这个缩进块选择所有东西." 在上面的例子中,我想进入if行的'i',输入di}并删除整个if块(到这个特定函数的末尾).
我确信应该可以告诉vim在缩进的基础上进行这样的动作(好吧,也许不是那个特定的动作,而是一些用户定义的动作).有关如何实现这一点的任何想法?
我想知道是否有办法在shell脚本中注释掉一组行.我怎么能这样做?我们可以在其他编程语言中使用/**/.当我转换/使用/修改另一个脚本并且我想保留原始行而不是删除时,这是最有用的.
对于未使用的所有行,查找和前缀#似乎是一项繁琐的工作.
可以说脚本中有100行代表不使用的行.我想一次性评论它们.那可能吗?
有没有其他人发现VIM的语法突出显示Javascript次优?我发现有时我需要滚动以便调整语法高亮,因为有时它会神秘地丢弃所有突出显示.
是否有任何解决方法或方法来解决这个问题?我正在使用vim 7.1.
假设我们有以下功能:
foo <- function(x)
{
line1 <- x
line2 <- 0
line3 <- line1 + line2
return(line3)
}
Run Code Online (Sandbox Code Playgroud)
我们想要改变第二行:
line2 <- 2
Run Code Online (Sandbox Code Playgroud)
你会怎么做?
一种方法是使用
fix(foo)
Run Code Online (Sandbox Code Playgroud)
并改变功能.
另一种方法是再次编写该函数.
还有另外一种方法吗?(记住,任务是改变第二行)
我想要的是某种方式将函数表示为字符串向量(好吧,字符),然后更改其中一个值,然后再将其转换为函数.
我知道,这是一个非常微不足道的问题.但我在网上找不到任何东西.
我需要禁止用户编辑文本字段内的文本.这样当单击文本时,键盘就不会显示出来.
有任何想法吗?
一个程序化的解决方案,或者如果可以通过故事板,那将是很棒的.
如何在输入UITextView(用户点击编辑它)并离开视图(用户点击以离开它)时调用一些代码?
感谢任何帮助.
我使用powershell远程连接到另一台计算机,非常好.可以做很多,但如何编辑文件?
PS C:\ Users\guutlee> Enter-PSSession -ComputerName appprod
[appprod]:PS C:\ Users\guutlee\Documents> cd\myapp
[appprod]:PS C:\ myapp>
如何在远程计算机上的文件上打开文件编辑器?
[appprod]:PS C:\ myapp>编辑app.config
所以编辑"filename"似乎挂起,来自powershell.exe或powershell_ise.exe
我唯一能想到的就是退出pssession和"start\webprod\c $\inetpub\myapp\web.config",这将打开visual studio.
[appprod]:PS C:\ myapp>退出
PS C:\ Users\guutlee> start\agobuild\c $\myapp\app.config
PS C:\ Users\guutlee> Enter-PSSession -ComputerName appprod
[appprod]:PS C:\ Users\guutlee\Documents> cd\myapp
[appprod]:PS C:\ myapp> myapp.exe
当然,我必须重新找到该文件,希望c $共享可用且可访问,并重新连接我的pssession并在我想继续时重新找到我的工作目录.它似乎并不优雅.
我可以把它包裹起来这是一个功能,但很难把我的脑袋包裹起来......
那么如何使用远程pssession方便地编辑文件?
编辑
kbrimington的帖子让我想到了ssh的-X选项.对于PowerShell会话而言,将窗口应用程序转发回原始窗口环境可能会是一件非常棒的事情......
但我仍然很高兴只是编辑文件.
编辑
使用vi,emacs,cmd和编辑测试
PS C:\ Users\Meredith> Enter-PSSession -ComputerName appprod
[appprod]:PS C:\ Users\guutlee\Documents> C:\ vim\vim72\vim filename.txt
[appprod]:PS C:\ Users\guutlee\Documents> C:\ emacs-23.2\bin\emacs.exe -nw filename.txt
emacs.exe:emacs:标准输入不是tty
Run Code Online (Sandbox Code Playgroud)+ CategoryInfo \: NotSpecified: (emacs: standard input …
我希望我的UITableView的行为类似于联系人编辑器中的表格,即用户应该点击编辑,并且每个部分的底部应该出现一个"添加新类别"行.
我使用下面的代码来执行此操作,但问题是没有平滑过渡,因为在联系人中.相反,新行突然出现.我怎样才能获得动画?
另外,我如何回应"添加新类别"行的点击?在我当前的实现中,该行不可单击.
用户开始编辑时是否需要重新加载数据?我这样做是因为否则不会绘制插入行.
谢谢.
- (void)setEditing:(BOOL)editing animated:(BOOL)animated {
[super setEditing:editing animated:animated];
[self.tableView setEditing:editing animated:animated];
[tableView reloadData];
}
- (NSInteger)tableView:(UITableView *)_tableView numberOfRowsInSection:(NSInteger)section {
// ...
if( self.tableView.editing )
return 1 + rowCount;
}
- (UITableViewCell *)tableView:(UITableView *)_tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
// .....
NSArray* items = ...;
if( indexPath.row >= [items count] ) {
cell.textLabel.text = @"add new category";
}
// ...
return cell;
}
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath {
NSArray* items = ...;
if( indexPath.row == [items count] ) …Run Code Online (Sandbox Code Playgroud) 我最近尝试从使用切换python-mode.el到python.el编辑emacs中的python文件,发现这种体验有点陌生和非生产性,并且匆匆回来.我已经习惯了python-mode.el十年了,所以也许我的方式有点不对劲.我有兴趣听到任何仔细评估这两种模式的人,特别是他们对每种模式的利弊,以及他们的工作如何与特定的特征相互作用python.el.
我的两个主要问题python.el是
访问python文件的每个缓冲区都有自己的劣质交互式python shell.我习惯在一个交互式shell中进行开发,并在python文件之间共享数据.(从软件工程的角度来看,可能看起来很糟糕,但我通常使用大量数据集,这些数据集需要一段时间才能加载到内存中.)
python.el中的骨架模式支持,似乎绝对无偿(python的语法使得这种自动化不必要)和设计糟糕(例如,它不知道" for"循环生成器表达式或" <expr 1> if <cond> else <expr 2>"表达式,所以你必须回去并且在坚持你在迷你缓冲区中输入表达式子句之后删除它有用地插入的冒号.)我无法弄清楚如何关闭它.有一个python.el声称控制它的变量,但它似乎没有用.可能是python.el我使用的版本被破坏了(它来自debian emacs-snapshot包)所以如果有人知道它的最新版本,我想听听它.(大约两周前,我在CVS emacs中的版本遇到了同样的问题.
在vim中,我常见的编程任务是:
:s/some pattern/
Run Code Online (Sandbox Code Playgroud)
做一些工作
n # 找到下一个条目
做一些工作
n # 找到下一个条目......
现在,s/....只搜索当前文件.
有没有办法可以做到这一点,但搜索文件目录?说做"S /..../"超过在subdirectoires的所有文件pwd,在结束.HPP的.cpp?
谢谢!
editing ×10
vim ×3
iphone ×2
objective-c ×2
python ×2
comments ×1
emacs ×1
function ×1
insert ×1
ios ×1
javascript ×1
powershell ×1
r ×1
shell ×1
swift ×1
uitableview ×1
uitextfield ×1
uitextview ×1
unix ×1