changeset:   171:6bcf6933d117
tag:         tip
user:        Alexander Taler <dissent@0--0.org>
date:        Tue Sep 07 12:58:50 2010 +1200
files:       bin/make_pkg.sh doc/CommandObjects.dia doc/DeveloperManual.html doc/Internals.dia doc/Introduction.html doc/ReleaseNotes.html doc/UserManual.html src/hsh/welcome.py
description:
Documentation: Updates for version 1.-2.3


changeset:   170:51c45024a5ac
user:        Alexander Taler <dissent@0--0.org>
date:        Tue Sep 07 12:42:58 2010 +1200
files:       src/hsh/command.py
description:
Fix bug that was returning None for %p expansion if the job had no process.


changeset:   169:a7460849ae40
user:        Alexander Taler <dissent@0--0.org>
date:        Tue Sep 07 12:37:00 2010 +1200
files:       src/hsh/curses_display/keyvalue_view.py
description:
Prevent exceptions in KeyValueView if the user hits Enter without editing anything.


changeset:   168:f75418c91ed0
user:        Alexander Taler <dissent@0--0.org>
date:        Tue Sep 07 12:02:05 2010 +1200
files:       src/hsh/builtins.py src/hsh/curses_display/display.py
description:
Ensure that environment and alias views are redrawn when changed by builtins.


changeset:   167:8945e0f204bf
user:        Alexander Taler <dissent@0--0.org>
date:        Tue Sep 07 11:42:55 2010 +1200
files:       src/hsh/curses_display/list_view.py
description:
Make select_job() in list_view actually show the job.


changeset:   166:7ef894eb2f54
user:        Alexander Taler <dissent@0--0.org>
date:        Mon Sep 06 22:30:52 2010 +1200
files:       doc/DeveloperManual.html src/hsh/curses_display/display.py
description:
Fix bug causing xterm to terminate if hsh is exec()ed


changeset:   165:8205cc037e69
user:        Alexander Taler <dissent@0--0.org>
date:        Mon Sep 06 22:20:40 2010 +1200
files:       doc/DeveloperManual.html
description:
Documentation: add more details on named directories


changeset:   164:e0b1ce37e52f
user:        Alexander Taler <dissent@0--0.org>
date:        Sun Sep 05 15:43:28 2010 +1200
files:       src/hsh/builtins.py src/hsh/command.py src/hsh/curses_display/input_view.py src/hsh/jobs.py
description:
Fix builtins which show a special view, like env and alias.

Add directives for handling changing of views.  This differs from the previous
implementation which was hide and show.

builtins.py
 + Use new directive "changeview" for copying and version builtins, since
   the default is not to change the view.  hsh_view now uses the default.

command.py
 + Define the new directives.

input_view.py
 + Suppress view change if the dontchangeview directive is used.

jobs.py
 + Set default directives for builtins.


changeset:   163:3b24f50e2b23
user:        Alexander Taler <dissent@0--0.org>
date:        Sun Sep 05 15:37:24 2010 +1200
files:       src/hsh/curses_display/input_view.py
description:
Fix bug using #exclusive, jobs always need to be shown.


changeset:   162:e191ef936d50
user:        Alexander Taler <dissent@0--0.org>
date:        Sun Sep 05 13:57:21 2010 +1200
files:       doc/DeveloperManual.html src/hsh/command.py src/hsh/config.py src/hsh/jobs.py src/hsh/welcome.py
description:
Change meaning of leading '+' to suppress use of builtins and aliases.

jobs.py
 + create_job() is changed to not interpret the '+' at all, the
   command expansion is now responsible for setting builtin names
   correctly.

config.py
 + Change variable name for clarity.

command.py
 + expand() and completions() are updated for the new meaning of +.


changeset:   161:f1a9b14bbb28
user:        Alexander Taler <dissent@0--0.org>
date:        Sun Sep 05 08:33:04 2010 +1200
files:       doc/DeveloperManual.html
description:
Documentation: remove issue which has disappeared.


changeset:   160:72bd34554ca2
user:        Alexander Taler <dissent@0--0.org>
date:        Sat Sep 04 21:40:41 2010 +1200
files:       src/hsh/curses_display/display.py src/hsh/curses_display/list_view.py
description:
Fix bugs with synchronizing main job view and session list in curses_display.

