重命名崇高文本 2 中打开的文件

Ish*_*han 13 keyboard-shortcuts rename sublime-text-2

我正在尝试重命名 sublime text 2 中打开的文件。在2.0.1 Build 2217 版本中,您可以通过按Ctrl + Shift + Pf2或按opening the command palette by pressing Ctrl + Shift + P 重命名and entering rename。然而,在最新版本的 sublime text 2 2.0.2 Build 2221 中,当你尝试做同样的事情时,什么也没有发生。我还在用户键绑定文件中输入了以下命令,但同样没有任何反应。

{ "keys": ["f2"], "command": "rename_path", "args": {"paths": []} }

这发生在 Windows 和 linux 上。我已经在没有插件的 Sublime Text 2 的新副本上尝试过这个。

小智 8

参考:http : //www.sublimetext.com/forum/viewtopic.php?f=2& t= 9534

设置用于重命名文件的键盘快捷键的另一种简单方法:

安装 SideBar Enhancements,并在 中设置快捷方式Key Bindings - User

{ "keys": ["your shortcut combination"], "command": "side_bar_move" }


d_r*_*ail 7

复制到您的用户键盘映射

{ "keys": ["shift+f2"], "command": "rename_file", "args": { "paths": ["$file"] } }
Run Code Online (Sandbox Code Playgroud)

Packages 文件夹中创建目录/文件:“...Packages/RenameFile/rename_file.py”

import sublime
import sublime_plugin
import os
import functools


class RenameFileCommand(sublime_plugin.WindowCommand):
    def run(self, paths):
        if paths[0] == "$file":
            paths[0] = self.window.active_view().file_name()
        branch, leaf = os.path.split(paths[0])
        v = self.window.show_input_panel("New Name:", leaf, functools.partial(self.on_done, paths[0], branch), None, None)
        name, ext = os.path.splitext(leaf)

        v.sel().clear()
        v.sel().add(sublime.Region(0, len(name)))

    def on_done(self, old, branch, leaf):
        new = os.path.join(branch, leaf)

        try:
            os.rename(old, new)

            v = self.window.find_open_file(old)
            if v:
                v.retarget(new)
        except:
            sublime.status_message("Unable to rename")

    def is_visible(self, paths):
        return len(paths) == 1
Run Code Online (Sandbox Code Playgroud)