octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 300 baud V.21 terminal emulation


From: Daniel J Sebald
Subject: Re: 300 baud V.21 terminal emulation
Date: Sat, 05 Oct 2013 11:22:21 -0500
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.24) Gecko/20111108 Fedora/3.1.16-1.fc14 Thunderbird/3.1.16

On 10/04/2013 06:37 AM, Mike Miller wrote:
On Fri, Oct 04, 2013 at 02:29:09 -0500, Daniel J Sebald wrote:
 From that it seems Octave can then modify blink-matching behavior
without having to relaunch the terminal (or Octave).  The steps
would be something like:

1) Octave looks for, say, .octaveinputrc.  If it doesn't exist,
create it with the contents

set blink-matching-paren off

Octave already installs its own inputrc. Look in scripts/startup. You
can try adding whatever commands you want there.

This is confusing. I was unfamiliar with startup.c. I thought the startup configuration is what .octaverc is for. Even Octave indicates that:

----------
help startup
error: help: startup is not implemented. Octave uses the file ".octaverc" instead.

Please read `http://www.octave.org/missing.html' to learn how you can
contribute missing functionality.


which('startup')

----------

How is the new user supposed to know how to set this? Why should a new user be expected to modify such a file when there is the Preferences section of the GUI? Does one put a startup.m in their root directory? Does an administrator have to change this in the search tree?


2) Octave sets the environment variable INPUTRC to .octaveinputrc
before launching the terminal emulator.

No need because of the above. Also wrong, INPUTRC is a user environment
variable, programs should never override that.

It would only be overridden for the Octave environment. The question is whether the user is expecting the command line in the GUI to be a shell terminal, or only something similar to it. I can imagine the interface within the GUI having features beyond the standard shell emulation, and in fact it already has that. For example, one can use Control-C to copy text into the clipboard whereas that doesn't work with an actual shell.


3) In Octave's options, if the user changes the setting for
blink-matching, Octave can simply change .octaveinputrc to

set blink-matching-paren off

and then force a Ctrl-x Ctrl-r into the terminal emulator to make it
reread .octaveinputrc.

I believe Octave's own inputrc is already read after any default inputrc
files when readline is initialized. Any extra effort to force another
reload of the settings is unnecessary. Even if the user does change the
setting, programs should not try to override that because they think
they know better.

You can certainly try adding this directive to Octave's inputrc and see
if it helps, but don't do anything like trying to force a reload to
override user prefs.

I'm understanding the purpose of the GUI release to target a big sector of potential users who have no savvy about startup files, shells, environment variables, etc. They would be unaware they actually have a say in how their terminal behaves. Of these options:

1) Do not override user prefs, and possibly have very slow cut-and-paste while the shell emulation stops and blinks (if it is in fact doing that, as I can't really tell) for a half second every time there are brackets.

2) Disable blink-matching-paren by default (with an option to turn it on), and let the Qscintilla editor do the parenthesis matching feature.

it seems the second makes more sense for the target audience.

Dan


reply via email to

[Prev in Thread] Current Thread [Next in Thread]