emacs - Emacs:用于 TypeScript 规范文件发现的 projectile-toggle-between-implementation-and-test
问题描述
我真的很喜欢在其他语言中使用这个 projectile 函数,但我目前很难找到一种方法来为典型的 TypeScript 项目设置它。
ls services/
foo.service.ts foo.service.spec.ts bar.ts bar.spec.ts
当我projectile-toggle-between-implementation-and-test
在这 4 个文件中的任何一个中执行时,都会出现以下错误:
helm-M-x-execute-command: No matching test file found for project type ‘npm’
换句话说,规则是try to find a file in the same directory with/without *.spec.ts* suffix
解决方案
事实证明这很简单。您需要评估以下代码段(注意 npm 项目类型):
(defun projectile-test-suffix (project-type)
"Find default test files suffix based on PROJECT-TYPE."
(cond
((member project-type '(emacs-cask)) "-test")
((member project-type '(rails-rspec ruby-rspec)) "_spec")
((member project-type '(rails-test ruby-test lein-test boot-clj go)) "_test")
((member project-type '(scons)) "test")
((member project-type '(npm)) ".spec")
((member project-type '(maven symfony)) "Test")
((member project-type '(gradle gradlew grails)) "Spec")))
推荐阅读
- java - 需要将同一个应用程序部署到多个上下文,每个上下文都有不同的数据库 Tomcat7
- aws-cli - 将 python 3.6 升级到 3.7 后 awscli 停止工作
- android - 使用片段和活动android的回栈和回压
- sql-server - 根据先前和当前行值计算值
- r - 对成对列应用条件
- mysql - MySQL通过数组中的键搜索json值
- c++ - 我们是否需要原子地增加线程局部变量?
- android - 如何区分recyclerview本身的点击事件和它的viewholders
- c++ - 简单正则表达式 API 的计算占用大量虚拟内存
- httprequest - Axios POST 状态 400 错误请求