GithubHelp home page GithubHelp logo

page-break-lines's Introduction

Melpa Status Melpa Stable Status Build Status Support me

page-break-lines.el

This Emacs library provides a global mode which displays ugly form feed characters as tidy horizontal rules.

Screenshot

page-break-lines screenshot

Installation

If you choose not to use one of the convenient packages in MELPA, you'll need to add the directory containing page-break-lines.el to your load-path, and then (require 'page-break-lines).

Usage

Enable page-break-lines-mode in an individual buffer like this:

(page-break-lines-mode)

Alternatively, customize page-break-lines-modes and enable the mode globally with global-page-break-lines-mode.

Note that Emacs already supports “Pages” and jumping around between page breaks with C-x [ (backward-page) and C-x ] (forward-page).

Issues and limitations

If page-break-lines-char is displayed at a different width to regular characters, the rule may be either too short or too long: rules may then wrap if truncate-lines is nil. On some systems, Emacs may erroneously choose a different font for the page break symbol, which choice can be overridden using code such as:

(set-fontset-font "fontset-default"
                  (cons page-break-lines-char page-break-lines-char)
                  (face-attribute 'default :family))

Use describe-char on a page break char to determine whether this is the case.

Also see Vasilij Schneidermann's form-feed package, which works using font-lock instead of glyph composition, and therefore has different display trade-offs.


💝 Support this project and my other Open Source work

💼 LinkedIn profile

✍ sanityinc.com

🐦 @sanityinc

page-break-lines's People

Contributors

camdez avatar drothlis avatar knu avatar kyleam avatar micahelliott avatar peniblec avatar purcell avatar swsnr avatar xahlee avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

page-break-lines's Issues

Something funky setting global-page-break-lines-mode via Customize

Hi Steve,

Something weird happens when setting global-page-break-lines mode to t via Customize. This is what goes into my custom-file:

'(global-page-break-lines-mode t nil (page-break-lines))

when I would expect:

'(global-page-break-lines-mode t)

The problem this causes is if page-break-lines happens not to be in the load-path for whatever reason (testing something, etc.) then Emacs initialisation will stumble, with:

file-missing "Cannot open load file" "No such file or directory" "page-break-lines"

Having a look at the source, I can't see why this is the case, so I suspect that it might be a "clever" change upstream with Emacs... What's your take?

Line is one char too long with (fringe-mode '(0 . 0))

Sorry for the two issues in a row.

I have fringes disabled on both sides of the window. With any other setting I've tried, the mode works fine. However, with no fringes at all, the line is always one char too long and needs to be truncated. From looking at the source, I can not figure out what causes this. It's possible to work around by changing page-break-lines--update-display-table like this:

(wwidth-pix (- (window-width nil t)
             (if (bound-and-true-p display-line-numbers)
              (line-number-display-width t)
              0)
             (when
              (equal
               (cl-subseq (window-fringes) 0 2) '(0 0))
              8)))

But that's of course very hacky.

a bug make ^L just occupy half a line under linux and windows in page-break-lines.el in graphical displays under CJK environment.

(defcustom page-break-lines-char ?─
"Character used to render page break lines."
:type 'character
:group 'page-break-lines)

eval: (char-width page-break-lines-char)

result:

|---------+-----------+------------+----------+-----------|
| ---     | graphical | display    | terminal | display   |
|---------+-----------+------------+----------+-----------|
| windows |         2 | half line  |        2 | half line |
| linux   |         2 | half line  |        2 | half line |
| MacOS   |         1 | whole line |        2 | half line |

It's "e29480" by utf8.
I found a almost the same one "—" ("e28094" by utf8) that can almost correct this bug -- eval (char-width page-break-lines-char)=1. But in MacOS graphical "e28094" eval (char-width page-break-lines-char) = 2. I don't know how to fix it with both environments.
I guest he bug maybe has relationship to CJK environment, because I test it in English environment and it's correct.

Coexistence with vertical-border display table slot?

Dear Steve,

In console Emacs, given that in many fonts the | vertical line character does not create a solid vertical line between line breaks, I’ve added the below code to my init to make the window vertical border a solid line.

(defun prettify-vertical-border (&optional dummy)
  (ignore dummy)
  (set-display-table-slot (or buffer-display-table
                              standard-display-table)
                          'vertical-border ?│))

(when (not window-system)
  (add-hook 'window-configuration-change-hook
            'prettify-vertical-border))

But I’ve found that this seems to conflict with global-page-break-lines-mode, and so when spawning a new window that creates a vertical split (with global-page-break-lines-mode enabled), I get the ugly old broken vertical border, and not my prettified vertical border. Specifically this happens when spawning a help-mode window on the left (i.e. from the right window).

I’m not entirely sure if root of this troubled coexistence lies with page-break-lines, given that I can only manifest the appearance of the old, broken vertical border when spawning a help-mode window (and with global-page-break-lines-mode) with C-h o SYMBOL RET.

Please help! I don’t think I can live without the aesthetic soothingness of a solid vertical border and solid page-break-lines!

Many thanks.

  • GNU Emacs 27.0.60 (build 1, x86_64-apple-darwin19.2.0, NS appkit-1894.20 Version 10.15.2 (Build 19C57)) of 2020-01-18
  • page-break-lines 20190519.2238

Error during redisplay: (page-break-lines--update-display-tables #<frame config.el – Doom Emacs 0x108078868>) signaled (args-out-of-range #^[nil nil display-table

Seems a new page-break-lines update caused this error:

Error during redisplay: (page-break-lines--update-display-tables #<frame config.el – Doom Emacs 0x108078868>) signaled (args-out-of-range #^[nil nil display-table 
#^^[3 0 nil nil nil nil nil nil nil nil nil [8250 9] nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil] #^^[1 0 #^^[2 0 
#^^[3 0 nil nil nil nil nil nil nil nil nil [8250 9] nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil] nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil] nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil] nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil] 12)

FWIW, I'm on MacOS 10.14, using emacs-mac 26.3

Latest update leads to crash on mac os gui

I run emacs 29.2 on 2 macs: one running Sonoma 14.2.1, the other Monterey 12.7.2. On both these machines (but not my Linux machine), after updating to the latest page-break-lines (commit e8bfd1a), and launching the emacs server, I would get crashes soon after launching the client frame to connect to the server.

The stack trace showed

EXC_BAD_ACCESS (SIGABRT)
in
QuartzCore: CA::Layer::property_did_change(CA::Transaction*, unsigned int) + 4171

There was also the following error:

page-break-lines--update-display-tables: Arithmetic error during redisplay: signaled (arith-error) [2 times]

After reverting that commit the behavior went away immediately.

I hope this helps someone track down this issue if it happens to them.

The length of the line is only show half

Hi, i am new come to emacs. but i got some problem when i use dashboard , i found the length of the line only show half. i found dashboard use the page-break-lines. so should i ask in here?
please see this pic .

image

How to enable in zone mode?

My dashboard looks like this:
image
But as soon as I zone out the lines disable:
image
I've tried

(push 'zone page-break-lines-modes)

with no avail.

How can I get these lines to still work even if I zone out?

Incompatibility with display-line-numbers-mode (edge case)

When I'm opening some file containing ^L symbols here and there on line 500, everything goes well. Then I scroll down to line 1000 and last dash in line moves to the next line, because now column with line numbers wider than before, and number of dashes needed to build up the line is the same.

Typing lag caused by this mode

I'm using GNU Emacs 26.1 (build 1, x86_64-w64-mingw32) of 2018-05-30 and a buffer called from a package called temporary persistent. I'm on an UHD display and I have a funktion that adds an ^L and under that the current date+Time. This buffer is my dump for any incoming unsorted information. So this buffer is filled with lots of ^L that are rendered by this mode.

Now I noticed that when I type the typing is lagging. After turing off the usual suspects like company, I found out that this mode is causing the lag. Any idea?

To test I just press any letter, something like gggggggggggggggggggggggggggggggg. The on/off difference is obviously. I really liked the idea of this mode but this lag seems to make it a candidate for removal.

Describe character on the page-break line character gives me this:

             position: 584 of 752 (78%), column: 0
            character: C-l (displayed as C-l) (codepoint 12, #o14, #xc)
    preferred charset: ascii (ASCII (ISO646 IRV))
code point in charset: 0x0C
               script: latin
               syntax:   	which means: whitespace
             to input: type "C-x 8 RET c" or "C-x 8 RET FORM FEED (FF)"
          buffer code: #x0C
            file code: #x0C (encoded by coding system utf-8-dos)
              display: by display table entry [?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─ ?─] (see below)

The display table entry is displayed by these fonts (glyph codes):
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’
─: uniscribe:-outline-Source Code Pro-normal-normal-normal-mono-24-*-*-*-c-*-iso8859-1 (#x573)
 face: ‘page-break-lines’

Character code properties: customize what to show
  old-name: FORM FEED (FF)
  general-category: Cc (Other, Control)

There are text properties here:
  fontified            t

Line is one character too long with display-line-numbers-mode

macOS version: 12.6 (21G115)
Emacs version: GNU Emacs 28.2 (build 1, aarch64-apple-darwin21.1.0, NS appkit-2113.00 Version 12.0.1 (Build 21A559))
page-break-lines version: 20210104.2224

Steps to reproduce:

  1. Install emacs brew install --cask emacs
  2. Install page-break-lines (via melpa)
  3. emacs -q or emacs -q -nw
  4. M-x package-initialize
  5. M-x global-page-break-lines-mode
  6. M-x global-display-line-numbers-mode
  7. C-h f page-break-lines-mode
  8. Click page-break-lines.el
  9. The page break lines right above and below the function definition are one character too long.

Interestingly, replace steps 7–9 with the following for a counter example:

  1. M-x find-function RET page-break-lines-mode
  2. All page break lines in the file are the correct length.

I know there have been a lot of off-by-one issues that ended up not actually being bugs, let me know if any more information is helpful.

Please redraw when window size changes

Hi,

I started testing this package and noticed that it doesn't redraw when a window is resized, which leads to a horizontal ruler that is either too long or two short. What do you think about triggering a redraw using window-size-change-functions or window-configuration-change-hook?

Best,
Nicholas

MELPA code doesn't match?

I updated to 29.2 and ended up grabbing a new version of this package. Using it, I get Arithmetic error when trying to load files. So, I took a look at my setup:

$ diff ./elpa-27.2/page-break-lines-20230804.658/page-break-lines.el ./elpa-29.2/page-break-lines-20240117.1610
8c8
< ;; Package-Requires: ((emacs "24.4"))
---
> ;; Package-Requires: ((emacs "25.1"))
128,138c128,132
<               (let* ((cwidth (char-width page-break-lines-char))
<                      (wwidth-pix (- (window-width nil t)
<                                     (if (and (bound-and-true-p display-line-numbers)
<                                              (fboundp 'line-number-display-width))
<                                         (line-number-display-width t)
<                                       0)))
<                      (width (- (/ wwidth-pix (frame-char-width) cwidth)
<                                (if (display-graphic-p) 0 1)))
<                      (width (if page-break-lines-max-width
<                                 (min width page-break-lines-max-width)
<                               width))
---
>               (let* ((char-relative-width (if (fboundp 'string-pixel-width)
>                                               (/ (string-pixel-width (make-string 100 page-break-lines-char))
>                                                  (string-pixel-width (make-string 100 ?a)))
>                                             (char-width page-break-lines-char)))
>                      (width (floor (window-max-chars-per-line) char-relative-width))

So I then came back to this repo to look at

0.14 -

(let* ((cwidth (char-width page-break-lines-char))

0.15 -
(let* ((cwidth (char-width page-break-lines-char))

Neither of those entries has the updated code from above. How did that get into MELPA and from WHERE????

Lines only stretch half-way when locale is Chinese

This is probably the same issue as #24, but since that one's closed, I thought I open a new one.
As it turns out this is caused by running within a Chinese locale. You can reproduce this behaviour by running env LC_CTYPE=zh_CN.utf-8 emacs.
I guess this could have something to do with double-width characters? Just a guess, though.

org-mode compatibility

i know it's probably really meant for prog-modes, but i just got started on a text project converted from pdf, and all page breaks are rendered as ^L.

when i insert an org heading, any horizontal lines following it become, i think, infinitely long, or very long, and if you try to move point past one, point goes way back up the buffer.

should this mode work in org (and so it is maybe something with my set up) or is it simply a no-go?

the problem is still there for me if i set a max width for page-break-lines, and also with any variable pitch modes disabled. (not sure what else it could be interacting with.)

global-page-break-lines-mode not worked with browse-kill-ring

Following code is not work. we still see ^L in browse-kill-ring buffer.

(require 'page-break-lines)
(global-page-break-lines-mode 1)

;; ------------------------------ secondary  ------------------------------
;; kill-ring增强, 会自动尝试 require second-sel.
(require 'browse-kill-ring+)
(setq browse-kill-ring-separator "\f")

Thanks.

Doesn't play well with text-scale-mode

(window-width ...) always returns the window width in terms of the base font size, whereas the scaled font may display either more or fewer characters in the same width.

how to define ^L with comment

In some white space clean mode, they don't allow special char and clean them up, include ^L char.

How to define ^L after a comment while as still keep the function of page break? That's to say //^L in Javascript as a whole to prevent clean up by some formatting lib.

The line overflows by a few characters

This happens when I am using display-line-numbers-mode on Emacs 27. Isn't there better heuristic to calculate the current line length in any circumstance?

How to start global-page-break-lines-mode when emacs starts

Hi

first of all, thanks very much for this nice package (I wish I had known it before).
I like it so much that I prefer to have it enabled in all buffers always (and would turn it off, if I see problems)
Now there is global-page-break-lines-mode
but it seems I need to run this each time, after an emacs startup, and even then it is not enabled in mail(message) buffers
What do I miss here? I presume I have to add these modes to page-break-lines-modes, right?
thanks
Uwe Brauer

Autoloading customizable variables

Hi!

Is it necessary to autoload customizable variables?

I'm loading custom-file in early-init.el before packages are loaded.
Later value of the page-break-lines-modes is overridden by default value on package being loaded.

Removing autoload from variables resolve issue for me.

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.