nim-wiki/Editor-Support.md

1.7 KiB

If you add more editor support, don't forget to add it to the FAQ as well.

The following editors have some Nimrod support:

Emacs

https://github.com/Tass/nimrod-mode

Vim

https://github.com/zah/nimrod.vim/

  • Syntax Highlighting
  • Auto-indent
  • Build/Jump to errors within Vim
  • Project Navigation and Jump to Definition (using the Ctags support listed below or Nimrod's idetools command)

Scite

Recent versions of Scite have out-of-the-box support for Nimrod. For older versions:
http://scintilla.hg.sourceforge.net/hgweb/scintilla/scite/raw-file/0d8c2122d6f8/src/nimrod.properties

Aporia

Aporia is a Nimrod IDE written in Nimrod.
https://github.com/nimrod-code/Aporia/tree/

Gedit/Other GtkSourceView editors

There is a .lang file for gedit here

Ctags

Basic ~/.ctags rules for nimrod code (Feel free to improve and contribute) Don't use this if possible, nimrod idetools provides better results.

--langdef=nimrod
--langmap=nimrod:.nim
--regex-nimrod=/(\w+)\*?\s*=\s*object/\1/t,class/
--regex-nimrod=/(\w+)\*?\s*=\s*enum/\1/t,enum/
--regex-nimrod=/(\w+)\*?\s*=\s*tuple/\1/t,tuple/
--regex-nimrod=/(\w+)\*?\s*=\s*range/\1/t,subrange/
--regex-nimrod=/(\w+)\*?\s*=\s*proc/\1/t,proctype/
--regex-nimrod=/proc\s+(\w+)/\1/f,procedure/
--regex-nimrod=/method\s+(\w+)/\1/f,method/
--regex-nimrod=/proc\s+`([^`]+)`/\1/o,operator/
--regex-nimrod=/template\s+(\w+)/\1/t,template/
--regex-nimrod=/macro\s+(\w+)/\1/m,macro

jEdit

https://github.com/exhu/nimrod-misc/tree/master/jedit