Comments (5)
Hello @keisuke-nakata
- Your request is highly similar to this other request: elarivie/atom-python-linters#6 (comment)
The solution is to create a python wrapper script which embed the logic for your specific use case.
- When editing the linter-mypy settings for the Python Executable Path you have the possibility to use the variables
$PROJECT_PATH
and$PROJECT_NAME
so you can specify different executable per project using those
Using the above two points you can adapt python calls to your specific use case
Note: linter-mypy does not have the concept of default python but this could be a logic that you implement in a python wrapper script.
Let me know if it solves your issue
from linter-mypy.
@elarivie
Great! It looks pretty smart, however, on my Atom, $PROJECT_NAME
was not available in the wrapper script.
It seems that the $PROJECT_NAME
is only used for resolving Python Executable Path
itself and not passed into the Python Executable
.
from linter-mypy.
I tried setting PROJECT_NAME=$PROJECT_NAME /some/path/to/pythonwrapper.sh
as Python Executable Path
, but it didn't work. (linter-mypy regards it as a command containing a space)
from linter-mypy.
I never think this is the optimal, but setting some/path/to/pythonwrapper.sh
as Python Executable Path
and $PROJECT_NAME
as Mypy Path
worked.
(Because I'm not using MYPYPATH
right now 🙄 )
pythonwrapper.sh
:
#!/bin/sh
PROJECT_NAME=$MYPYPATH
unset $MYPYPATH
PYENVDIR="/Users/keisuke.nakata/.pyenv/versions/${PROJECT_NAME}"
if [ -d ${PYENVDIR} ]; then
PYTHONEXECUTABLE=${PYENVDIR}/bin/python
else
PYTHONEXECUTABLE=python
fi
$PYTHONEXECUTABLE "$@"
exit $?
from linter-mypy.
Hello @keisuke-nakata,
I am glad that you now have a solution for your specific use case.
About MYPYPATH, if you ever need it you'll be able to add it directly within the wrapper script just before calling the real python executable.
from linter-mypy.
Related Issues (20)
- Feature request: Add $PROJECT_PATH and $PROJECT_NAME resolution for MYPYPATH setting. HOT 3
- Add option to only check repos where mypy.ini is present HOT 3
- Object.dirname is deprecated. HOT 2
- Doesn't find imports >= 5 levels deep HOT 1
- Can you expose the option of specifying a cache folder HOT 7
- Unable to find installed modules HOT 3
- UnicodeEncodeError HOT 1
- Does not seem to work with pipenv HOT 2
- Can't detect mypy anymore HOT 9
- linter-mypy generating many duplicate errors HOT 2
- Read settings from setup.cfg HOT 2
- Does not recognise typed_ast package HOT 5
- Errors are shown on incorrect files HOT 3
- Option to start the mypy process from the (Atom) project directory? HOT 3
- Package is showing internal mypy errors although turned off HOT 6
- Are mypy plugins supported ? HOT 5
- Unable to find mypy, despite correct $PATH and settings HOT 3
- How can I set $MYPYPATH so that the linter will pick up on it? HOT 1
- $PROJECT_NAME is invalid in case project folder contains dot. HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from linter-mypy.