4 ms·
I'm studying FreeBSD, C, C++, SDL2 and CMake. I'd love to highlight some of the open source projects I pitched in with as well as some of my own: - aseprite (h
by git-pull 11y ago
I'm studying FreeBSD, C, C++, SDL2 and CMake. I'd love to highlight some of the open source projects I pitched in with as well as some of my own:
- aseprite (http://www.aseprite.org/ http://www.aseprite.org/) is a cross-platform animated sprite editor by David Capello. I got FreeBSD support working [1] and added a shortcut to center the canvas [2]. This was my first C++ commit.
If you like retro game art, definitely stop by and check it out. It's GPLv3 and you can build it for free, check out their [github](https://github.com/aseprite/aseprite/ https://github.com/aseprite/aseprite/).
- uMario (https://github.com/jakowskidev/uMario_Jakowski https://github.com/jakowskidev/uMario_Jakowski) is an NES Mario clone in C++ and SDL2. Check out the youtube video [3]. I got it building on Linux, FreeBSD and OS X [4]
- Then a couple of tiny C projects with CMake that are sort of boilerplate ATM, but they're my first C programs. The cool thing is they use permissive licensed libraries and build across platforms since they use CMake. https://github.com/tony/sdl2-playproject https://github.com/tony/sdl2-playproject / https://github.com/tony/reST-lex-byacc https://github.com/tony/reST-lex-byacc / https://github.com/tony/ncurses-example https://github.com/tony/ncurses-example.
On that front, I'm reading a book called "Compiler Design Using FLEX and YACC" by Vinu V. Das, which has been going good. As well as Lazy Foo's SDL tutorial (http://lazyfoo.net/tutorials/SDL/ http://lazyfoo.net/tutorials/SDL/).
- Another thing to mention is automatically rebuilding / reloading scripts when a file is saved. I started using entr(1) for that, http://entrproject.org/ http://entrproject.org/. Previously on projects like tmuxp and vcspull I've used sniffer (and looked into watchman) but have found this works best cross-platform. FreeBSD has file watching a bit trickier since we don't have inotify or fsevents.
- On the dot-config front (https://github.com/tony/.dot-config https://github.com/tony/.dot-config / https://github.com/tony/vim-config https://github.com/tony/vim-config) got virtualenv + python 3 + vim working together [5], as well as neovim fully compatible with my standard vim-config. I'm now using neovim full time and all my plugins without any problems. They loads asynchronously with NeoBundleLazy and the autocompletion is async thanks to Shougu's deoplete.nvim [6].
[1] https://github.com/aseprite/aseprite/pull/893 https://github.com/aseprite/aseprite/pull/893
[2] https://github.com/aseprite/aseprite/pull/892 https://github.com/aseprite/aseprite/pull/892
[3] https://www.youtube.com/watch?v=jya5He7KFsE https://www.youtube.com/watch?v=jya5He7KFsE
[4] https://github.com/jakowskidev/uMario_Jakowski/pull/1 https://github.com/jakowskidev/uMario_Jakowski/pull/1
[5] https://github.com/klen/python-mode/pull/609 https://github.com/klen/python-mode/pull/609 (https://github.com/klen/python-mode/compare/develop...tony:python3 https://github.com/klen/python-mode/compare/develop...tony:p...)
[6] https://github.com/Shougo/deoplete.nvim https://github.com/Shougo/deoplete.nvim