Discussion:
SciTE as an IDE
(too old to reply)
Robert Roessler
2005-03-11 03:25:01 UTC
Permalink
Actually, it is not that far off - we are not talking Visual Studio
here, naturally - in functionality OR memory/disk consumption. :)

It handles a number of simple projects for me - not being integrated
with a source-code control system would stop me from using it for
"serious" projects, but then I do not expect it to handle that sort of
task (and there may be a way of doing it, for all I know).

By accepting a normal simple project-per-directory structure, and
appropriate use of local properties files and makefiles, I can get a
lot out of it.

BUT what I keep finding myself opening Visual Studio for is
find-in-files and display of the results... my comments apply to the
Windows version - I have played with Scintilla in GTK, but not SciTE.

I *really* miss having case-sensitivity and regular expression options
on every find-in-files search. Sure I can edit properties files to
affect the command-line that is being generated to do my search, but
that doesn't fit my (or anybodys'?) usage pattern. BTW, I think that
the "/c:" option to findstr makes more sense as a default (this tells
findstr to NOT assume you mean a OR b OR c if you happen to have
spaces in your search string) - but that could just be me. :)

A related issue is that when I have a large result set, in Visual
Studio I just "undock" the output window - much easier to deal with.

The find-in-files bit could certainly be handled by the back-end
utilities actually doing the searching (/i and /r for findstr, and
since I assume that grep or a cousin is being used on non-Windows
platforms, that is easily handled) - this probably has not been done
already because it involves UI changes - who likes those? :)

The search result set is possibly harder - I haven't looked at how it
is in fact being done, I just [think] I know that it is actually a
Scintilla window - would having a button or context menu entry to turn
it into a full-fledged tab like other files be difficult?

A small thing: MRU entries for .ses files? Either with the Load and
Save Session commands, or just in the main opened files MRU?

Just tossing this stuff out for comments...

Regards,
--
Robert Roessler
***@rftp.com
http://www.rftp.com
Milan Babuskov
2005-03-11 06:55:13 UTC
Permalink
Post by Robert Roessler
It handles a number of simple projects for me - not being integrated
with a source-code control system would stop me from using it for
"serious" projects, but then I do not expect it to handle that sort of
task (and there may be a way of doing it, for all I know).
I use LinCVS for that. Just make SciTE the default editor and enjoy.
Let LinCVS be your project manager, and use SciTE to edit/compile/run.
--
Milan Babuskov
http://fbexport.sourceforge.net
http://www.flamerobin.org
Robert Roessler
2005-03-12 00:58:21 UTC
Permalink
Post by Robert Roessler
It handles a number of simple projects for me - not being integrated
with a source-code control system would stop me from using it for
"serious" projects, but then I do not expect it to handle that sort of
task (and there may be a way of doing it, for all I know).
I use LinCVS for that. Just make SciTE the default editor and enjoy. Let
LinCVS be your project manager, and use SciTE to edit/compile/run.
Thanks, and LinCVS looks fine, but I am not a CVS kind of guy... I use
Perforce, which happens to implement the "SCC.DLL" interface that
works with Microsoft IDEs - *that* is what I meant by "integrated". :)

Robert Roessler
***@rftp.com
http://www.rftp.com
Jakub Vrana
2005-03-11 09:51:41 UTC
Permalink
Post by Robert Roessler
I *really* miss having case-sensitivity and regular expression options
on every find-in-files search. Sure I can edit properties files to
affect the command-line that is being generated to do my search, but
that doesn't fit my (or anybodys'?) usage pattern.
I use this:

find.command=findstr /R /I /N /G:/ $(find.files)

When I want to search in subdir I enter "/S *.*" to Files input field
so the command results to findstr /R /I /N /G:/ /S *.*.

Ugly but works.

Jakub Vrana
Robert Roessler
2005-03-12 01:01:35 UTC
Permalink
Post by Jakub Vrana
Post by Robert Roessler
I *really* miss having case-sensitivity and regular expression options
on every find-in-files search. Sure I can edit properties files to
affect the command-line that is being generated to do my search, but
that doesn't fit my (or anybodys'?) usage pattern.
find.command=findstr /R /I /N /G:/ $(find.files)
When I want to search in subdir I enter "/S *.*" to Files input field
so the command results to findstr /R /I /N /G:/ /S *.*.
Ugly but works.
Thanks... this trick is also mentioned by Neil. But I see I have not
been direct enough - I *meant* to say that I want checkboxes like VS! :)

