pmacs3/README

105 lines
4.0 KiB
Plaintext
Raw Permalink Normal View History

2007-10-15 14:32:29 -04:00
Pmacs
2007-06-27 00:40:15 -04:00
2007-10-15 14:32:29 -04:00
by Erik Osheim <erik@osheim.org>
2007-06-27 00:40:15 -04:00
2008-02-29 09:39:32 -05:00
Pmacs is an Emacs-like editor written entirely in Python. It is designed to
have maximally correct and powerful support for syntax highlighting, to support
2007-07-17 07:40:04 -04:00
various methods of automatically indenting lines, and to be extensible in
python.
2007-08-11 11:59:44 -04:00
Pmacs is available to you under the GNU GPL version 2.
2007-07-17 07:40:04 -04:00
While the general interface of Pmacs is related to Emacs, there was explicitly
no attempt to support all Emacs' functions, Emacs' underlying data structures,
or even all high-level functionality of Emacs. There is not currently a
formalized "public API" for pmacs, although some parts are "more public" than
others. The code is somewhat commented, although currently there is only one
author. Buyer beware!
2007-06-27 00:40:15 -04:00
2007-06-27 01:11:48 -04:00
Requirements:
1. python 2.4 or higher (this may become 2.5 or higher)
2. chardet module (for detecting character encodings)
2010-03-20 09:29:16 -04:00
3. curses module (usually ships with python)
4. bash
2007-06-27 01:11:48 -04:00
Optional Dependencies:
2010-03-20 09:29:16 -04:00
* python-crypto [for aes-encrypted buffers]
* ispell [for spell-checking]
* cvs [for cvs-based commands]
* svn [for svn-based commands]
* mercurial [for hg-based commands]
* perl [for perl syntax-checking]
* gcc [for c compilation/syntax-checking]
* make [for c compilation]
* latex [for LaTeX compilation]
* pdflatex [for LaTeX PDF rendering]
* disinst [for x86 instruction parsing]
2007-07-17 07:40:04 -04:00
Quick Start Guide:
1. Download and unpack the pmacs tarball file. After this, there should be
2010-03-20 09:29:16 -04:00
a directory called "pmacs" somewhere in your filesystem. It doesn't
2007-07-17 07:40:04 -04:00
matter where you put this. We'll call the full path to this directory
PMACSDIR; in future steps substitute the actual path for this symbol.
2007-07-18 10:59:22 -04:00
2007-07-17 07:40:04 -04:00
2. Create a symlink to PMACSDIR/application.py and put it in a directory
listed in your $PATH (~/bin, /usr/local/bin, and /usr/bin are all good
candidates). You can name this symlink whatever you want; I use "pmc".
2007-07-18 10:59:22 -04:00
2007-07-17 07:40:04 -04:00
3. Try editing a file, by typing "pmc FILE" where FILE is the path to the
file you want to edit.
2007-07-18 10:59:22 -04:00
2007-07-17 07:40:04 -04:00
4. Edit the file!
You can type Control-c and then Meta-h to get a list of all the
available actions and which key(s) perform them. Type Control-x k to get
out of the "help buffer". If you have used emacs, many (but not all) of
2007-07-18 10:59:22 -04:00
these key bindings should seem familiar.
5. Some basic key bindings:
C-v (or PG_DN) move down a page
M-v (or PG_UP) move up a page
C-a (or HOME) move to the beginning of the line
C-e (or END) move to the end of the line
M-< move to the beginning of the buffer
M-> move to the end of the buffer
M-g goto line number
C-s interactive forward search
C-r interactive backward search
M-% interactive search-and-replace
C-] cancel
C-/ (or C-x u) undo last change
M-/ (or C-x r) redo last undone change
2007-07-21 11:28:41 -04:00
C-x C-f open file in a new buffer
2007-07-18 21:35:36 -04:00
C-x k close the current buffer
2008-03-17 03:46:20 -04:00
C-c M-h open a buffer listing all available key bindings
C-c M-? open a buffer listing all available functions
M-? get a help with a command by name
M-h get information about a key sequence
2007-07-21 11:28:41 -04:00
2007-07-18 10:59:22 -04:00
C-x C-s save your changes
C-x C-c quit
2007-07-17 07:40:04 -04:00
2007-07-18 10:59:22 -04:00
NOTE: the notation used corresponds to the following:
2008-03-16 02:16:41 -04:00
C-x hold Control and press x.
M-x hold Meta and press x.
C-c j hold Control and press c, then press j
C-x C-s hold Control and press x, then hold Control and press s
2007-07-17 07:40:04 -04:00
2007-07-28 01:10:13 -04:00
6. Other documentation:
a. MODES: this file describes in more detail how modes function, and
2007-08-11 11:59:44 -04:00
how to write your own.
2007-07-28 01:10:13 -04:00
b. other help commands
c. comments in the source code
2007-07-28 01:10:13 -04:00
2008-03-17 03:46:20 -04:00
Good luck!