Skip to content

Example page in POD

hollie edited this page Feb 25, 2013 · 2 revisions

Example page for the mailing list

This page was copied from another project, the content doesn't really matter.

Syntax Highlighting and Other Editor Assistance

Included in this directory are some add-ins for making working on parrot (or in parrot) easier, for various popular editors. Mostly that means syntax-highlighting and automatic indenting. Read on to see what's available for your favorite editor. For a summary on what is available do cd editor && make help

Vim

Calling make vim-install in the editor/ directory will install several files in ~/.vim. All these files have the .vim extension. pir.vim (generated from pir_vim.in), pasm.vim, and pmc.vim are syntax files; indent_pir.vim is an indent plugin; and filetype_parrot.vim is a filetype script that tells vim to associate the extensions .pir, .pasm, and .pmc with the right syntax. The syntax files are installed to ~/.vim/syntax/; filetype_parrot.vim is installed to ~/.vim/ftdetect; indent_pir.vim is copied to ~/.vim/indent/pir.vim. If you want indenting, you should also place filetype indent on somewhere in your ~/.vimrc.

Kate

There is a syntax file for the KDE editor Kate, but it is not built by default. Run:

make imc.kate

in editor/ to build it.

TODO: How do we install Kate syntax files?

Emacs

  • Editing the Parrot VM source

    In this directory is a parrot.el describing the c-mode and cperl-mode changes modifications required to edit the Parrot source code. To install the Parrot mode support copy parrot.el to a directory where Emacs looks for external packages and add the following to your ~/.emacs file:

    (load "parrot")

    Alternatively, if you're an active Parrot developer, you may wish to add this to your .emacs instead, to automatically track future changes:

    (load-file "/<path-to-parrot>/editor/parrot.el")
  • Editing PASM source files

    Included here is an Emacs mode for editing pasm files, in pasm.el.

    To install the pasm major mode copy pasm.el to a directory where Emacs looks for external packages and add the following to your ~/.emacs file:

    (load "pasm")

    To automatically associate .pasm files with this major mode add:

    (add-to-list 'auto-mode-alist (cons "\\.pasm\\'" 'pasm-mode))

    to your ~/.emacs or you can alternatively type M-x pasm-mode for every file that you want to use the major mode in.

    Additionally, you might want to add:

    (add-hook 'pasm-mode-hook
              (function (lambda ()
                          (setq indent-tabs-mode nil))))

    to ~/.emacs as this seems to prevent the odd behavior that is noted when using tabs in the pasm mode.

TAGS file

There is a script here to automatically generate a TAGS file, which works with Vim and other editors that recognize ctags-format files. Run

make tags-vi

for Vim-compatible tags or

make tags-emacs

for Emacs-style tags. The tool "exuberant ctags" is required for both. There is also the

make tags-xemacs

target which will work with older XEmacs etags (21.5*).

Clone this wiki locally