Robert Roessler
***@rftp.com
http://www.rftp.com
Neil Hodgson
2005-03-11 11:18:18 UTC
Permalink
Post by Robert Roessler
It handles a number of simple projects for me - not being integrated
with a source-code control system would stop me from using it for
"serious" projects, but then I do not expect it to handle that sort of
task (and there may be a way of doing it, for all I know).
The main source code control command I want to use in an editor is
commit so normally have "cvs commit $(FileNameExt)" in the Tools menu.
On Windows other commands are performed using TortoiseCVS integrated
into Windows Explorer or the command line. On Linux I use the command
line either inside SciTE or in a shell.

BTW TortoiseSVN which is the equivalent of TortoiseCVS for
subversion uses Scintilla in its UI.
Post by Robert Roessler
BUT what I keep finding myself opening Visual Studio for is
find-in-files and display of the results... my comments apply to the
Windows version - I have played with Scintilla in GTK, but not SciTE.
I do the opposite: I mostly use Visual Studio for debugging and
then open up a copy of SciTE to perform find-in-files as Visual
Studio's equivalent is too complex and slow for me.
Post by Robert Roessler
I *really* miss having case-sensitivity and regular expression options
on every find-in-files search.
Add options to the "Find What" field as needed since the whole text
is passed straight through to the command
Post by Robert Roessler
The find-in-files bit could certainly be handled by the back-end
utilities actually doing the searching (/i and /r for findstr, and
since I assume that grep or a cousin is being used on non-Windows
platforms, that is easily handled) - this probably has not been done
already because it involves UI changes - who likes those? :)
In the past I have thought it would be worthwhile to have check
boxes for Match Case and Word options mapped to inserting flags on the
command line but currently I like the simplicity of the dialog and the
ease of tabbing between the options. I'll probably accept a well
written patch but with some grumbling.

There are also some complexities: word mode can be chosen with -w
in fgrep, but with findstr it requires wrapping the text in \<...\>.
Post by Robert Roessler
The search result set is possibly harder - I haven't looked at how it
is in fact being done, I just [think] I know that it is actually a
Scintilla window - would having a button or context menu entry to turn
it into a full-fledged tab like other files be difficult?
The output pane is separate so that you can see both it and the
current file at once.
Post by Robert Roessler
A small thing: MRU entries for .ses files? Either with the Load and
Save Session commands, or just in the main opened files MRU?
This looks to me to be too much UI for a feature I (and I expect
many others) don't use so would want all the session menu items to
become optional.

Neil
Neil Hodgson
2005-03-11 11:41:09 UTC
Permalink
Post by Neil Hodgson
In the past I have thought it would be worthwhile to have check
boxes for Match Case and Word options mapped to inserting flags on the
command line but currently I like the simplicity of the dialog and the
ease of tabbing between the options. I'll probably accept a well
written patch but with some grumbling.
One part of achieving this, given the find program signatures I know is:

# Windows
find.case.on=
find.case.off=/i
find.re.on=/r
find.re.off=/l
find.recursive.on=/s
find.recursive.off=
find.word.left.on=/<
find.word.left.off=
find.word.right.on=/>
find.word.right.off=
find.command=findstr /n $(find.case) $(find.re) $(find.recursive) \
"$(find.word.left)$(find.what)$(find.word.right)" $(find.files)

# Grep
find.case.on=
find.case.off=-i
find.re.on=-E
find.re.off=-F
find.recursive.on=
find.recursive.off=
find.word.left.on=-w
find.word.left.off=
find.word.right.on=
find.word.right.off=
find.command=grep $(find.case) $(find.re) $(find.recursive) \
$(find.word.left) --line-number "$(find.what)" $(find.files)