+ Make display.display_job() smarter about whether to show a new
  job and handle None values in more cases.

+ In list_view.set_visible_job() don't unnecessarily communicate
  current job when nothing's changed.


changeset:   159:eaa39302c7b1
user:        Alexander Taler <dissent@0--0.org>
date:        Sat Sep 04 17:19:22 2010 +1200
files:       doc/DeveloperManual.html src/hsh/curses_display/view.py
description:
Add special handling for programs that emit CR characters.


changeset:   158:ed1321b21207
user:        Alexander Taler <dissent@0--0.org>
date:        Sat Sep 04 16:33:13 2010 +1200
files:       src/hsh/test/test_command.py
description:
Fix some broken tests


changeset:   157:f75ded0d7eb2
user:        Alexander Taler <dissent@0--0.org>
date:        Sat Sep 04 16:28:20 2010 +1200
files:       doc/DeveloperManual.html src/hsh/command.py
description:
Escape spaces in filenames when doing tab completion.


changeset:   156:e5cb4d93da0e
user:        Alexander Taler <dissent@0--0.org>
date:        Sat Sep 04 16:27:03 2010 +1200
files:       doc/DeveloperManual.html
description:
Rearrange packaging task


changeset:   155:243f221385e4
user:        Alexander Taler <dissent@0--0.org>
date:        Sat Sep 04 16:15:59 2010 +1200
files:       src/hsh/command.py
description:
Fix command line parsing bug.


changeset:   154:e5d7c0eff52a
user:        Alexander Taler <dissent@0--0.org>
date:        Sat Sep 04 10:09:08 2010 +1200
files:       doc/DeveloperManual.html
description:
Doc: Remove hide output task because it\'s done.


changeset:   153:88901c842760
user:        Alexander Taler <dissent@0--0.org>
date:        Sat Sep 04 10:08:11 2010 +1200
files:       doc/DeveloperManual.html src/hsh/config.py src/hsh/curses_display/view.py
description:
Handle tab characters in output.


changeset:   152:37eb42c27c1b
user:        Alexander Taler <dissent@0--0.org>
date:        Sat Sep 04 08:06:54 2010 +1200
files:       doc/DeveloperManual.html src/hsh/curses_display/content_view.py
description:
Remove limit on horizontal movement for Content View.

It used to be limited to the length of the top line, which didn't work well if
the other lines were longer.


changeset:   151:2b0107b7fc36
user:        Alexander Taler <dissent@0--0.org>
date:        Fri Sep 03 02:02:06 2010 +1200
files:       doc/DeveloperManual.html
description:
Documentation: Add more display bugs to the list.


changeset:   150:3e3029e4955f
user:        Alexander Taler <dissent@0--0.org>
date:        Fri Sep 03 02:01:00 2010 +1200
files:       src/hsh/curses_display/content_view.py
description:
In JobView, change vertical movement to use visible lines.


changeset:   149:1255d00dff7a
user:        Alexander Taler <dissent@0--0.org>
date:        Fri Sep 03 01:32:35 2010 +1200
files:       src/hsh/curses_display/list_view.py
description:
Change handling for deleting current job to jump to previous job.

This handles the case where the last job being deleted.


changeset:   148:976f11148e14
user:        Alexander Taler <dissent@0--0.org>
date:        Fri Sep 03 01:28:20 2010 +1200
files:       src/hsh/curses_display/display.py src/hsh/curses_display/list_view.py src/hsh/curses_display/view.py
description:
Minor text fixes.

Rename get_job_display() to get_job_view() to match a rather old class name
change.

Fix some grammar and add a missing variable documentation.


changeset:   147:3b1e91b1c315
user:        Alexander Taler <dissent@0--0.org>
date:        Fri Sep 03 01:21:32 2010 +1200
files:       src/hsh/curses_display/job_view.py src/hsh/curses_display/keybinds.py src/hsh/curses_display/list_view.py
description:
Add functionality to hide job output in list view.

curses_display/job_view.py
 + Add member variable to track visibility of output.

curses/keybinds.py
 + Bind visibility change to M-h

curses/list_view.py
 + Add a bound function to update visibility variable.
 + Update drawing routine to hide output when required.


