ctrl+shift+p filters: :st2 :st3 :win :osx :linux
浏览

文件浏览器

作者: aziz 全部

舍弃侧边栏,使用键盘在常规标签中浏览文件,像专业人士一样!

详细信息

安装

  • 总数 62K
  • Win 34K
  • Mac 16K
  • Linux 12K
8月6日 8月5日 8月4日 8月3日 8月2日 8月1日 7月31日 7月30日 7月29日 7月28日 7月27日 7月26日 7月25日 7月24日 7月23日 7月22日 7月21日 7月20日 7月19日 7月18日 7月17日 7月16日 7月15日 7月14日 7月13日 7月12日 7月11日 7月10日 7月9日 7月8日 7月7日 7月6日 7月5日 7月4日 7月3日 7月2日 7月1日 6月30日 6月29日 6月28日 6月27日 6月26日 6月25日 6月24日 6月23日 6月22日
Windows 5 1 1 0 0 1 2 1 2 3 2 0 0 4 2 2 0 0 4 0 1 0 7 1 0 1 2 3 1 0 1 3 0 0 1 1 3 2 1 2 1 1 1 2 0 1
Mac 1 1 0 1 0 0 1 0 0 0 1 0 1 0 1 6 0 0 0 0 0 2 0 1 0 1 0 0 2 2 1 0 1 0 0 0 1 0 0 1 0 0 0 0 0 0
Linux 0 0 1 0 0 0 2 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 3 0 2 0 2 0 0 1 0 0 0 1 2 0 1 0 0 0 2 0 0 2 0 0

Readme

源代码
raw.​githubusercontent.​com

FileBrowser for SublimeText

舍弃侧边栏,使用键盘在常规标签中浏览文件,像专业人士一样!

您也可以将其用作侧边栏,可放置在右侧或左侧

安装

您可以通过 Sublime Package Control 进行安装

或者将此仓库克隆到您的SublimeText Packages目录中,将其重命名为 FileBrowser,在这种情况下,如果您想启用自动刷新功能(注意这是一个可选功能,您可以选择忽略它),则可能需要额外的步骤

  1. 满足依赖
    • 如果您已安装Package Control,请打开命令面板并运行 Package Control: Satisfy Dependencies 命令
    • 如果您没有 Package Control,则手动安装依赖项(每次克隆都应进入Packages目录)
      1. 克隆 https://github.com/codexns/package_events
      2. 克隆 https://github.com/vovkkk/sublime-pathtools 并将其重命名为 pathtools
      3. 克隆 https://github.com/vovkkk/sublime-watchdog 并将其重命名为 watchdog
      4. 编写自己的插件,它会处理加载顺序:必须先加载 pathtools,然后是 watchdogpackage_events,这就是为什么我们推荐使用Package Control,但也有一种解决方案
  2. 重新启动Sublime Text

命令和快捷键

此插件不会为在浏览模式下打开新的标签添加任何快捷键。虽然,执行此操作的命令在命令面板中可用,但建议将F1绑定到使用该段代码(您可以将此代码添加到键绑定 - 用户文件中),以在浏览模式下打开当前文件目录:

{
  "keys": ["f1"],
  "command": "dired",
  "args": { "immediate": true }
}

您还可以使用可选参数来调整行为。

  • "single_pane": true ——始终使用单个文件浏览器查看窗口,即更倾向于复用现有窗口而不是创建新的。
  • "other_group": "left"(或"right")——在另一个组中打开文件浏览器,即像侧边栏一样;如果您使用"left",则所有来自左侧组的其他标签都将移动到右侧。
  • "project": true ——始终优先于当前视图的路径选择项目的目录(们)。

您可以根据需要混合这些参数(也许,甚至为不同情况绑定几个快捷键);例如,要完全模拟侧边栏,它将是:

{
  "keys": ["f1"],
  "command": "dired",
  "args": {
    "immediate": true,
    "single_pane": true,
    "other_group": "left",
    "project": true
  }
}

命令

命令 描述
浏览模式... 要求以浏览模式打开一个目录
浏览模式:当前文件或项目 以浏览模式打开当前文件或项目的目录
浏览模式:左侧侧边栏 以浏览模式作为左侧侧边栏打开
浏览模式:右侧侧边栏 以浏览模式作为右侧侧边栏打开
浏览模式:跳转列表 显示跳转列表视图(参见下面的跳转列表部分)
浏览模式:跳转列表快速面板 在快速面板中显示跳转列表

快捷键

