GithubHelp home page GithubHelp logo

Comments (12)

djl avatar djl commented on August 29, 2024

Agreed. I have no idea why I waited so long to do this.

Fixed in b837454 :)

from vcprompt.

jjb avatar jjb commented on August 29, 2024

sweet! although i just ran it again and the man pages weren't installed. maybe because easy_install didn't see a new version. (i'm a python newbie...)

from vcprompt.

djl avatar djl commented on August 29, 2024

Ah, yeah. Since I didn't bump the version number, easy_install thinks it hasn't been updated.

Manually running python setup.py install (and possibly easy_install -U) will install/update the manpages :)

from vcprompt.

jjb avatar jjb commented on August 29, 2024

Thanks.

Seems like it's still not working for me -- might be because of OS X's atypical python setup?

± sudo python setup.py install git:master:(unknown) running install running build running build_scripts running install_scripts changing mode of /usr/local/bin/vcprompt to 755 running install_data creating /System/Library/Frameworks/Python.framework/Versions/2.6/man creating /System/Library/Frameworks/Python.framework/Versions/2.6/man/man1 copying man/vcprompt.1 -> /System/Library/Frameworks/Python.framework/Versions/2.6/man/man1 creating /System/Library/Frameworks/Python.framework/Versions/2.6/man/man5 copying man/vcprompt.5 -> /System/Library/Frameworks/Python.framework/Versions/2.6/man/man5 running install_egg_info Writing /Library/Python/2.6/site-packages/vcprompt-vcprompt.0.1.4-py2.6.egg-info /Users/john/src/vcprompt ± man vcprompt git:master:(unknown) No manual entry for vcprompt

from vcprompt.

jjb avatar jjb commented on August 29, 2024

(ignore the "git:master:(unknown)" bit on that first line -- that's something from my prompt)

from vcprompt.

djl avatar djl commented on August 29, 2024

/System/Library/Frameworks/Python.framework/Versions/2.6/man/ probably isn't on your $MANPATH.

What does echo $MANPATH return?

from vcprompt.

jjb avatar jjb commented on August 29, 2024

it's empty!

from vcprompt.

jjb avatar jjb commented on August 29, 2024

(but manpages work for most/all other things… i guess i need to manually add that to my manpath? is there a more standard place that the manpages can be placed? /usr/local/man?)

from vcprompt.

djl avatar djl commented on August 29, 2024

Now I remember why I wasn't distributing manpages with setup.py (and to a lesser extent, why there was no mention of it in the README). There's no ideal way of doing it.

Two ways immediately spring to mind:

  1. Have setup.py do what it does now and adding them to /<sys.exec_prefix>/man.
  2. Place manpages into /usr/local/man.

The first option is the easiest and is what some packages (nose and Bazaar, for example) already do. The downside is that this probably isn't on most people's MANPATH.

The second is the most 'standard' but assumes that everyone always installs packages with sudo and always to the default Python packages directory. I haven't tested, but I assume this would also break installing things into a virtualenv.

Personally, I never install anything outside of my own home directory so I'm not in favour of this way.

Another idea would be to write a custom distutils command which prompts for where to install manpages. Something like:

$ python setup.py install-manpages [-p /some/path/]
Path to install manpages [<sys.exec_prefix>]:

This is definitely not standard but would be flexible enough to suit everyone.

But, on the other hand, most people who actually know what manpages are and how to use them probably know how to install them manually. Everyone else just looks at the built in '--help' text or looks at the online docs.

Argh. I'm either over- or under-thinking this, so if anyone else has any opinions feel free to chime in :)

from vcprompt.

jjb avatar jjb commented on August 29, 2024

Hmm, well -- in ruby land, this might be packages as a gem. There would be a standard place to put the man page. But if a particular user chose to install their gem environment in a different place (such as in their home directory), it would have a natural correlating place to put the man pages as well.

And in a straight traditional source install with configure, make, make install, everything goes under the specified prefix. the default is /usr/local, and someone might chose to use ~/ instead.

So, I think i didn't tell you anything you didn't know :) but i guess i am suggesting some notion of a prefix. Now, if there is a standard way to do this with easy_install, even better.

from vcprompt.

djl avatar djl commented on August 29, 2024

I am an idiot.

If I had installed my Python into /usr/local, the man pages would automatically go in the right place. I confused myself with my own non-standard install.

So yeah, everything works fine already. No need for my MacGyver-esque solution.

from vcprompt.

jjb avatar jjb commented on August 29, 2024

So I guess my problem is OS X's funky python location on my end.

This shows me lots of symlinks to the /System/Library/Frameworks…. paths.

ls -lF /usr/share/man/man1/ |grep '>'

so i guess those packages have to detect if the system is os x, and then manually make the symlinks… sad/annoying. not sure if there is a slicker way to do that.

anyway, enough of this madness -- thanks!

from vcprompt.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.