[erlang-questions] How to disable parentheses matching in Erlang shell?

Grzegorz Junka <>
Sat May 21 13:54:57 CEST 2016


Thanks Sverker, but the behaviour is the same as after the previous 
change. I understand it may not be possible to apply a quick and proper 
fix straight away. That's why I proposed to have at least the 
possibility of disabling this feature. It's not terribly important and 
slightly useful when it's working, but very annoying when it's not 
working. Maybe disable it by default in to_erl until it's properly fixed 
for example? And allow to enable it with some flag if some really 
requires it?

Grzegorz


On 20/05/2016 10:32, Sverker Eriksson wrote:
> Grzegorz,
>
> I don't think this problem has anything to do
> with your application.
>
> It think it has to do with the OS, the kind of terminals,
> where run_erl and to_erl are started, and their window
> widths.
>
> And it's not connected to parantheses matching per se
> but rather getting beam, run_erl and to_erl to agree
> on the window width and how to move to get the terminal
> to correctly move the cursor up and down. I tested with
> Ctrl+A and Ctrl+E and verified if it correctly jumped
> between start and end of the command line.
>
> I did another commit that you can try
>
> git fetch https://github.com/sverker/otp sverker/ttsl_drv-move-down
>
> But to get this right I think some work needs to be done
> to get to_erl to use the same terminal settings as run_erl
> for example. It's on the todo list.
>
> /Sverker, Erlang/OTP
>
>
> On 05/17/2016 07:55 PM, Grzegorz Junka wrote:
>> Sverker, I have a simple application which you could quickly compile 
>> to be able to easily reproduce this issue. Just execute those steps 
>> (one by one):
>>
>> mkdir test_sc
>> cd test_sc/
>> git clone https://github.com/builderl/ex1_simple_cache.git
>> cd ex1_simple_cache/
>> gmake get-deps
>> gmake dev
>> ./bin/init.esh
>> ./bin/start.esh
>> to_erl ../sc-1/shell/
>>
>> This will pull an application, get all its dependencies, compile, 
>> install, configure, start and connect to one of the running nodes 
>> (there will be two running nodes from the same release).
>>
>> I hope that will be helpful but of course I am happy to recompile the 
>> OTP from your branch and retry if needed.
>>
>> Grzegorz
>>
>>
>> On 17/05/2016 17:01, Grzegorz Junka wrote:
>>> :(
>>>
>>> As soon as I closed the bracket after typing {e, 5} from my example 
>>> the cursor jumped some 10 columns to the right and then to the 
>>> beginning of the line. That's how far it got (without the fix the 
>>> cursor would jump incorrectly only after closing ']').
>>>
>>> ()1> lists:sort([{a, 1}, {b, 2}, {c, 3}, 
>>> {d, 4}, {e, 5}
>>>
>>> Grzegorz
>>>
>>>
>>> On 17/05/2016 13:10, Sverker Eriksson wrote:
>>>> Could you test this fix and see if it makes the cursor behave
>>>> when connected with to_erl/run_erl.
>>>>
>>>> git fetch https://github.com/sverker/otp sverker/ttsl_drv-move-down
>>>>
>>>> /Sverker, Erlang/OTP
>>>>
>>>>
>>>> On 05/15/2016 11:45 PM, Grzegorz Junka wrote:
>>>>>
>>>>> I just realized what is likely causing the problem. When I start 
>>>>> the shell with erl and type in this testing string (with spaces so 
>>>>> it's longer) it all works fine:
>>>>>
>>>>> lists:sort([{a, 1}, {b, 2}, {c, 3}, {d, 4}, {e, 5}, {f, 6}, {g, 
>>>>> 7}, {h, 8}, {i, 9}, {j, 10}]).
>>>>>
>>>>> But I very rarely use Erlang shell in this way. Most of the time I 
>>>>> am connecting to running Erlang nodes using to_erl specifying the 
>>>>> shell's PID. Then it breaks, probably because my terminal size 
>>>>> doesn't match the default terminal size with which the shell has 
>>>>> been originally started.
>>>>>
>>>>> When I then try to type in the same example the shell will match 
>>>>> each {} correctly but as soon as I type ']' to close the list the 
>>>>> cursor jumps to the line above, then some other place when I type 
>>>>> ')'.
>>>>>
>>>>> So it's not related to the environment but to the way I am using 
>>>>> Erlang shell. Is there any solution to that?
>>>>>
>>>>> Grzegorz
>>>>>
>>>>>
>>>>
>>>
>>
>>
>



More information about the erlang-questions mailing list