changeset:   146:e0f397def323
user:        Alexander Taler <dissent@0--0.org>
date:        Fri Sep 03 00:26:57 2010 +1200
files:       src/hsh/curses_display/input_view.py src/hsh/curses_display/keybinds.py
description:
Change InputView keybinding to use generic pass through to main view in more cases.


changeset:   145:c5d541a55972
user:        Alexander Taler <dissent@0--0.org>
date:        Fri Sep 03 00:05:57 2010 +1200
files:       src/hsh/curses_display/input_view.py src/hsh/curses_display/keybinds.py
description:
Change InputView to pass Home and End keys through to the main view.

Additionally, change implementation of pass through for Page Up and Page Down
to use a generic function.


changeset:   144:7cb8a71e82c1
user:        Alexander Taler <dissent@0--0.org>
date:        Thu Sep 02 23:53:11 2010 +1200
files:       src/hsh/config.py src/hsh/curses_display/display.py src/hsh/curses_display/list_view.py src/hsh/curses_display/view.py
description:
Synchronize main job view with current job in Session view.

The job visible in the main job view (F2 key) now always matches
the highlighted job in the session list.

config.py
  + Enable syncing for SessionList view.

curses_display/display.py
  + Inform all views when the main visible job changes.

curses_display/list_view.py
  + Provide an option to synchronize between main visible job and
    self.curjob.  The syncing is done in set_visible_job() and
    _set_curjob().
  + Move all changes to self.curjob into a new function
    self._set_curjob(), so that syncing can be enforced.  Include
    several common checks in this new function.

curses_display/view.py
  + Add default handler for change to the visible job, to do
    nothing.


changeset:   143:fa9479f74a5b
user:        Alexander Taler <dissent@0--0.org>
date:        Thu Sep 02 18:50:53 2010 +1200
files:       src/hsh/curses_display/list_view.py
description:
Make sure that new jobs are always visible in list view.


changeset:   142:c72acf6de8ce
user:        Alexander Taler <dissent@0--0.org>
date:        Thu Sep 02 18:45:19 2010 +1200
files:       src/hsh/curses_display/keybinds.py src/hsh/curses_display/list_view.py src/hsh/curses_display/view.py
description:
Bind Home and End keys.


changeset:   141:fbac50ae11b3
user:        Alexander Taler <dissent@0--0.org>
date:        Tue Aug 31 23:48:33 2010 +1200
files:       src/hsh/curses_display/list_view.py
description:
When switching jobs in list view, make sure new jobs are visible.

Previously the display position would not always be adjusted if the newly
focused job was just off the screen.


changeset:   140:fcbf9dc28661
user:        Alexander Taler <dissent@0--0.org>
date:        Tue Aug 31 23:29:27 2010 +1200
files:       src/hsh/curses_display/list_view.py
description:
Update comments.


changeset:   139:56706bc2379b
user:        Alexander Taler <dissent@0--0.org>
date:        Wed Jul 14 00:00:21 2010 +1200
files:       doc/DeveloperManual.html src/hsh/config.py
description:
Add an alias for info to run #exclusively.


changeset:   138:01e93ca70500
user:        Alexander Taler <dissent@0--0.org>
date:        Tue Jul 13 23:57:28 2010 +1200
files:       doc/DeveloperManual.html src/hsh/curses_display/display.py src/hsh/jobs.py
description:
Display correct job return codes again.

Reenabling the signal handler for SIGCHLD means poll() and waitpid()
can correctly retrieve the return code again.


changeset:   137:d1cca1121463
user:        Alexander Taler <dissent@0--0.org>
date:        Tue Jul 13 08:38:13 2010 +1200
files:       doc/DeveloperManual.html
description:
Doco: remove several completed tasks


changeset:   136:b2255c93feff
user:        Alexander Taler <dissent@0--0.org>
date:        Tue Jul 13 08:36:39 2010 +1200
files:       src/hsh/curses_display/list_view.py
description:
More refinements to ListView display.

Check show_tail after ensuring the current job is visible.
Set disp_pos correctly when changing current job.


changeset:   135:0712d1e16608
user:        Alexander Taler <dissent@0--0.org>
date:        Mon Jul 12 23:20:46 2010 +1200
files:       src/hsh/curses_display/list_view.py
description:
Change session list to display stderr in a different colour.


