Dear fellow gangsters,

At long last, I have completed a ConTeXt setup package for Notepad++. See

http://wiki.contextgarden.net/images/8/87/Npp_ConTeXt.zip

Some background:

I come from the WinEdt world originally. However WinEdt, while a fantastic  
TeX editor (perhaps the best), has a couple of problems:

a) Geared towards LaTeX;
b) No utf-8 support present or immediately planned (at least when I was  
using it);
c) No Right-to-left support present or immediately planned (at least when  
I was using it);

a) is not really a problem; one could easily configure WinEdt to be  
ConTeXt editor, but b) and c) were showstoppers.

Scite is nice, but seems to me to be a real regression when compared to  
WinEdt's features.

Finally I came across Notepad++, hereafter called Npp (actually it was  
Hans who told me about it first). This is one amazing text editor. Like  
Scite, it is based on Scintilla. It is a programmer's editor, but for a
non-programmer user like myself it is amazingly easy to configure. Like  
scite, it has utf-8 support. It also has global utf-8 support (as opposed  
to local utf-8 support which scintilla does not support).

Npp is just loaded with features. It supports plugins, and some of the  
available plugins are now indispensable to me. For more information about  
Npp go to

http://notepad-plus.sourceforge.net/uk/site.htm
==================================

For ConTeXt, I have implemented

1) Syntax highlighting. There are six kinds:

a) \start-stops
b) TeX primitives
c) setups
d) comments
e) sectioning
f) general ConTeXt commands
g) operator arguments
h) numbers

2) Folding

a) Since discovering folding, my efficiency in writing long documents has  
really increased. All \start-stops are foldable, and you can easily add  
your own in the User-Defined-Language dialog; just select "ConTeXt" and  
you can edit all entries.

Fellow gangster Wolfgang Schuster has provided a small module,  
t-startstops, which converts section headings like
\chapter into \startchapter-\stopchapter, etc. You can add more. Look at  
the files t-startstop.tex and startstop.tex.

NOTE: Hans will eventually implement official support for startstops, and  
the syntax will in all likelihood be different than the one used here  
(\startpart[title=,ref=]).

3) Auto completion. There is a notepad++ api file context.api, which has a  
list of perhaps all english ConTeXt commands. From the scite properties  
files you can find more keyword for your your own language and roll your  
own version. The nice thing is that Npp has a sorting utility so you can  
easily add your keywords and alphabetically sort them into your own api  
list.

4) ConTeXt utilities.

a) The Run menu mimics the one in Hans's distribution of Scite, and mostly  
uses the same shortcuts. You can add more by pressing F5 and saving your  
command, which will allow you to define a shortcut.

I deleted a few utilities that come with the default Npp setup but which  
did not seem relevant to context. If you want them back just look at the  
original shortcuts.xml file and copy the ones you want.

A few nice tricks are there. For example,

\input file.tex

After selecting "file.tex" you can run "open file" and Npp will open  
file.tex for you. From selected text, you can also do a Google search ,  
wiki search. Perhaps we could add a ConTeXt wiki search.... next version  
perhaps.

b) Npp comes with a Console plugin, NppExec, which allows you to run  
scripts. Most of the Run commands have been implemented as scripts in  
NppExec. Here you can play around with the commands, test different  
options etc.

5. Integrated Explorer plugin. This is one of favorite tools. I have just  
added some tex-related filters

Both NppExec and the Explorer are dockable. They can also be docked into  
one another outside of the main editor, separately outside, or separately  
inside. You'll have lots of fun with these two.

6. Color. I have implemented a color theme that is easier on the eyes than  
the default pure white background. It makes use of four shades of DADADA.  
For non-TeX languages you may need to tweak the settings a bit in Settings
> Styler Configurator.

7. I have removed most of the languages from the Language menu, but you  
can bring back any language you need from
Settings > Preferences > Language Menu.

8) The Shortcut Mapper has been slightly changed: Ctrl-Shift-Z does undo  
now. shortcut.xml controls this.

9) Added four functions to the context menu (right-click that is):

Split lines,
Join Lines,
Text Direction RTL
Text Direction LTR

=========================
Nearly everything above is easily configurable. I could not implement  
support for non-startstop folding with sectioning like \chapter etc.  
because that would mean compiling the scintilla lexer, something I'm not  
interested in doing. If anyone knows how to do lexer programming and is  
interested, feel free;-)
=========================

This package depends on Npp 4.2, so if you already have Npp then upgrade  
to the latest version.

The documentation.bat file is based on code from Adrian Drury. Eventually  
it may be replaced with the mtxrun utility.

I offer the package to the community but I am no OS guru so I cannot  
promise any support. OTOH please do make suggestions for improvement.

Finally, I need a volunteer to post this on the wiki and to update the  
Text Editor page.

Enjoy!

Best wishes
Idris

-- 
Professor Idris Samawi Hamid
Department of Philosophy
Colorado State University
Fort Collins, CO 80523

--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : https://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to