MProcs 9.1__tar.gz → 10.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mprocs-9.1 → mprocs-10.0}/MANIFEST.in +1 -0
- {mprocs-9.1/src/MProcs.egg-info → mprocs-10.0}/PKG-INFO +46 -5
- {mprocs-9.1 → mprocs-10.0}/README.md +45 -4
- {mprocs-9.1 → mprocs-10.0}/pyproject.toml +3 -3
- mprocs-10.0/src/MProcs/__init__.py +10 -0
- mprocs-10.0/src/MProcs/modules/flu0/__init__.py +9 -0
- mprocs-10.0/src/MProcs/modules/flu0/scripts/data_loader.py +149 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/ghostwrite.py +6 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/gwf.py +21 -9
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/lpro.py +38 -5
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/lpro_s.py +38 -5
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/theme.py +7 -4
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/tui.py +18 -5
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/version_checker.py +2 -2
- mprocs-10.0/src/MProcs/modules/hmptunnel/__init__.py +7 -0
- mprocs-10.0/src/MProcs/modules/hmptunnel/scripts/data_loader.py +154 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/gwf.py +16 -8
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/lpro.py +58 -15
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/lpro_s.py +58 -15
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/theme.py +5 -2
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/tui.py +13 -4
- mprocs-10.0/src/MProcs/modules/polyhistor/__init__.py +15 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/app.py +32 -1
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data_loader.py +112 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/technica.py +8 -2
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/theme.py +1 -1
- mprocs-10.0/src/MProcs/scripts/data/diction.json +1 -0
- mprocs-10.0/src/MProcs/scripts/data/diction_former.json +1 -0
- mprocs-10.0/src/MProcs/scripts/data_loader.py +169 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/gwf.py +11 -6
- mprocs-10.0/src/MProcs/scripts/inline_args.py +110 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/lpro.py +60 -17
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/lpro_s.py +60 -17
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/version_checker.py +2 -2
- {mprocs-9.1 → mprocs-10.0/src/MProcs.egg-info}/PKG-INFO +46 -5
- {mprocs-9.1 → mprocs-10.0}/src/MProcs.egg-info/SOURCES.txt +6 -1
- mprocs-10.0/tools/README.md +14 -0
- mprocs-10.0/tools/build_medical_diction.py +128 -0
- mprocs-10.0/tools/medical_wordlist.txt +34045 -0
- mprocs-9.1/src/MProcs/__init__.py +0 -4
- mprocs-9.1/src/MProcs/modules/flu0/__init__.py +0 -1
- mprocs-9.1/src/MProcs/modules/flu0/scripts/data_loader.py +0 -50
- mprocs-9.1/src/MProcs/modules/hmptunnel/__init__.py +0 -1
- mprocs-9.1/src/MProcs/modules/hmptunnel/scripts/data_loader.py +0 -50
- mprocs-9.1/src/MProcs/modules/polyhistor/__init__.py +0 -8
- mprocs-9.1/src/MProcs/scripts/data/diction.json +0 -1
- mprocs-9.1/src/MProcs/scripts/data_loader.py +0 -35
- {mprocs-9.1 → mprocs-10.0}/LICENSE +0 -0
- {mprocs-9.1 → mprocs-10.0}/setup.cfg +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/__main__.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/__init__.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/LICENSE +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/__init__.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/agent.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/ai_image.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/acadlist.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/ahb.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/bible1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/biology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/chemistry1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/chi_chars.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/degrees1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/dhammapada1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/diction.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/fcci.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/hospitals.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/jamo.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/katakana.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/koran1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/legal_terms1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/lexicon.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/medicals1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/mims.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/proverbs.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/psychology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/science1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/strains.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/acadlist.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/ahb.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/bible1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/biology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/chemistry1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/chi_chars.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/degrees1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/dhammapada1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/diction.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/fcci.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/hospitals.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/jamo.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/katakana.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/koran1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/legal_terms1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/medicals1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/mims.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/proverbs.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/psychology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/science1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/strains.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/tracks.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/themed/verses1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/tracks.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/data/verses1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/deepseek_ai.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/drills.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/keys.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/lexicon.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/main.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/ops.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/program.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/scmpy.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/session.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/flu0/scripts/wrappers.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/LICENSE +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/__init__.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/agent.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/ai_image.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/acadlist.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/ahb.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/bible1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/biology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/chemistry1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/chi_chars.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/degrees1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/dhammapada1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/diction.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/fcci.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/hospitals.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/jamo.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/katakana.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/koran1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/legal_terms1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/medicals1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/mims.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/proverbs.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/psychology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/science1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/strains.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/acadlist.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/ahb.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/bible1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/biology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/chemistry1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/chi_chars.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/degrees1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/dhammapada1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/diction.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/fcci.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/hospitals.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/jamo.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/katakana.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/koran1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/legal_terms1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/medicals1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/mims.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/proverbs.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/psychology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/science1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/strains.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/tracks.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/themed/verses1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/tracks.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/data/verses1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/deepseek_ai.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/keys.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/main.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/scmpy.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/session.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/version_checker.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/hmptunnel/scripts/wrappers.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/LICENSE +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/__main__.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/agent.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/content/__init__.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/content/almanac.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/content/domains.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/content/domains_applied.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/content/encyclopedia.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/content/lexicon.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/content/people.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/content/sources.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/content/timeline.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/acadlist.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/ahb.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/bible1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/biology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/chemistry1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/chi_chars.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/degrees1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/dhammapada1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/diction.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/diction_raw.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/fcci.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/hospitals.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/jamo.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/katakana.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/koran1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/legal_terms1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/manifest.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/medicals1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/mims.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/proverbs.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/psychology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/science1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/data/verses1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/knowledge.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/modules/polyhistor/py.typed +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/__init__.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/ai_image.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/acadlist.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/ahb.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/bible1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/biology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/chemistry1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/chi_chars.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/degrees1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/dhammapada1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/fcci.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/hospitals.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/jamo.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/katakana.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/koran1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/legal_terms1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/medicals1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/mims.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/proverbs.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/psychology1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/science1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/strains.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/tracks.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/data/verses1.json +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/deepseek_ai.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/keys.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/main.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/native.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/scmpy.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/session.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/tui.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs/scripts/wrappers.py +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs.egg-info/dependency_links.txt +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs.egg-info/entry_points.txt +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs.egg-info/requires.txt +0 -0
- {mprocs-9.1 → mprocs-10.0}/src/MProcs.egg-info/top_level.txt +0 -0
|
@@ -5,6 +5,7 @@ recursive-include src/MProcs/modules *.json
|
|
|
5
5
|
recursive-include src/MProcs/modules *.txt
|
|
6
6
|
recursive-include src/MProcs/modules *.md
|
|
7
7
|
recursive-include src/MProcs/modules LICENSE
|
|
8
|
+
recursive-include tools *.py *.txt *.md
|
|
8
9
|
include src/MProcs/modules/polyhistor/py.typed
|
|
9
10
|
global-exclude __pycache__
|
|
10
11
|
global-exclude *.pyc
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: MProcs
|
|
3
|
-
Version:
|
|
3
|
+
Version: 10.0
|
|
4
4
|
Summary: MProcs // Terminal Suite - MProcs, POLYHISTOR, FLU0 and JADE//WIRE in one launcher
|
|
5
5
|
Author-email: tderk <usvu.tech@gmail.com>
|
|
6
6
|
License: MIT
|
|
@@ -19,7 +19,7 @@ Dynamic: license-file
|
|
|
19
19
|
|
|
20
20
|
Derived from NeonBunny. A Life program by tderk, originally LPro.py and Destiny [2024].
|
|
21
21
|
|
|
22
|
-
## MProcs // Terminal Suite (
|
|
22
|
+
## MProcs // Terminal Suite (14 / app 10.0)
|
|
23
23
|
|
|
24
24
|
MProcs is now a single, self-contained launcher for every terminal in the
|
|
25
25
|
suite. Nothing is looked up on PyPI, nothing is downloaded at startup, and the
|
|
@@ -151,7 +151,7 @@ Fix applied vs. original PyPI sdist: moved `dependencies = ["requests","ddgs"]`
|
|
|
151
151
|
```bash
|
|
152
152
|
# from this directory (/home/kredt/BDCS/MProcs)
|
|
153
153
|
pip install --upgrade build twine
|
|
154
|
-
python -m build # creates dist/mprocs-
|
|
154
|
+
python -m build # creates dist/mprocs-10.0.tar.gz + .whl
|
|
155
155
|
# or
|
|
156
156
|
pip wheel . --no-deps
|
|
157
157
|
pip install dist/mprocs-*.whl # test install
|
|
@@ -287,7 +287,7 @@ Display full article from source header? (enter header/title/id or n): agent-tra
|
|
|
287
287
|
terminal summary.
|
|
288
288
|
- `MProcs --list`, `MProcs --version` and `MProcs --help` are available without
|
|
289
289
|
starting the TUI.
|
|
290
|
-
- `pyproject.toml` application version `
|
|
290
|
+
- `pyproject.toml` application version `10.0` (suite version `14`); package data includes every terminal data
|
|
291
291
|
directory.
|
|
292
292
|
|
|
293
293
|
**Layout:** `src/MProcs/modules/{polyhistor,flu0,hmptunnel}`.
|
|
@@ -343,8 +343,49 @@ PASSED.
|
|
|
343
343
|
between blank lines.
|
|
344
344
|
- **Wording:** removed previous integration labels from the UI, package description and
|
|
345
345
|
documentation.
|
|
346
|
-
- **Versions:** MProcs `
|
|
346
|
+
- **Versions:** MProcs `14`; application package `10.0`.
|
|
347
347
|
|
|
348
348
|
**Verified:** 256-colour POLYHISTOR output and spacing, FLU0/JADE//WIRE boards
|
|
349
349
|
with rails/frame, both GWFs, nested Esc/Ctrl-G navigation, update screen and
|
|
350
350
|
SOP, `MProcs --user`, responsive resize, and `twine check`.
|
|
351
|
+
|
|
352
|
+
---
|
|
353
|
+
## Update — Medical diction + switchable lexicons + inline arguments
|
|
354
|
+
|
|
355
|
+
- **Default diction:** `src/MProcs/scripts/data/diction.json` is now a
|
|
356
|
+
39,032-entry medical vocabulary (same size as the former English list).
|
|
357
|
+
It combines the PubMed word-frequency corpus with vocabulary mined from
|
|
358
|
+
`medicals1`, `mims`, `biology1`, `chemistry1`, `psychology1` and `science1`.
|
|
359
|
+
The former list is preserved as `diction_former.json`.
|
|
360
|
+
- **Diction switch:** `data_loader.switch_diction(source)` changes the live
|
|
361
|
+
`diction` list in place. Available sources for MProcs are `medical`
|
|
362
|
+
(default), `former`, `polyhistor`, `flu0` (themed), `flu0-raw`,
|
|
363
|
+
`hmptunnel` (themed) and `hmptunnel-raw`. It is also re-exported as
|
|
364
|
+
`MProcs.switch_diction`.
|
|
365
|
+
From the terminal: `diction former`, `diction polyhistor`, etc. With no
|
|
366
|
+
argument it lists the sources and prompts.
|
|
367
|
+
- **Other terminals:** POLYHISTOR, FLU0 and JADE//WIRE each expose the same
|
|
368
|
+
runtime `diction` switch and inline-value handling. Their own vocabularies
|
|
369
|
+
remain their defaults; the medical list is never made their default.
|
|
370
|
+
POLYHISTOR uses `diction switch <source>` (or `diction <source>`); FLU0 and
|
|
371
|
+
JADE//WIRE use the same `diction <source>` command as MProcs.
|
|
372
|
+
- **Inline arguments:** commands that ask for a value accept it on the same
|
|
373
|
+
line, following the existing `user AAPL` pattern. Examples:
|
|
374
|
+
`medicals 5`, `MIMS 2`, `search blood pressure`, `cd /tmp`,
|
|
375
|
+
`nano chars korean`, `tag foo`, `diction flu0`. The command's first prompt
|
|
376
|
+
consumes the inline value; any remaining prompts continue interactively.
|
|
377
|
+
- **FLU0 diction = ghostwrite wordlist:** selecting `flu0` as the diction
|
|
378
|
+
loads FLU0's actual ghostwrite wordlist into the switchable pool used by
|
|
379
|
+
**ghostwrite and IGW only**: `modules/flu0/scripts/data/lexicon.json`
|
|
380
|
+
(first word of each entry, multi-word entries skipped). FLU0's main
|
|
381
|
+
`diction` list — used by nano, tag, GWF and the rest — stays unchanged.
|
|
382
|
+
In MProcs, POLYHISTOR and JADE//WIRE the same `flu0` source loads that
|
|
383
|
+
wordlist into the live diction.
|
|
384
|
+
- **`flu0` command:** MProcs, POLYHISTOR and JADE//WIRE now have a `flu0`
|
|
385
|
+
function/command that runs the same `nano` burst as the host terminal but
|
|
386
|
+
samples FLU0's nano wordlist (`modules/flu0/scripts/data/themed/diction.json`).
|
|
387
|
+
FLU0 itself accepts `flu0` as an alias for its own `nano`.
|
|
388
|
+
- **`+` / `+N`:** all terminals accept `+` for continuous ghostwrite and
|
|
389
|
+
`+N` for N instant ghostwrite lines, matching FLU0's IGW shorthand.
|
|
390
|
+
- **Rebuild:** `python3 tools/build_medical_diction.py --write`
|
|
391
|
+
(source list: `tools/medical_wordlist.txt`).
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Derived from NeonBunny. A Life program by tderk, originally LPro.py and Destiny [2024].
|
|
4
4
|
|
|
5
|
-
## MProcs // Terminal Suite (
|
|
5
|
+
## MProcs // Terminal Suite (14 / app 10.0)
|
|
6
6
|
|
|
7
7
|
MProcs is now a single, self-contained launcher for every terminal in the
|
|
8
8
|
suite. Nothing is looked up on PyPI, nothing is downloaded at startup, and the
|
|
@@ -134,7 +134,7 @@ Fix applied vs. original PyPI sdist: moved `dependencies = ["requests","ddgs"]`
|
|
|
134
134
|
```bash
|
|
135
135
|
# from this directory (/home/kredt/BDCS/MProcs)
|
|
136
136
|
pip install --upgrade build twine
|
|
137
|
-
python -m build # creates dist/mprocs-
|
|
137
|
+
python -m build # creates dist/mprocs-10.0.tar.gz + .whl
|
|
138
138
|
# or
|
|
139
139
|
pip wheel . --no-deps
|
|
140
140
|
pip install dist/mprocs-*.whl # test install
|
|
@@ -270,7 +270,7 @@ Display full article from source header? (enter header/title/id or n): agent-tra
|
|
|
270
270
|
terminal summary.
|
|
271
271
|
- `MProcs --list`, `MProcs --version` and `MProcs --help` are available without
|
|
272
272
|
starting the TUI.
|
|
273
|
-
- `pyproject.toml` application version `
|
|
273
|
+
- `pyproject.toml` application version `10.0` (suite version `14`); package data includes every terminal data
|
|
274
274
|
directory.
|
|
275
275
|
|
|
276
276
|
**Layout:** `src/MProcs/modules/{polyhistor,flu0,hmptunnel}`.
|
|
@@ -326,8 +326,49 @@ PASSED.
|
|
|
326
326
|
between blank lines.
|
|
327
327
|
- **Wording:** removed previous integration labels from the UI, package description and
|
|
328
328
|
documentation.
|
|
329
|
-
- **Versions:** MProcs `
|
|
329
|
+
- **Versions:** MProcs `14`; application package `10.0`.
|
|
330
330
|
|
|
331
331
|
**Verified:** 256-colour POLYHISTOR output and spacing, FLU0/JADE//WIRE boards
|
|
332
332
|
with rails/frame, both GWFs, nested Esc/Ctrl-G navigation, update screen and
|
|
333
333
|
SOP, `MProcs --user`, responsive resize, and `twine check`.
|
|
334
|
+
|
|
335
|
+
---
|
|
336
|
+
## Update — Medical diction + switchable lexicons + inline arguments
|
|
337
|
+
|
|
338
|
+
- **Default diction:** `src/MProcs/scripts/data/diction.json` is now a
|
|
339
|
+
39,032-entry medical vocabulary (same size as the former English list).
|
|
340
|
+
It combines the PubMed word-frequency corpus with vocabulary mined from
|
|
341
|
+
`medicals1`, `mims`, `biology1`, `chemistry1`, `psychology1` and `science1`.
|
|
342
|
+
The former list is preserved as `diction_former.json`.
|
|
343
|
+
- **Diction switch:** `data_loader.switch_diction(source)` changes the live
|
|
344
|
+
`diction` list in place. Available sources for MProcs are `medical`
|
|
345
|
+
(default), `former`, `polyhistor`, `flu0` (themed), `flu0-raw`,
|
|
346
|
+
`hmptunnel` (themed) and `hmptunnel-raw`. It is also re-exported as
|
|
347
|
+
`MProcs.switch_diction`.
|
|
348
|
+
From the terminal: `diction former`, `diction polyhistor`, etc. With no
|
|
349
|
+
argument it lists the sources and prompts.
|
|
350
|
+
- **Other terminals:** POLYHISTOR, FLU0 and JADE//WIRE each expose the same
|
|
351
|
+
runtime `diction` switch and inline-value handling. Their own vocabularies
|
|
352
|
+
remain their defaults; the medical list is never made their default.
|
|
353
|
+
POLYHISTOR uses `diction switch <source>` (or `diction <source>`); FLU0 and
|
|
354
|
+
JADE//WIRE use the same `diction <source>` command as MProcs.
|
|
355
|
+
- **Inline arguments:** commands that ask for a value accept it on the same
|
|
356
|
+
line, following the existing `user AAPL` pattern. Examples:
|
|
357
|
+
`medicals 5`, `MIMS 2`, `search blood pressure`, `cd /tmp`,
|
|
358
|
+
`nano chars korean`, `tag foo`, `diction flu0`. The command's first prompt
|
|
359
|
+
consumes the inline value; any remaining prompts continue interactively.
|
|
360
|
+
- **FLU0 diction = ghostwrite wordlist:** selecting `flu0` as the diction
|
|
361
|
+
loads FLU0's actual ghostwrite wordlist into the switchable pool used by
|
|
362
|
+
**ghostwrite and IGW only**: `modules/flu0/scripts/data/lexicon.json`
|
|
363
|
+
(first word of each entry, multi-word entries skipped). FLU0's main
|
|
364
|
+
`diction` list — used by nano, tag, GWF and the rest — stays unchanged.
|
|
365
|
+
In MProcs, POLYHISTOR and JADE//WIRE the same `flu0` source loads that
|
|
366
|
+
wordlist into the live diction.
|
|
367
|
+
- **`flu0` command:** MProcs, POLYHISTOR and JADE//WIRE now have a `flu0`
|
|
368
|
+
function/command that runs the same `nano` burst as the host terminal but
|
|
369
|
+
samples FLU0's nano wordlist (`modules/flu0/scripts/data/themed/diction.json`).
|
|
370
|
+
FLU0 itself accepts `flu0` as an alias for its own `nano`.
|
|
371
|
+
- **`+` / `+N`:** all terminals accept `+` for continuous ghostwrite and
|
|
372
|
+
`+N` for N instant ghostwrite lines, matching FLU0's IGW shorthand.
|
|
373
|
+
- **Rebuild:** `python3 tools/build_medical_diction.py --write`
|
|
374
|
+
(source list: `tools/medical_wordlist.txt`).
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "MProcs"
|
|
7
|
-
version = "
|
|
7
|
+
version = "10.0"
|
|
8
8
|
description = "MProcs // Terminal Suite - MProcs, POLYHISTOR, FLU0 and JADE//WIRE in one launcher"
|
|
9
9
|
requires-python = ">=3.8"
|
|
10
10
|
readme = "README.md"
|
|
@@ -22,8 +22,8 @@ lpro-s = "MProcs.scripts.lpro_s:main"
|
|
|
22
22
|
gwf = "MProcs.scripts.gwf:run"
|
|
23
23
|
|
|
24
24
|
[tool.mprocs]
|
|
25
|
-
version = "
|
|
26
|
-
app-version = "
|
|
25
|
+
version = "14"
|
|
26
|
+
app-version = "10.0"
|
|
27
27
|
|
|
28
28
|
[project.optional-dependencies]
|
|
29
29
|
dev = ["pytest", "black", "flake8"]
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"""MProcs terminal suite."""
|
|
2
|
+
|
|
3
|
+
__version__ = "14"
|
|
4
|
+
__app_version__ = "10.0"
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
def switch_diction(source=None):
|
|
8
|
+
"""Switch MProcs' active diction (medical, former, polyhistor, flu0, hmptunnel)."""
|
|
9
|
+
from .scripts.data_loader import switch_diction as _switch_diction
|
|
10
|
+
return _switch_diction(source)
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import json
|
|
2
|
+
import os
|
|
3
|
+
|
|
4
|
+
try:
|
|
5
|
+
from . import theme
|
|
6
|
+
except ImportError:
|
|
7
|
+
from . import theme
|
|
8
|
+
|
|
9
|
+
_script_dir = os.path.dirname(os.path.abspath(__file__))
|
|
10
|
+
_data_dir = os.path.join(_script_dir, 'data')
|
|
11
|
+
_themed_dir = os.path.join(_data_dir, 'themed')
|
|
12
|
+
_module_dir = os.path.dirname(_script_dir)
|
|
13
|
+
_modules_dir = os.path.dirname(_module_dir)
|
|
14
|
+
_mprocs_dir = os.path.dirname(_modules_dir)
|
|
15
|
+
_scripts_data = os.path.join(_mprocs_dir, 'scripts', 'data')
|
|
16
|
+
|
|
17
|
+
# FLU0 keeps its themed vocabulary as the default. The other sources are
|
|
18
|
+
# runtime switches only; the default is never changed to the medical set.
|
|
19
|
+
DICTION_SOURCES = {
|
|
20
|
+
'flu0': os.path.join(_data_dir, 'lexicon.json'),
|
|
21
|
+
'flu0-raw': os.path.join(_data_dir, 'diction.json'),
|
|
22
|
+
'former': os.path.join(_data_dir, 'diction.json'),
|
|
23
|
+
'medical': os.path.join(_scripts_data, 'diction.json'),
|
|
24
|
+
'polyhistor': os.path.join(_modules_dir, 'polyhistor', 'data', 'diction.json'),
|
|
25
|
+
'hmptunnel': os.path.join(_modules_dir, 'hmptunnel', 'scripts', 'data', 'themed', 'diction.json'),
|
|
26
|
+
'hmptunnel-raw': os.path.join(_modules_dir, 'hmptunnel', 'scripts', 'data', 'diction.json'),
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
_DICTION_ALIASES = {
|
|
30
|
+
'flu0': 'flu0', 'flu0net': 'flu0', 'default': 'flu0',
|
|
31
|
+
'flu0-raw': 'flu0-raw', 'flu0raw': 'flu0-raw',
|
|
32
|
+
'former': 'former', 'old': 'former', 'original': 'former',
|
|
33
|
+
'english': 'former', 'words': 'former', 'raw': 'former',
|
|
34
|
+
'medical': 'medical', 'med': 'medical', 'medicine': 'medical',
|
|
35
|
+
'polyhistor': 'polyhistor', 'poly': 'polyhistor', 'knowledge': 'polyhistor',
|
|
36
|
+
'hmptunnel': 'hmptunnel', 'hmp': 'hmptunnel', 'jade': 'hmptunnel',
|
|
37
|
+
'wire': 'hmptunnel',
|
|
38
|
+
'hmptunnel-raw': 'hmptunnel-raw', 'hmptunnelraw': 'hmptunnel-raw',
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
_active_diction = 'flu0'
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def _read_diction(path, skip_spaces=False):
|
|
45
|
+
with open(path, encoding='utf-8') as f:
|
|
46
|
+
raw = json.load(f)
|
|
47
|
+
if not isinstance(raw, list):
|
|
48
|
+
raise ValueError('diction source is not a list: %s' % path)
|
|
49
|
+
words = []
|
|
50
|
+
for entry in raw:
|
|
51
|
+
if isinstance(entry, (list, tuple)) and entry:
|
|
52
|
+
entry = entry[0]
|
|
53
|
+
elif isinstance(entry, dict):
|
|
54
|
+
entry = entry.get('word') or entry.get('term') or entry.get('name')
|
|
55
|
+
word = str(entry).strip() if entry is not None else ''
|
|
56
|
+
if word and (not skip_spaces or ' ' not in word):
|
|
57
|
+
words.append(word)
|
|
58
|
+
if not words:
|
|
59
|
+
raise ValueError('diction source is empty: %s' % path)
|
|
60
|
+
return words
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
def available_dictions():
|
|
64
|
+
return {name: path for name, path in DICTION_SOURCES.items() if os.path.isfile(path)}
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
def current_diction():
|
|
68
|
+
return _active_diction
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
def switch_diction(source=None):
|
|
72
|
+
"""Switch the wordlist used by FLU0 ghostwrite and IGW.
|
|
73
|
+
|
|
74
|
+
The main ``diction`` list (nano, tag, GWF, ...) is never changed.
|
|
75
|
+
"""
|
|
76
|
+
global _active_diction
|
|
77
|
+
|
|
78
|
+
sources = available_dictions()
|
|
79
|
+
if source is None:
|
|
80
|
+
print('Available diction sources:')
|
|
81
|
+
for name in sources:
|
|
82
|
+
print(' %s' % name)
|
|
83
|
+
source = input('diction source: ').strip()
|
|
84
|
+
|
|
85
|
+
source = str(source).strip()
|
|
86
|
+
if not source:
|
|
87
|
+
raise ValueError('no diction source supplied')
|
|
88
|
+
|
|
89
|
+
expanded = os.path.expanduser(source)
|
|
90
|
+
if os.path.isfile(expanded):
|
|
91
|
+
name = os.path.splitext(os.path.basename(expanded))[0]
|
|
92
|
+
path = expanded
|
|
93
|
+
else:
|
|
94
|
+
name = _DICTION_ALIASES.get(source.lower(), source.lower())
|
|
95
|
+
if name not in sources:
|
|
96
|
+
raise ValueError('unknown diction source %r; choose from: %s' % (source, ', '.join(sources)))
|
|
97
|
+
path = sources[name]
|
|
98
|
+
|
|
99
|
+
words = _read_diction(path, skip_spaces=(name == 'flu0'))
|
|
100
|
+
ghostwrite_diction[:] = words
|
|
101
|
+
_active_diction = name
|
|
102
|
+
return {'name': name, 'count': len(words), 'path': path}
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
def _load(name):
|
|
106
|
+
if os.environ.get('FLU0_RAW_DATA'):
|
|
107
|
+
path = os.path.join(_data_dir, f'{name}.json')
|
|
108
|
+
with open(path, encoding='utf-8') as f:
|
|
109
|
+
return json.load(f)
|
|
110
|
+
themed_path = os.path.join(_themed_dir, f'{name}.json')
|
|
111
|
+
if os.path.isfile(themed_path):
|
|
112
|
+
with open(themed_path, encoding='utf-8') as f:
|
|
113
|
+
return json.load(f)
|
|
114
|
+
path = os.path.join(_data_dir, f'{name}.json')
|
|
115
|
+
with open(path, encoding='utf-8') as f:
|
|
116
|
+
data = json.load(f)
|
|
117
|
+
return theme.transform_dataset(name, data)
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
katakana = _load('katakana')
|
|
121
|
+
jamo = _load('jamo')
|
|
122
|
+
chi_chars = _load('chi_chars')
|
|
123
|
+
proverbs = _load('proverbs')
|
|
124
|
+
diction = _load('diction')
|
|
125
|
+
|
|
126
|
+
# FLU0 ghostwrite/IGW have their own switchable pool. The terminal diction
|
|
127
|
+
# above stays exactly as loaded (themed by default, or raw with FLU0_RAW_DATA).
|
|
128
|
+
_ghostwrite_path = os.path.join(_data_dir, 'lexicon.json')
|
|
129
|
+
if not os.path.isfile(_ghostwrite_path):
|
|
130
|
+
_ghostwrite_path = os.path.join(_data_dir, 'diction.json')
|
|
131
|
+
ghostwrite_diction = _read_diction(_ghostwrite_path, skip_spaces=True)
|
|
132
|
+
acadlist = _load('acadlist')
|
|
133
|
+
dhammapada1 = _load('dhammapada1')
|
|
134
|
+
medicals1 = _load('medicals1')
|
|
135
|
+
mims = _load('mims')
|
|
136
|
+
science1 = _load('science1')
|
|
137
|
+
psychology1 = _load('psychology1')
|
|
138
|
+
biology1 = _load('biology1')
|
|
139
|
+
chemistry1 = _load('chemistry1')
|
|
140
|
+
legal_terms1 = _load('legal_terms1')
|
|
141
|
+
degrees1 = _load('degrees1')
|
|
142
|
+
verses1 = _load('verses1')
|
|
143
|
+
bible1 = _load('bible1')
|
|
144
|
+
koran1 = _load('koran1')
|
|
145
|
+
fcci = _load('fcci')
|
|
146
|
+
hospitals = _load('hospitals')
|
|
147
|
+
tracks = _load('tracks')
|
|
148
|
+
strains = _load('strains')
|
|
149
|
+
ahb = _load('ahb')
|
|
@@ -326,6 +326,12 @@ _WORDS = None
|
|
|
326
326
|
|
|
327
327
|
def _words():
|
|
328
328
|
global _WORDS
|
|
329
|
+
try:
|
|
330
|
+
from . import data_loader
|
|
331
|
+
if data_loader.ghostwrite_diction:
|
|
332
|
+
return data_loader.ghostwrite_diction
|
|
333
|
+
except Exception:
|
|
334
|
+
pass
|
|
329
335
|
if _WORDS is None:
|
|
330
336
|
_WORDS = [e[0] for e in lexicon.entries() if " " not in e[0]] or ["signal"]
|
|
331
337
|
return _WORDS
|
|
@@ -31,15 +31,23 @@ _BLIP_COLORS = [_CYAN, _YELLOW, _MAGENTA, _RED, _WHITE]
|
|
|
31
31
|
|
|
32
32
|
def _load_words():
|
|
33
33
|
try:
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
return
|
|
34
|
+
# Use the live data_loader list so ``diction`` switches are reflected
|
|
35
|
+
# in FLU0 GWF without a restart.
|
|
36
|
+
try:
|
|
37
|
+
from . import data_loader
|
|
38
|
+
except ImportError:
|
|
39
|
+
import data_loader
|
|
40
|
+
return data_loader.diction
|
|
41
41
|
except Exception:
|
|
42
|
-
|
|
42
|
+
try:
|
|
43
|
+
here = os.path.dirname(os.path.abspath(__file__))
|
|
44
|
+
themed = os.path.join(here, 'data', 'themed', 'diction.json')
|
|
45
|
+
path = themed if os.path.isfile(themed) else os.path.join(here, 'data', 'diction.json')
|
|
46
|
+
with open(path) as f:
|
|
47
|
+
words = json.load(f)
|
|
48
|
+
return [str(w).strip() for w in words if str(w).strip()]
|
|
49
|
+
except Exception:
|
|
50
|
+
return []
|
|
43
51
|
|
|
44
52
|
|
|
45
53
|
_WORDS = _load_words()
|
|
@@ -235,7 +243,11 @@ class GWF:
|
|
|
235
243
|
|
|
236
244
|
def _dims(self):
|
|
237
245
|
if self.tui is not None:
|
|
238
|
-
|
|
246
|
+
content = getattr(self.tui, '_content_width', None)
|
|
247
|
+
if callable(content):
|
|
248
|
+
width = max(1, int(content()) - 1)
|
|
249
|
+
else:
|
|
250
|
+
width = max(1, int(getattr(self.tui, 'width', 80)) - 4)
|
|
239
251
|
height = max(1, int(getattr(self.tui, 'height', 24)) - 4)
|
|
240
252
|
return width, height
|
|
241
253
|
try:
|
|
@@ -17,7 +17,15 @@ import re
|
|
|
17
17
|
from . import version_checker
|
|
18
18
|
from . import theme
|
|
19
19
|
from .data_loader import acadlist, ahb as ahb_data, bible1, biology1, chemistry1, chi_chars, degrees1, dhammapada1, diction, fcci, hospitals, jamo, katakana, koran1, legal_terms1, medicals1, mims, proverbs, psychology1, science1, strains, tracks, verses1
|
|
20
|
+
from . import data_loader
|
|
20
21
|
from . import deepseek_ai
|
|
22
|
+
try:
|
|
23
|
+
from MProcs.scripts import inline_args
|
|
24
|
+
except ImportError:
|
|
25
|
+
from ....scripts import inline_args
|
|
26
|
+
|
|
27
|
+
# Values can be written inline (``user AAPL``, ``medicals 5``, ...).
|
|
28
|
+
input = inline_args.input
|
|
21
29
|
RED = '\033[91m'
|
|
22
30
|
GREEN = '\033[92m'
|
|
23
31
|
PURPLE = '\033[35m'
|
|
@@ -139,7 +147,7 @@ def jot_print(*args, **kwargs):
|
|
|
139
147
|
print_orig(*converted, **kwargs)
|
|
140
148
|
|
|
141
149
|
print = jot_print
|
|
142
|
-
input = theme.themed_input
|
|
150
|
+
input = inline_args.wrap(theme.themed_input)
|
|
143
151
|
|
|
144
152
|
def main():
|
|
145
153
|
|
|
@@ -7703,9 +7711,12 @@ def main():
|
|
|
7703
7711
|
global usr
|
|
7704
7712
|
print()
|
|
7705
7713
|
print(file=z)
|
|
7706
|
-
|
|
7714
|
+
inline_args.clear()
|
|
7715
|
+
raw_choice = input(usr)
|
|
7716
|
+
choice, inline_value = inline_args.split(raw_choice)
|
|
7707
7717
|
choice = theme.resolve_alias(choice)
|
|
7708
|
-
|
|
7718
|
+
inline_args.push(inline_value)
|
|
7719
|
+
jot_write(f"{usr}{raw_choice}")
|
|
7709
7720
|
ct = datetime.datetime.now()
|
|
7710
7721
|
print(usr, choice, ct, file=z)
|
|
7711
7722
|
_last_cmd_output = deepseek_ai.output_since_marker()
|
|
@@ -7806,6 +7817,15 @@ def main():
|
|
|
7806
7817
|
change_username(choice.split(' ', 1)[1].strip())
|
|
7807
7818
|
return "continue"
|
|
7808
7819
|
|
|
7820
|
+
if choice == 'diction' or choice == 'dict' or choice == 'lexicon':
|
|
7821
|
+
source = inline_args.take()
|
|
7822
|
+
try:
|
|
7823
|
+
info = data_loader.switch_diction(source)
|
|
7824
|
+
print(f"diction: {info['name']} ({info['count']} words) [ghostwrite/IGW only]")
|
|
7825
|
+
except (OSError, ValueError) as exc:
|
|
7826
|
+
print(f"diction error: {exc}")
|
|
7827
|
+
return "continue"
|
|
7828
|
+
|
|
7809
7829
|
if choice == 'alerts' or choice == 'Alerts':
|
|
7810
7830
|
alerts()
|
|
7811
7831
|
|
|
@@ -7890,7 +7910,7 @@ def main():
|
|
|
7890
7910
|
if choice == "psychology" or choice == "psyc":
|
|
7891
7911
|
psychology()
|
|
7892
7912
|
|
|
7893
|
-
if choice == "Medicals" or choice == "M":
|
|
7913
|
+
if choice == "Medicals" or choice == "medicals" or choice == "M":
|
|
7894
7914
|
medicals()
|
|
7895
7915
|
|
|
7896
7916
|
if choice == "MIMS" or choice == "mim" or choice == "MIM" or choice == "Medicines":
|
|
@@ -7911,6 +7931,9 @@ def main():
|
|
|
7911
7931
|
else:
|
|
7912
7932
|
nano()
|
|
7913
7933
|
|
|
7934
|
+
if choice == "flu0":
|
|
7935
|
+
nano()
|
|
7936
|
+
|
|
7914
7937
|
if choice == "m" or choice == "morn" or choice == "MORN" or choice == "Morn":
|
|
7915
7938
|
morn()
|
|
7916
7939
|
|
|
@@ -8343,7 +8366,17 @@ def main():
|
|
|
8343
8366
|
insta_ghost_write()
|
|
8344
8367
|
|
|
8345
8368
|
if choice == "insta ghost write" or choice == "Insta Ghost Write" or choice == "IGW" or choice == "igw" or choice == "insta ghost code" or choice == "iGW" or choice == "insta GW" or choice == "insta gw":
|
|
8346
|
-
|
|
8369
|
+
count = inline_args.take()
|
|
8370
|
+
if count and count.isdigit():
|
|
8371
|
+
insta_ghost_write(int(count))
|
|
8372
|
+
else:
|
|
8373
|
+
insta_ghost_write()
|
|
8374
|
+
|
|
8375
|
+
if choice.strip() == "+":
|
|
8376
|
+
ghost_write()
|
|
8377
|
+
|
|
8378
|
+
if choice.strip().startswith("+") and choice.strip()[1:].strip().isdigit():
|
|
8379
|
+
insta_ghost_write(int(choice.strip()[1:].strip()))
|
|
8347
8380
|
|
|
8348
8381
|
if choice == "soundstream" or choice == "sst" or choice == "SST" or choice == "sound stream" or choice == "stream sound" or choice == "streamsound":
|
|
8349
8382
|
sound_stream()
|
|
@@ -17,7 +17,15 @@ import re
|
|
|
17
17
|
from . import version_checker
|
|
18
18
|
from . import theme
|
|
19
19
|
from .data_loader import acadlist, ahb as ahb_data, bible1, biology1, chemistry1, chi_chars, degrees1, dhammapada1, diction, fcci, hospitals, jamo, katakana, koran1, legal_terms1, medicals1, mims, proverbs, psychology1, science1, strains, tracks, verses1
|
|
20
|
+
from . import data_loader
|
|
20
21
|
from . import deepseek_ai
|
|
22
|
+
try:
|
|
23
|
+
from MProcs.scripts import inline_args
|
|
24
|
+
except ImportError:
|
|
25
|
+
from ....scripts import inline_args
|
|
26
|
+
|
|
27
|
+
# Values can be written inline (``user AAPL``, ``medicals 5``, ...).
|
|
28
|
+
input = inline_args.input
|
|
21
29
|
RED = '\033[91m'
|
|
22
30
|
GREEN = '\033[92m'
|
|
23
31
|
PURPLE = '\033[35m'
|
|
@@ -139,7 +147,7 @@ def jot_print(*args, **kwargs):
|
|
|
139
147
|
print_orig(*converted, **kwargs)
|
|
140
148
|
|
|
141
149
|
print = jot_print
|
|
142
|
-
input = theme.themed_input
|
|
150
|
+
input = inline_args.wrap(theme.themed_input)
|
|
143
151
|
|
|
144
152
|
def main():
|
|
145
153
|
|
|
@@ -5634,9 +5642,12 @@ def main():
|
|
|
5634
5642
|
while choice !='pray' and choice !='slot' and choice !='search for items' and choice !='surf' and choice !='sleep' and choice !='eat' and choice !='meditate' and choice !='find coins' and choice !='draw card' and choice !='fly' and choice !='drink coffee' and choice !='drink tea' and choice !='surf' and choice !='dhammapada' and choice !='skate' and choice !='art' and choice !='give alms' and choice !='radio' and choice !='hack' and choice !='message' and choice !='brawl' and choice !='souls'and choice !='hipster tarot' and choice !='mp3' and choice !='spar' and choice !='train' and choice !='rest' and choice !='psalms' and choice !='haiku' and choice !='muslim prayer' and choice !='karate' and choice !='koans' and choice !='equips' and choice !='rpg' and choice !='archery' and choice !='color key' and choice !='doodling' and choice !='BUMP' and choice !='MA' and choice !='Magic' and choice !='commands' and choice !='scmpy' and choice !='scm' and choice !='ascii' and choice !='zen melody' and choice !='monopoly' and choice !='light incense' and choice !='stats' and choice !='prayer' and choice !='progress' and choice !='collections' and choice !='football' and choice !='c' and choice !='map' and choice !='search' and choice !='print time' and choice !='entry' and choice !='posting' and choice !='koran' and choice !='heBrews' and choice !='Medicals' and choice !='M' and choice !='Clearance' and choice !='MiCasa' and choice !='stuff' and choice !='worship' and choice !='Earth Science' and choice !='SCI' and choice !='value' and choice !='psychology' and choice !='psyc' and choice !='Patient Simu' and choice !='biology' and choice !='B' and choice !='legal terms' and choice !='Law' and choice !='the heart sutra' and choice !='License' and choice !='police' and choice !='prad' and choice !='climb' and choice !='chemistry' and choice !='ch' and choice !='weapon start' and choice !='wstart' and choice !='teletubby' and choice !='note' and choice !='save' and choice !='journal' and choice !='version' and choice !='ai' and choice !='auto-mat' and choice !='AAM' and choice !='ID' and choice !='IDC' and choice !='echo' and choice !='monitor-start' and choice !='mstart' and choice !='change username' and choice !='username' and choice !='user' and choice !='fuzz' and choice !='message-scan' and choice !='scan' and choice !='monitor-search' and choice !='msearch' and choice !='tag' and choice !='atag' and choice !='a-tag' and choice !='acad-monitor' and choice !='astart' and choice !='acad-search' and choice !='asearch' and choice !='oscillator' and choice !='oscillate' and choice !='oscill' and choice !='amror' and choice !='game' and choice !='amsearch' and choice !='amror-search' and choice !='amror search' and choice !='profile' and choice !='Profile' and choice !='herbs' and choice !='herbals' and choice !='degree' and choice !='degrees' and choice !='major' and choice !='majors' and choice !='MedProc AI' and choice !='MAI' and choice !='frames' and choice !='fsearch' and choice !='ascsearch' and choice !='alerts' and choice !='Alerts' and choice !='burner-start' and choice !='burner start' and choice !='burner' and choice !='burn' and choice !='kiomai' and choice !='KIOMAI' and choice !='GES' and choice !='call' and choice !='time-monitor' and choice !='rhospital' and choice !='rhosp' and choice !='random hospital' and choice !='ghosthunt' and choice !='update' and choice !='restart':
|
|
5635
5643
|
global usr
|
|
5636
5644
|
print()
|
|
5637
|
-
|
|
5645
|
+
inline_args.clear()
|
|
5646
|
+
raw_choice = input(usr)
|
|
5647
|
+
choice, inline_value = inline_args.split(raw_choice)
|
|
5638
5648
|
choice = theme.resolve_alias(choice)
|
|
5639
|
-
|
|
5649
|
+
inline_args.push(inline_value)
|
|
5650
|
+
jot_write(f"{usr}{raw_choice}")
|
|
5640
5651
|
ct = datetime.datetime.now()
|
|
5641
5652
|
_last_cmd_output = deepseek_ai.output_since_marker()
|
|
5642
5653
|
deepseek_ai.mark_cmd_boundary()
|
|
@@ -5733,6 +5744,15 @@ def main():
|
|
|
5733
5744
|
change_username(choice.split(' ', 1)[1].strip())
|
|
5734
5745
|
return "continue"
|
|
5735
5746
|
|
|
5747
|
+
if choice == 'diction' or choice == 'dict' or choice == 'lexicon':
|
|
5748
|
+
source = inline_args.take()
|
|
5749
|
+
try:
|
|
5750
|
+
info = data_loader.switch_diction(source)
|
|
5751
|
+
print(f"diction: {info['name']} ({info['count']} words) [ghostwrite/IGW only]")
|
|
5752
|
+
except (OSError, ValueError) as exc:
|
|
5753
|
+
print(f"diction error: {exc}")
|
|
5754
|
+
return "continue"
|
|
5755
|
+
|
|
5736
5756
|
if choice == 'alerts' or choice == 'Alerts':
|
|
5737
5757
|
alerts()
|
|
5738
5758
|
|
|
@@ -5799,7 +5819,7 @@ def main():
|
|
|
5799
5819
|
if choice == "psychology" or choice == "psyc":
|
|
5800
5820
|
psychology()
|
|
5801
5821
|
|
|
5802
|
-
if choice == "Medicals" or choice == "M":
|
|
5822
|
+
if choice == "Medicals" or choice == "medicals" or choice == "M":
|
|
5803
5823
|
medicals()
|
|
5804
5824
|
|
|
5805
5825
|
if choice == "MIMS" or choice == "mim" or choice == "MIM" or choice == "Medicines":
|
|
@@ -5820,6 +5840,9 @@ def main():
|
|
|
5820
5840
|
else:
|
|
5821
5841
|
nano()
|
|
5822
5842
|
|
|
5843
|
+
if choice == "flu0":
|
|
5844
|
+
nano()
|
|
5845
|
+
|
|
5823
5846
|
if choice == "m" or choice == "morn" or choice == "MORN" or choice == "Morn":
|
|
5824
5847
|
morn()
|
|
5825
5848
|
|
|
@@ -6221,7 +6244,17 @@ def main():
|
|
|
6221
6244
|
insta_ghost_write()
|
|
6222
6245
|
|
|
6223
6246
|
if choice == "insta ghost write" or choice == "Insta Ghost Write" or choice == "IGW" or choice == "igw" or choice == "insta ghost code" or choice == "iGW" or choice == "insta GW" or choice == "insta gw":
|
|
6224
|
-
|
|
6247
|
+
count = inline_args.take()
|
|
6248
|
+
if count and count.isdigit():
|
|
6249
|
+
insta_ghost_write(int(count))
|
|
6250
|
+
else:
|
|
6251
|
+
insta_ghost_write()
|
|
6252
|
+
|
|
6253
|
+
if choice.strip() == "+":
|
|
6254
|
+
ghost_write()
|
|
6255
|
+
|
|
6256
|
+
if choice.strip().startswith("+") and choice.strip()[1:].strip().isdigit():
|
|
6257
|
+
insta_ghost_write(int(choice.strip()[1:].strip()))
|
|
6225
6258
|
|
|
6226
6259
|
if choice == "soundstream" or choice == "sst" or choice == "SST" or choice == "sound stream" or choice == "stream sound" or choice == "streamsound":
|
|
6227
6260
|
sound_stream()
|
|
@@ -20,12 +20,12 @@ META_SEED = 148931636854213643112385939
|
|
|
20
20
|
META_SEED_TEXT = "148931636854213643112385939"
|
|
21
21
|
|
|
22
22
|
APP_NAME = "flu0"
|
|
23
|
-
APP_VERSION = "0.
|
|
23
|
+
APP_VERSION = "0.3.0"
|
|
24
24
|
BRAND = "FLU0 // CAMELTOE.NET"
|
|
25
25
|
THEME_NAME = "CAMELTOE.NET"
|
|
26
26
|
THEME_SUBTITLE = "Field Liaison Unit 0"
|
|
27
27
|
THEME_CODENAME = "PROGRAM FLU0"
|
|
28
|
-
THEME_VERSION = "0.
|
|
28
|
+
THEME_VERSION = "0.3.0"
|
|
29
29
|
THEME_TAGLINE = "signal in, silence out"
|
|
30
30
|
THEME_MOTTO = "Observe. Corroborate. Record."
|
|
31
31
|
|
|
@@ -2593,16 +2593,19 @@ def command_help():
|
|
|
2593
2593
|
"theme program brief and cover details",
|
|
2594
2594
|
]),
|
|
2595
2595
|
("PROGRAM OFFICE", [
|
|
2596
|
+
"nano (blank input) | flu0 = nano with FLU0 wordlist | n1 | morn",
|
|
2596
2597
|
"program brief | program org | program stations | program equipment",
|
|
2597
2598
|
"program training | program oversight | program metrics | program watch",
|
|
2598
2599
|
"probe simulated engagement report",
|
|
2599
2600
|
"drill | train field drill record and currency",
|
|
2600
|
-
"ghost write [gw]
|
|
2601
|
-
"insta ghost write
|
|
2601
|
+
"ghost write [gw, +] continuous word stream; Ctrl+C to stop",
|
|
2602
|
+
"insta ghost write N lines [igw, +N] (e.g. +3)",
|
|
2602
2603
|
"lexicon 40,000-entry vocabulary [flu0-lexicon]",
|
|
2603
2604
|
]),
|
|
2604
2605
|
("TERMINAL CORE", [
|
|
2605
2606
|
"build | no_color | switch | manifest | pwd / ls / cd / clear / mkdir / rm",
|
|
2607
|
+
"diction [medical/former/polyhistor/flu0/hmptunnel] switch ghostwrite/IGW wordlist",
|
|
2608
|
+
"inline values: user AAPL | medicals 5 | search <text> | cd <path>",
|
|
2606
2609
|
"memo | log | commit | query | channels | jot | toolchain | speak",
|
|
2607
2610
|
"deepseek AI | ai_image | scmpy | update | restart",
|
|
2608
2611
|
"A-HB (Agent Handbook) | rhospital | ghosthunt",
|