|
NHI1 10.0
|
NHI1 -
theKernel -
theLink -
theConfig -
theSq3Lite -
theCompiler -
theBrain -
theGuard -
theLib -
theATL
Nhi1Label - Nhi1BuildExtension - Nhi1Config - Nhi1Exec - Nhi1Switch - Nhi1Tags - Nhi1Docs |
A tool to access a file in the vim editor by creating a shortcut from file-name and directory-name …
The basic problem in a project with a lot of files and a lot of directories is to find a way to navigate quickly and easily.
Two tools are used for this:
.tags file to navigaet in source-code and documentation … vim editor by creating a shortcut from file-name and directory-name … .../.shortcut local shortcut database for directory "..." .../.shortcutignore ignore file/pattern for directory "..." etc/shortcut.local shortcut extension (example: test "db" lookup) sbin/vim-shortcut.tcl shortcut integration into "vim" theCompiler/src/lng_Shortcut.tcl frontend of the shortcut tool theCompiler/src/lib_Shortcut.tcl backend of the shortcut tool
.shortcut with a simple TCL array using array set fileA { shortcut → filename ... }vim extension vim-shortcut.tcl ::E ... or <CTRL-E>...T "", C, U or dirA follewd by file-shortcut .shortcut in the directory :docs/main/.shortcut : fileA is written be the user fileA is written be the Nhi1Shortcut tool␛[38;1;36mpInit -> PINIT[#0] -> +++ use : lang<lng> : api<Shortcut> : top<lng_Shortcut.tcl>␛[0;m
␛[38;1;36m -> PINIT[#0] -> argv<-h>␛[0;m
usage: Nhi1Shortcut ?options...?
options:
^-(?:i|meta)(?:=(.*))?$ | set META file for inpout : default: value from -|mk|mq|lc|sq3|...
^-(mk|mq|lc|sq3)$ | set LIBRARY :
filter options
^-(?:f|func)(?:=(.*))?$ | filter FUNCEXPR : all kind of objects (-ff/-ffunc = stonger)
^-(?:c|class)(?:=(.*))?$ | filter CLASSEXPR : filter by class name
^-show-filter$ | show filter data : API_IGNORE_* and API_ALLOW_*
profiling options
^-profile$ | use prfiling :
^-profile-key$ | set profile key : default: exclusiveRuntime
compileTime, nonCompileTime, avgExclusiveTime, calls
totalRuntime, exclusiveRuntime, avgRuntime
^-profile-pat$ | filter result : default: *
TASK options
^-ignore(?:=(.*))?$ | ignore=TASK,TASK,... : use -h to get list
^-only(?:=(.*))?$ | only=TASK,TASK,... : use -h to get list
debug options
^-trace(?:=(.*))?$ | trace VARIABLE on WRITE : discover modification
^-force$ | use META code : disable the cache
^-erase-all$ | erase generated code : apply to target file(s)
^-warning-as-error$ | raise an ERROR on WARNING :
^-(d+)$ | incr DEBUG level : -d -dd -ddd ...
^-(v+)$ | incr VERBOSE level : -v -vv -vvv ...
^-(s+)$ | always print to STDOUT : BOOLEAN
^-(?:w|write)$ | always write : BOOLEAN
^-tcl-trace$ | enable TCL trace :
misc options
^-(h|help)$ | get this help :
^-dependency$ | write dependency tree : used for MAKE
^-attribute(?:=(.*))?$$ | attribute KEY=VAL : modify the attributeDEF database
^-recompile | recompile 'imeta' file : 'imeta' reuired: -mk,-mq,...
lng_Shortcut options:
-do-lib ...... LIB ....... DO the 'project' directory (default: no)
-do-example .. EXAMPLE ... DO the 'example' directory (default: no)
-do-docs ..... DOCS ...... DO the 'docs' directory (default: no)
-do-the ...... THE ....... DO the 'theX' directory (default: no)
-create-missing .......... create missing files as empty
-all ..................... DO all above
-local ................... just do local directory
-sc-write ................ DO write file '.shortcutignore'
-sc-no-deep .............. DON'T use parallel directories also
-diff .................... DO the 'diff' at the end (default: no)
-(tcl|atl|py|pl|rb|php|c|cc|cs|jv|go|vb) ... chose language
-(mk|mq|lc|sq3) ............................ chose namespace
supported '-ignore' args:
IGNORE(#usage)<list> , IGNORE(#only)<EMPTY> , IGNORE<array|P|#group,*>
IGNORE(#usage) = <list>
| DOCS | EXAMPLE | LIB
IGNORE = <array|P|#group,*>
| #group,all-lng | tcl atl cc cs vb jv rb php pl c go py
| #group,all-me | FUNC_S
| #group,all-ns | mk mq lc sq3
| #group,all-tsk | LIB EXAMPLE DOCS TESTS THE
LIB (library) using package mk (theKernel) target language py (python)> Nhi1Shortcut -only=LIB,mk,py
pInit -> PINIT[#0] -> +++ use : lang<lng> : api<Shortcut> : top<lng_Shortcut.tcl>
-> PINIT[#0] -> : argv<-only=LIB,mk,py>
Do -> LIB start
GLOBAL -> LIB project: mk
cache_close -> write file -> fn<.../NHI1/theKernel/py/.shortcut>
Do -> LIB end