SublimeText 中当前选择的 ROT47
ROT47 of the current selection in SublimeText
当做CTRL+SHIFT+P时,有命令Rot13 selection
允许 encrpyt the selected text.
我想添加一个名为 Rot47 selection
的命令:
selection = 'Test'
print ''.join(chr(33 + ((ord(ch) + 14) % 94)) for ch in selection)
#Output: %6DE
在 SublimeText 中的何处编写此 Python 代码,以便在 CTRL+SHIFT[=27 中显示此新命令=]+P?
可以写个插件
一些初学者(不是 100% 正确)代码可用 here。
Rot47 的完整插件将具有以下代码:
import sublime, sublime_plugin
class Rot47Command(sublime_plugin.TextCommand):
def run(self, edit):
for region in self.view.sel():
if not region.empty():
s = self.view.substr(region)
s = ''.join(chr(33 + ((ord(ch) + 14) % 94)) for ch in s)
self.view.replace(edit, region, s)
在哪里写这段代码?
工具 > 新插件... 将打开一个带有一些样板代码的新缓冲区。用上面的代码替换样板并将文件另存为 rot47.py
in /<sublime-text-dir>/Packages/User/
.
您可以通过使用 Ctrl+` 打开控制台并输入 view.run_command('rot47')
并点击 输入。确保您在 运行 新的 Rot47 命令之前选择了一些文本。
此外,如果您想为新的 rot47 命令创建键盘快捷键:转到首选项 > 键绑定 -- 用户并添加以下条目:
{ "keys": ["ctrl+shift+4"], "command": "rot47" }
(你当然可以选择更有意义的组合键。)
上面的插件代码做了什么?
self.view.sel()
在选定的文本区域上给出一个迭代(在同一个缓冲区中可以有多个选择,去 Sublime!)。一个区域基本上是一个 (start_index, end_index)
对,表示一个选定的子字符串。 self.view.substr(region)
为您提供所需的子字符串。
然后我们根据需要修改选择文本(变量 s
)并用新文本替换选择(对 self.view.replace()
的调用)。
有关更广泛的 API 参考,请参阅 this。
当做CTRL+SHIFT+P时,有命令Rot13 selection
允许 encrpyt the selected text.
我想添加一个名为 Rot47 selection
的命令:
selection = 'Test'
print ''.join(chr(33 + ((ord(ch) + 14) % 94)) for ch in selection)
#Output: %6DE
在 SublimeText 中的何处编写此 Python 代码,以便在 CTRL+SHIFT[=27 中显示此新命令=]+P?
可以写个插件
一些初学者(不是 100% 正确)代码可用 here。
Rot47 的完整插件将具有以下代码:
import sublime, sublime_plugin
class Rot47Command(sublime_plugin.TextCommand):
def run(self, edit):
for region in self.view.sel():
if not region.empty():
s = self.view.substr(region)
s = ''.join(chr(33 + ((ord(ch) + 14) % 94)) for ch in s)
self.view.replace(edit, region, s)
在哪里写这段代码?
工具 > 新插件... 将打开一个带有一些样板代码的新缓冲区。用上面的代码替换样板并将文件另存为 rot47.py
in /<sublime-text-dir>/Packages/User/
.
您可以通过使用 Ctrl+` 打开控制台并输入 view.run_command('rot47')
并点击 输入。确保您在 运行 新的 Rot47 命令之前选择了一些文本。
此外,如果您想为新的 rot47 命令创建键盘快捷键:转到首选项 > 键绑定 -- 用户并添加以下条目:
{ "keys": ["ctrl+shift+4"], "command": "rot47" }
(你当然可以选择更有意义的组合键。)
上面的插件代码做了什么?
self.view.sel()
在选定的文本区域上给出一个迭代(在同一个缓冲区中可以有多个选择,去 Sublime!)。一个区域基本上是一个 (start_index, end_index)
对,表示一个选定的子字符串。 self.view.substr(region)
为您提供所需的子字符串。
然后我们根据需要修改选择文本(变量 s
)并用新文本替换选择(对 self.view.replace()
的调用)。
有关更广泛的 API 参考,请参阅 this。