]> git.neil.brown.name Git - edlib.git/log
edlib.git
10 years agoRevisions to pane_refresh
NeilBrown [Fri, 11 Dec 2015 22:55:58 +0000 (09:55 +1100)]
Revisions to pane_refresh

Instead of passing a pointer to a struct which is then copied and
otherwise (largely) unused, just pass the struct by-value.

Also change the setting of some fields that isn't needed as they
cannot have been changed.

And never use a ci again after it has been passed to a command.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoremove call_str and call_extra
NeilBrown [Fri, 11 Dec 2015 22:34:44 +0000 (09:34 +1100)]
remove call_str and call_extra

no longer used.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoMake sure python compares/hashes panes properly.
NeilBrown [Fri, 11 Dec 2015 21:55:15 +0000 (08:55 +1100)]
Make sure python compares/hashes panes properly.

Two python objects for the same pane must compare and hash the same.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoAdd 'Comm' type to python interface.
NeilBrown [Fri, 11 Dec 2015 21:43:35 +0000 (08:43 +1100)]
Add 'Comm' type to python interface.

This is a command - it can be called from python to run non-python
code.

There are issues with argument passing that I haven't fully resolved...

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoMake it possible to replace current event handler.
NeilBrown [Fri, 11 Dec 2015 06:31:41 +0000 (17:31 +1100)]
Make it possible to replace current event handler.

Setting DAMAGED_EVENTS on the root and then refreshing
should do it.  Untested though.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoFirst step to plugable event loops.
NeilBrown [Fri, 11 Dec 2015 06:15:32 +0000 (17:15 +1100)]
First step to plugable event loops.

attach libevent via an plugin command.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse new notifiers for lib-view
NeilBrown [Fri, 11 Dec 2015 04:30:41 +0000 (15:30 +1100)]
Use new notifiers for lib-view

Signed-off-by: NeilBrown <neil@brown.name>
10 years agouse new notifiers to notify changes to render-lines.
NeilBrown [Fri, 11 Dec 2015 04:21:30 +0000 (15:21 +1100)]
use new notifiers to notify changes to render-lines.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse new notifiers for render-hex.
NeilBrown [Fri, 11 Dec 2015 03:25:55 +0000 (14:25 +1100)]
Use new notifiers for render-hex.

This makes the he_data redundant.  I'll leave it there as I'll
probably find a need for it later.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse DEF_LOOKUP_CMD in render-hex.
NeilBrown [Fri, 11 Dec 2015 03:15:15 +0000 (14:15 +1100)]
Use DEF_LOOKUP_CMD in render-hex.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoMore fixed for closing popup windows.
NeilBrown [Fri, 11 Dec 2015 03:13:57 +0000 (14:13 +1100)]
More fixed for closing popup windows.

