nim-wiki/Editor-Support.md

3.1 KiB

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

The following editors have some Nim support:

Emacs

Vim

LiClipse

LiClipse is a plugin for Eclipse (which also provides a standalone version for convenience) which provides Nim support providing syntax-highlighting, outline, comment/uncomment (ctrl+/), select/deselect scope (Shift+Alt+Up/Down), auto-indent, mark occurrences, user templates, multiple cursors (Ctrl+K or Ctrl+Alt+mouse select) and indent guides.

Scite

Recent versions of Scite have out-of-the-box support for Nim. For older versions:
http://sourceforge.net/p/scintilla/scite/ci/default/tree/src/nimrod.properties?format=raw

Aporia

Aporia is a Nim IDE written in Nim.

https://github.com/nim-lang/Aporia/

LightTable

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

Atom

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

Gedit/Other GtkSourceView editors

There is a .lang file for gedit here

Geany

There is a pull request to provide Nim support in Geany.

Ctags

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

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

jEdit

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

Sublime

Kate

Syntax highlighting:

https://github.com/PhilipWitte/NimKate

TextMate

Available from the bundle installer in preferences (repository).