Re: Terminal emulators can't read .profile

2012-12-13 Thread Feng Zhou
Yep, I understand the difference between terminal emulator and shell. Thanks 
for the clarification anyway.

It was just easier to type than "with st*loginShell:true set in .Xdefault, st 
doesn't seem to be able to launch urxvt as login shell that reads .profile at 
start-up".


On 13/12/2012, at 11:59 PM, Dustin Fechner  wrote:

> On 12/13/2012 01:14 PM, Feng Zhou wrote:
>> However, st doesn't seem to be able to read .profile [...]
> 
> Just to be a bit more precise here:
> It's *not* the terminal emulator that reads '.profile'.
> The terminal emulator just invokes a shell and the shell parses its
> configuration files.
> 
> Regarding '.profile', I'll quote the ksh man page (assuming you are
> using ksh as your shell):
>> -l   Login shell.  If the basename the shell is called with (i.e.
>>  argv[0]) starts with `-' or if this option is used, the shell is
>>  assumed to be a login shell and the shell reads and executes the
>>  contents of /etc/profile and $HOME/.profile if they exist and are
>>  readable.
> 
> So it all comes down to *how* (i.e. with what options) the shell gets
> invoked. Don't confuse the terminal emulator with the shell, as these
> are two distinct things.



Re: Terminal emulators can't read .profile

2012-12-13 Thread Dustin Fechner
On 12/13/2012 01:14 PM, Feng Zhou wrote:
> However, st doesn't seem to be able to read .profile [...]

Just to be a bit more precise here:
It's *not* the terminal emulator that reads '.profile'.
The terminal emulator just invokes a shell and the shell parses its
configuration files.

Regarding '.profile', I'll quote the ksh man page (assuming you are
using ksh as your shell):
>-l Login shell.  If the basename the shell is called with (i.e.
>   argv[0]) starts with `-' or if this option is used, the shell is
>   assumed to be a login shell and the shell reads and executes the
>   contents of /etc/profile and $HOME/.profile if they exist and are
>   readable.

So it all comes down to *how* (i.e. with what options) the shell gets
invoked. Don't confuse the terminal emulator with the shell, as these
are two distinct things.



Re: Terminal emulators can't read .profile

2012-12-13 Thread Feng Zhou
I confirm that putting "URxvt.loginShell:true" into ~/.Xdefaults works for 
urxvt. Sorry I didn't get to reply earlier.

I searched the FAQ after you mentioned it and it indeed is documented in 
section 8.16. But I didn't think of it and didn't know enough to know what 
keywords to search in the beginning. 

However, st doesn't seem to be able to read .profile with "st.loginShell:true". 
 If anyone knows why, it'd be great if you let me know. I know nothing about 
xorg.

Nonetheless, I'm happy to have gotten urxvt working. Thank you very much all 
for your help.

Feng

On 13/12/2012, at 8:52 PM, Jamie Paul Griffin  wrote:

> * MERIGHI Marcus  [2012-12-10 12:48:26 +0100]:
> 
>> f...@zhou.es (Feng Zhou), 2012.12.10 (Mon) 12:02 (CET):
>>> I was trying out st and urxvt as a replacement for xterm, and it
>>> turned out that all the settings I put in ~/.profile are not
>>> recognised when I use either st or urxvt. 
>>> 
>>> Is this a bug or an expected behaviour that I need to do something
>>> about to use other terminals? The shell was not changed, it was the
>>> default ksh. At first I thought it was a problem of st, but it
>>> happened to urxvt too. So I thought it's best to ask here. Any help is
>>> much appreciated.
>> 
>> I am guessing here, but from the times I used rxvt there's still:
>> 
>> Rxvt*loginShell: TRUE
>> 
>> in my .Xdefaults.
>> 
>> Bye, Marcus
> 
> I use urxvt with cwm. You need to to use the ~/.Xdefaults file as others have 
> suggested:
> 
> URxvt.loginShell:true
> ...
> 
> This will solve your problem. BTW, it's documented on the FAQ I believe. 
> 
> Jamie



Re: Terminal emulators can't read .profile

2012-12-13 Thread Jamie Paul Griffin
* MERIGHI Marcus  [2012-12-10 12:48:26 +0100]:

