From: Axel B. <ab...@ic...> - 2003-05-20 09:22:42
|
Hi, the KDE editor 'kate' has two diff. folding modes. - set own marks - automatic folding at 'if','for','function',... I think, that is a nice feature for 'J' too. Axel |
From: Peter G. <pe...@ar...> - 2003-05-20 15:26:50
|
> the KDE editor 'kate' has two diff. folding modes. > - set own marks > - automatic folding at 'if','for','function',... > > I think, that is a nice feature for 'J' too. J does support folding, via the commands fold, foldRegion, unfold, unfoldAll and foldMethods. The fold command tries to create a fold at the most logical place near your current location, which is similar to the automatic folding in kate. foldRegion folds the selected region, i.e. you set your own marks. Do these commands do what you want, or is something still missing? -Peter |
From: Axel B. <ab...@ic...> - 2003-05-20 15:43:45
|
On Tue, 20 May 2003 07:35:26 -0700 Peter Graves <pe...@ar...> wrote: > > the KDE editor 'kate' has two diff. folding modes. > > - set own marks > > - automatic folding at 'if','for','function',... > > > J does support folding, via the commands fold, foldRegion, unfold, > unfoldAll and foldMethods. > > The fold command tries to create a fold at the most logical place near > your current location, which is similar to the automatic folding in > kate. > I tried the 'fold' on a 'function fct_ ...' line. Nothing. > foldRegion folds the selected region, i.e. you set your own marks. > I tried it, but if I use the '+' to unfold, the foldmark disappers. > Do these commands do what you want, or is something still missing? Yes/No. In the PRG kate exist a +/- in every line with a PHP-keyword. Nice feature is, if the current folding would be saved :) And, in combination with the vim-folding... It will be a dream. For me, the folding help to get a better oversight. Axel |
From: Berthold <b.t...@gm...> - 2003-05-20 15:56:46
|
Hi Peter, all, Am 05/20/03 05:43 PM schrieb Axel Bodemer: > And, in combination with the vim-folding... It will be a dream. > For me, the folding help to get a better oversight. Do I have to say more? ;-) --=20 Viele Gr=FC=DFe Berthold |
From: Peter G. <pe...@ar...> - 2003-05-20 16:35:17
|
> I tried the 'fold' on a 'function fct_ ...' line. Nothing. The current implementation may not be optimal in PHP mode. Let's say you have some code like this: function foo() { line1 ... line2 ... line3 ... } If you do Alt [ (fold) on line1 of the function (i.e. not the "function foo()" line), it will fold the entire function. Now, I could add specific support for PHP mode, so that if you did Alt [ on a line that began with "function" and either ended with '{' or was followed by a line beginning with '{' (ignoring whitespace), the fold command would fold the function. How's that? > > foldRegion folds the selected region, i.e. you set your own marks. > > > > I tried it, but if I use the '+' to unfold, the foldmark disappers. I assume you mean there's no one-step method to redo the fold; you have to reselect the region first. That's true. I see the problem, but I'm not sure how to solve it. > > Do these commands do what you want, or is something still missing? > > Yes/No. In the PRG kate exist a +/- in every line with a PHP-keyword. > Nice feature is, if the current folding would be saved :) Does kate or vim save the folding? > And, in combination with the vim-folding... It will be a dream. What exactly is the vim-folding? |
From: Peter G. <pe...@ar...> - 2003-05-20 22:03:18
|
> > Does kate or vim save the folding? > > No, vim use > // {{{ For the start TAG > ... > // }}} > For the end Tag. > Kate use his one method. > But the vim method is used from the emacs-folding to ;) OK, you've talked me into it. J will support "{{{" and "}}}" in the text as explicit fold markers So if you do Ctrl [ on a line containing "{{{", it will fold everything from that line to the next balanced "}}}". Right? |
From: Axel B. <ab...@ic...> - 2003-05-21 07:42:24
|
On Tue, 20 May 2003 11:02:24 -0700 Peter Graves <pe...@ar...> wrote: Hi, > OK, you've talked me into it. J will support "{{{" and "}}}" in the > text as explicit fold markers > Yes. The general format ist, comment-tag 'may be a infotext' {{{ . // infotext {{{ So, if you want folders in a bash script, you must use "# {{{" and "# }}}" . > So if you do Ctrl [ on a line containing "{{{", it will fold everything > from that line to the next balanced "}}}". > > Right? Yes. It would be nice, if exist a foldermark like the '+' on the left site, for every folderstart tag. A '+' for closed, a '-' for open folders. I tried to close a folder about the folder-end-tag. If I do that on the 3th fold, the 1th and the 2th where closed too. Axel |
From: Peter G. <pe...@ar...> - 2003-05-21 15:05:16
|
On Wed, 21 May 2003 at 09:42:15 +0200, Axel Bodemer wrote: > Yes. It would be nice, if exist a foldermark like the '+' on the left site, > for every folderstart tag. A '+' for closed, a '-' for open folders. I don't really like the idea of putting '-' indicators in the margin for open folders, since in principle any line that isn't already folded is potentially an open folder (via foldRegion). I do realize that other editors do it the way you suggest. I'd like the user to be able to do Ctrl [ on any line where folding makes sense (i.e. a line containing the start tag of an explicit fold, or a line containing the opening brace of a code block, or the "function" line in PHP or JavaScript), and j should do the right thing. (BTW folding on "function" lines in PHP mode should work correctly in 0.18.1.16; I forgot to mention that in the release notes.) > I tried to close a folder about the folder-end-tag. If I do that on > the 3th fold, the 1th and the 2th where closed too. Well, if there were a '-' in the margin you'd have to go to that line to close the folder, right? Should it really work if you try to close a folder in the vicinity of its end tag? With explicit tags, this -could- be made to work, as long as you're between the start and end tags for the range in question. But maybe you just want to fold a bit of the code within the range, and not the whole thing. Maybe there should be a separate command for folding explicit folds... jEdit has three separate modes for folding (including "none"), and you can't do explicit folds unless you're in explicit fold mode. I think this is too restrictive; I'd rather be a bit more flexible and let explicit folds coexist with ad hoc folds. (But if you're gonna put '-' indicators in the margin you've gotta know which mode you're in, so I see why jEdit does it this way.) Food for thought. -Peter |
From: Peter G. <pe...@ar...> - 2003-05-20 22:03:20
|
> On Tue, 20 May 2003 09:18:53 -0700 > Peter Graves <pe...@ar...> wrote: > > > > > If you do Alt [ (fold) on line1 of the function (i.e. not the "function > > foo()" line), it will fold the entire function. > > > > After that, I can't set the curser position over the mouse or keyboard. > Only menus I can open or changing the displayed file. But I can't enter > any char. No menuaction, so I must kill 'J' :( > > I use the 'j-0.18.1.14' with 'blackdown-jdk-1.4.1'. I muddied the waters by saying Alt [ when I should have said Ctrl [. But in any case j shouldn't hang... No matter what else, you should always be able to do Ctrl Z (undo) after either of the above commands and get back to your original situation. So, were you trying Ctrl [ (fold) or Alt [ (slideOut) when j hung? Is there anything of interest in ~/.j/log? Could you send me a small file to edit and an exact scenario that causes this to happen? Thanks a lot! -Peter |