Here's a much better patch. Sorry if you already applied the first one...
Should only be a 1 line clash.

On Thu, Jun 30, 2016 at 6:28 PM Karl Hegbloom <[email protected]>
wrote:

> The footnotes are too close to the bar without this patch, especially when
> the footnote font size is the same as the body text, as is required by some
> court's legal brief styles. By doubling env->fn->sep, it looks good with
> either small or normal-size footnotes.
>
 src/TeXmacs/packages/environment/env-float.ts | 4 ++--
 src/src/Data/Drd/drd_std.cpp                  | 1 +
 src/src/Data/Drd/vars.cpp                     | 1 +
 src/src/Data/Drd/vars.hpp                     | 1 +
 src/src/Typeset/Env/env_default.cpp           | 1 +
 src/src/Typeset/Page/make_pages.cpp           | 2 +-
 src/src/Typeset/Page/pager.cpp                | 1 +
 src/src/Typeset/Page/pager.hpp                | 1 +
 8 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/TeXmacs/packages/environment/env-float.ts b/src/TeXmacs/packages/environment/env-float.ts
index 74d9f0f..7d5f11d 100644
--- a/src/TeXmacs/packages/environment/env-float.ts
+++ b/src/TeXmacs/packages/environment/env-float.ts
@@ -1,4 +1,4 @@
-<TeXmacs|1.99.2>
+<TeXmacs|1.99.4>
 
 <style|source>
 
@@ -113,7 +113,7 @@
   </active*>
 
   <assign|render-footnote*|<macro|sym|nr|body|<style-with|src-compact|none|<\float|footnote|>
-    <smaller|<with|par-mode|justify|par-left|0cm|par-right|0cm|font-shape|right|dummy|<value|page-fnote-sep>|dummy|<value|page-fnote-barlen>|<style-with|src-compact|none|<surround|<locus|<id|<hard-id|<arg|body>>>|<link|hyperlink|<id|<hard-id|<arg|body>>>|<url|<merge|#footnr-|<arg|nr>>>>|<arg|sym>><footnote-sep>|<set-binding|<merge|footnote-|<arg|nr>>|<value|the-label>|body><right-flush>|<style-with|src-compact|none|<arg|body>>>>>>
+    <smaller|<with|par-mode|justify|par-left|0cm|par-right|0cm|font-shape|right|dummy|<value|page-fnote-sep>|dummy|<value|page-fnote-barlen>|dummy|<value|page-fnote-barsep>|dummy|<value|par-fnote-sep>|<style-with|src-compact|none|<surround|<locus|<id|<hard-id|<arg|body>>>|<link|hyperlink|<id|<hard-id|<arg|body>>>|<url|<merge|#footnr-|<arg|nr>>>>|<arg|sym>><footnote-sep>|<set-binding|<merge|footnote-|<arg|nr>>|<value|the-label>|body><right-flush>|<style-with|src-compact|none|<arg|body>>>>>>
   </float>>>>
 
   <assign|render-footnote|<macro|nr|body|<render-footnote*|<arg|nr>|<arg|nr>|<arg|body>>>>