Where the setup code for running commands does something like
props.Set("find.case", props.Get(
caseSensitive ? "find.case.on" : "find.case.off");
props.Set("find.re", props.Get(
reMode ? "find.re.on" : "find.re.off");
props.Set("find.recursive", props.Get(
recursive ? "find.recursive.on" : "find.recursive.off");
props.Set("find.word.left", props.Get(
wordMode ? "find.word.left.on" : "find.word.left.off");
props.Set("find.word.right", props.Get(
wordMode ? "find.word.right.on" : "find.word.right.off");

Another consideration is what to do about unsupported options? Many
greps do not directly support a recursive option. Also for findstr
/<../> will not work in literal mode.

Neil
Robert Roessler
2005-03-12 01:31:39 UTC
Permalink
Post by Neil Hodgson
Post by Robert Roessler
It handles a number of simple projects for me - not being integrated
with a source-code control system would stop me from using it for
"serious" projects, but then I do not expect it to handle that sort of
task (and there may be a way of doing it, for all I know).
The main source code control command I want to use in an editor is
commit so normally have "cvs commit $(FileNameExt)" in the Tools menu.
On Windows other commands are performed using TortoiseCVS integrated
into Windows Explorer or the command line. On Linux I use the command
line either inside SciTE or in a shell.
My idea of integrated version control is anything that implements
Microsoft's "SCC.DLL" interface - I use Perforce myself. Then it
becomes part of every file operation you do (potentially) - I
especially like being able to review my differences vis-a-vis the head
version without leaving the environment.

I *do* use TortoiseCVS for things like NSIS (itself) and STLport,
since that is what they offer (NSIS has gone through periods where the
zip snapshot was not being kept up, so I switched to CVS access).
Post by Neil Hodgson
BTW TortoiseSVN which is the equivalent of TortoiseCVS for
subversion uses Scintilla in its UI.
Hey, good exposure! So will they use it in TortoiseCVS also the next
time the rewrite it? :)
Post by Neil Hodgson
Post by Robert Roessler
BUT what I keep finding myself opening Visual Studio for is
find-in-files and display of the results... my comments apply to the
Windows version - I have played with Scintilla in GTK, but not SciTE.
I do the opposite: I mostly use Visual Studio for debugging and
then open up a copy of SciTE to perform find-in-files as Visual
Studio's equivalent is too complex and slow for me.
To paraphrase you (if you CAN paraphrase a single word), "Debugging?"
Post by Neil Hodgson
Post by Robert Roessler
I *really* miss having case-sensitivity and regular expression options
on every find-in-files search.
Add options to the "Find What" field as needed since the whole text
is passed straight through to the command
Doable, as mentioned by an earlier reply... but I guess I *really*
want the checkboxes - plus, since I have already modified my
properties to generate the "/c:" option, I may have blocked that usage
trick.
Post by Neil Hodgson
Post by Robert Roessler
The find-in-files bit could certainly be handled by the back-end
utilities actually doing the searching (/i and /r for findstr, and
since I assume that grep or a cousin is being used on non-Windows
platforms, that is easily handled) - this probably has not been done
already because it involves UI changes - who likes those? :)
In the past I have thought it would be worthwhile to have check
boxes for Match Case and Word options mapped to inserting flags on the
command line but currently I like the simplicity of the dialog and the
ease of tabbing between the options. I'll probably accept a well
written patch but with some grumbling.
There are also some complexities: word mode can be chosen with -w
in fgrep, but with findstr it requires wrapping the text in \<...\>.
I thought it might come to this... I could look into a "patch" - but I
really do not want to get into modifying the GTK dialog version... :(

Also, I am not a huge fan of "Word" search options, since when I
really want that kind of search (rarely for me), I can do it with REs
- as long as I have REs.
Post by Neil Hodgson
Post by Robert Roessler
The search result set is possibly harder - I haven't looked at how it
is in fact being done, I just [think] I know that it is actually a
Scintilla window - would having a button or context menu entry to turn
it into a full-fledged tab like other files be difficult?
The output pane is separate so that you can see both it and the
current file at once.
Well, yes... that is the same consideration as in VS. My point is
that sometimes when the results list is *large*, the results
themselves become of interest, and deserving of (requiring?) major
screen real estate - at least temporarily. Hence the desire to be
able to easily flip between little-window-at-bottom and
full-sized-window. :)
Post by Neil Hodgson
Post by Robert Roessler
A small thing: MRU entries for .ses files? Either with the Load and
Save Session commands, or just in the main opened files MRU?
This looks to me to be too much UI for a feature I (and I expect
many others) don't use so would want all the session menu items to
become optional.
I know... it only comes up if you are trying to use "sessions" as
pseudo-projects - *then* you notice that you may have to go hunting
for the directory that the "project" you are trying to open lives in.

Robert Roessler
***@rftp.com
http://www.rftp.com
Neil Hodgson
2005-03-12 13:45:19 UTC
Permalink
Post by Robert Roessler
Hey, good exposure! So will they use it in TortoiseCVS also the next
time the rewrite it? :)
I'm not sure that the TortoiseCVS and TortoiseSVN projects are that
closely connected. Looks to me like TortoiseSVN started with some
TortoiseCVS code and are diverging.
Post by Robert Roessler
To paraphrase you (if you CAN paraphrase a single word), "Debugging?"
A required phase of patch acceptance.
Post by Robert Roessler
Well, yes... that is the same consideration as in VS. My point is
that sometimes when the results list is *large*, the results
themselves become of interest, and deserving of (requiring?) major
screen real estate - at least temporarily. Hence the desire to be
able to easily flip between little-window-at-bottom and
full-sized-window. :)
I suppose F8 could be turned into a 3 phase setting: edit visible,
both visible, output visible.

Neil
Robert Roessler
2005-03-12 23:14:19 UTC
Permalink
Post by Neil Hodgson
Post by Robert Roessler
Well, yes... that is the same consideration as in VS. My point is
that sometimes when the results list is *large*, the results
themselves become of interest, and deserving of (requiring?) major
screen real estate - at least temporarily. Hence the desire to be
able to easily flip between little-window-at-bottom and
full-sized-window. :)
I suppose F8 could be turned into a 3 phase setting: edit visible,
both visible, output visible.
Thanks for the generous offer (if you were extending it), but the
"trick" pointed out by Martin Alderson will likely take care of my
issues (with "large results") for now. :)