通用快捷键
命令 快捷键
快捷键页面 ?
刷新视图 r
导航快捷键
命令 快捷键
移至上一个 k
移至下一个 j
展开目录 l
折叠目录 h
切换展开/折叠 o
转到父目录 退格
转到第一个 ⌘+↑ctrl+home
转到最后一个 ⌘+↓ctrl+end
跳转到 /
转到目录 g
快速跳转到目录 p
在文件中查找 s
切换标记 m
切换标记并向下移动 shift+↓
切换标记并向上移动 shift+↑
切换所有标记 t
取消所有标记 u
按扩展名标记 *
动作快捷键
命令 快捷键
重命名 R
删除到垃圾桶 D
删除(不发送到垃圾桶) alt+shift+d
创建目录 cdenter
创建目录并打开 cd⌘+enter
创建文件 cfenter
创建文件并打开 cf⌘+enter
创建/编辑/删除跳转点 P
切换隐藏文件 H
在Finder/文件资源管理器中打开 \
在新窗口中打开 W
在另一组中打开文件 enter
在新标签中打开所有标记的项 ⌘+enter / ctrl+enter
在另一组中预览文件 shift+enter
切换将目录添加到项目 f
将当前目录设置为项目唯一的目录 F
在Mac上快速查看或在其他操作系统上打开默认应用 space

如果您更喜欢在Mac上使用默认应用程序打开文件而不是快速查看,请在您的用户键绑定文件中添加以下代码:

{
  "keys": [" "],
  "command": "dired_quick_look", "args": { "preview": false},
  "context": [
    { "key": "selector", "operator": "equal", "operand": "text.dired" },
    { "key": "setting.dired_rename_mode", "operand": false }
  ]
}
重命名模式快捷键
命令 快捷键
应用更改 enter
放弃更改 escape

注意:所有这些快捷键都可以在您的自定义键绑定文件中进行修改。打开默认键绑定文件(首选项包设置文件浏览器键绑定 — 默认)并将您想要更改的键绑定复制到您的键绑定 — 用户文件中。

用法

选择文件和目录

您可以通过标记它们使用 m,或者 Shift + ↑/↓ 或仅使用 SublimeText 的多光标功能并将光标扩展到包含这些文件/目录的行来选择文件和/或目录。

按下 o 可展开或折叠目录(或使用标记或多个光标标记的多个目录)。按下 l 也会在不弹出任何窗口的情况下展开目录,按下 h 则将折叠目录。

搜索

除了可以通过 / 使用增量搜索外,您还可以使用内置的“前往符号...”(⌘+rctrl + r)进行模糊搜索。

“在文件中查找...”集成

s 打开“在文件中查找...”面板——如果您标记了一些文件,它们将自动填充 在哪里查找 字段,否则它将填充为当前目录路径。

重命名模式

重命名命令将视图放入 重命名模式。视图变为可编辑状态,从而可以直接在视图中使用所有 SublimeText 工具(多光标、查找和替换等)来重命名文件。

编辑完成后,按 enter 提交更改或按 escape 取消更改。

剪切、复制和粘贴文件

您可以使用 xcv 短截键配合 ctrl 移动和复制文件/文件夹。

您可以根据需要复制和/或剪切任意数量的项目,并将它们从多个位置复制——状态栏将显示已复制和已剪切的项目数量。
如果更改了主意,可按 ⌘+zctrl+z 清除两个列表。注意,这些列表存储在 FileBrowser 设置文件中,因此需要时可以手动编辑它。

粘贴时,每个项目都将根据需要复制或移动到光标下的文件夹中。
如果想要不移动光标修改目标路径,可以使用 ⌘+shift+vctrl+shift+v 打开提示;您甚至在之前没有复制/剪贴的情况下使用这个提示,即如果设置文件中的列表为空,则提示将自动选择标记或选定的项并建议复制它们。

在 Windows 上,所有操作都将通过系统 API 以其所有功能(例如重命名语义、交互式覆盖、进度条、暂停/取消等)执行。

在其他操作系统上,所有操作都通过 Python API 执行,这并不是那么酷,但您将在状态栏中看到模糊的进度,并且可以选择如何在发生冲突时操作(覆盖、重复、跳过),但是存在一些限制,例如无法覆盖或合并文件夹。
如果有多个同名的文件夹或文件,系统会为旧名称添加一个分隔符和通用数字,例如,file.ext的副本会是file — 2.ext。您可以更改分隔符为任何字符串(注意 在 Windows 和 Linux 中不允许的路径字符),例如。

{
  "dired_dup_separator": "_"
}

因此新文件名将是file_2.ext

在新窗口中打开

