name mode size
include 040000
my_lib 040000
product 040000
.gitignore 100644 9B
Makefile 100644 421B 100644 2.45kB
build 100755 164B
make_path_helper 100755 647B 100755 577B 100755 786B
testcode.code-workspace 100644 237B
testcode.sublime-project 100644 874B
# testcode This is just a test project. You can do anything here, test g++, make, cmake, git, cscope, and IDE projects. ## Getting the project You can get a copy of this project by clicking on the [ZIP]( or [TAR]( buttons near the top right of the GitList web page. You can clone from the origin with: git clone ssh:// ## IDEs ### tmux vim entr Create two panes in tmux, run vim in one, and run entr in the other. You probably only need the `git ls-files` for `entr`, but I provide a bash command group with `find` here so I can easily copy and change it as needed. { git ls-files && find . -type f -regex '.*\.\(cfg\|local\)'; } | \ entr -c sh -c 'ctags -R *; make -j$(nproc) && \ valgrind -q --leak-check=yes --show-leak-kinds=all product/testcode' `find` could also have been `find . -type f \( -name \*.cfg -or -name \*.local \)`. To compile with debug info and run in gdb: ... | entr -c sh -c 'ctags -R *; make debug -j$(nproc) && gdb product/testcode' Tip: In vim you can grep and use the QuickFix window with commands like... :grep -rI --exclude=tags --exclude=cscope.* --exclude-dir=obj searchterm . :cw See [this QuickFix tip for sorting results by filename]( #### entr One-Liner for When no Makefile [This entr command is handy]( when composing interview questions without a Makefile: ls -1 *.h *.cpp | entr sh -c 'g++ -Wall -std=c++17 -pthread *.cpp && \ valgrind -q --leak-check=yes --show-leak-kinds=all ./a.out' ### Visual Studio Code and WSL2 Once you've got the [Remote -WSL extension]( for WSL, you can invoke Code from the WSL side. code . Or, if it's not in your path, something like... /mnt/c/Users/$USER/AppData/Local/Programs/Microsoft\ VS\ Code/bin/code . ### Other IDEs Look for the presence of their project files. They should work normally. ## Current Features * Multiple directories for testing build systems and IDEs * "make" essentially works. ## Is it any good? [Yes]( ## To Do * Compare make vs. cmake vs. autotools * Experiment with ctags generation