我在emacs下使用gdb.在调试会话期间,当emacs/gdb跳转到源代码时,我通常打开另一个帧(Cx 5 2)并将其拉到我的第二个监视器上.当需要打开一个新的源代码文件时(例如当程序进入另一个源文件中定义的函数,遍历堆栈等等)时,问题就来了.emacs倾向于自动打开新的相应源代码窗口,但不幸的是在gdb框架中.
我想在它打开的新框架中拉出新的源代码并完全保持gdb框架不变.我的问题是:
如何设置emacs打开任何新文件,使文件显示在新框架中?
我希望我有意义.
我已经尝试了很长一段时间来为我的问题找出解决方案,但无济于事。
无论如何,我有一堆集成测试(在与标准测试目录平行的非标准目录 testRegression 中)。
这些集成测试在内存数据库中使用 h2。在生产和测试中,我使用 liquibase 来模拟模式演变。
我的属性(在 application-testRegession.properties 中)如下所示:
spring.liquibase.enabled=true
spring.liquibase.user=sa
spring.liquibase.password=
spring.liquibase.change-log=classpath:/liquibase/changelog-master.xml
spring.datasource.url=jdbc:p6spy:h2:mem:testdb;MODE=PostgreSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=FALSE;INIT=CREATE SCHEMA IF NOT EXISTS nmc\\;CREATE SCHEMA IF NOT EXISTS mkt\\;CREATE SCHEMA IF NOT EXISTS cdb\\;CREATE SCHEMA IF NOT EXISTS pg_temp
spring.datasource.driver-class-name=com.p6spy.engine.spy.P6SpyDriver
spring.datasource.username=sa
spring.datasource.password=
Run Code Online (Sandbox Code Playgroud)
我一直收到的错误是:
2020-07-21 15:57:34.173 INFO [liquibase.lockservice.StandardLockService] [Test worker:13]: Successfully acquired change log lock
2020-07-21 15:57:34.303 INFO [liquibase.changelog.StandardChangeLogHistoryService] [Test worker:13]: Creating database history table with name: PUBLIC.DATABASECHANGELOG
2020-07-21 15:57:34.305 INFO [liquibase.executor.jvm.JdbcExecutor] [Test worker:13]: CREATE TABLE PUBLIC.DATABASECHANGELOG (ID VARCHAR(255) NOT NULL, AUTHOR VARCHAR(255) NOT …Run Code Online (Sandbox Code Playgroud) 我遗漏了关于bash的if构造/运算符或字符串比较的基本内容.请考虑以下脚本:
#!/bin/bash
baseSystem="testdir1"
testme="NA"
if [ "$baseSystem"=="$testme" ]; then
echo "In error case"
fi
if [ "$baseSystem"!="$testme" ]; then
echo "In error case"
fi
Run Code Online (Sandbox Code Playgroud)
我明白了:
In error case
In error case
Run Code Online (Sandbox Code Playgroud)
所以它进入每个案例,即使它们应该是互相排斥的.任何帮助表示赞赏.
我正在尝试构建我的 etags 文件。我有一个项目结构,在给定根目录的情况下,有子目录,其中可以是名为“cpp”的目录。例如:
root
- sub1
- cpp
- sub2
- sub21
- cpp
- csharp
Run Code Online (Sandbox Code Playgroud)
所以对于常规项目,我通常是这样的: find 。-type f ( -iname ' .cpp' -o -iname ' .hpp' -o -iname ' .c' -o -iname ' .h' -o -iname ' .cc' -o -iname ' .hh' ) - 打印 | xargs etags -a
这将不再起作用,因为它还会拾取可能是 csharp、objective c 等的文件...
所以我想要完成的是只让 find 返回名为 cpp 的子目录中的文件。那么我怎样才能找到做到这一点呢?
谢谢 ...