Fossil SCM

Show numstat-style statistics in the /ckout page as well.

danield 2025-08-21 15:40 trunk
Commit cb4d17078f83b8f880cf71d957385512bb0c1cc8f88f9feddeca6a22dcdc63ac
1 file changed +16
+16
--- src/info.c
+++ src/info.c
@@ -643,10 +643,12 @@
643643
if( DCfg.diffFlags & DIFF_SIDEBYSIDE ){
644644
DCfg.diffFlags |= DIFF_HTML | DIFF_NOTTOOBIG;
645645
}else{
646646
DCfg.diffFlags |= DIFF_LINENO | DIFF_HTML | DIFF_NOTTOOBIG;
647647
}
648
+ @ <div class="section" id="changes_section">Changes</div>
649
+ DCfg.diffFlags |= DIFF_NUMSTAT; /* Show stats in the 'Changes' section */
648650
@ <div class="sectionmenu info-changes-menu">
649651
zW = (DCfg.diffFlags&DIFF_IGNORE_ALLWS)?"&w":"";
650652
if( diffType!=1 ){
651653
@ %z(chref("button","%R?diff=1%s",zW))Unified&nbsp;Diff</a>
652654
}
@@ -718,10 +720,16 @@
718720
blob_reset(&old);
719721
blob_reset(&new);
720722
}
721723
}
722724
db_finalize(&q);
725
+ @ <script nonce='%h(style_nonce())'>;/* info.c:%d(__LINE__) */
726
+ @ document.getElementById('changes_section').textContent = 'Changes ' +
727
+ @ '(%d(g.diffCnt[0]) file' + (%d(g.diffCnt[0])===1 ? '' : 's') + ': ' +
728
+ @ '+%d(g.diffCnt[1]) ' +
729
+ @ '−%d(g.diffCnt[2]))'
730
+ @ </script>
723731
append_diff_javascript(diffType);
724732
}
725733
726734
/*
727735
** Render a web-page diff of the changes in the working check-out to
@@ -741,10 +749,12 @@
741749
if( DCfg.diffFlags & DIFF_SIDEBYSIDE ){
742750
DCfg.diffFlags |= DIFF_HTML | DIFF_NOTTOOBIG;
743751
}else{
744752
DCfg.diffFlags |= DIFF_LINENO | DIFF_HTML | DIFF_NOTTOOBIG;
745753
}
754
+ @ <div class="section" id="changes_section">Changes</div>
755
+ DCfg.diffFlags |= DIFF_NUMSTAT; /* Show stats in the 'Changes' section */
746756
@ <div class="sectionmenu info-changes-menu">
747757
zW = (DCfg.diffFlags&DIFF_IGNORE_ALLWS)?"&w":"";
748758
if( diffType!=1 ){
749759
@ %z(chref("button","%R?diff=1&exbase=%h%s",zExBase,zW))\
750760
@ Unified&nbsp;Diff</a>
@@ -803,10 +813,16 @@
803813
}
804814
fossil_free(zLhs);
805815
fossil_free(zRhs);
806816
}
807817
db_finalize(&q);
818
+ @ <script nonce='%h(style_nonce())'>;/* info.c:%d(__LINE__) */
819
+ @ document.getElementById('changes_section').textContent = 'Changes ' +
820
+ @ '(%d(g.diffCnt[0]) file' + (%d(g.diffCnt[0])===1 ? '' : 's') + ': ' +
821
+ @ '+%d(g.diffCnt[1]) ' +
822
+ @ '−%d(g.diffCnt[2]))'
823
+ @ </script>
808824
append_diff_javascript(diffType);
809825
}
810826
811827
/*
812828
** WEBPAGE: ckout
813829
--- src/info.c
+++ src/info.c
@@ -643,10 +643,12 @@
643 if( DCfg.diffFlags & DIFF_SIDEBYSIDE ){
644 DCfg.diffFlags |= DIFF_HTML | DIFF_NOTTOOBIG;
645 }else{
646 DCfg.diffFlags |= DIFF_LINENO | DIFF_HTML | DIFF_NOTTOOBIG;
647 }
 
 
648 @ <div class="sectionmenu info-changes-menu">
649 zW = (DCfg.diffFlags&DIFF_IGNORE_ALLWS)?"&w":"";
650 if( diffType!=1 ){
651 @ %z(chref("button","%R?diff=1%s",zW))Unified&nbsp;Diff</a>
652 }
@@ -718,10 +720,16 @@
718 blob_reset(&old);
719 blob_reset(&new);
720 }
721 }
722 db_finalize(&q);
 
 
 
 
 
 
723 append_diff_javascript(diffType);
724 }
725
726 /*
727 ** Render a web-page diff of the changes in the working check-out to
@@ -741,10 +749,12 @@
741 if( DCfg.diffFlags & DIFF_SIDEBYSIDE ){
742 DCfg.diffFlags |= DIFF_HTML | DIFF_NOTTOOBIG;
743 }else{
744 DCfg.diffFlags |= DIFF_LINENO | DIFF_HTML | DIFF_NOTTOOBIG;
745 }
 
 
746 @ <div class="sectionmenu info-changes-menu">
747 zW = (DCfg.diffFlags&DIFF_IGNORE_ALLWS)?"&w":"";
748 if( diffType!=1 ){
749 @ %z(chref("button","%R?diff=1&exbase=%h%s",zExBase,zW))\
750 @ Unified&nbsp;Diff</a>
@@ -803,10 +813,16 @@
803 }
804 fossil_free(zLhs);
805 fossil_free(zRhs);
806 }
807 db_finalize(&q);
 
 
 
 
 
 
808 append_diff_javascript(diffType);
809 }
810
811 /*
812 ** WEBPAGE: ckout
813
--- src/info.c
+++ src/info.c
@@ -643,10 +643,12 @@
643 if( DCfg.diffFlags & DIFF_SIDEBYSIDE ){
644 DCfg.diffFlags |= DIFF_HTML | DIFF_NOTTOOBIG;
645 }else{
646 DCfg.diffFlags |= DIFF_LINENO | DIFF_HTML | DIFF_NOTTOOBIG;
647 }
648 @ <div class="section" id="changes_section">Changes</div>
649 DCfg.diffFlags |= DIFF_NUMSTAT; /* Show stats in the 'Changes' section */
650 @ <div class="sectionmenu info-changes-menu">
651 zW = (DCfg.diffFlags&DIFF_IGNORE_ALLWS)?"&w":"";
652 if( diffType!=1 ){
653 @ %z(chref("button","%R?diff=1%s",zW))Unified&nbsp;Diff</a>
654 }
@@ -718,10 +720,16 @@
720 blob_reset(&old);
721 blob_reset(&new);
722 }
723 }
724 db_finalize(&q);
725 @ <script nonce='%h(style_nonce())'>;/* info.c:%d(__LINE__) */
726 @ document.getElementById('changes_section').textContent = 'Changes ' +
727 @ '(%d(g.diffCnt[0]) file' + (%d(g.diffCnt[0])===1 ? '' : 's') + ': ' +
728 @ '+%d(g.diffCnt[1]) ' +
729 @ '−%d(g.diffCnt[2]))'
730 @ </script>
731 append_diff_javascript(diffType);
732 }
733
734 /*
735 ** Render a web-page diff of the changes in the working check-out to
@@ -741,10 +749,12 @@
749 if( DCfg.diffFlags & DIFF_SIDEBYSIDE ){
750 DCfg.diffFlags |= DIFF_HTML | DIFF_NOTTOOBIG;
751 }else{
752 DCfg.diffFlags |= DIFF_LINENO | DIFF_HTML | DIFF_NOTTOOBIG;
753 }
754 @ <div class="section" id="changes_section">Changes</div>
755 DCfg.diffFlags |= DIFF_NUMSTAT; /* Show stats in the 'Changes' section */
756 @ <div class="sectionmenu info-changes-menu">
757 zW = (DCfg.diffFlags&DIFF_IGNORE_ALLWS)?"&w":"";
758 if( diffType!=1 ){
759 @ %z(chref("button","%R?diff=1&exbase=%h%s",zExBase,zW))\
760 @ Unified&nbsp;Diff</a>
@@ -803,10 +813,16 @@
813 }
814 fossil_free(zLhs);
815 fossil_free(zRhs);
816 }
817 db_finalize(&q);
818 @ <script nonce='%h(style_nonce())'>;/* info.c:%d(__LINE__) */
819 @ document.getElementById('changes_section').textContent = 'Changes ' +
820 @ '(%d(g.diffCnt[0]) file' + (%d(g.diffCnt[0])===1 ? '' : 's') + ': ' +
821 @ '+%d(g.diffCnt[1]) ' +
822 @ '−%d(g.diffCnt[2]))'
823 @ </script>
824 append_diff_javascript(diffType);
825 }
826
827 /*
828 ** WEBPAGE: ckout
829

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button