jEdit Community - Resources for users of the jEdit Text Editor
Mode appropriate comments in templates
Submitted by sillydragon on Wednesday, 21 July, 2010 - 13:23
While messing around with the Template plugin I decided it was pointless to have different templates to take into account differences in comment characters for
different languages, so I poked around to see if I could find a way around this and came up with this.

--
## template = Get mode comment char
#*

Get the line comment character for the current buffer's mode. If the mode
doesn't define a line comment character, complain and ask what prefix
string to use instead. $comment will contain the results either way.

*#
#beanshell (false)
context.put("caret", view.getTextArea().getCaretPosition());
context.put("comment", buffer.getContextSensitiveProperty(caret,"lineComment"));
#end
#if ( $comment )
#else
#prompt ( "Mode doesn't have a line comment. String prefix to use?" $comment )
#end
--

Put that in a file called "getcommentchar.vm" in your templates directory, then in other templates you can do:

--
#parse ( "getcommentchar.vm" )
${comment} Lorem ipsum
${comment} dolor sit amet, consectetur adipiscing
--

The inserted text will be preceded by whatever passes for line comments in the buffer's language, or the prefix text you gave.

Enjoy. Smiling
User login
Browse archives
« April 2024  
MoTuWeThFrSaSu
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
Poll
Are you interested in language packs for jEdit?
Yes, and I could help maintain translations
26%
Yes, I'd like to have translations
32%
Indifferent
35%
No, that'd be bad (please comment)
7%
Total votes: 1093
Syndication
file   ver   dls
German Localization light   4.4.2.1   82348
Context Free Art (*.cfdg)   0.31   46055
JBuilder scheme   .001   18495
BBEdit scheme   1.0   18116
ColdFusion scheme   1.0   18024
R Edit Mode - extensive version   0.1   17473
Advanced HTML edit mode   1.0   16206
Matlab Edit Mode   1.0   16068
jEdit XP icons   1.0   15229
XP icons for jEdit   1.1   14293