changeset:   134:e1ebf4e02198
user:        Alexander Taler <dissent@0--0.org>
date:        Sun Jul 11 22:09:51 2010 +1200
files:       src/hsh/curses_display/list_view.py
description:
Remove duplication in calculations when drawing list views.

The locations where each job is drawn were being stored in three
different lists: prejobstarts, postjobstarts and
self.job_draw_lines.  The first two are removed in favour of using
the third one only.

The checks for visibility of the current job are combined into
one location based on the common data structure.

Additionally, job_draw_lines is fixed to have the correct values,
based on anchor instead of self.disp_pos.


changeset:   133:074c40c0bb6f
user:        Alexander Taler <dissent@0--0.org>
date:        Fri Jul 09 20:51:31 2010 +1200
files:       .hgtags
description:
Added tag hsh-1.-2.2 for changeset f69ce6bf766d


changeset:   132:4f3228f7f4f0
user:        Alexander Taler <dissent@0--0.org>
date:        Fri Jul 09 20:41:12 2010 +1200
files:       src/hsh/command.py src/hsh/config.py src/hsh/curses_display/display.py src/hsh/curses_display/input_view.py src/hsh/curses_display/list_view.py
description:
Make the default view more similar to a traditional shell.

When a new job is started, switch to the session list view, which
now includes the job output.  Show the bottom of the new job's
output.  Remove the hide, hideonsuccess, and show directives, since
they are no longer meaningful.

hsh/command.py
 + Remove directives.

hsh/config.py
 + Change the default format for session list to be more succinct.

hsh/curses_display/display.py
 + Add a function for showing the session list.

hsh/curses_display/input_view.py
 + When launching a job, show the session list.
 + Remove directives logic.

hsh/curses_display/list_view.py
 + Add self.job_draw_lines and self.show_tail to provide better control
   over the drawing process.
 + When adding new jobs, make them current and draw them in the right place.
 + Handle some edge cases in tail mode when switching jobs.
 + Fix some off by 1 bugs where disp_pos was being used instead of anchor.


changeset:   131:f9f55926c860
user:        Alexander Taler <dissent@0--0.org>
date:        Sun Jul 04 22:00:20 2010 +1200
files:       doc/DeveloperManual.html
description:
Add a bunch more tasks.


changeset:   130:805d3e610cfd
user:        Alexander Taler <dissent@0--0.org>
date:        Sun Jul 04 21:58:29 2010 +1200
files:       src/hsh/config.py src/hsh/curses_display/list_view.py src/hsh/curses_display/view.py
description:
Provide ability to include job output in job list views.

hsh/curses_display/list_view.py
 + Add configuration for choosing colour of non-current jobs.
 + Reimplement draw() method to optionally include job output.
 + Modify keybound functions to support inclusion of job output.

hsh/curses_display/view.py
 + Refactor format_lines() method to support drawing backwards as
   well as forwards.
 + Move static functions out of format_lines(), possibly improving
   performance.
 + Update some code comments for draw() and draw_header().

hsh/config.py
 + Add new configuration options for job list displays


changeset:   129:b4279e675910
user:        Alexander Taler <dissent@0--0.org>
date:        Sun Jul 04 21:13:19 2010 +1200
files:       src/hsh/builtins.py
description:
Update debug_dump builtin for changes to view handling.


changeset:   128:de77b58c7392
user:        Alexander Taler <dissent@0--0.org>
date:        Tue Jun 29 17:38:29 2010 +1200
files:       src/hsh/curses_display/content_view.py
description:
Combine two variables which always had the same value.


changeset:   127:a896c8516884
user:        Alexander Taler <dissent@0--0.org>
date:        Fri Jun 11 10:06:03 2010 +1200
files:       doc/DeveloperManual.html
description:
documentation: Expand the Guidelines section in DeveloperManual.


changeset:   126:40bf266c2de0
user:        Alexander Taler <dissent@0--0.org>
date:        Thu Jun 10 11:26:42 2010 +1200
files:       doc/DeveloperManual.html
description:
Doc: more tasks, and update to release guide.


changeset:   125:f69ce6bf766d
tag:         hsh-1.-2.2
user:        Alexander Taler <dissent@0--0.org>
date:        Wed Jun 09 15:00:17 2010 +1200
files:       doc/DeveloperManual.html
description:
Some more details about doing release.