I think I need refcounting on panes :-(

Signed-off-by: NeilBrown <neil@brown.name>
10 years agopopup: Close doc more directly.
NeilBrown [Fri, 11 Dec 2015 02:44:32 +0000 (13:44 +1100)]
popup: Close doc more directly.

I want this to all go eventually with auto-close documents.
But destroying a doc via some pane is problematic as the
pane might have disappeared already.  So do it more directly.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoDisconnect pane where possible before closing children.
NeilBrown [Fri, 11 Dec 2015 02:43:14 +0000 (13:43 +1100)]
Disconnect pane where possible before closing children.

This limits multiple closes due to recursion to some extent.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoIntroduce DAMAGED_CLOSED
NeilBrown [Fri, 11 Dec 2015 02:41:07 +0000 (13:41 +1100)]
Introduce DAMAGED_CLOSED

This gets set when a pane is being closed, and prevents repeated
close when a child tried to close a parent.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse new notifiers to close a popup when target disappears.
NeilBrown [Fri, 11 Dec 2015 00:43:43 +0000 (11:43 +1100)]
Use new notifiers to close a popup when target disappears.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse new notifications to support search_again
NeilBrown [Fri, 11 Dec 2015 00:39:06 +0000 (11:39 +1100)]
Use new notifications to support search_again

That than the old doc notifer.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoStart changing rules about ->focus and ->home
NeilBrown [Fri, 11 Dec 2015 00:21:52 +0000 (11:21 +1100)]
Start changing rules about ->focus and ->home

I'm still thinking this through....

'home' must always be the pane where the command was found.
'focus' should be where the action happens.

Previously 'home' would always end up being a parent of 'focus' but
sometimes, particularly calls from popup to target, we want something else.

So allow the caller to set 'focus' to themselves and 'home' to where
to start looking for the command.
If either is home is not set, focuses it moved out to a leaf first.

This still seems a bit clumsy...

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse new notifiers to send notification when document changes.
NeilBrown [Thu, 10 Dec 2015 07:11:49 +0000 (18:11 +1100)]
Use new notifiers to send notification when document changes.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUnify doc_notify_change and point_notify_change more.
NeilBrown [Thu, 10 Dec 2015 07:03:30 +0000 (18:03 +1100)]
Unify doc_notify_change and point_notify_change more.

In particular: export only one interface.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse new notifier to close all views on a document when destroyed.
NeilBrown [Thu, 10 Dec 2015 06:48:13 +0000 (17:48 +1100)]
Use new notifier to close all views on a document when destroyed.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoAdd infrastructure to allow panes to get notifications from other panes.
NeilBrown [Thu, 10 Dec 2015 06:00:28 +0000 (17:00 +1100)]
Add infrastructure to allow panes to get notifications from other panes.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoMake struct cmd_info mostly read-only
NeilBrown [Wed, 9 Dec 2015 22:45:15 +0000 (09:45 +1100)]
Make struct cmd_info mostly read-only

I want this to be treated readonly except for a few
places where explicit write access is requested.
Partly because it used to be changed a lot and I want to stop that.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoRemove doc_from_pane
NeilBrown [Thu, 10 Dec 2015 04:17:55 +0000 (15:17 +1100)]
Remove doc_from_pane

No more callers.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoChange line-count to use a pane rather than a doc.
NeilBrown [Thu, 10 Dec 2015 04:15:56 +0000 (15:15 +1100)]
Change line-count to use a pane rather than a doc.

Now all those pane-based functions are available...

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoIntroduce vmark_new to avoid direct acess to doc_new_mark
NeilBrown [Thu, 10 Dec 2015 04:11:14 +0000 (15:11 +1100)]
Introduce vmark_new to avoid direct acess to doc_new_mark

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoDefine doc:set-attr and use in line-count.
NeilBrown [Thu, 10 Dec 2015 03:21:58 +0000 (14:21 +1100)]
Define doc:set-attr and use in line-count.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoIntroduce pane_mark_attr.
NeilBrown [Thu, 10 Dec 2015 03:00:18 +0000 (14:00 +1100)]
Introduce pane_mark_attr.

This searches panes for an attribute at a mark.
This removes another doc_from_pane call.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agosearch: used Move-File rather than mark_reset to go to start.
NeilBrown [Thu, 10 Dec 2015 02:55:17 +0000 (13:55 +1100)]
search: used Move-File rather than mark_reset to go to start.

this removes another doc_from_pane call.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse attributes to get name of document instead of direct access.
NeilBrown [Thu, 10 Dec 2015 02:42:16 +0000 (13:42 +1100)]
Use attributes to get name of document instead of direct access.

This removes another doc_from_pane() call.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse pane_attr_get to get linecount attributes for 'view'.
NeilBrown [Thu, 10 Dec 2015 02:33:30 +0000 (13:33 +1100)]
Use pane_attr_get to get linecount attributes for 'view'.

This reduced need for 'doc'.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoIntroduce doc_following_pane and change many mark_next/mark_prev to _pane
NeilBrown [Thu, 10 Dec 2015 02:20:35 +0000 (13:20 +1100)]
Introduce doc_following_pane and change many mark_next/mark_prev to _pane

still tring to get 'doc' references out of non-core/doc code.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoAll ed->commands to be accessed by key_handle
NeilBrown [Thu, 10 Dec 2015 02:15:44 +0000 (13:15 +1100)]
All ed->commands to be accessed by key_handle

This makes sense and means we don't need to find the 'ed'.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoIntroduce mark_next_pane and mark_prev_pane
NeilBrown [Thu, 10 Dec 2015 01:49:42 +0000 (12:49 +1100)]
Introduce mark_next_pane and mark_prev_pane

Use these to remove the need for 'doc_from_pane' from search_add.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoRationalise prev/next mark function.
NeilBrown [Thu, 10 Dec 2015 01:29:34 +0000 (12:29 +1100)]
Rationalise prev/next mark function.

- don't need the 'safe' version any more
- don't need to pass 'doc'.
- consistent names: doc_{prev,next}_mark_{all,view}

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoChange hlist to make the head directlry recognisable.
NeilBrown [Thu, 10 Dec 2015 01:21:18 +0000 (12:21 +1100)]
Change hlist to make the head directlry recognisable.

Store a least-significant-bit in the pointer in the 'head'
so that we can recognise the start of the list without carrying
around the pointer to the head.

This allows free movement around marks without holding the doc.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoRemove 'doc' arg from next_mark.
NeilBrown [Thu, 10 Dec 2015 00:54:05 +0000 (11:54 +1100)]
Remove 'doc' arg from next_mark.

It doesn't need it.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoRemove mark_same calls from non-core/doc code.
NeilBrown [Thu, 10 Dec 2015 00:52:00 +0000 (11:52 +1100)]
Remove mark_same calls from non-core/doc code.

These should use mark_same_pane.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoRemove 'd' from render_complete_line
NeilBrown [Thu, 10 Dec 2015 00:47:20 +0000 (11:47 +1100)]
Remove 'd' from render_complete_line

It isn't used.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoChange doc_destroy to take a pane.
NeilBrown [Thu, 10 Dec 2015 00:45:35 +0000 (11:45 +1100)]
Change doc_destroy to take a pane.

This starts to reduce the number of doc_from_pane() callers.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoPython: return number from 'call'.
NeilBrown [Thu, 10 Dec 2015 00:06:17 +0000 (11:06 +1100)]
Python: return number from 'call'.

Return value is now more meaningful, so need to pass it back.

Probably should do something better with negative values.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agopython_call: don't accept return values for storage in 'ci'.
NeilBrown [Thu, 10 Dec 2015 00:03:17 +0000 (11:03 +1100)]
python_call: don't accept return values for storage in 'ci'.

That approach is no longer supported.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse callback to return marks from doc:vmark-get
NeilBrown [Thu, 10 Dec 2015 00:00:36 +0000 (11:00 +1100)]
Use callback to return marks from doc:vmark-get

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse callback to return pane for call_pane()
NeilBrown [Wed, 9 Dec 2015 23:54:56 +0000 (10:54 +1100)]
Use callback to return pane for call_pane()

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse a call-back to return pane from "display-ncurses".
NeilBrown [Wed, 9 Dec 2015 23:45:17 +0000 (10:45 +1100)]
Use a call-back to return pane from "display-ncurses".

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse callbacks to return pane from "doc-*"
NeilBrown [Wed, 9 Dec 2015 23:41:39 +0000 (10:41 +1100)]
Use callbacks to return pane from "doc-*"

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse callbacks to return string from Complete:prefix.
NeilBrown [Wed, 9 Dec 2015 23:35:44 +0000 (10:35 +1100)]
Use callbacks to return string from Complete:prefix.

Also fix up freeing of strings.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoMark the '42' hack in render-complete as such.
NeilBrown [Wed, 9 Dec 2015 09:48:05 +0000 (20:48 +1100)]
Mark the '42' hack in render-complete as such.

And hide it from future attempts to make 'ci' read-only.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoReturn value from doc:add-view directly
NeilBrown [Wed, 9 Dec 2015 09:34:57 +0000 (20:34 +1100)]
Return value from doc:add-view directly

Just like doc:find-view

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoRemove assignment to ci->mark in doc_file.
NeilBrown [Wed, 9 Dec 2015 09:25:57 +0000 (20:25 +1100)]
Remove assignment to ci->mark in doc_file.

It isn't needed, and I want to make ci read-only.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agocomplete: remove the finding of the render-lines pane.
NeilBrown [Wed, 9 Dec 2015 09:00:02 +0000 (20:00 +1100)]
complete: remove the finding of the render-lines pane.

If we just make render-lines use "key_handle_focus", it is OK
for render-complete to be placed on top of the stack.
This makes things a lot cleaner.

We now need to let move-line through too.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoChange "render-line" to return line via a callback.
NeilBrown [Wed, 9 Dec 2015 08:38:58 +0000 (19:38 +1100)]
Change "render-line" to return line via a callback.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agorender-lines: don't set ci->hy unnecessarily.
NeilBrown [Tue, 8 Dec 2015 06:54:26 +0000 (17:54 +1100)]
render-lines: don't set ci->hy unnecessarily.

I want 'ci' to be read-only inside commands.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse REDEF_CMD to predeclate keymap_attach_func.
NeilBrown [Tue, 8 Dec 2015 06:53:42 +0000 (17:53 +1100)]
Use REDEF_CMD to predeclate keymap_attach_func.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse callbacks to return pane from render-*-attach commands.
NeilBrown [Tue, 8 Dec 2015 06:32:28 +0000 (17:32 +1100)]
Use callbacks to return pane from render-*-attach commands.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agouse callbacks to return a pane from 'attach' commands.
NeilBrown [Tue, 8 Dec 2015 06:22:13 +0000 (17:22 +1100)]
use callbacks to return a pane from 'attach' commands.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse callback to return string from doc:get-str
NeilBrown [Tue, 8 Dec 2015 03:52:27 +0000 (14:52 +1100)]
Use callback to return string from doc:get-str

This way it is clear how ownership of the string is managed.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse a callback to return string from doc:get-attr
NeilBrown [Tue, 8 Dec 2015 03:36:16 +0000 (14:36 +1100)]
Use a callback to return string from doc:get-attr

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse a callback to return mark for mark_at_point.
NeilBrown [Tue, 8 Dec 2015 02:01:47 +0000 (13:01 +1100)]
Use a callback to return mark for mark_at_point.

This might seem a bit forced, but I really think callbacks
like this are the best generic approach.  I hope.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUnify calls to doc:dup-point.
NeilBrown [Tue, 8 Dec 2015 01:54:17 +0000 (12:54 +1100)]
Unify calls to doc:dup-point.

All these calls can use mark_to_point - so do that.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoChange Complete:prefix to return count directly.
NeilBrown [Tue, 8 Dec 2015 01:32:13 +0000 (12:32 +1100)]
Change Complete:prefix to return count directly.

with an offset of '1' to avoid returning '0'.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoChange text-search to return result directly.
NeilBrown [Tue, 8 Dec 2015 01:28:14 +0000 (12:28 +1100)]
Change text-search to return result directly.

-2 is cannot find
-1 is incomplete regex
0 is no such commnd
N is match of length N-1 found.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoChange doc:replace to return result directly.
NeilBrown [Tue, 8 Dec 2015 00:41:56 +0000 (11:41 +1100)]
Change doc:replace to return result directly.

There isn't must result here - just a flag to say "yes, a change was made".
But it was being handled completely wrongly!
I think it is fixed now.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoChange doc:mark-same to return result directlry.
NeilBrown [Tue, 8 Dec 2015 00:38:01 +0000 (11:38 +1100)]
Change doc:mark-same to return result directlry.

'1' means they are the same.
any other +ve number means they are different.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoChange doc:step to return character directly.
NeilBrown [Tue, 8 Dec 2015 00:33:08 +0000 (11:33 +1100)]
Change doc:step to return character directly.

Don't use ci for returing things.

As a char could be zero and WEOF could appear negative,
use high bits to make the number look positive.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoChange doc:find-view to return value directly.
NeilBrown [Tue, 8 Dec 2015 00:10:18 +0000 (11:10 +1100)]
Change doc:find-view to return value directly.

I'm moving away from using the cmd_info to return stuff.
So for numbers, just return them directly.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUpdate README file
NeilBrown [Tue, 8 Dec 2015 00:01:18 +0000 (11:01 +1100)]
Update README file

Lots has happened since this was written...

Signed-off-by: NeilBrown <neil@brown.name>
10 years agopython: make standard globals available to python scripts.
NeilBrown [Fri, 4 Dec 2015 05:42:12 +0000 (16:42 +1100)]
python: make standard globals available to python scripts.

Also make 'editor' and 'edlib' available to subsequent function calls

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoMake symbols in loaded libraries global.
NeilBrown [Fri, 4 Dec 2015 05:38:05 +0000 (16:38 +1100)]
Make symbols in loaded libraries global.

I don't really like doing this, but python needs it for
"import gtk" to work.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoFix various issues with python
NeilBrown [Fri, 4 Dec 2015 01:05:02 +0000 (12:05 +1100)]
Fix various issues with python

Now that I've started testing a bit more...

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoRemove 'buf' from pane_text
NeilBrown [Fri, 4 Dec 2015 01:03:50 +0000 (12:03 +1100)]
Remove 'buf' from pane_text

It isn't used.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agopython: Add 'init' function for panes.
NeilBrown [Thu, 3 Dec 2015 23:47:26 +0000 (10:47 +1100)]
python: Add 'init' function for panes.

This calls pane_register.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoPython: add interface for pane_focus and pane_refresh.
NeilBrown [Thu, 3 Dec 2015 22:52:16 +0000 (09:52 +1100)]
Python: add interface for pane_focus and pane_refresh.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoCreate a command for defining new named commands.
NeilBrown [Thu, 3 Dec 2015 22:48:35 +0000 (09:48 +1100)]
Create a command for defining new named commands.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoInitialise doc_default_cmd earlier.
NeilBrown [Thu, 3 Dec 2015 22:47:50 +0000 (09:47 +1100)]
Initialise doc_default_cmd earlier.

It needs to be initialised before the very first doc is created.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agopane_refresh: always refresh whole display.
NeilBrown [Thu, 3 Dec 2015 22:38:28 +0000 (09:38 +1100)]
pane_refresh: always refresh whole display.

Anything else doesn't make sense.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agopane_refresh: allow post-order "Refresh" calls, by request.
NeilBrown [Thu, 3 Dec 2015 22:21:29 +0000 (09:21 +1100)]
pane_refresh: allow post-order "Refresh" calls, by request.

This allows the display to flush out updates at the end,
without needing the '0-timeout' hack.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoDiscard concept of persistent key modifiers.
NeilBrown [Thu, 3 Dec 2015 21:56:20 +0000 (08:56 +1100)]
Discard concept of persistent key modifiers.

I'm not using them and I no longer think they make sense.
The goal they were meant to serve is better served by
setting a new "global-set-keymap".

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoseparate keyboard-input state into separate module.
NeilBrown [Thu, 3 Dec 2015 21:51:06 +0000 (08:51 +1100)]
separate keyboard-input state into separate module.

This localises the concept and makes it possible to access
the state by sending commands.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoFix search bug: not finding longest match.
NeilBrown [Wed, 2 Dec 2015 09:44:59 +0000 (20:44 +1100)]
Fix search bug: not finding longest match.

We need to keep going while we have a partial match (len=-1)
and record the last good match.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agosearch: fix but with dot matching newlines.
NeilBrown [Wed, 2 Dec 2015 09:28:39 +0000 (20:28 +1100)]
search: fix but with dot matching newlines.

Also default to case-insensitive until I get that configurable.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoSearch: note in prefix when search has wrapped.
NeilBrown [Wed, 2 Dec 2015 09:21:11 +0000 (20:21 +1100)]
Search: note in prefix when search has wrapped.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agouse ->home->data, not ->focus->data
NeilBrown [Wed, 2 Dec 2015 09:14:10 +0000 (20:14 +1100)]
use ->home->data, not ->focus->data

->focus isn't guaranteed to be the local pane.  Home is.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoSearch: move to 'search start' when finishing the search.
NeilBrown [Wed, 2 Dec 2015 09:12:01 +0000 (20:12 +1100)]
Search: move to 'search start' when finishing the search.

This ensures the final search is from the current starting point.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoBetter handling of formatting with render-complete.
NeilBrown [Wed, 2 Dec 2015 07:54:15 +0000 (18:54 +1100)]
Better handling of formatting with render-complete.

We highlight the common prefix and stripe all highlights
and quoting before using the string.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoFix bug causing render-complete to show a non-matching first line.
NeilBrown [Wed, 2 Dec 2015 07:35:54 +0000 (18:35 +1100)]
Fix bug causing render-complete to show a non-matching first line.

That "Move-to" needs to get through.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agosearch: make sure point is visible when search is aborted.
NeilBrown [Wed, 2 Dec 2015 03:51:16 +0000 (14:51 +1100)]
search: make sure point is visible when search is aborted.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agorender-format: allow '<' characters in format fields.
NeilBrown [Wed, 2 Dec 2015 03:40:23 +0000 (14:40 +1100)]
render-format: allow '<' characters in format fields.

These need to be quoted.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoUse the © copyright character is copyright messages.
NeilBrown [Wed, 2 Dec 2015 03:22:33 +0000 (14:22 +1100)]
Use the © copyright character is copyright messages.

Because I can...

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoAdd lib-messageline.
NeilBrown [Wed, 2 Dec 2015 03:19:07 +0000 (14:19 +1100)]
Add lib-messageline.

This places a line on the bottom on the display and displayed messages there.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoncurses: allow use of full screen.
NeilBrown [Wed, 2 Dec 2015 02:26:07 +0000 (13:26 +1100)]
ncurses: allow use of full screen.

If we want to trim a line off the bottom, do it separately.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoSave search string for later re-use.
NeilBrown [Wed, 2 Dec 2015 02:23:58 +0000 (13:23 +1100)]
Save search string for later re-use.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoDisable recursive popups except by permission.
NeilBrown [Wed, 2 Dec 2015 02:11:24 +0000 (13:11 +1100)]
Disable recursive popups except by permission.

So trying to search in a file-file buffer now doesn't work.

This might need work for searching in a completion list??

Signed-off-by: NeilBrown <neil@brown.name>
10 years agotile: fix 'next' to walk through all pop-ups.
NeilBrown [Wed, 2 Dec 2015 01:56:07 +0000 (12:56 +1100)]
tile: fix 'next' to walk through all pop-ups.

Still need to work on 'prev'!

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoMove root popups to the tile-root.
NeilBrown [Wed, 2 Dec 2015 01:05:06 +0000 (12:05 +1100)]
Move root popups to the tile-root.

Having popups always attached to tiles seems clean and will make
pane-movement easier.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoPage up/down now move cursor to EOF when appropriate.
NeilBrown [Wed, 2 Dec 2015 00:02:14 +0000 (11:02 +1100)]
Page up/down now move cursor to EOF when appropriate.

emacs doesn't do this, but I think it looks better... maybe.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoFix page-up/down in directory listings.
NeilBrown [Tue, 1 Dec 2015 22:46:28 +0000 (09:46 +1100)]
Fix page-up/down in directory listings.

If the target for cursorXY is in the header line, we need to adjust.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoIntroduce some 'call*' functions to call command.
NeilBrown [Tue, 1 Dec 2015 22:11:32 +0000 (09:11 +1100)]
Introduce some 'call*' functions to call command.

This simplifies lots of code.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoQuote regex chars when they are included from doc into search string.
NeilBrown [Tue, 1 Dec 2015 20:53:00 +0000 (07:53 +1100)]
Quote regex chars when they are included from doc into search string.

Also handle unicode search properly.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agotext: fix bug with adding at end of allocation.
NeilBrown [Tue, 1 Dec 2015 20:43:18 +0000 (07:43 +1100)]
text: fix bug with adding at end of allocation.

Signed-off-by: NeilBrown <neil@brown.name>
10 years agoRename comm_ncurses to display_ncurses
NeilBrown [Tue, 1 Dec 2015 20:35:02 +0000 (07:35 +1100)]
Rename comm_ncurses to display_ncurses

"comm_" is part of an old deprecated naming scheme.

Signed-off-by: NeilBrown <neil@brown.name>