patch 9.1.0907: printoptions:portrait does not change postscript Orientation
Problem: printoptions:portrait does not change postscript Orientation
Solution: Set Orientation depending on portrait suboption.
fixes: #16156
closes: #16174
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/hardcopy.c b/src/hardcopy.c
index 8abfff2..785a3f5 100644
--- a/src/hardcopy.c
+++ b/src/hardcopy.c
@@ -2742,7 +2742,7 @@
prt_dsc_textline("CreationDate", get_ctime(time(NULL), FALSE));
prt_dsc_textline("DocumentData", "Clean8Bit");
- prt_dsc_textline("Orientation", "Portrait");
+ prt_dsc_textline("Orientation", prt_portrait ? "Portrait" : "Landscape");
prt_dsc_atend("Pages");
prt_dsc_textline("PageOrder", "Ascend");
// The bbox does not change with orientation - it is always in the default
diff --git a/src/testdir/test_hardcopy.vim b/src/testdir/test_hardcopy.vim
index be83728..926ff8f 100644
--- a/src/testdir/test_hardcopy.vim
+++ b/src/testdir/test_hardcopy.vim
@@ -209,4 +209,31 @@
call delete('Xpstest')
endfunc
+func Test_printoptions_portrait()
+ CheckFeature postscript
+ edit test_hardcopy.vim
+ syn on
+
+ set printoptions=portrait:y
+ 1,50hardcopy > Xhardcopy_printoptions_portrait
+ let lines = readfile('Xhardcopy_printoptions_portrait')
+ call assert_match('Orientation: Portrait', lines[6])
+ call assert_match('BoundingBox: 59 49 564 800', lines[9])
+ call assert_match('DocumentMedia: A4', lines[10])
+ call assert_match('PageMedia: A4', lines[24])
+ call delete('Xhardcopy_printoptions')
+
+ set printoptions=portrait:n
+ 1,50hardcopy > Xhardcopy_printoptions_portrait
+ let lines = readfile('Xhardcopy_printoptions_portrait')
+ call assert_match('Orientation: Landscape', lines[6])
+ call assert_match('BoundingBox: 59 42 590 756', lines[9])
+ call assert_match('DocumentMedia: A4', lines[10])
+ call assert_match('PageMedia: A4', lines[24])
+ call delete('Xhardcopy_printoptions')
+
+ set printoptions&
+ bwipe
+endfunc
+
" vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/version.c b/src/version.c
index c230d4f..bdd6053 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 907,
+/**/
906,
/**/
905,