diff mbox

[v3,0/1] Documentation/ToolsForGit.txt: Tools for developing Git

Message ID 20220420130617.41296-1-cogoni.guillaume@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Guillaume Cogoni April 20, 2022, 1:06 p.m. UTC
MOY Matthieu wrote:

> I think you can just drop that sentence. For someone a bit familiar with 
> either VS code or any other IDE, it's no big surprise that the debugger 
> integration allows such feature. For someone not familiar with VS code, 
> the patch about to land in next already contains a link to a page 
> explaining that.

Finally, I drop that sentence, I also think that the link that I put in
contrib/vscode/README is sufficient.

> contrib/emacs was really not meant for developers hacking on Git. Since 
> it contains only pointers to obsolete stuff, we may want to just discard 
> its current content and make it the place to put documentation for 
> people hacking on Git with Emacs, just like contrib/vscode/ is for VS 
> code and Git. But we probably have only a few (tens of) lines of 
> documentation, so adding the doc directly in ToolsForGit.txt is probably 
> better.

I left everything as they were. I just add the configuration lines directly 
in ToolsForGit.txt because there is not a lot of line. 
But, in the future, if there is more line, it would be better to move all of this 
in the contrib/emacs/README.

> A good indicator, yes. But reading only the summary ...

I take the summary that you propose, so this not a criterion now.

> I agree that removing Emacs-specific code from a general document is 
> nice, but then you should replace it with a link to ToolsForGit.txt like 
> "Tips to make your editor follow this style can be found in 
> ToolsForGit.txt" (without being specific to Emacs, that's the point of 
> the document, it also applies to VS code and may be extended in the 
> future to other editors).

Yup, I fix this, I add a mention to Documentation/ToolsForGit.txt in CodingGuideline.
I add it at the end of the file.

Thanks for your review,

COGONI Guillaume.

COGONI Guillaume (1):
  Documentation/ToolsForGit.txt: Tools for developing Git

 Documentation/CodingGuidelines | 18 +++++-------
 Documentation/Makefile         |  1 +
 Documentation/ToolsForGit.txt  | 51 ++++++++++++++++++++++++++++++++++
 3 files changed, 59 insertions(+), 11 deletions(-)
 create mode 100644 Documentation/ToolsForGit.txt

Interdiff versus v2 :
diff mbox

Patch

diff --git a/Documentation/CodingGuidelines b/Documentation/CodingGuidelines
index a7d21d6f6b..509cd89aa2 100644
--- a/Documentation/CodingGuidelines
+++ b/Documentation/CodingGuidelines
@@ -722,3 +722,10 @@  Writing Documentation:
  inline substituted text+ instead of `monospaced literal text`, and with
  the former, the part that should not get substituted must be
  quoted/escaped.
+
+
+Documentation/ToolsForGit.txt:
+
+ This document collects tips, scripts, and configuration files to help
+ contributors working with the Git codebase use their favorite tools while
+ following the Git coding style.
diff --git a/Documentation/ToolsForGit.txt b/Documentation/ToolsForGit.txt
index dc370a5861..5060d0d231 100644
--- a/Documentation/ToolsForGit.txt
+++ b/Documentation/ToolsForGit.txt
@@ -5,8 +5,9 @@  Tools for developing Git
 [[summary]]
 == Summary
 
-This document aims to gather tools that have a README and/or scripts in
-the Git project.
+This document gathers tips, scripts and configuration file to help people
+working on Git's codebase use their favorite tools while following Git's
+coding style.
 
 [[author]]
 === Author
@@ -29,6 +30,8 @@  information on using the script.
 [[emacs]]
 === Emacs
 
+This is adapted from Linux's suggestion in its CodingStyle document:
+
 - To follow rules of the CodingGuideline, it's useful to put the following in
 GIT_CHECKOUT/.dir-locals.el, assuming you use cperl-mode:
 ----
@@ -41,36 +44,8 @@  GIT_CHECKOUT/.dir-locals.el, assuming you use cperl-mode:
 			(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")))))
-----
+For a more complete setup, since Git's codebase uses a coding style
+similar to the Linux kernel's style, tips given in Linux's CodingStyle
+document can be applied here too.
 
+==== https://www.kernel.org/doc/html/v4.10/process/coding-style.html#you-ve-made-a-mess-of-it