2010-05-31 64 views
25

最近在Mac上切换到Textmate进行编码。在个人电脑上,当我想要插入或跳出一段代码时,只需突出显示,然后按Tab或Shift + Tab将其移出即可。当您将一个额外的循环或条件语句添加到代码块以保持所有内容的整齐和整齐缩进时,它非常有用。Textmate选项卡和de-tab选定块

在Textmate上,但是当我尝试它时,它只是用选项卡替换我选择的文本。那么是否有办法在textmate中执行tab和de-tab代码行?

回答

59

缩进:Alt + Tab键

取消缩进:按住Shift + Alt + Tab键

+0

不错的一个。谢谢 – 2010-05-31 15:29:03

+0

:) http://manual.macromates.com/en/可能有点通读,但它是一个很好的资源。大部分情况下,您将在学习TextMate时使用它。 – 2010-05-31 15:40:49

+9

为什么Textmate支持选项卡和Shift +选项卡以便在选择多行时像多数编辑器一样进行缩进? – 2011-01-07 12:48:37

7

热键是命令左托架移动左和命令右托架向右移动 (按钮旁边的“P”)

继承人更热键的链接并且这样 http://projects.serenity.de/textmate/tutorials/basics/

+0

我无法在那些文档的任何位置找到它。我发现一般的文本可怕的文档。 – 2010-05-31 15:29:40

+0

Textmate称它为“左移”(=取消缩进)和“右移”(=缩进)。您可以在文档和Textmates的“文本”菜单中的这些名称下找到它。 – 2011-01-07 12:43:37

+0

cmd + [比shift + alt + tab更容易命中! (可悲的是我的自定义重新映射的dvorak布局,我需要按一个班次以及...仍然是一个相当不错的选择+1) – PatrickT 2018-03-06 06:47:02

2

作为替代方案,您可以改变键绑定,见http://blog.macromates.com/2005/key-bindings-for-switchers/

这里是我做过什么:

  • 安装http://www.cocoabits.com/KeyBindingsEditor/
  • 转到文件 - >打开 - >用户按键绑定,这将创建/编辑~/Libary/KeyBindings/DefaultKeyBinding.dict
  • 添加绑定,手动输入shiftRight:(缩进)手动(这是一个TextMate特定操作,不在预先填充的操作列表中)
  • 选择一个快捷键,我用CMD + ALT +右
  • 做动作shiftLeft相同:(取消缩进,我用CMD + Alt +左​​
  • 保存,然后重新启动TextMate的

我使用了一个带箭头键的快捷键,因为我选择多行时右手已经在箭头键上,所以这非常合适。

我之所以这样做是因为我有一个德国的键盘和ALT + TAB/Alt + Shift + Tab不适合我,因为我使用的这些具体的快捷键使用http://manytricks.com/witch/的应用程序切换工作。

编辑:CMD + Alt +左​​/右不起作用当你有多个标签页打开,它们用于浏览下一个或TextMate的前一个标签......似乎这不可能是改变或重写(我试过Setting Shortcut Keys in Textmate)。现在寻找替代的捷径。

+0

我将\ t和$ \ t添加到rightShift/leftShift,但不幸的是,它只有在突出显示行时才有效。无论如何,当没有线条突出显示时,使光标在当前光标所在的行上工作? – 2015-03-11 02:28:14

2

可以使用Shift + Tab减少缩进;你只需要制作并分配一个宏。你可以重复使用这种技术来完成很多事情。

  1. 输入一些文字,并打算这些,这主要是为了反馈。

  2. 点击录制宏按钮

Click the Record Macro Button

  • 使用 + + (又名; Shift + Option + Tab)减少缩进。

  • 单击录制按钮停止录制宏。

  • 使用Edit菜单或^ + + 中号,以节省您的宏;

    Edit -> Macros -> Save Macro

  • 保存会提示你创建一个新的包*,或你的宏添加到现有的包。

  • 通过点击字段并按下 +

  • 你的包宏应该看起来像下面的一个简单的保存添加Key Equivalent就大功告成了! TextMate的现在上减少缩进 +

  • Completed Macro

    *:(如U/PatrickT说明)可悲的是创造新的捆绑功能尚未实现,你必须选择添加到现有的包。您仍然可以通过Bundles - > Edit Bundles然后Command + N创建一个捆绑包。

    +1

    看起来很有前途!在步骤2中,您需要点击红色按钮停止录制,然后才能继续步骤3.在步骤5中,我选择了“新包”,此时我收到一条消息,指出它不被支持。这就是我离开它的地方...... – PatrickT 2018-03-06 06:51:49

    +1

    @PatrickT这是一个不幸的消息,捆绑系统是一个在制品,但你所要做的就是选择一个现有的捆绑包。您仍然可以通过Bundles - > Edit Bundles然后Command + N创建一个捆绑软件。 – 2018-03-06 23:10:39

    +1

    感谢您的回复!这是否意味着我需要为我使用的许多捆绑套件重复此操作,或者有没有办法只做一次? (从我的回忆中看,这些软件包与特定语言相关联,因为我使用了大约10个左右,我担心我必须这样做10次) – PatrickT 2018-03-07 08:11:07

    相关问题