Age | Commit message (Collapse) | Author | Files | Lines |
|
To reproduce, create a column with at least two windows and resize
acme to have almost zero height.
|
|
macOS Mojave version 10.14 starts to disable font smoothing.
We disable font smoothing for OSX_VERSION >= 101400 to match the
system default font rendering.
It also makes the font rendering on macOS similar to that on X11.
|
|
Opening /dev/ptyXX files fails on recent
FreeBSD versions.
Following the same fix being applied to
Linux, OpenBSD, and Darwin, we use openpty
to open a pseudoterminal in openpts.
|
|
* Avoid allocating empty images by adding 1 to width/height. This was
crashing fontsrv. The total width of the subfont image can be zero
even if the characters are present in the font. For example, all the
characters in x0300.bit (part of "Combining Diacritical Marks" Unicode
block) have zero width.
* Make sure U+0000 is always present in the font, otherwise libdraw
complains with: "stringwidth: bad character set for rune 0x0000 in ..."
* Use the same fallback glyph (pjw face) as OS X. This also fixes a bug
where advance was set to the total width of subfont instead of the
character.
Update #125 (most likely fixes the crash if in X11)
Change-Id: Icdc2b641b8b0c08644569006e91cf613b4d5477f
|
|
According to RFC 3501 the arguments to the LOGIN command should be
quoted strings (or length prefixed string literals). Without quoting,
authentication to some IMAP servers (e.g. Dovecot) will fail.
|
|
This change fixes a segfault in grep -e when no argument
has been provided. Thanks to Sean Hinchee for reporting
this issue.
Fixes #186.
|
|
When plumbing an address like `3-`, Acme selects line 1,
and similarly `3+` selects line 5.
The same problem can be observed for character addresses (`#123+`)
but _not_ for ones like `+`, `.+` or `/foo/+`:
The problem only occurs when a number is followed by a direction (`-`/`+`).
Following along with the example `3-` through `address` (in addr.c):
We read `3` into `c` and match the `case` on line 239.
The `while` loop on line 242ff reads additional digits into `c`
and puts the first non-digit back by decrementing the index `q`.
Then we find the range for line 3 on line 251 and continue.
On the next iteration, we set `prevc` to the last `c`,
but since that part read ahead _into `c`_,
`c` is currently the _next_ character we will read, `-`,
and now `prevc` is too.
Then in the case block (line 210) the condition on line 211 holds
and Acme believes that it has read two `-` in sequence
and modifies the range to account for the “first” `-`.
The “second” `-` gets applied after the loop is done, on line 292.
So the general problem is:
While reading numbers, Acme reads the next character after the number into `c`.
It decrements the counter to ensure it will read it again on the next iteration,
but it still uses it to update `prevc`.
This change solves the problem by reading digits into `nc` instead.
This variable is used to similar effect in the block for directions (line 212)
and fills the role of “local `c` that we can safely use to read ahead” nicely.
|
|
For some fonts, using box-drawing characters in the representative
text for computing the line height results in it being uncomfortably
high. Replace them with accented capitals and tall lower-case letters
which lead to a more conservative increase in the line height.
Fixes #162.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Double the width returned by CTFontGetBoundingBox when drawing.
Add box drawing characters for determining the line height.
Call freememimage(1) for the character memimage.
Fixes #18.
Fixes #120.
Fixes #146.
|
|
MacPorts installs osxfuse under /opt/local.
|
|
fontsrv wasn't rendering fontawesome icons,
which uses the private use area around 0xf000.
|
|
|
|
TERM_PROGRAM is the customary way to identify which kind of terminal
emulator program one uses on macOS.
This change sets TERM_PROGRAM to termprog since both variables are used
for the same purpose.
|
|
read(3) sometimes errors with EINTR on macOS over slow connections.
9pfuse(1) now retries read(3) instead of sysfatal(3)ing.
|
|
Fixes #81.
|
|
as the old grody way doesn't work any more on FreeBSD-10 and later.
|
|
rc on amd64 stores ulimit values as 32-bit int, but the limits on
OpenBSD amd64 can exceed 2^31, so "ulimit -a" shows some values as
negative. This is a problem when I want to increase my ulimit but
the hard ulimit values are printed as negative.
|
|
|
|
Fixes #6.
Change-Id: Id9950f59c7970575866a7c22a69bfbf3a271f2bb
|
|
Before, executing Get in a file rewound the window offset and
selection to the start of the file.
After this CL, Get preserves the window offset and selection,
where preserve is defined as "the same line number and rune
offset within the line". So if the window started at line 10
before and the selection was line 13 chars 5-7, then that
will still be true after Get, provided the new content is large
enough.
This should help the common situation of plumbing a
compiler error, realizing the window is out of date,
clicking Get, and then losing the positioning from the
plumb operation.
|
|
Thanks to Lorenzo Beretta for noticing.
|
|
Since macOS 10.13, opening the /dev/ptyXX files
always return ENOENT.
Consequently, we changed getpts to use openpty to
open a pseudoterminal, like on Linux and OpenBSD.
Fixes #90.
Fixes #110.
|
|
decode.c:146:8: warning: variable ‘argv’ set but not used
fs.c:953:47: warning: variable ‘reset’ set but not used
imap.c:348:6: warning: variable ‘prefix’ set but not used
Updates #114.
|
|
Bad remote file systems can change mtime unexpectedly,
and then there is the problem that git rebase and similar
operations like to change the files and then change them back,
modifying the mtimes but not the content.
Avoid spurious Put errors on both of those by checking file
content.
(False positive "modified since last read" make the real ones
difficult to notice.)
|
|
After making the build on macOS silent on commit 310ae03,
the build was broken on macOS lesser than 10.12 (Sierra).
This commit conditionally checks the version the of the
SDK before using the defined values for silent build.
Fixes #66.
|
|
Ported from Plan 9 2013-05-21.
https://github.com/0intro/plan9/commit/b377a116d132865c011a3fb3ea76528ffd32963f
Closes #16.
|
|
Rename following .cvsignore files to .gitkeep since they are
required by the build (directories must exist before build):
- bin/fossil/.gitkeep
- bin/fs/.gitkeep
- bin/venti/.gitkeep
Change-Id: I9c2865058480cffb3a4613f25e2eca1f7e5578c0
|
|
plsvg.c:291:21: warning: variable ‘y2’ set but not used
plsvg.c:291:17: warning: variable ‘x2’ set but not used
|
|
|
|
Requested by rob.
|
|
A pixel is 32 bits wide in RGBA, regardless of system's word size.
Change-Id: Iea36a8dafdec9ce8d593f944ef5ed1ea08e11d25
Reviewed-on: https://plan9port-review.googlesource.com/2980
Reviewed-by: David du Colombier <0intro@gmail.com>
|
|
Change-Id: Ie9332ed473609bd6ca156be0843dc5411cbf7b93
Reviewed-on: https://plan9port-review.googlesource.com/2941
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
Change-Id: Ide32a9397701085b17fbd42f0866eb3de11e4190
Reviewed-on: https://plan9port-review.googlesource.com/2940
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
Fixes #86.
Change-Id: Id487219a0fcfdb68133fc81b11383365a1431c1c
Reviewed-on: https://plan9port-review.googlesource.com/2922
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
This is an experiment.
Like tpic it's a copy-and-paste fork of pic.
Change-Id: Ia22772bd5881c7904a6d8f8e0b46fde8cea89cbd
Reviewed-on: https://plan9port-review.googlesource.com/2920
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
`==` is higher precedence than `&`. Parenthesize.
Change-Id: I2c7ee588fea0d8a66e1c8424f26630015388d61a
Signed-off-by: Dan Cross <cross@gajendra.net>
Reviewed-on: https://plan9port-review.googlesource.com/2860
Reviewed-by: Gleydson Soares <gsoares@gmail.com>
|
|
Fix a bug folding newlines in strings constants in C code snippets
in YACC. This code has existed since at least 2nd Edition Plan 9.
Change-Id: Iba17b89a6529ac9fa6610bf0b44f551904174c26
Signed-off-by: Dan Cross <cross@gajendra.net>
Reviewed-on: https://plan9port-review.googlesource.com/2840
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
(el-sr) is the string length and (sizeof wdir - strlen(name) - 20)
is the buffer size. When the string length is greater than the
buffer size, the beginning of the string is supposed to be trimmed
to fit in the buffer size. Unfortunately a pair of parentheses were
missing, pointing sr outside the buffer, and the for loop below
then reads outside the buffer. For certain binary data printed in
a window, it causes a segfault.
Change-Id: Iffeaa348260ee2a5a36d9577308fb8d1c1688d05
Reviewed-on: https://plan9port-review.googlesource.com/1540
Reviewed-by: Gleydson Soares <gsoares@gmail.com>
|
|
Change-Id: Ibca68261016b0f588e169e9f319748b5ba7d15ac
Reviewed-on: https://plan9port-review.googlesource.com/2700
Reviewed-by: michaelian ennis <michaelian.ennis@gmail.com>
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
Change-Id: Ia18ebb28f24bc69f404004896f9ce54ddb53faf9
Reviewed-on: https://plan9port-review.googlesource.com/2782
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
Since Google (and a lot of the outside) is so engrained with using
^C as interrupt, I'd like to be able to use it in 9term if I've
stty'd my intr to ^C. Without this, hitting ^C still works but if
the program behind the window isn't reading from /dev/cons, it won't
take effect till after I hit a newline which is often very confusing.
I know this is a hack since it only works if I stty intr ^C but that
seems the only other character that gets used anyways.
Change-Id: I0597e63b2d7628f5668c648e6dba6f281e4b27fd
Reviewed-on: https://plan9port-review.googlesource.com/2742
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
Change-Id: Iac5726f13039fba818536dc375d38cc3e27aca3a
Reviewed-on: https://plan9port-review.googlesource.com/2741
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
Should be a clean build now.
Change-Id: Id3460371cb5e8d4071f8faa9c2aec870d213a067
Reviewed-on: https://plan9port-review.googlesource.com/2781
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
Change-Id: Ifcef0636ee1e1fd0f9b06a8d1a99d58fae831318
Reviewed-on: https://plan9port-review.googlesource.com/2780
Reviewed-by: Russ Cox <rsc@swtch.com>
|