Besides, the "3 phase" thing strikes me as one of those features that
you want some of the time, but the rest of the time it annoys you.

In case it needs to be said to anyone reading this, I was trying to
avoid resizing the "output" pane - I really dislike futzing with pane
layout stuff once it is set the way I like it - but I now see that
there is some "memory" / default output pane size anyway.

Robert Roessler
***@rftp.com
http://www.rftp.com
Martin Alderson
2005-03-12 16:15:29 UTC
Permalink
Well, yes... that is the same consideration as in VS. My point is that
sometimes when the results list is *large*, the results themselves
become of interest, and deserving of (requiring?) major screen real
estate - at least temporarily. Hence the desire to be able to easily
flip between little-window-at-bottom and full-sized-window. :)
When I want to see more search results on screen I just drag the
splitter. You can even drag the splitter all the way to the far
left/top to have a full screen of search results, then use F8 to toggle
between the search results and the editor pane.

Martin
Robert Roessler
2005-03-12 23:01:27 UTC
Permalink
Post by Martin Alderson
Post by Robert Roessler
Well, yes... that is the same consideration as in VS. My point is
that sometimes when the results list is *large*, the results
themselves become of interest, and deserving of (requiring?) major
screen real estate - at least temporarily. Hence the desire to be
able to easily flip between little-window-at-bottom and
full-sized-window. :)
When I want to see more search results on screen I just drag the
splitter. You can even drag the splitter all the way to the far
left/top to have a full screen of search results, then use F8 to toggle
between the search results and the editor pane.
Nice trick - this is probably enough for my "large results set" needs.

Robert Roessler
***@rftp.com
http://www.rftp.com
Jan Hendrik
2005-03-13 12:14:47 UTC
Permalink
Concerning Re: [scite] SciTE as an IDE
Post by Neil Hodgson
I'm not sure that the TortoiseCVS and TortoiseSVN projects are that
closely connected. Looks to me like TortoiseSVN started with some
TortoiseCVS code and are diverging.
To the best of my knowledge from formerly using TortoiseSVN this
mainly used the idea only except for some original code.
Meanwhile, however, all this is completely rewritten. There has
never been any real connection between the two.

Jan Hendrik
---------------------------------------
Freedom quote:

People must again learn to work,
instead of living on public assistance.
-- Marcus Tullius Cicero

Dmitry Arkhipkin
2005-03-11 08:37:42 UTC
Permalink
Hi Robert,
Post by Robert Roessler
Actually, it is not that far off - we are not talking Visual Studio
here
Have you seen Anjuta IDE which uses SciTE as integrated editor?
Loading Image...

That's the best free IDE I've used so far. Most probably it could be
compiled under cygwin for your needs?

