我經常需要輸入文字(包括重複的字符)是這樣的:的TextMate:如何輸入字符的重複序列?
------------------------------------
TODO
------------------------------------
在Emacs,我可以做一個
C-u 60 -
,這是一個按Ctrl + U然後是 「60」 後通過一個「 - 」,這使得輸入重複的字符序列容易。
有沒有辦法做這樣的事情在TextMate的?
我經常需要輸入文字(包括重複的字符)是這樣的:的TextMate:如何輸入字符的重複序列?
------------------------------------
TODO
------------------------------------
在Emacs,我可以做一個
C-u 60 -
,這是一個按Ctrl + U然後是 「60」 後通過一個「 - 」,這使得輸入重複的字符序列容易。
有沒有辦法做這樣的事情在TextMate的?
在TextMate中,打開包編輯器,選擇語言,你想這樣做的(如果你想在所有語言的這一功能,使用Source束)點擊加號底部離開,然後選擇「新命令」。爲保存字段選擇「Nothing」,爲兩個輸入字段選擇「選定的文本或行」。然後粘貼到的命令字段:
#!/usr/bin/python
import sys
commandLine = raw_input("")
tmArgs = commandLine.split()
numberOfArgs = len(tmArgs)
for i in range(eval(tmArgs[0])):
for j in range(1, numberOfArgs):
sys.stdout.write(tmArgs[j])
然後,您可以選擇鍵盤快捷鍵,在啓動場將其激活。它的工作方式非常類似emacs的命令:鍵入要後跟一個字符的字符數。然後選擇他們兩人(這一步是不必要的,如果他們就行了純文本),並按下快捷鍵。我的腳本允許您指定多個字符進行打印,並用空格分隔。所以,如果你輸入
10 - =
,並擊中了快捷鍵,你會得到
-=-=-=-=-=-=-=-=-=-=
編輯:考慮這件事後......這裏的另一個版本。這一個將在數字後面打印字符串。因此,例如
6 -= (space)
打印
-= -= -= -= -= -=
這裏是一個版本:
#!/usr/bin/python
import sys
import string
commandLine = raw_input("")
timesToPrint = eval(commandLine.split()[0])
firstSpace = string.find(commandLine, " ")
for i in range(timesToPrint):
sys.stdout.write(commandLine[firstSpace + 1:])
爲你提供了具體的例子,你可以按下Ctrl-Shift-B鍵,「TODO」來創建一個文本標識。
對於誰投下來,我很想知道爲什麼。 – PlagueHammer 2009-02-07 00:36:40