No description
Find a file
Xiao-Yong Jin 9af9ceca26 devdraw: rewrite the Cocoa screen using Metal
Add a new macOS cocoa screen, cocoa-screen-metal.m.
Rewrite the macOS cocoa drawing code to use the builtin runloop,
and use Metal to push pixels with CAMetalLayer.

Remove all of the deprecated code, and simplify some of the logic.
Modify mkwsysrules.sh such that the new code is used only when
the system version is equal or higher than 10.14.

Allow touch events to simulate mouse clicks:
three finger tap for the middle mouse button;
four finger tap for the 2-1 chord.

Support Tresize.

Scale 16x16 Cursor up to 32x32 with an EPX algorithm.

Support macOS input sources including the basic dead keys and the
advanced CJK input methods.

Increase the communication buffers in cocoa-srv.c to allow more
input, especially for long sentences prepared by the macOS input
souces.
2018-11-15 20:39:35 -05:00
acid merge 2012-03-05 16:36:31 -05:00
bin web: allow any $BROWSER 2018-11-14 00:04:07 -05:00
dict all: remove .cvsignore files 2017-09-14 17:25:17 +02:00
dist all: remove .cvsignore files 2017-09-14 17:25:17 +02:00
face faces for lp. 2005-09-13 01:24:50 +00:00
font font: s/10/11 in ascent for unicode.7x13.font 2016-04-18 18:07:22 +00:00
include 9term, win: work around bsd linker nonsense 2017-01-06 20:20:33 +00:00
lib keyboard: add compose sequences lc and rc for ceiling brackets (#126) 2018-11-13 23:14:20 -05:00
lp all: remove .cvsignore files 2017-09-14 17:25:17 +02:00
mac mac/9term.app: invoke 9term with -l 2018-11-14 00:13:01 -05:00
mail all: remove .cvsignore files 2017-09-14 17:25:17 +02:00
man xd: add -R for runewise dump 2017-10-01 11:46:06 +02:00
ndb ndb/local: remove rsc-specific entries (oops) 2008-06-04 13:28:05 -04:00
news
plumb plumb/basic: avoid wrap around in file:1:2 (#158) 2018-11-13 23:59:04 -05:00
postscript all: remove .cvsignore files 2017-09-14 17:25:17 +02:00
proto
sky all: remove .cvsignore files 2017-09-14 17:25:17 +02:00
src devdraw: rewrite the Cocoa screen using Metal 2018-11-15 20:39:35 -05:00
tmac tmac.an: insert spaces after .?? request names 2008-11-11 11:01:03 -08:00
troff troff: import HB, HI and HX fonts from Plan 9 2017-06-15 19:09:58 +00:00
unix all: remove .cvsignore files 2017-09-14 17:25:17 +02:00
.gitignore .gitignore: ignore files created for astro(1) and scat(1) 2018-03-23 11:54:04 +01:00
.travis.yml .travis.yml: configure build matrix to build on OS X and Linux (thanks Michaelian Ennis) 2017-09-22 13:26:38 +02:00
CHANGES CHANGES: add pointer to web version 2008-05-10 13:38:21 -04:00
configure For annoying people like Uriel. 2005-11-25 13:18:11 +00:00
CONTRIBUTING.md codereview: delete, now using GitHub pull requests 2017-09-01 13:25:20 -04:00
CONTRIBUTORS venti: fix venti graph on 64-bit 2017-07-23 11:11:56 +00:00
INSTALL INSTALL: fix compiler detection on FreeBSD+clang (#177) 2018-11-14 00:23:40 -05:00
install.txt install.txt: regenerate (9 man 1 intro >install.txt) 2014-12-02 01:24:34 +00:00
LICENSE allow less restricted use of plan9port-specific code 2009-08-14 21:08:23 -07:00
Makefile For annoying people like Uriel. 2005-11-25 13:18:11 +00:00
rcmain rcmain: use new $termprog variable 2013-08-13 12:46:38 -04:00
README.md README: update links 2017-09-14 17:25:17 +02:00
TODO Note 9P2000.u 2005-08-31 04:00:14 +00:00

This is a port of many Plan 9 libraries and programs to Unix.

Installation

To install, run ./INSTALL. It builds mk and then uses mk to run the rest of the installation.

For more details, see install(1), at install.txt in this directory and at https://9fans.github.io/plan9port/man/man1/install.html.

Documentation

See https://9fans.github.io/plan9port/man/ for more documentation. (Documentation is also in this tree, but you need to run a successful install first. After that, "9 man 1 intro".)

Intro(1) contains a list of man pages that describe new features or differences from Plan 9.

Helping out

If you'd like to help out, great! The TODO file contains a small list.

If you port this code to other architectures, please share your changes so others can benefit.

Git

You can use Git to keep your local copy up-to-date as we make changes and fix bugs. See the git(1) man page here ("9 man git") for details on using Git.

Status

Build Status Coverity Scan Build Status

Contact