Regards,
Dmitry
Robert Roessler
2005-03-12 01:07:57 UTC
Permalink
Post by Dmitry Arkhipkin
Post by Robert Roessler
Actually, it is not that far off - we are not talking Visual Studio
here
Have you seen Anjuta IDE which uses SciTE as integrated editor?
http://anjuta.sourceforge.net/screenshots/Screenshot-02.png
That's the best free IDE I've used so far. Most probably it could be
compiled under cygwin for your needs?
Thanks for the link - to the picture as well as the project! :) It
*is* a sweet-looking IDE (I don't know how it would be to use, of
course)... but I pretty much don't go with software that doesn't have
(isn't capable of?) a Win32 build.

While I do fire up the Cygwin shell once in a while, I mostly only use
Cygwin on those occasions that I really have to have an X server. :)

Robert Roessler
***@rftp.com
http://www.rftp.com
JanC
2005-03-12 13:38:54 UTC
Permalink
Post by Robert Roessler
Post by Dmitry Arkhipkin
Have you seen Anjuta IDE which uses SciTE as integrated editor?
http://anjuta.sourceforge.net/screenshots/Screenshot-02.png
That's the best free IDE I've used so far. Most probably it could be
compiled under cygwin for your needs?
Thanks for the link - to the picture as well as the project! :) It
*is* a sweet-looking IDE (I don't know how it would be to use, of
course)... but I pretty much don't go with software that doesn't have
(isn't capable of?) a Win32 build.
There are several other Scintilla-based IDEs around. Which ones are
useful for you might depend on what programming languages you use...

You can find some of them here:
<http://scintilla.sourceforge.net/ScintillaRelated.html>
--
JanC
Jan Hendrik
2005-03-12 15:45:15 UTC
Permalink
Concerning [scite] SciTE as an IDE
Post by Robert Roessler
It handles a number of simple projects for me - not being integrated
with a source-code control system would stop me from using it for
"serious" projects, but then I do not expect it to handle that sort of
task (and there may be a way of doing it, for all I know).
Not sure if it can be done with SciTE, but in HomeSite I once
created a toolbar for TortoiseSVN, the WinExplorer shell extension
for Subversion. Not fully automized as with SCC API of course, but
far more control. Can't give more advice though as for copyright
reasons I deleted the toolbar a few weeks later, and meanwhile
dropped Subversion as well as since ver. 1.0 its errors and
mistakes became more and more subversive here. Additionally
installing SVN started to break Apache, either for being installed
after PHP/Perl/MySQL or because my machine is a bit old (really
don't expect that the Intel CPU driver (intl.dll) introduced with 1.0.4
or so still works with a P200 CPU <g>).

Jan Hendrik
---------------------------------------
Freedom quote:

Europe's elites will gain another victory over their people.
-- The Times, London, Dec. 9, 2003,
on the - postponed - vote on a European constitution.
The German people will not be allowed to vote on it anyway.

(quoted after press review in FAZ)
Robert Roessler
2005-03-12 23:31:22 UTC
Permalink
Post by Robert Roessler
Actually, it is not that far off - we are not talking Visual Studio
here, naturally - in functionality OR memory/disk consumption. :)
...
A small thing: MRU entries for .ses files? Either with the Load and
Save Session commands, or just in the main opened files MRU?
Just tossing this stuff out for comments...
More on "sessions" - how about on option to always update session
files on exiting SciTE - assuming you had loaded one to start with?

Yet another VS-ism (in the sense of sessions mimicking workspaces) I
expect - if not depend on. :)

Robert Roessler
***@rftp.com
http://www.rftp.com
Robert Roessler
2005-03-12 23:51:52 UTC
Permalink
Post by Robert Roessler
Actually, it is not that far off - we are not talking Visual Studio
here, naturally - in functionality OR memory/disk consumption. :)
...
A small thing: MRU entries for .ses files? Either with the Load and
Save Session commands, or just in the main opened files MRU?
Just tossing this stuff out for comments...
More on "sessions" - how about on option to always update session files
on exiting SciTE - assuming you had loaded one to start with?
Yet another VS-ism (in the sense of sessions mimicking workspaces) I
expect - if not depend on. :)
And I do not mean "save.session" - I mean that I want to [optionally]
update the *loaded* session - e.g., like a VS workspace.

This could be something like a "save.session.inplace", except that I
want different semantics: IFF I have a session loaded, AND I change it
by adding or removing files, UPDATE that session on exit. If I do not
have a session loaded, I do not want to save this file set away as a
"default session".

So maybe a "save.named.session" better captures what I am suggesting,
and would take precedence over "save.session" (which shouldn't be set
anyway in this case).

Robert Roessler
***@rftp.com
http://www.rftp.com
Continue reading on narkive:
Loading...