From 0f5b76348d94fde135271bbac02b37d63d8097b1 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Thu, 27 Feb 2020 22:03:41 +0000
Subject: econ-bst (27feb20)

git-svn-id: svn://tug.org/texlive/trunk@53937 c570f23f-e606-0410-a88d-b1316a301751
---
 .../bibtex/econ-bst/customization/econ-no-sort.bst | 202 +++++++++++++--------
 1 file changed, 130 insertions(+), 72 deletions(-)

(limited to 'Master/texmf-dist/doc/bibtex/econ-bst/customization/econ-no-sort.bst')

diff --git a/Master/texmf-dist/doc/bibtex/econ-bst/customization/econ-no-sort.bst b/Master/texmf-dist/doc/bibtex/econ-bst/customization/econ-no-sort.bst
index 2e272ee2c3d..b2cbcd057ee 100644
--- a/Master/texmf-dist/doc/bibtex/econ-bst/customization/econ-no-sort.bst
+++ b/Master/texmf-dist/doc/bibtex/econ-bst/customization/econ-no-sort.bst
@@ -4,8 +4,7 @@
 % Maintainer: Shiro Takeda
 % Copyright (C) 2001-2018 Shiro Takeda
 % First-written:       <2007/07/28>
-% Time-stamp:          <2018-12-07 18:48:07 st>
-% Version: 2.5
+% Version: 2.7
 % Keywords: TeX, BibTeX, bst 
 % URL: https://github.com/ShiroTakeda/econ-bst
 
@@ -38,7 +37,10 @@
 % For changelogs, see CHANGES.txt file.
 
 % version number
-FUNCTION {econ.version} { "2.5" }
+FUNCTION {econ.version} { "2.7" }
+
+% File name
+FUNCTION {econ.file} { "econ.bst" }
 
 % Debug mode. Non-zero makes debug mode on.
 FUNCTION {econ.debug}