diff --git a/src/src/Data/Drd/drd_std.cpp b/src/src/Data/Drd/drd_std.cpp
index 8b93b47..703cd28 100644
--- a/src/src/Data/Drd/drd_std.cpp
+++ b/src/src/Data/Drd/drd_std.cpp
@@ -1017,6 +1017,7 @@ init_std_drd () {
   init_var (PAGE_SHOW_HF, TYPE_BOOLEAN);
   init_var (PAGE_FNOTE_SEP, TYPE_LENGTH);
   init_var (PAGE_FNOTE_BARLEN, TYPE_LENGTH);
+  init_var (PAGE_FNOTE_BARSEP, TYPE_LENGTH);
   init_var (PAGE_FLOAT_SEP, TYPE_LENGTH);
   init_var (PAGE_MNOTE_SEP, TYPE_LENGTH);
   init_var (PAGE_MNOTE_WIDTH, TYPE_LENGTH);
diff --git a/src/src/Data/Drd/vars.cpp b/src/src/Data/Drd/vars.cpp
index 7400b1f..573b019 100644
--- a/src/src/Data/Drd/vars.cpp
+++ b/src/src/Data/Drd/vars.cpp
@@ -154,6 +154,7 @@ string PAGE_SCREEN_BOT ("page-screen-bot");
 string PAGE_SHOW_HF ("page-show-hf");
 string PAGE_FNOTE_SEP ("page-fnote-sep");
 string PAGE_FNOTE_BARLEN ("page-fnote-barlen");
+string PAGE_FNOTE_BARSEP ("page-fnote-barsep");
 string PAGE_FLOAT_SEP ("page-float-sep");
 string PAGE_MNOTE_SEP ("page-mnote-sep");
 string PAGE_MNOTE_WIDTH ("page-mnote-width");
diff --git a/src/src/Data/Drd/vars.hpp b/src/src/Data/Drd/vars.hpp
index 1010807..14b8da2 100644
--- a/src/src/Data/Drd/vars.hpp
+++ b/src/src/Data/Drd/vars.hpp
@@ -144,6 +144,7 @@ extern string PAGE_SCREEN_BOT;
 extern string PAGE_SHOW_HF;
 extern string PAGE_FNOTE_SEP;
 extern string PAGE_FNOTE_BARLEN;
+extern string PAGE_FNOTE_BARSEP;
 extern string PAGE_FLOAT_SEP;
 extern string PAGE_MNOTE_SEP;
 extern string PAGE_MNOTE_WIDTH;
diff --git a/src/src/Typeset/Env/env_default.cpp b/src/src/Typeset/Env/env_default.cpp
index e77943b..691ae1b 100644
--- a/src/src/Typeset/Env/env_default.cpp
+++ b/src/src/Typeset/Env/env_default.cpp
@@ -161,6 +161,7 @@ initialize_default_env () {
   env (PAGE_SHOW_HF)     = "true";      // show header and footer
   env (PAGE_FNOTE_SEP)   = "1.0fn";     // space between text & footnotes
   env (PAGE_FNOTE_BARLEN)= "7.5fn";     // length of footnote separating bar
+  env (PAGE_FNOTE_BARSEP)= "0.2fn";     // space between separating bar and first footnote
   env (PAGE_FLOAT_SEP)   = "1.5fn";     // space between text & floats
   env (PAGE_MNOTE_SEP)   = "5mm";       // space between text & marginal notes
   env (PAGE_MNOTE_WIDTH) = "15mm";      // width of marginal notes
diff --git a/src/src/Typeset/Page/make_pages.cpp b/src/src/Typeset/Page/make_pages.cpp
index 509063c..f936996 100644
--- a/src/src/Typeset/Page/make_pages.cpp
+++ b/src/src/Typeset/Page/make_pages.cpp
@@ -145,7 +145,7 @@ pager_rep::pages_format (pagelet pg) {
       pencil pen= env->pen->set_width (env->fn->wline);
       bs << line_box (decorate(), 0, 0, fnote_bl, 0, pen);
       bx << 0;
-      by << (fnote_y + stretch_space (fn_sep, 0.0));
+      by << (fnote_y + stretch_space (fnote_bs, 0.5));
     }
     // cout << UNINDENT << "Formatted pagelet " << (N(pages)+1) << LF << LF;
     return scatter_box (ip, bs, bx, by);
diff --git a/src/src/Typeset/Page/pager.cpp b/src/src/Typeset/Page/pager.cpp
index f758868..08d6abc 100644
--- a/src/src/Typeset/Page/pager.cpp
+++ b/src/src/Typeset/Page/pager.cpp
@@ -42,6 +42,7 @@ pager_rep::pager_rep (path ip2, edit_env env2, array<page_item> l2):
   fn_sep    = env->get_vspace (PAR_FNOTE_SEP);
   fnote_sep = env->get_vspace (PAGE_FNOTE_SEP) + (2*env->fn->sep);
   fnote_bl  = env->get_length (PAGE_FNOTE_BARLEN);
+  fnote_bs  = env->get_length (PAGE_FNOTE_BARSEP) + (2*env->fn->sep);
   float_sep = env->get_vspace (PAGE_FLOAT_SEP);
   mnote_sep = env->get_length (PAGE_MNOTE_SEP);
   show_hf   = env->get_bool (PAGE_SHOW_HF) && paper;
diff --git a/src/src/Typeset/Page/pager.hpp b/src/src/Typeset/Page/pager.hpp
index 078dfd2..4541aa3 100644
--- a/src/src/Typeset/Page/pager.hpp
+++ b/src/src/Typeset/Page/pager.hpp
@@ -45,6 +45,7 @@ public:
   space        fn_sep;
   space        fnote_sep;
   SI           fnote_bl;
+  SI           fnote_bs;
   space        float_sep;
   SI           mnote_sep;
 
_______________________________________________
Texmacs-dev mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/texmacs-dev

Reply via email to