选择几个文件和/或目录(无论是通过标记还是使用 SublimeText 的常规多光标功能)然后按 w 键将它们在新的窗口中打开。

文件打开后关闭 FileBrowser

将以下代码添加到您的用户键绑定文件中

{
  "keys": ["enter"],
  "command": "dired_select", "args": {"and_close": true},
  "context": [
    { "key": "selector", "operator": "equal", "operand": "text.dired" },
    { "key": "setting.dired_rename_mode", "operand": false }
  ]
}

快捷列表与跳转点

添加跳转点

浏览模式 中,您可以按 P(Shift + p)将当前目录添加到您的 快捷列表 中,我们称它为 跳转点。它类似于其他文件管理器中的书签或收藏夹。

查看跳转列表

有多种方式查看你的跳转列表

浏览模式下快速面板中的跳转列表

在浏览模式下,你可以按 p 来在 Sublime 的快速面板中查看跳转列表。

注意:此命令不会创建新窗口或项目,它允许你快速跳转到特定位置。

从任何地方打开快速面板中的跳转列表

打开 命令面板 并搜索 浏览模式:跳转列表快速面板(输入 bmq 应该可以找到它)。如果你想节省一些按键,你可以在你的用户按键绑定文件中添加以下代码

{
  "keys": ["f3"],
  "command": "dired_jump",
  "args": { "new_window": true }
}

你可以在上面的代码中将 f3 改为你自定义的键盘快捷键。

注意:此命令会创建新窗口,并在 Sublime 中以浏览模式打开该目录。视图默认以左侧侧边栏打开。要更改此设置,请将 dired_open_on_jump 添加到你的用户设置文件(首选项包设置文件浏览器设置 — 用户)。将其设置为 "right" 以在窗口右侧打开侧边栏,或设置为 true 以填充全部空间。将值设置为 false 将防止在跳转时打开任何视图。
要在一个窗口中打开目录,请使用 false 调用命令。如果要保留空窗口,请使用 "auto" 调用命令,并使用 "dired_smart_jump": true 编辑你的用户设置。

跳转列表视图

打开 命令面板 并搜索 浏览模式:跳转列表(输入 bmj 应该可以找到它)。此命令将打开一个 跳转列表视图,看起来像这样

如果你想节省一些按键,你可以在你的用户按键绑定文件中添加以下代码

{ "keys": ["f3"], "command": "dired_jump_list" }

你可以在上面的代码中将 f3 改为你自定义的键盘快捷键。跳转列表视图可以使用 /j/ k 浏览。在跳转点上按下 enter 将以浏览模式视图或侧边栏打开新窗口,或打开与 dired_open_on_jump 配置相同的内容。如果你在用户设置中将 dired_smart_jump 设置为 true,则将重用空窗口。

在新空窗口中打开跳转列表(仅限 ST3)

你还可以配置文件浏览器设置,使它在新空窗口中自动打开 跳转列表视图。这发生在你运行 new_window 命令(通过菜单或使用快捷键)时或 SublimeText 启动且没有之前打开的窗口时。为此,你需要将以下代码添加到你的用户设置文件(首选项包设置文件浏览器设置 — 用户

{ "dired_hijack_new_window": "jump_list" }

编辑/删除跳转点

当你在 跳转列表视图 中时,按 P(Shift + p)允许你重命名或删除(通过清除名称)当前高亮的跳转点。

当跳转点在 浏览模式 中打开时,按 P 也会这样做。

注意:当跳转点在 浏览模式 中打开时,标题中的路径将带有跳转点的名称前缀。

隐藏文件

默认情况下,文件浏览器显示浏览器目录中的所有文件。按 h 切换显示隐藏文件。对于所有平台,以 . 开头的文件被认为是隐藏的;此外,在 Windows 上,具有隐藏属性设置的文件也认为是隐藏的。

要将文件浏览器设置为默认隐藏隐藏文件,请将以下内容添加到你的设置中

{ "dired_show_hidden_files": false }

你还可以使用 dired_hidden_files_patterns 设置自定义用于确定文件是否应隐藏的模式,它应是一个模式字符串或模式字符串列表

{ "dired_hidden_files_patterns": [".*", "__pycache__", "*.pyc"] }

VCS 集成

如果在当前目录中git status(或hg status)返回可着色输出,则已修改和未跟踪的文件将分别由橙色和绿色图标表示。您可以使用设置"vcs_color_blind": true — 未跟踪的文件将在其图标左侧获得垂直线,而修改的文件将在其图标下方获得水平线。如果Git(或HG)未在您的PATH中,您可能需要设置git_path(或hg_path)设置(请参阅默认设置文件中的示例)。

劫持新空窗口(仅限ST3)

_FileBrowser可以劫持新空窗口并显示浏览模式跳转列表视图。这是当您运行new_window命令(通过菜单或使用快捷键)时,或者当SublimeText启动且没有打开的先前窗口时。

该功能仅适用于ST3,默认情况下被禁用。您可以通过在用户设置文件中将dired_hijack_new_window设置为“jump_list”或“dired”来激活它(请参阅用户设置文件中的示例)。

要禁用此功能,请将其设置为false或从您的用户设置文件中移除。

{ "dired_hijack_new_window": "jump_list"}

使用鼠标!

我们认为,将您的手放在键盘上,而不是移动它们去接触鼠标或触摸板,可以提升您的生产力。尽管如此,可能有一些情况下,使用鼠标点击文件会更简单,或者您可能正处于成为键盘神手的过渡期,并且仍然习惯于使用鼠标。对于这些情况,您只需双击一个文件或目录即可打开它们。尽管我们坚信这一信念,但我们还是开明的!:)

