aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNRK <nrk@disroot.org>2023-02-10 06:51:53 +0100
committerNRK <nrk@disroot.org>2023-03-11 13:37:08 +0100
commit157646f54cd010c8c884998319954006260f960e (patch)
tree1cd91dbbd707179084044b1e0a96225258aa73d9
parentf2f4903de4bd3ce06c03dd66f0c9a7dda97a3550 (diff)
downloadnsxiv-157646f54cd010c8c884998319954006260f960e.tar.zst
etc changes related to code-style docs
* Add a "Code Style" section in CONTRIBUTING * Move .clang-format to etc/ * Add a short comment on clang-format and editorconfig file
-rw-r--r--.editorconfig2
-rw-r--r--etc/.clang-format (renamed from .clang-format)3
-rw-r--r--etc/CONTRIBUTING.md17
3 files changed, 21 insertions, 1 deletions
diff --git a/.editorconfig b/.editorconfig
index 72b2e5e..cbc0f4b 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -1,4 +1,6 @@
# EditorConfig
+# See this if your editor doesn't have built-in editorconfig support:
+# https://editorconfig.org/#download
# apply to all files
[*]
diff --git a/.clang-format b/etc/.clang-format
index 18bcf9c..a29be62 100644
--- a/.clang-format
+++ b/etc/.clang-format
@@ -1,3 +1,6 @@
+# clang-format doesn't dictate the project's code style and can mess up a
+# couple edge cases. However it comes quite close and can be used for fixing
+# most style issues automatically on new changes via `git-clang-format`.
---
Standard: c++03
diff --git a/etc/CONTRIBUTING.md b/etc/CONTRIBUTING.md
index 8d9680f..aa96068 100644
--- a/etc/CONTRIBUTING.md
+++ b/etc/CONTRIBUTING.md
@@ -23,7 +23,7 @@ Contribution Guideline
When contributing, make sure:
* Your contribution falls under nsxiv's scope and aim
- * You follow the existing code style (see [.editorconfig](../.editorconfig))
+ * You follow the existing code style (see the "Code Style" section below)
* You open the pull request from a new branch, not from master
* To avoid using force pushes, especially for bigger patches. Only use them
when there's merge conflicts.
@@ -44,6 +44,21 @@ to work on. You can also filter the issues via label:
(Intermediate/Experienced) Issues where we require some help.
+Code Style
+----------
+
+`nsxiv` mostly follows the [suckless code-style][sl], with a few exceptions.
+If your editor supports [.editorconfig](../.editorconfig) then you'll already be
+off to a good start without needing much manual intervention. Additionally we
+provide a [clang-format](./.clang-format) configuration for reference, which you
+may use via [`git-clang-format`][cf] to format the changes you've made (please
+do not run it globally on the entire code-base since clang-format gets a decent
+amount of edge cases wrong).
+
+[sl]: https://suckless.org/coding_style/
+[cf]: https://clang.llvm.org/docs/ClangFormat.html#git-integration
+
+
Development workflow for maintainers
------------------------------------