Neat, although I believe directly looking at the PATH variable is more
portable. It works on all Unices as well as Windows.

Regards,
Elias


On 2 July 2014 23:54, Blake McBride <blake1...@gmail.com> wrote:

> I found this for Unix/Linux systems:
>
>
> #include <unistd.h>#include <sys/types.h>#include <pwd.h>
> struct passwd *pw = getpwuid(getuid());
> const char *homedir = pw->pw_dir;
>
>
>
>
> On Wed, Jul 2, 2014 at 10:44 AM, Elias Mårtenson <loke...@gmail.com>
> wrote:
>
>> I have to agree with Blake here. Ideally there should be a call to
>> getenv("HOME") and if that returns non-NULL, then use the .apl_history
>> in $HOME/.apl/apl_history or something like that.
>>
>> If it returns NULL, well, then fall back to current directory I suppose.
>>
>> I could make the Emacs mode use the same file, so that th ehistory is
>> shared between emacs and non-emacs sessions.
>>
>> Regards,
>> Elias
>>
>>
>> On 2 July 2014 23:41, Blake McBride <blake1...@gmail.com> wrote:
>>
>>> Dear Juergen,
>>>
>>> If you have trouble reliably finding the home directory, how do you find
>>> the preferences file?
>>>
>>> I would say to find the .apl.history file in the same way and place you
>>> find the .gnu-apl directory.  That would be consistent.
>>>
>>> The problem I am having is that since I use GNU APL from the command
>>> line, every time I start GNU APL up, I first have to check the directory I
>>> am in, otherwise I get a bunch of random .apl.history files all over the
>>> place.
>>>
>>> I understand that I can fix the problem in my preferences file, but now
>>> I have to remember to potentially edit that file for each user or machine I
>>> am on to account for the different home directory.  I don't have to do that
>>> with my .gnu-emacs file.
>>>
>>> Either way is fine.  Just sharing my opinion.
>>>
>>> Thanks!
>>>
>>> Blake
>>>
>>>
>>>
>>> On Wed, Jul 2, 2014 at 9:52 AM, Juergen Sauermann <
>>> juergen.sauerm...@t-online.de> wrote:
>>>
>>>>  Hi Blake,
>>>>
>>>> yes. The problem with that is that it requires the presence of a home
>>>> directory.
>>>>
>>>> There are use cases like scripting where the interpreter cannot figure
>>>> where the
>>>> home directory is located and my strategy is to depend on as few
>>>> environment
>>>> variables (like $HOME or $PWD) as possible.
>>>>
>>>> Note that ~ is a shell convention and not a file system property so
>>>> that ~/.apl.history
>>>> or $HOME/.apl.history may fail under certain circumstances.
>>>>
>>>> /// Jürgen
>>>>
>>>>
>>>>
>>>> On 07/02/2014 04:25 PM, Blake McBride wrote:
>>>>
>>>> Dear Juergen,
>>>>
>>>>  Thanks.  I can do that, but every other Linux program I have ever
>>>> used, although it may allow me to specify a config file location as you do,
>>>> the default is always in the home directory.
>>>>
>>>>  Thanks.
>>>>
>>>>  Blake
>>>>
>>>>
>>>>
>>>> On Wed, Jul 2, 2014 at 6:24 AM, Juergen Sauermann <
>>>> juergen.sauerm...@t-online.de> wrote:
>>>>
>>>>> Hi Blake,
>>>>>
>>>>> you can set the path in the preferences files:
>>>>>
>>>>> READLINE_HISTORY_PATH = /home/...
>>>>>
>>>>> /// Jürgen
>>>>>
>>>>>
>>>>>
>>>>> On 07/01/2014 11:14 PM, Blake McBride wrote:
>>>>>
>>>>>> GNU APL creates a .apl.history in whatever directory APL is started
>>>>>> up in.  This is unlike all other system I've seen, and a problem when you
>>>>>> don't start APL in the same directory each time.  I think rather than
>>>>>> .apl.history, the system should use ~/.apl.history
>>>>>> In other words keep in the home directory.
>>>>>>
>>>>>> Thanks.
>>>>>>
>>>>>> Blake
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>
>>
>

Reply via email to