@@ -61,7 +63,7 @@ ENTRY
 
   %% String entry variable
   { label cyear flabel alabel extra.label sort.label sort.label.abb
-    extra.label.bysame nameorder.temp }
+    extra.label.bysame nameorder.temp jname }
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%
@@ -312,7 +314,11 @@ FUNCTION {bst.cite.and.nameorder}
 % authors is greater or equal to bst.and.others.num.
 FUNCTION {bst.and.others.num}
 { #3 }    % If the number of authors is greater or equal to three (default).
-% { #4 }
+
+% If the number of authors is greater or equal to bst.max.author.num, only
+% first author is listed and other authors' names are abbreviated as "et al.".
+FUNCTION {bst.max.author.num}
+{ #12 }    % If the number of authors is greater or equal to 12 (default).
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
@@ -415,6 +421,15 @@ FUNCTION {bst.journal.pre}
 FUNCTION {bst.journal.post}
 { "}" }    % (default)
 
+% Use the abbreviated journal name
+%
+% If set to #0, do not use abbreviated journal name.
+% If set to non-#0, use abbreviated journal name.
+%
+FUNCTION {bst.journal.name.abb}
+{ #0 }    % (default)
+% { #1 }
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %       editor notation:
 
@@ -455,7 +470,7 @@ FUNCTION {bst.edition.post}
 % The string before volume:
 %
 FUNCTION {bst.volume.pre}
-{ ", Vol. " }    % (default)
+{ ", " }    % (default)
 
 % The string after volume:
 %
@@ -469,18 +484,18 @@ FUNCTION {bst.volume.post}
 
 % Hide number.  If non-zero, number is suppressed. 
 FUNCTION {bst.hide.number}
-% { #0 }    % #0 -> show number field (default)
-{ #1 }    % non-#0 -> Hide number field.
+{ #0 }    % #0 -> show number field (default)
+% { #1 }    % non-#0 -> Hide number field.
 
 % The string before number:
 %
 FUNCTION {bst.number.pre}
-{ ", No. " }    % (default)
+{ " (" }    % (default)
 
 % The string after number:
 %
 FUNCTION {bst.number.post}
-{ "" }    % (default)
+{ ")" }    % (default)
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %       in 
@@ -496,12 +511,12 @@ FUNCTION {bst.in}
 % The string before page (multiple pages):
 %
 FUNCTION {bst.pages.pre}
-{ ", pp." }    % (default)
+{ ", " }    % (default)
 
 % The string before page:
 %
 FUNCTION {bst.page.pre}
-{ ", p." }    % (default)
+{ ", " }    % (default)
 
 % The string after page (multiple pages):
 %
@@ -649,7 +664,7 @@ FUNCTION {bst.show.url}
 % The string before url:
 %
 FUNCTION {bst.url.pre}
-{ ", URL: \url{" }	% (default)
+{ ", \url{" }	% (default)
 
 % The string after url:
 %
@@ -684,12 +699,12 @@ FUNCTION {bst.show.doi}
 % The string before DOI:
 %
 FUNCTION {bst.doi.pre}
-{ ", DOI: \href{http://dx.doi.org/" doi * "}{" * } % (default)
+{ ", \href{http://dx.doi.org/" doi * "}{\urlstyle{rm} \nolinkurl{" * } % (default)
 
 % The string after DOI:
 %
 FUNCTION {bst.doi.post}
-{ "}" }    % (default)
+{ "}}" }	   % (default)
 
 % How to show URL and DOI fields when both fields exist.
 %
@@ -698,9 +713,9 @@ FUNCTION {bst.doi.post}
 % #2 -> Only DOI field is displayed
 %
 FUNCTION {bst.url.doi}
-{ #0 }    % (default) -> Both fields are displayed
+% { #0 }    % -> Both fields are displayed
 % { #1 }    % -> Only URL field is displayed
-% { #2 }    % -> Only DOI field is displayed 
+{ #2 }    % (default) --> Only DOI field is displayed 
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %       Other functions:
@@ -716,7 +731,7 @@ FUNCTION {bst.note.post}
 % The string that represents Technical report:
 %
 FUNCTION {bst.techrep}
-{ " Tech. Rep." }    % (default)
+{ "Technical Report" }    % (default)
 
 % The string that represents master thesis:
 %
@@ -1059,11 +1074,37 @@ FUNCTION {format.btitle}
   if$
 }
 
+FUNCTION {journal.name.sub}
+{ 't :=
+  t #1 #4 substring$ "The " =
+    % Use #30 to handle with the long journal name.
+    { t #5 #30 substring$ 't := }
+    'skip$
+  if$
+  t
+}
+
+FUNCTION {format.journal.name.abb}
+{ journal 's :=
+  journal 'jname :=
+  s journal.name.sub 's :=
+  bst.journal.name.abb #0 =
+    'skip$
+    { 
+       s "Academic Management Review" =
+        { "Acad. Manage. J." 'jname := }
+        'skip$
+      if$
+    }
+  if$
+  jname
+}
+
 %%% journal
 FUNCTION {format.journal}
 { journal empty$
     { "" }
-    { bst.journal.pre journal * bst.journal.post * }
+    { bst.journal.pre format.journal.name.abb * bst.journal.post * }
   if$
 }
 
@@ -1139,56 +1180,62 @@ FUNCTION {format.names}
   numnames 'namesleft :=
   % Repeat if namesleft > 0
   { namesleft #0 > }
-  {  nameptr #1 =
-     % First author
-     { bst.author.name #0 =
-       bst.author.name #1 =
-       or
-          { bst.first.name.initial #0 = 
-           { s nameptr "{vv~}{ll}{, ff}{, jj}" format.name$ 't := }
-           { s nameptr "{vv~}{ll}{, f.}{, jj}" format.name$ 't := }
-          if$
-        }
-          { bst.first.name.initial #0 = 
-             { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := }
-             { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := }
-          if$
-        }
-       if$
-     }
-     % The second or later authors
-     { bst.author.name #0 =
-       bst.author.name #2 =
-       or
-          { bst.first.name.initial #0 = 
-             { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := }
-             { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := }
-         if$
-          }
-          { bst.first.name.initial #0 = 
-               { s nameptr "{vv~}{ll}{, ff}{, jj}" format.name$ 't := }
-               { s nameptr "{vv~}{ll}{, f.}{, jj}" format.name$ 't := }
-         if$
-          }
-       if$
-     }
-    if$
 
+  { nameptr #1 =
+      % First author
+      { bst.author.name #0 =
+        bst.author.name #1 =
+        or
+           { bst.first.name.initial #0 = 
+            { s nameptr "{vv~}{ll}{, ff}{, jj}" format.name$ 't := }
+            { s nameptr "{vv~}{ll}{, f.}{, jj}" format.name$ 't := }
+           if$
+         }
+           { bst.first.name.initial #0 = 
+              { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := }
+              { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := }
+           if$
+         }
+        if$
+      }
+      % The second or later authors
+      { bst.author.name #0 =
+        bst.author.name #2 =
+        or
+           { bst.first.name.initial #0 = 
+              { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := }
+              { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := }
+             if$
+           }
+           { bst.first.name.initial #0 = 
+                { s nameptr "{vv~}{ll}{, ff}{, jj}" format.name$ 't := }
+                { s nameptr "{vv~}{ll}{, f.}{, jj}" format.name$ 't := }
+             if$
+           }
+        if$
+      }
+    if$
+    
     nameptr #1 >
       % The second or later authors
-      { nameorder.temp "random" =
-        bst.use.nameorder #0 = not and
-          { bst.and.nameorder * t * }
-          { namesleft #1 >
-              % More than one authors left
-              { ", " * t * }
-              % Only one author left
-              { t "others" =
-                  { bst.and.others.output * }
-                  { numnames #2 =
-                      % Entry with two authors
-                      { bst.and * t * }
-                      { bst.ands * t * }
+      { numnames bst.max.author.num >
+          { bst.and.others * 
+            #1 'namesleft :=  }
+          { nameorder.temp "random" =
+            bst.use.nameorder #0 = not and
+              { bst.and.nameorder * t * }
+              { namesleft #1 >
+                  % More than one authors left
+                  { ", " * t * }
+                  % Only one author left
+                  { t "others" =
+                      { bst.and.others.output * }
+                      { numnames #2 =
+                          % Entry with two authors
+                          { bst.and * t * }
+                          { bst.ands * t * }
+                        if$
+                      }
                     if$
                   }
                 if$
@@ -1915,7 +1962,7 @@ FUNCTION {format.thesis.type}
 
 FUNCTION {format.tr.number}
 { type empty$
-    { "Technical Report" }
+    { bst.techrep }
     { " " type * }
   if$
   number empty$
@@ -2152,9 +2199,9 @@ FUNCTION {incollection}
 
   format.in.ed.booktitle "booktitle" output.check.nocomma
   format.bvolume output.nocomma
-  output.address.organization.publisher
   format.edition output.nocomma
   format.chapter.pages output.nocomma
+  output.address.organization.publisher
 
   bst.year.position #0 = not
     { format.year "year" output.check.nocomma }
@@ -2399,6 +2446,8 @@ FUNCTION {techreport}
     'skip$
   if$
 
+  format.url.doi output.nocomma
+
   format.note output.nocomma
   fin.entry
 }
@@ -2911,6 +2960,15 @@ FUNCTION {calc.flabel}
     }
   if$
   'flabel :=
+  author empty$
+    'skip$
+    { author num.names$ 'numnames :=
+      numnames bst.max.author.num >
+        { alabel 'flabel := }
+        'skip$
+      if$
+    }
+  if$
   % For debug
   econ.debug #0 = not
     { "flabel = ``\texttt{" write$
@@ -3449,10 +3507,10 @@ ITERATE {forward.pass.two}
 
 FUNCTION{punctuation}
 {
-  "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"  write$ newline$
-  "%  This bbl file is created by econ.bst ver." econ.version *          write$ newline$
-  "%  The latest econ.bst is available at"                               write$ newline$
-  "%  <https://github.com/ShiroTakeda/econ-bst>"                         write$ newline$ newline$
+  "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" write$ newline$
+  "%  This bbl file is created by " econ.file * " ver." * econ.version *          write$ newline$
+  "%  The latest " econ.file * " is available at " *			write$ newline$
+  "%  <https://github.com/ShiroTakeda/econ-bst>"                        write$ newline$ newline$
 }
 
 EXECUTE {punctuation}
-- 
cgit v1.2.3

