Right, however, I thought it may be useful to have this convention by 
default. The benefit being that you don't have to directly couple this 
functionality to the ~/.juliarc.jl file if deploying a Julia repository to 
a new machine or a cluster.

On Wednesday, June 11, 2014 3:07:05 AM UTC-4, Stefan Karpinski wrote:
>
> You can easily add this to your ~/.juliarc.jl file and then it does 
> happen, no?
>
>
> On Wed, Jun 11, 2014 at 2:26 AM, Aerlinger <[email protected] 
> <javascript:>> wrote:
>
>> Often when working on projects I find it's common to do certain 
>> initializations when Julia starts. This generally includes setting certain 
>> configurations, declaring environment variables, setting up connections etc 
>> before my code begins to run. Basically, something that looks like this:
>>
>> if isfile("some_initializer.jl")
>>    # ...
>> end
>>
>> Wouldn't it be more convenient to have a convention where Julia checks 
>> for the existence of a runtime configuration .juliarc.jl file in the 
>> working directory and executes it at startup if it exists? Other languages 
>> and interactive environments such as R (.Rprofile) have implemented this 
>> capability and can be very useful.
>>
>> It's not terribly difficult to implement, either. The following code 
>> recursively traverses up the directory structure calling any .juliarc.jl 
>> configuration files it encounters in reverse order:
>>
>> function loadrc(path::String)
>>   if (path == ENV["HOME"] || path == "/")
>>     return ""
>>   end
>>
>>   loadrc(dirname(path))
>>   juliarc = joinpath(path, ".juliarc.jl")
>>
>>   if isfile(juliarc)
>>     println("Loading config file:", juliarc)
>>     include(juliarc)
>>   end
>> end
>>
>> loadrc(pwd())
>>  
>> Perhaps this should be done by default?
>>
>
>

Reply via email to