> f...@zhou.es (Feng Zhou), 2012.12.10 (Mon) 12:02 (CET):
> > I was trying out st and urxvt as a replacement for xterm, and it
> > turned out that all the settings I put in ~/.profile are not
> > recognised when I use either st or urxvt. 
> > 
> > Is this a bug or an expected behaviour that I need to do something
> > about to use other terminals? The shell was not changed, it was the
> > default ksh. At first I thought it was a problem of st, but it
> > happened to urxvt too. So I thought it's best to ask here. Any help is
> > much appreciated.
> 
> I am guessing here, but from the times I used rxvt there's still:
> 
> Rxvt*loginShell: TRUE
> 
> in my .Xdefaults.
> 
> Bye, Marcus

I use urxvt with cwm. You need to to use the ~/.Xdefaults file as others have 
suggested:

URxvt.loginShell:true
...

This will solve your problem. BTW, it's documented on the FAQ I believe. 

Jamie



Re: Terminal emulators can't read .profile

2012-12-11 Thread Francisco Valladolid H.
Hi

On Tue, Dec 11, 2012 at 11:40 PM, Sachidananda Urs wrote:

> On 12/10/2012 04:32 PM, Feng Zhou wrote:
>
>> Hi,
>>
>> I was trying out st and urxvt as a replacement for xterm, and it turned
>> out that all the settings I put in ~/.profile are not recognised when I use
>> either st or urxvt.
>>
>> Is this a bug or an expected behaviour that I need to do something about
>> to use other terminals? The shell was not changed, it was the default ksh.
>> At first I thought it was a problem of st, but it happened to urxvt too. So
>> I thought it's best to ask here. Any help is much appreciated.
>>
>
You maybe need run $ urxvt -ls  or put  URxvt*loginShell: true  in
.Xdefaults file.

Regards.



>  Try putting them in .kshrc, this the file that is read by terminal
> emulators.
>
>


-- 
Francisco Valladolid H.
 -- http://blog.bsdguy.net - Jesus Christ follower.



Re: Terminal emulators can't read .profile

2012-12-11 Thread Philip Guenther
On Tue, Dec 11, 2012 at 9:40 PM, Sachidananda Urs  wrote:
> Try putting them in .kshrc, this the file that is read by terminal
> emulators.

Nope.  ~/.kshrc isn't special to the shell or to terminal emulators.
It *is* a traditional value for the ENV environment variable, but for
that to have any effect on a non-login shell started by a terminal
emulator, the ENV variable has to be set in the environment of the
terminal emulator.

Philip Guenther



Re: Terminal emulators can't read .profile

2012-12-11 Thread Sachidananda Urs

On 12/10/2012 04:32 PM, Feng Zhou wrote:

Hi,

I was trying out st and urxvt as a replacement for xterm, and it turned out 
that all the settings I put in ~/.profile are not recognised when I use either 
st or urxvt.

Is this a bug or an expected behaviour that I need to do something about to use 
other terminals? The shell was not changed, it was the default ksh. At first I 
thought it was a problem of st, but it happened to urxvt too. So I thought it's 
best to ask here. Any help is much appreciated.
Try putting them in .kshrc, this the file that is read by terminal 
emulators.




Re: Terminal emulators can't read .profile

2012-12-10 Thread Dustin Fechner
On 12/10/2012 12:02 PM, Feng Zhou wrote:
> I was trying out st and urxvt as a replacement for xterm, and it
> turned out that all the settings I put in ~/.profile are not
> recognised when I use either st or urxvt.

Have you set up st/urxvt so that they start a login shell?



Re: Terminal emulators can't read .profile

2012-12-10 Thread MERIGHI Marcus
f...@zhou.es (Feng Zhou), 2012.12.10 (Mon) 12:02 (CET):
> I was trying out st and urxvt as a replacement for xterm, and it
> turned out that all the settings I put in ~/.profile are not
> recognised when I use either st or urxvt. 
> 
> Is this a bug or an expected behaviour that I need to do something
> about to use other terminals? The shell was not changed, it was the
> default ksh. At first I thought it was a problem of st, but it
> happened to urxvt too. So I thought it's best to ask here. Any help is
> much appreciated.

I am guessing here, but from the times I used rxvt there's still:

Rxvt*loginShell: TRUE

in my .Xdefaults.

Bye, Marcus

> !DSPAM:50c5c16d184522009013524!