Comments (5)
Do you know why Intellisense can't autocomplete on OpenEXR? It sounds like a good thing to support if it doesn't require special maintenance. I don't know if anyone on the team has experience with Python and Intellisense.
from openexr.
My guess is that the file does not exist in *.py format.
For Imath it exists as Imath.py, but for OpenEXR it does not.
I created a simple python wrapper to solve this problem. I hope this project helps you in your decision making.
(https://github.com/404Vector/OpenEXR-Python?tab=readme-ov-file)
Although I haven't done much testing, I confirmed that it works well within the range I need (reading and writing files, extracting metadata, and intellisense support).
I don't know if this is the best way to support intellisense (there may be a way to expose it automatically).
However, I think OpenEXR is a very stable project.
And the number of interfaces exposed in the Python runtime environment is small.
Therefore, I think this method will also be easy to maintain.
from openexr.
Your solution does look easy to maintain, thanks for putting it together.
I'm not a Python expert, so please forgive my basic questions.
- Is this something we could incorporate into our project to solve the problem, or is it an example?
- will this benefit other systems, such as LSP, or environments like PyCharm?
- Is the problem solvable at the cpython level (or should we be investigating the problem at the c level?)
from openexr.
- Is this something we could incorporate into our project to solve the problem, or is it an example?
This is a project I created for my convenience, but since it's just a simple wrapper, I think it can be integrated into your project without any problems.
- will this benefit other systems, such as LSP, or environments like PyCharm?
As a result of the experiment, PyCharm reads the cython file and creates an OpenEXR.py file. (It automatically generates python code, just like automatically generating a document with code and comments.)
Therefore, in PyCharm, intellisense works for the methods in OpenEXR and I was able to read them.
But PyCharm failed to read the file completely.
I knew the name of each method, but I couldn't tell what the parameters were.
ex: It is written as InputFile(*args, **kwargs), so it is impossible to guess what the parameters are.
- Is the problem solvable at the cpython level (or should we be investigating the problem at the c level?)
In order for all IDEs to support this, it is assumed that the code must exist as *.py rather than solving it at the C or CPython level.
from openexr.
Thanks @404Vector !
@reinecke is there any guidance from the OpenTimelineIO project on this? I think OTIO went through a couple of iterations to get this working across the board.
from openexr.
Related Issues (20)
- Homebrew add static lib HOT 1
- missing _compress referenced in openexr v3.1.11 what should i do? HOT 1
- Linker error while installing `opencv`: Undefined symbols for architecture arm64 HOT 3
- Regression: Build fails with custom namespaces HOT 1
- Regression in v3.2.1: no longer finds -ldeflate on FreeBSD, breaks build HOT 5
- macOS: OpenEXR dylib names: changed with each release, breaking dependent binaries HOT 13
- Website fails to build on Windows HOT 5
- Imath includes shall be guarded HOT 1
- Use CMake's find_package to include libdeflate HOT 7
- Not building on Archlinux HOT 2
- Unknown type name 'uintptr_t' HOT 7
- SIGSEGV on file open error HOT 1
- NetBSD: bswap header use incorrect
- OpenEXR.cpp:1:10: fatal error: Python.h: No such file or directory in Ubuntu 18.04 and Blender Bundled Python 3.5m
- g++ -pthread -shared -L/opt/lib/bz2/lib -L/opt/lib/lzma/lib -L/opt/lib/ssl/lib -L/opt/lib/zlib/lib -L/opt/lib/libc6/lib -L/opt/lib/ncurses/lib -L/opt/lib/gpm/lib -L/opt/lib/sqlite/lib -L/opt/lib/readline/lib -Wl,--version-script=python.map build/temp.linux-x86_64-3.5/OpenEXR.o -L/usr/lib -L/usr/local/lib -L/opt/local/lib -L/opt/homebrew/opt/openexr/lib -L/opt/homebrew/opt/imath/lib -lIex -lHalf -lImath -lIlmImf -lz -o build/lib.linux-x86_64-3.5/OpenEXR.cpython-35m-x86_64-linux-gnu.so /usr/bin/ld: cannot open linker script file python.map: No such file or directory HOT 2
- /workspace/ubuntu18.04/openexr/src/wrappers/python/OpenEXR.cpp:7:10: fatal error: Python.h: No such file or directory #include <Python.h> HOT 2
- MacPorts deprecation needs to be removed HOT 2
- Imath - Remove Enumerated Class and replace with Enum Class HOT 1
- Unable to build openexr with python bindings via cmake HOT 4
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 openexr.