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

Parinfer

oakmac 所有

Sublime Text 的 Parinfer 插件

详情

安装次数

  • 总计 3K
  • Win 550
  • Mac 1K
  • Linux 666
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日
Windows 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Mac 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0
Linux 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

说明

源码
raw.​githubusercontent.​com

Sublime Text 的 Parinfer

A Parinfer package for Sublime Text.

什么是 Parinfer?

Parinfer 是一种文本编辑模式,可以从缩进推断 Lisp 代码结构(反之亦然)。有关 Parinfer 的详细解释,请参见 这里

简单来说,Parinfer 的目标是让您在编写或修改 Lisp 代码时,永远不需要考虑“平衡括号”。只需像平时一样缩进代码,Parinfer 就能推断出预期的括号结构。

安装

包控制

如果您已安装 包控制,则可以轻松安装 Parinfer 软件包

  1. 在 Sublime Text 中,通过按 Ctrl+Shift+p(在 Mac 上为 Cmd+Shift+p)打开命令面板
  2. 键入 install,然后选择 Package Control: Install Package
  3. Package Control 加载来自互联网的软件包列表后,应会短暂出现一个文本提示
  4. 键入 parinfer 并按 Enter
  5. 这就是全部!Parinfer 已经安装。

Linux / OSX

您可以将此仓库链接到 Sublime Text 软件包目录

cd ~
git clone [email protected]:oakmac/sublime-text-parinfer.git
ln -s ~/sublime-text-parinfer ~/Library/Application\ Support/Sublime\ Text/Packages/Parinfer

Windows

cd %APPDATA%\Sublime Text 2\Packages
git clone https://github.com/oakmac/sublime-text-parinfer.git Parinfer

使用方法

文件扩展名

安装完成后,当您打开具有已知文件扩展名的文件时,Parinfer 会自动激活。

您可以通过转到“首选项”->“包设置”->“Parinfer”->“设置”来更改要监视的文件扩展名列表。

打开文件

当打开具有识别扩展名的文件时,Parinfer 将进入 Parinfer: 等待 模式,等待对缓冲区的第一次编辑。当第一次编辑发生时,Parinfer 将进入 Parinfer: 缩进 模式并开始根据缩进控制闭合括号。

v1.0.0 版本的行为变化

在 v1.0.0 之前,当打开文件时,Parinfer 会首先在整个文件上运行括号模式,然后再进入缩进模式(更多详情请参见 修复现有文件)。对于 Parinfer 的普通用户来说,这并不成问题,因为使用 Parinfer 编写的文件运行括号模式将不会导致任何变化。

然而,当用户打开的不是使用 Parinfer 编写的文件时,这可能会对 Parinfer 新手造成 一些混淆,他们可能会看到他们本不想编辑的地方发生了编辑。

从 v1.0.0 开始,Parinfer 将首先进入“等待”模式,并且在第一次修改缓冲区后才开始控制闭合括号。如果您希望使用 v1.0.0 之前的旧版本行为,请将配置设置 run_paren_mode_when_file_opened 设置为 true

此外,还有一个新的 Parinfer: 在当前缓冲区运行括号模式 命令,可以在任何时候执行,并将括号模式运行在整个活动缓冲区上。

快捷键和状态栏

命令 Windows/Linux Mac
开启/切换模式 Ctrl+( Cmd+(
关闭 Ctrl+) Cmd+)

状态栏将指示您所在的模式或如果 Parinfer 关闭则显示无内容。

父表达式黑客

出于性能原因,此扩展使用了可能在实际情况下导致奇特行为的黑客技巧。它假设位于行首的开放式括号后面跟着一个字母字符,即:正则表达式 ^\([a-zA-Z] 是一个新的“父表达式”的开始,并告诉 Parinfer 算法从该处开始分析,直到下一个与之匹配的行。这种假设在大多数情况下可能是正确的,但可能会在多行字符串或其他非常规环境中被打断。这已在 问题 #23 中跟踪;如果您遇到问题,请添加到该问题中。

许可

ISC 许可证