fix codetest failure - ASSERT_ARGS does not have a ; after and
[parrot.git] / editor / README.pod
blob79ed9620ed38c0e687bb4ca873b648b8e3d3b223
1 # $Id$
3 =head1 NAME
5 editor/README.pod - Productivity Comes in Pretty Colors
7 =head1 Syntax Highlighting and Other Editor Assistance
9 Included in this directory are some add-ins for making working on parrot (or in
10 parrot) easier, for various popular editors. Mostly that means
11 syntax-highlighting and automatic indenting. Read on to see what's available for
12 your favorite editor. For a summary on what is available do
13   cd editor && make help
15 =head2 Vim
17 By default calling C<make vim-install> in the F<editor/> directory will
18 install several files in F<~/.vim>. You can use the variable C<VIM_DIR>
19 on the command line by calling C<make> to choose a different target directory
20 for the vim files.
22    make vim-install [VIM_DIR=/vim_files_target_directory]
24 All these files have the F<.vim>
25 extension. F<pir.vim> (generated from F<pir_vim.in>), F<pasm.vim>, and
26 F<pmc.vim> are syntax files; F<indent_pir.vim> is an indent plugin;
27 and F<filetype_parrot.vim> is a filetype script that tells vim to
28 associate the extensions .pir, .pasm, and .pmc with the
29 right syntax. The syntax files are installed to F<~/.vim/syntax/>;
30 F<filetype_parrot.vim> is installed to F<~/.vim/parrot.vim>;
31 F<indent_pir.vim> is copied to F<~/.vim/indent/pir.vim>.  If you want
32 indenting, you should also place C<filetype indent on> somewhere in
33 your F<~/.vimrc>.
35 =head2 Kate
37 There is a syntax file for the KDE editor Kate, but it is not built by default.
38 Run:
40    make imc.kate
42 in F<editor/> to build it.
44 Copy the file F<imcc.xml> to F<~/.kde/share/apps/katepart/syntax>.
46 =head2 Emacs
48 =over 4
50 =item * Editing the Parrot VM source
52 In this directory is a F<parrot.el> describing the c-mode and cperl-mode
53 changes modifications required to edit the Parrot source code.  To install
54 the Parrot mode support copy F<parrot.el> to a directory where Emacs looks
55 for external packages and add the following to your F<~/.emacs> file:
57     (load "parrot")
59 Alternatively, if you're an active Parrot developer, you may wish to add
60 this to your .emacs instead, to automatically track future changes:
62     (load-file "/<path-to-parrot>/editor/parrot.el")
64 =item * Editing PASM source files
66 Included here is an Emacs mode for editing pasm files, in F<pasm.el>.
68 To install the pasm major mode copy F<pasm.el> to a directory where Emacs
69 looks for external packages and add the following to your F<~/.emacs> file:
71     (load "pasm")
73 To automatically associate .pasm files with this major mode add:
75     (add-to-list 'auto-mode-alist (cons "\\.pasm\\'" 'pasm-mode))
77 to your F<~/.emacs> or you can alternatively type C<M-x pasm-mode> for every
78 file that you want to use the major mode in.
80 Additionally, you might want to add:
82     (add-hook 'pasm-mode-hook
83               (function (lambda ()
84                           (setq indent-tabs-mode nil))))
86 to F<~/.emacs> as this seems to prevent the odd behavior that is noted when
87 using tabs in the pasm mode.
89 =back
91 =head2 TAGS file
93 There is a script here to automatically generate a TAGS file, which works with
94 Vim and other editors that recognize ctags-format files. Run
96   make tags-vi
98 for Vim-compatible tags or
100   make tags-emacs
102 for Emacs-style tags.  The tool "exuberant ctags" is required for both. There
103 is also the
105   make tags-xemacs
107 target which will work with older XEmacs etags (21.5*).
109 =cut