From: COGONI Guillaume <cogoni.guillaume@gmail.com>
To: gitster@pobox.com
Cc: Matthieu.Moy@univ-lyon1.fr, cogoni.guillaume@gmail.com,
derrickstolee@github.com, git.jonathan.bressat@gmail.com,
git@vger.kernel.org, guillaume.cogoni@gmail.com,
shaoxuan.yuan02@gmail.com
Subject: [PATCH v2 1/1] Documentation/ToolsForGit.txt: Tools for developing Git
Date: Sun, 17 Apr 2022 11:35:49 +0200 [thread overview]
Message-ID: <20220417093549.101436-2-cogoni.guillaume@gmail.com> (raw)
In-Reply-To: <20220417093549.101436-1-cogoni.guillaume@gmail.com>
This document aims to gather tools that have a README and/or scripts in
the GIT project in order to simplify the search of information for a
particular tool.
Move the part about Emacs configuration from CodingGuidelines to
ToolsForGit.txt because it's the purpose of the new file centralize the
information about tools.
Signed-off-by: COGONI Guillaume <cogoni.guillaume@gmail.com>
---
Documentation/CodingGuidelines | 11 -----
Documentation/Makefile | 1 +
Documentation/ToolsForGit.txt | 79 ++++++++++++++++++++++++++++++++++
3 files changed, 80 insertions(+), 11 deletions(-)
create mode 100644 Documentation/ToolsForGit.txt
diff --git a/Documentation/CodingGuidelines b/Documentation/CodingGuidelines
index b20b2f94f1..a7d21d6f6b 100644
--- a/Documentation/CodingGuidelines
+++ b/Documentation/CodingGuidelines
@@ -492,17 +492,6 @@ For Perl programs:
- Learn and use Git.pm if you need that functionality.
- - For Emacs, it's useful to put the following in
- GIT_CHECKOUT/.dir-locals.el, assuming you use cperl-mode:
-
- ;; note the first part is useful for C editing, too
- ((nil . ((indent-tabs-mode . t)
- (tab-width . 8)
- (fill-column . 80)))
- (cperl-mode . ((cperl-indent-level . 8)
- (cperl-extra-newline-before-brace . nil)
- (cperl-merge-trailing-else . t))))
-
For Python scripts:
- We follow PEP-8 (http://www.python.org/dev/peps/pep-0008/).
diff --git a/Documentation/Makefile b/Documentation/Makefile
index 44c080e3e5..7058dd2185 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -93,6 +93,7 @@ SP_ARTICLES += $(API_DOCS)
TECH_DOCS += MyFirstContribution
TECH_DOCS += MyFirstObjectWalk
TECH_DOCS += SubmittingPatches
+TECH_DOCS += ToolsForGit
TECH_DOCS += technical/bundle-format
TECH_DOCS += technical/hash-function-transition
TECH_DOCS += technical/http-protocol
diff --git a/Documentation/ToolsForGit.txt b/Documentation/ToolsForGit.txt
new file mode 100644
index 0000000000..d96cadd09c
--- /dev/null
+++ b/Documentation/ToolsForGit.txt
@@ -0,0 +1,79 @@
+Tools for developing Git
+========================
+:sectanchors:
+
+[[summary]]
+== Summary
+
+This document aims to gather tools that have a README and/or scripts in
+the Git project.
+
+[[author]]
+=== Author
+
+The Git community.
+
+[[table_of_contents]]
+== Table of contents
+
+- <<vscode>>
+- <<emacs>>
+
+[[vscode]]
+=== Visual Studio Code (VS Code)
+
+The contrib/vscode/init.sh script creates configuration files that enable
+several valuable VS Code features. See contrib/vscode/README.md for more
+information on using the script.
+
+In particular, this script enables using the VS Code visual debugger, including
+setting breakpoints, logpoints, conditional breakpoints and more in the editor.
+
+[[emacs]]
+=== Emacs
+
+- To follow rules of the CodingGuideline, it's useful to put the following in
+GIT_CHECKOUT/.dir-locals.el, assuming you use cperl-mode:
+----
+;; note the first part is useful for C editing, too
+((nil . ((indent-tabs-mode . t)
+ (tab-width . 8)
+ (fill-column . 80)))
+ (cperl-mode . ((cperl-indent-level . 8)
+ (cperl-extra-newline-before-brace . nil)
+ (cperl-merge-trailing-else . t))))
+----
+
+- The version for C:
+----
+(defun c-lineup-arglist-tabs-only (ignored)
+ "Line up argument lists by tabs, not spaces"
+ (let* ((anchor (c-langelem-pos c-syntactic-element))
+ (column (c-langelem-2nd-pos c-syntactic-element))
+ (offset (- (1+ column) anchor))
+ (steps (floor offset c-basic-offset)))
+ (* (max steps 1)
+ c-basic-offset)))
+
+(add-hook 'c-mode-common-hook
+ (lambda ()
+ ;; Add kernel style
+ (c-add-style
+ "linux-tabs-only"
+ '("linux" (c-offsets-alist
+ (arglist-cont-nonempty
+ c-lineup-gcc-asm-reg
+ c-lineup-arglist-tabs-only))))))
+
+(add-hook 'c-mode-hook
+ (lambda ()
+ (let ((filename (buffer-file-name)))
+ ;; Enable kernel mode for the appropriate files
+ (when (and filename
+ (string-match (expand-file-name "~/src/linux-trees")
+ filename))
+ (setq indent-tabs-mode t)
+ (setq show-trailing-whitespace t)
+ (c-set-style "linux-tabs-only")))))
+----
+
--
2.25.1
next prev parent reply other threads:[~2022-04-17 9:36 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-12 20:25 [PATCH 0/1] documentation: guide of best practices for GIT developer COGONI Guillaume
2022-04-12 20:25 ` [PATCH 1/1] " COGONI Guillaume
2022-04-13 14:36 ` [PATCH 0/1] " Shaoxuan Yuan
2022-04-13 16:36 ` Guillaume Cogoni
2022-04-16 12:34 ` [PATCH v1 0/1] Documentation/ToolsOnGit.txt: gather information about tools COGONI Guillaume
2022-04-16 12:34 ` [PATCH v1 1/1] " COGONI Guillaume
[not found] ` <63d7dc69656e47f7bc7bce4839711f32@SAMBXP02.univ-lyon1.fr>
2022-04-16 13:25 ` Matthieu Moy
2022-04-16 14:51 ` Philip Oakley
2022-04-16 17:11 ` Junio C Hamano
2022-04-17 9:35 ` [PATCH v2 0/1] Documentation/ToolsForGit.txt: Tools for developing Git COGONI Guillaume
2022-04-17 9:35 ` COGONI Guillaume [this message]
[not found] ` <33d2087c66e44037b03db818dae60fea@SAMBXP02.univ-lyon1.fr>
2022-04-17 12:25 ` Matthieu Moy
2022-04-20 13:06 ` [PATCH v3 " COGONI Guillaume
2022-04-20 13:06 ` [PATCH v3 1/1] " COGONI Guillaume
2022-04-20 21:23 ` Junio C Hamano
2022-04-21 8:45 ` [PATCH v4 0/1] " COGONI Guillaume
2022-04-21 8:45 ` [PATCH v4 1/1] " COGONI Guillaume
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220417093549.101436-2-cogoni.guillaume@gmail.com \
--to=cogoni.guillaume@gmail.com \
--cc=Matthieu.Moy@univ-lyon1.fr \
--cc=derrickstolee@github.com \
--cc=git.jonathan.bressat@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=guillaume.cogoni@gmail.com \
--cc=shaoxuan.yuan02@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).