我在 TextMate 中的“软标签”设置不粘。重新启动 TextMate 后,我经常需要为同一个文件再次设置选项。如何将此设置设置为所有文件的粘性默认设置?
8 回答
对于文本伴侣 1
经过一番研究,我发现您可以将 TextMate 1 设置为默认使用软标签。
在“高级”首选项窗格的“Shell 变量”区域中,添加一个新条目,其名称TM_SOFT_TABS
和值为YES
.
从那时起,TextMate 应该默认为软标签,尽管对于至少一种或两种语言,我必须指定标签的数量。在我这样做之后,它似乎坚持我所做的一切。
对于文本伴侣 2
要在 TextMate 2 中设置选项,请将以下设置添加到您的 ~/.tm_properties 文件中:
softWrap = true
tabSize = 4
softTabs = true
检查这些链接以获取更多信息:
常见问题解答:https
://github.com/textmate/textmate/wiki/FAQ
设置:http ://wiki.macromates.com/Reference/Settings
从文档中:
4.11 使用空格代替制表符
TextMate 可以使用空格而不是制表符。这是通过单击状态栏中的“选项卡大小”弹出窗口并启用软选项卡来完成的。
此设置只会影响当前语言和所有具有公共根但尚未设置选项的语言。这同样适用于拼写检查、软换行和实际标签大小的状态。
当启用软标签时,TextMate 将在很大程度上与您使用硬标签完全一样,但文档确实包含空格。
看起来 Textmate 将其设置为当前语言,但我认为 Textmate 会分析您打开的文件并调整其设置以匹配文件。您可以在“文本”菜单中将文件中的选项卡转换为空格,反之亦然。
你不需要任何特别的东西。你只需要调整你的 Python 包。
进入“捆绑编辑器”并找到 Python。打开它的插入符号,向下滚动并找到“杂项”首选项。它应该是这样的:
{ decreaseIndentPattern = '^\s*(elif|else|except|finally)\b.*:';
increaseIndentPattern = '^\s*(class|def|elif|else|except|finally|for|if|try|with|while)\b.*:\s*$';
shellVariables = (
{ name = 'TM_COMMENT_START';
value = '# ';
},
{ name = 'TM_LINE_TERMINATOR';
value = ':';
},
);
}
这些是环境变量。您想要的是将环境变量TM_SOFT_TABS
设置为“是”。很简单,只需像这样插入一个新任务:
{ name = 'TM_SOFT_TABS';
value = 'YES';
},
……瞧!每次在 Python 模式下使用 Textmate 时,您的选项卡都会变软。
对于您可以设置的所有不同环境变量,请在此处查看手册:http: //manual.macromates.com/en/environment_variables.html
...除了@Ivan Sviatenko 的回答
对于 Textmate 2,语言特定的 softTabs 默认
编辑~/.tm_properties
,例如:
# Default editing configuration
#
tabSize = 2
softTabs = true
softWrap = true
# Defaults for c
#
[ source.c ]
softTabs = true
tabSize = 8
# Defaults for python
#
[ source.python ]
softTabs = true
tabSize = 4
TextMate底部还有一个下拉菜单,可以设置你的Tab Size值以及是否使用Soft Tabs,而且是粘性的。
- 在桌面上为 TextMate 创建一个别名图标。
- 将要打开的文件拖到图标上。
- 该文件现在应该在 TextMate 中打开。
- 使用状态栏选项设置软选项卡。
- 关闭 TextMate。
- 对您希望记住软标签设置的每种文件类型重复步骤 2 - 5。
- 每次您想使用 TextMate 打开文件类型时,将该文件拖到该桌面图标上。
- 不要同时打开一种以上的文件类型,打开的第二种文件类型将删除其软标签设置。
这是我能够在软标签设置上获得一致行为的唯一方法。
我找到了一个名为“TabMate”的流行 TextMate 插件,它为我解决了这个问题。虽然它需要我为每个文件添加一个表格,但 TextMate 将我的选项卡设置调整为表格中描述的任何内容。
此外,从技术上讲,gs 上面的答案应该可以工作,但由于某种原因,它对我不起作用,我发现没有其他方法可以设置 SoftTabs 永远是所有语言的默认设置。