alexander-hanel / msdocsviewer Goto Github PK
View Code? Open in Web Editor NEWmsdocsviewer is a simple tool that parses Microsoft's win32 API and driver documentation to be used within IDA.
msdocsviewer is a simple tool that parses Microsoft's win32 API and driver documentation to be used within IDA.
Hi, thanks for the great work!
The slash used in
Line 15 in 19b80a3
/
rather than \\
. So it'd be compatible for Linux or macOS./
seems to work in my case.
Btw, it'd be great if you could release a version for apis_md
, since I'm not sure what I generated is the full coverage.
When you parse the md's you split on ---
:
https://github.com/alexander-hanel/msdocsviewer/blob/main/run_me_first.py#L39
Later you make the assumption that data_split[2]
has the rest of the md:
https://github.com/alexander-hanel/msdocsviewer/blob/main/run_me_first.py#L61
But this doesn't work because if the md has flag values then those are represented as a table which uses the following markdown:
| Flag | Meaning |
| ---- | ------- |
So you end up capturing only the rest of the md up to the first instance of any flag values that may exist. You can see an example here:
git config -f .gitmodules submodule.sdk-api.shallow true
i have already modified this function
def OnClose(self, form):
"""
Called when the widget is closed
"""
global frm
global started
del frm
started = False
Then,
Failed while executing plugin_t.run():
Traceback (most recent call last):
File "h:/tools/IDA 7.6/IDA Pro 7.6/plugins/msdocviewida.py", line 110, in run
frm.load_markdown()
File "h:/tools/IDA 7.6/IDA Pro 7.6/plugins/msdocviewida.py", line 73, in load_markdown
self.markdown_viewer.setMarkdown(api_markdown)
AttributeError: 'QTextEdit' object has no attribute 'setMarkdown'
didn't you mean to use the github.com/MicrosoftDocs/win… repo for driver docs instead? The one you link is for conceptual, not API documentation.
in readme.md file:
Should be: "cd msdocsviwer", not "cd msdocviwer"
Great plugin, tks you
Use github action to automatically run run_me_first.py to get the documentation.
name: msdocviewer-parser
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: 检出代码
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: 设置python版本
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: 安装依赖
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: 运行脚本
run: |
python run_me_first.py --overwrite
- name: 压缩文件夹
run: zip -r apis_md.zip ./apis_md
- name: upload-artifact
uses: actions/[email protected]
with:
name: apis_md.zip
path: ./apis_md.zip
- name: 发布
uses: "marvinpinto/action-automatic-releases@latest"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
prerelease: false
title: "Auto Build"
files: ./apis_md.zip
Add pyqt autocomplete option - https://pythonbasics.org/pyqt-auto-complete/
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.