自动刷新

这个功能应该是当在打开和/或展开的目录内发生某些事件时(即文件已创建/删除/修改)自动刷新对应视图。

对应视图的自动刷新不应超过每秒一次(出于性能原因),然而,最长时间延迟不受限制,这意味着在极少数情况下,自动刷新可能不会长时间发生,但当然您总是可以使用r手动刷新视图。

可以在用户设置文件中全局禁用自动刷新

{ "dired_autorefresh": false }

并且,无论全局设置如何,都可以通过上下文菜单按视图切换。

调整外观和感觉

自定义UI元素

如果您不喜欢符号并想隐藏它(那么您应该使用键盘绑定backspace返回父目录),您可以在您的用户设置文件中这样做(请参阅用户设置文件中的示例)。

{ "dired_show_parent": false }

如果您想在文件列表的顶部看到标题(带下划线的完整路径)

{ "dired_header": true }

如果您想在文件选项卡的标题中看到完整路径,从而在选项卡激活时在窗口标题中看到它

{ "dired_show_full_path": true }

更改颜色方案

如果您不喜欢在FileBrowser中使用的颜色,只需将此文件复制到您的用户目录,更改颜色,并在您的用户设置文件中粘贴以下代码

{ "color_scheme": "Path to your custom color scheme file. e.g. Packages/User/custom_dired.hidden-tmTheme" }

更改字体

在SublimeText中更改侧边栏的字体不是很容易!如果使用FileBrowser作为侧边栏,就不是那么容易。由于它只是一个具有特殊语法的正常Sublime视图,因此可以将字体更改为您系统上可用的任何字体。

要完成此操作,请将以下代码添加到用户设置文件中(别忘了更改字体名称!)。

{ "font_face": "comic sans" }

更改字体大小

通常,您希望文件浏览器使用的字体大小比您的正常视图小。这可以帮助您看到更多内容,并防止当您更改正常视图的字体大小时发生任何字体大小更改。

您可以通过将以下代码添加到用户设置文件中更改字体大小。

{ "font_size": 13 }

更改嵌套目录缩进

嵌套目录的缩进量由 tab_size 控制。默认情况下 FileBrowser 使用 3 作为 tab_size,但您可以在用户设置文件中自定义它(偏好设置包设置FileBrowser设置 — 用户)。

其他设置

禁用发送项目到回收站时的确认对话框(不影响系统设置)
{ "dired_confirm_send2trash": false }
更改 FileBrowser 控件栏的初始宽度(作为侧边栏)

值可以是按窗口宽度的分数表示的 float,例如 1.0 — 所以默认值 0.3 表示 FileBrowser 将占用略小于窗口宽度的三分之一;
或作为像素数的 int,但是,如果值大于当前窗口宽度(例如 1920),则将回退到 0.9

{ "dired_width": 250 }  // approximately 250 pixels

{ "dired_width": 0.2 }  // fifth part of window
在 FileBrowser 视图中保持 Vintageous 启用(请注意键绑定不兼容问题)

请注意这是 Vintageous 设置,如果它不起作用,您应向相应的 代码库 报告

{ "__vi_external_disable": false }

针对 Windows 用户的通用提示

DirectWrite 渲染提供了更好的 Unicode 支持,整体上字体显示效果也更好,要启用它,请将以下设置添加到 偏好设置设置 — 用户

{ "font_options": ["directwrite"] }

感谢

这是一个由 Michael Kleehammer 编写的优秀的 dired 插件 的分支。

许可证

请参阅 LICENSE 文件