David Blume's GitList
Repositories
testcode.git
Code
Commits
Branches
Tags
Search
Tree:
4b2b86f
Branches
Tags
c++11
main
start
testcode.git
README.md
Another tweak to the entr one-liner.
dblume
commited
4b2b86f
at 2021-11-18 02:40:21
README.md
Blame
History
Raw
# 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](http://git.dlma.com/testcode.git/zipball/master) or [TAR](http://git.dlma.com/testcode.git/tarball/master) buttons near the top right of the GitList web page. You can clone from the origin with: git clone ssh://USERNAME@dlma.com/~/git/testcode.git ## IDEs ### tmux vim entr Create two panes in tmux, run vim in one, and run entr in the other with a command like: find . -type f \( -name \*.[ch]pp -or -name \*.[ch] \) | \ entr -c sh -c 'ctags -R *; make -j$(nproc) && valgrind --leak-check=yes product/testcode' or, to compile with debug info and run in gdb: find . -type f \( -name \*.[ch]pp -or -name \*.[ch] \) | \ entr -c sh -c 'ctags -R *; make debug -j$(nproc) && gdb product/testcode' Tips: you can also run ctags and cscope, and in vim you can grep and use the QuickFix window with commands like... :grep -rI searchterm . :cw See [this QuickFix tip for sorting results by filename](http://git.dlma.com/dotfiles.git/commit/0cb566c53caf931c8b3f423dcfded4660b220cbb). #### entr One-Liner for When no Makefile [This entr command is handy](https://twitter.com/dblume/status/1421011043489255424) when composing interview questions without a Makefile: ls -1 *.h *.cpp | entr sh -c 'g++ -Wall -std=c++17 -pthread *.cpp && valgrind --leak-check=yes ./a.out' ### Visual Studio Code and WSL2 Once you've got the [Remote -WSL extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-wsl) 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](https://news.ycombinator.com/item?id=3067434). ## To Do * Compare make vs. cmake vs. autotools * Experiment with ctags generation