【发布时间】:2012-11-22 07:38:49
【问题描述】:
在Sublime Text中,我经常使用Cmd+P/Ctrl+P进行搜索和跳转文件。
通常,它会提取临时文件或缓存文件,例如 .scssc 或 /tmp 文件夹中的内容。
有没有办法可以限制搜索结果中显示的内容?
【问题讨论】:
在Sublime Text中,我经常使用Cmd+P/Ctrl+P进行搜索和跳转文件。
通常,它会提取临时文件或缓存文件,例如 .scssc 或 /tmp 文件夹中的内容。
有没有办法可以限制搜索结果中显示的内容?
【问题讨论】:
在您的 ~/Library/Application Support/Sublime Text 2/Packages/User/Preferences.sublime-settings 文件中添加和编辑它。
// These files will still show up in the side bar, but won't be included in
// Goto Anything or Find in Files
"binary_file_patterns": ["*.jpg", "*.jpeg", "*.png", "*.gif", "*.ttf", "*.tga", "*.dds", "*.ico", "*.eot", "*.pdf", "*.swf", "*.jar", "*.zip"],
"folder_exclude_patterns": [".svn", ".git", ".hg", "CVS"],
【讨论】:
binary_file_patterns 从 Goto Anything 中删除文件,但不是从 Find in Files 中删除,因为它应该基于评论。还有其他人遇到这种情况吗?知道如何解决吗?我在 Ubuntu 上,构建 2221;我的 Mac 上也发生了同样的事情(不知道内部版本号)。
"file_exclude_patterns": ["*.log"]。
您可以通过modifying your project settings 从您的项目中排除某些文件模式和文件夹,如下所示:
{
"folders":
[
{
"path": "src",
"folder_exclude_patterns": ["backup"]
},
{
"path": "docs",
"file_exclude_patterns": ["*.css"]
}
]
}
这在projects documentation 中有描述。
【讨论】:
在 sublime text 3 (BLD 3059 Windows) 中,我需要将“在文件夹中查找”功能限制为某些文件/文件夹,也可能是单个文件,
以下对我有用 where: 框的内容
/C/path/2/project/folder,*.c,*.h,-*/path/not/to/look/in,/C/path/2/specific/file/file.h
在没有绝对路径的情况下更进一步,您可以将上面的内容与以下符号位置结合起来
<open folders>, <open files>, <current file>
<open folders>,*.c,*.h,-*/never_this_in_folder/*,<open files>
【讨论】:
folder_exclude_patterns 和 file_exclude_patterns 的其他建议仅将其从侧边栏中隐藏,而不是从搜索或转到中隐藏。遗憾的是,我还没有找到任何从搜索和 GoTo 中排除的永久设置。所以这个答案是目前最好的解决方法。
您还可以使用 -*/foldername/* 字段中的 -*/foldername/* 语法在“查找全部”窗格中排除文件夹 - 例如:
-*/node_modules/*
http://www.sublimetext.com/forum/viewtopic.php?f=2&t=3847&start=10
【讨论】:
where 字段中。
C:\Projects\SearchThis,-*/but/not/this/*
这个解决方案非常适合我:https://superuser.com/a/601270
Find: "something" Where: "<open folders>" // <open folders>" not include hidden folder in sidebar
【讨论】:
对于 Sublime Text 3:要从搜索和转到结果中排除,而不从侧边栏中删除,请更改 "binary_file_patterns" 设置。匹配文件和文件夹。
例如,要从 GoTo 索引中排除“dist”和“node_modules”中的文件,请将其添加到您的用户设置文件中:
"binary_file_patterns": ["dist/*", "node_modules/*", "*.jpg", "*.jpeg", "*.png", "*.gif", "*.ttf", "*.tga", "*.dds", "*.ico", "*.eot", "*.pdf", "*.swf", "*.jar", "*.zip"]
我不知道如何在每个项目的基础上实现这一点 :(。大多数设置可以移动到 project.sublime-project 文件。“项目 > 将项目另存为”,将其保存在项目的根目录中,并将"settings": {...} 添加到生成文件中的json。(来自source,适用于ST3 build 3095)。但不适用于“binary_file_patterns”。
【讨论】:
folder/** 也有效。 :)
"unused/" 和"*/unused/*",但都不适合我。但是,我可以在我的搜索中添加这样的排除过滤器:-*/unused/*,-*/_sgbak/*,这很烦人,因为它不记得了,所以你必须每次都添加它。
对于那些需要将查找(和替换)仅限于当前目录的几次,请执行以下操作:
c/Path/2/Project,-c/Path/2/Project/*/*
路径排除模式中的重要位是/*/*。在 Windows 7 64 位上使用 Sublime Text 3 build 3083。
【讨论】:
请注意,如果您想添加项目文件夹的子文件夹,您必须使用\/ 加入文件夹。使用@DavidPärsson 的相同示例:
{
"folders":
[
{
"path": "src",
"folder_exclude_patterns": ["backup\/src\/log"]
}
]
}
【讨论】:
对于 SublimeText 2,这对我来说非常有用。
当您选择在文件中查找时,在Where输入中指定排除文件夹;
-bower_components/**/*, -dist/**/*, -node_modules/**/*, -tmp/**/*
因此,连字符后跟排除模式,用于您不想在其中搜索的文件夹。
-folder1/**/*, -folder2/**/*
这将限制您的搜索范围。
【讨论】:
您还可以通过 Where 字段从搜索中排除文件夹:
地址:<open folders>,-*/node_modules/*.*,-*/build/*.*
所以在我上面的例子中:
这在 Sublime Text 3 中对我有用,并且文件夹继续显示在 SideBar 中。这是通过输入进行的仅搜索排除(不影响任何幕后索引)。
【讨论】:
我认为这些答案中的许多都涵盖了 Sublime Text 的几个不同版本,以下是我在 Mac 上使用 Sublime Text 3 的方法。
file_exclude_patterns 和 folder_exclude_patterns 值以忽略来自查找工具的文件和/或文件夹示例
"file_exclude_patterns":
[
".svn",
".git",
".hg",
".md",
".txt",
".DS_Store"
],
"folder_exclude_patterns":
[
"node_modules",
"bower_components",
".svn",
".git",
".hg",
"CVS",
"deprecated",
"cache"
],
截图
【讨论】:
node_modules。但是,如果您正在调试某些东西并且依赖项存在问题,那么可以选择在 node_modules 中打开文件
我认为确保在每个项目中排除此类文件和文件夹的最简单方法是在 Sublime 用户设置中添加以下代码(在您的 ~/Library/Application Support/Sublime Text 2/Packages/User/Preferences.sublime-settings 文件中添加和编辑此代码。)
{
// Remove certain files permanently from Sublime via Preferences.sublime-settings.
"folder_exclude_patterns": [".svn", ".git", ".hg", "CVS", "node_modules"]
}
要点:https://gist.github.com/ahmadawais/690a816ca158067708ad4dbe17822841
或者您可以在此处查看我的首选项文件 https://github.com/ahmadawais/dotFiles/blob/master/SublimeText/User/Preferences.sublime-settings#L80-L81
【讨论】: