How to set path in STY file as relative to this file path

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP












4















I need to write several documents (mainBook1.tex, mainBook2.tex,..), all with the same layout. So basically I moved all common settings to outer file (baseSettings.sty) extension, which is pleaced in other path from docs main TeX files. See my files tree:



 +-Documents
+-Base
| +-baseSettings.sty
| +-BaseImages
| +-headerImage.jpg
| +-footerImage.jpg
+-Book1
| +-mainBook1.tex
+-Book2
+-mainBook2.tex


mainBook1.tex:



documentclass[12pt]article
usepackageimport
usepackage../Base/baseSettings
begindocument
...


baseSettings.sty:



ProvidesPackagebaseSettings
usepackagegeometry
newgeometrymargin=2.0cm, bottom=3.5cm, top=2.5cm
usepackage...
% HEADER AND FOOTER:
rheadincludegraphics[scale=0.3]BaseImages/headerImage.jpg
rfootincludegraphics[scale=0.2,valign=c]BaseImages/footerImage.jpg
...


And problem is, that those .jpg files cant be found. If I move folder BaseImages into Book1 folder, everything works fine. But I would like to have base images stored only once.



So the question is: How to set those paths in .sty file as relative from this file?



I use: MiKTeX with TeXworks. I just press the Typeset button to create PDFs – I'm not familiar wih all the magic behind.



Is it possible to compile it with command?










share|improve this question



















  • 3





    Set the TEXINPUTS environment variable to ssomething ../Base;../Base/BaseImages; and then you should be able to use usepackagebaseSettings and the images will work. See tex.stackexchange.com/questions/149714/….

    – Andrew
    Mar 7 at 7:03
















4















I need to write several documents (mainBook1.tex, mainBook2.tex,..), all with the same layout. So basically I moved all common settings to outer file (baseSettings.sty) extension, which is pleaced in other path from docs main TeX files. See my files tree:



 +-Documents
+-Base
| +-baseSettings.sty
| +-BaseImages
| +-headerImage.jpg
| +-footerImage.jpg
+-Book1
| +-mainBook1.tex
+-Book2
+-mainBook2.tex


mainBook1.tex:



documentclass[12pt]article
usepackageimport
usepackage../Base/baseSettings
begindocument
...


baseSettings.sty:



ProvidesPackagebaseSettings
usepackagegeometry
newgeometrymargin=2.0cm, bottom=3.5cm, top=2.5cm
usepackage...
% HEADER AND FOOTER:
rheadincludegraphics[scale=0.3]BaseImages/headerImage.jpg
rfootincludegraphics[scale=0.2,valign=c]BaseImages/footerImage.jpg
...


And problem is, that those .jpg files cant be found. If I move folder BaseImages into Book1 folder, everything works fine. But I would like to have base images stored only once.



So the question is: How to set those paths in .sty file as relative from this file?



I use: MiKTeX with TeXworks. I just press the Typeset button to create PDFs – I'm not familiar wih all the magic behind.



Is it possible to compile it with command?










share|improve this question



















  • 3





    Set the TEXINPUTS environment variable to ssomething ../Base;../Base/BaseImages; and then you should be able to use usepackagebaseSettings and the images will work. See tex.stackexchange.com/questions/149714/….

    – Andrew
    Mar 7 at 7:03














4












4








4








I need to write several documents (mainBook1.tex, mainBook2.tex,..), all with the same layout. So basically I moved all common settings to outer file (baseSettings.sty) extension, which is pleaced in other path from docs main TeX files. See my files tree:



 +-Documents
+-Base
| +-baseSettings.sty
| +-BaseImages
| +-headerImage.jpg
| +-footerImage.jpg
+-Book1
| +-mainBook1.tex
+-Book2
+-mainBook2.tex


mainBook1.tex:



documentclass[12pt]article
usepackageimport
usepackage../Base/baseSettings
begindocument
...


baseSettings.sty:



ProvidesPackagebaseSettings
usepackagegeometry
newgeometrymargin=2.0cm, bottom=3.5cm, top=2.5cm
usepackage...
% HEADER AND FOOTER:
rheadincludegraphics[scale=0.3]BaseImages/headerImage.jpg
rfootincludegraphics[scale=0.2,valign=c]BaseImages/footerImage.jpg
...


And problem is, that those .jpg files cant be found. If I move folder BaseImages into Book1 folder, everything works fine. But I would like to have base images stored only once.



So the question is: How to set those paths in .sty file as relative from this file?



I use: MiKTeX with TeXworks. I just press the Typeset button to create PDFs – I'm not familiar wih all the magic behind.



Is it possible to compile it with command?










share|improve this question
















I need to write several documents (mainBook1.tex, mainBook2.tex,..), all with the same layout. So basically I moved all common settings to outer file (baseSettings.sty) extension, which is pleaced in other path from docs main TeX files. See my files tree:



 +-Documents
+-Base
| +-baseSettings.sty
| +-BaseImages
| +-headerImage.jpg
| +-footerImage.jpg
+-Book1
| +-mainBook1.tex
+-Book2
+-mainBook2.tex


mainBook1.tex:



documentclass[12pt]article
usepackageimport
usepackage../Base/baseSettings
begindocument
...


baseSettings.sty:



ProvidesPackagebaseSettings
usepackagegeometry
newgeometrymargin=2.0cm, bottom=3.5cm, top=2.5cm
usepackage...
% HEADER AND FOOTER:
rheadincludegraphics[scale=0.3]BaseImages/headerImage.jpg
rfootincludegraphics[scale=0.2,valign=c]BaseImages/footerImage.jpg
...


And problem is, that those .jpg files cant be found. If I move folder BaseImages into Book1 folder, everything works fine. But I would like to have base images stored only once.



So the question is: How to set those paths in .sty file as relative from this file?



I use: MiKTeX with TeXworks. I just press the Typeset button to create PDFs – I'm not familiar wih all the magic behind.



Is it possible to compile it with command?







packages relative






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 7 at 11:52









JouleV

10.5k22559




10.5k22559










asked Mar 7 at 6:55









pi.314pi.314

1213




1213







  • 3





    Set the TEXINPUTS environment variable to ssomething ../Base;../Base/BaseImages; and then you should be able to use usepackagebaseSettings and the images will work. See tex.stackexchange.com/questions/149714/….

    – Andrew
    Mar 7 at 7:03













  • 3





    Set the TEXINPUTS environment variable to ssomething ../Base;../Base/BaseImages; and then you should be able to use usepackagebaseSettings and the images will work. See tex.stackexchange.com/questions/149714/….

    – Andrew
    Mar 7 at 7:03








3




3





Set the TEXINPUTS environment variable to ssomething ../Base;../Base/BaseImages; and then you should be able to use usepackagebaseSettings and the images will work. See tex.stackexchange.com/questions/149714/….

– Andrew
Mar 7 at 7:03






Set the TEXINPUTS environment variable to ssomething ../Base;../Base/BaseImages; and then you should be able to use usepackagebaseSettings and the images will work. See tex.stackexchange.com/questions/149714/….

– Andrew
Mar 7 at 7:03











1 Answer
1






active

oldest

votes


















6














You should never use a path with usepackage just use usepackagebaseSettings and it's usually more portable to omit the path from includegraphics as well, so includegraphics[scale=0.3]headerImage then just arrange that Base// is in the tex input path and any files anywhere below that will be found.



 TEXINPUTS=Base//: pdflatex mainBook1


would work for example if you have a bash or similar command line, but normally you would set the default TEXINPUTS elsewhere.






share|improve this answer























    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "85"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f478141%2fhow-to-set-path-in-sty-file-as-relative-to-this-file-path%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    6














    You should never use a path with usepackage just use usepackagebaseSettings and it's usually more portable to omit the path from includegraphics as well, so includegraphics[scale=0.3]headerImage then just arrange that Base// is in the tex input path and any files anywhere below that will be found.



     TEXINPUTS=Base//: pdflatex mainBook1


    would work for example if you have a bash or similar command line, but normally you would set the default TEXINPUTS elsewhere.






    share|improve this answer



























      6














      You should never use a path with usepackage just use usepackagebaseSettings and it's usually more portable to omit the path from includegraphics as well, so includegraphics[scale=0.3]headerImage then just arrange that Base// is in the tex input path and any files anywhere below that will be found.



       TEXINPUTS=Base//: pdflatex mainBook1


      would work for example if you have a bash or similar command line, but normally you would set the default TEXINPUTS elsewhere.






      share|improve this answer

























        6












        6








        6







        You should never use a path with usepackage just use usepackagebaseSettings and it's usually more portable to omit the path from includegraphics as well, so includegraphics[scale=0.3]headerImage then just arrange that Base// is in the tex input path and any files anywhere below that will be found.



         TEXINPUTS=Base//: pdflatex mainBook1


        would work for example if you have a bash or similar command line, but normally you would set the default TEXINPUTS elsewhere.






        share|improve this answer













        You should never use a path with usepackage just use usepackagebaseSettings and it's usually more portable to omit the path from includegraphics as well, so includegraphics[scale=0.3]headerImage then just arrange that Base// is in the tex input path and any files anywhere below that will be found.



         TEXINPUTS=Base//: pdflatex mainBook1


        would work for example if you have a bash or similar command line, but normally you would set the default TEXINPUTS elsewhere.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Mar 7 at 7:46









        David CarlisleDavid Carlisle

        497k4111441891




        497k4111441891



























            draft saved

            draft discarded
















































            Thanks for contributing an answer to TeX - LaTeX Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f478141%2fhow-to-set-path-in-sty-file-as-relative-to-this-file-path%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown






            Popular posts from this blog

            Peggy Mitchell

            Palaiologos

            The Forum (Inglewood, California)