Git Product home page Git Product logo

just-tags's Introduction

JustTags

JustTags in a macOS app for working with BER-TLV EMV tags.

Features

Decode the tags from base64 or hex strings into a comprehensible list.

Filter the decoded tags by tag, name, or description.

Fully decode the tag value for specific tags (`9F33`, `95` etc).

View additional tag info (source, format, kernel).

Select and copy tags as hex string.

Diff 2 tag lists against each other.

Rename window tabs.

How to use

Clone the project

  git clone https://github.com/kaphacius/just-tags

Go to the project directory

  cd just-tags

Open with Xcode

  xed .

Build and run with Command + R

Roadmap

  • Specific kernel selection.
  • Adding tag information for specific kernels at runtime.
  • Improvements to tag value decoding: more tags and more formats.
  • Display the number of decoded and selected tags.
  • Save the session data to be available when the app is opened again.

Contributing

Contributions are always welcome!

Please open an issue if you spot a bug, or an enhancement if you have an idea for a great feature.

License

GNU GPLv3

Alternative Tools

Eftlab's BP-Tools

Emvlab's tlvtool

Binaryfoo's emv-bertlv

just-tags's People

Contributors

kaphacius avatar urvi-k avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

just-tags's Issues

App crashes

Step to reproduce:

  1. Open an app.
  2. Click Window menu on the top.
  3. Choose Diff.
  4. Close Diff window.
  5. Open Diff again.

Current result: app crashes.

Crash Log:

Translated Report (Full Report Below)

Process: JustTags [49008]
Path: /Applications/JustTags.app/Contents/MacOS/JustTags
Identifier: com.github.kaphacius.JustTags
Version: 1.2.1 (2023052101)
Code Type: ARM-64 (Native)
Parent Process: launchd [1]
User ID: 501

Date/Time: 2023-08-02 09:52:23.7875 +0200
OS Version: macOS 13.5 (22G74)
Report Version: 12
Anonymous UUID: 935E0778-8878-9768-CF49-F3DEA10F2F78

Sleep/Wake UUID: 2DED5270-F03A-47A4-B0A1-CEC018CC7D63

Time Awake Since Boot: 31000 seconds
Time Since Wake: 105 seconds

System Integrity Protection: enabled

Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000001, 0x0000000198232430

Termination Reason: Namespace SIGNAL, Code 5 Trace/BPT trap: 5
Terminating Process: exc handler [49008]

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libswiftCore.dylib 0x198232430 assertionFailure(::file:line🎏) + 268
1 libswiftCore.dylib 0x1982326d8 assertionFailure(
:file:line:) + 108
2 JustTags 0x104bb703c AppVM.setAsActive(window:) + 432
3 JustTags 0x104bbb378 AppVM.windowDidBecomeKey(:) + 320
4 JustTags 0x104bbb440 @objc AppVM.windowDidBecomeKey(
:) + 140
5 CoreFoundation 0x1895b7180 CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER + 148
6 CoreFoundation 0x189652eec ___CFXRegistrationPost_block_invoke + 88
7 CoreFoundation 0x189652e34 _CFXRegistrationPost + 440
8 CoreFoundation 0x1895884cc _CFXNotificationPost + 704
9 Foundation 0x18a4e68e4 -[NSNotificationCenter postNotificationName:object:userInfo:] + 88
10 AppKit 0x18c93cb40 -[NSWindow becomeKeyWindow] + 804
11 AppKit 0x18c8e31b0 -[NSWindow _changeKeyAndMainLimitedOK:] + 748
12 AppKit 0x18c8e2e84 -[NSWindow makeKeyWindow] + 172
13 AppKit 0x18c8e2c44 -[NSWindow _makeKeyRegardlessOfVisibility] + 56
14 AppKit 0x18c8daf80 -[NSWindow makeKeyAndOrderFront:] + 24
15 QuickLookUI 0x1f37d6a48 -[QLSeamlessDocumentOpener showWindow:contentFrame:withBlock:] + 184
16 AppKit 0x18c9b5a8c -[NSWindowController showWindow:] + 496
17 SwiftUI 0x1b231827c 0x1b183a000 + 11395708
18 SwiftUI 0x1b22255fc 0x1b183a000 + 10401276
19 SwiftUI 0x1b1ef8334 0x1b183a000 + 7070516
20 SwiftUI 0x1b21464d4 0x1b183a000 + 9487572
21 SwiftUI 0x1b2146520 0x1b183a000 + 9487648
22 AppKit 0x18c98f4cc -[NSApplication(NSResponder) sendAction:to:from:] + 440
23 AppKit 0x18ca5b498 -[NSMenuItem _corePerformAction] + 336
24 AppKit 0x18ca5b214 -[NSCarbonMenuImpl performActionWithHighlightingForItemAtIndex:] + 104
25 AppKit 0x18ca96ba0 -[NSMenu performActionForItemAtIndex:] + 200
26 AppKit 0x18ca96ac0 -[NSMenu _internalPerformActionForItemAtIndex:] + 76
27 AppKit 0x18ca96914 -[NSCarbonMenuImpl _carbonCommandProcessEvent:handlerCallRef:] + 108
28 AppKit 0x18ca43828 NSSLMMenuEventHandler + 640
29 HIToolbox 0x192deb3a4 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 1092
30 HIToolbox 0x192dea828 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*) + 356
31 HIToolbox 0x192e00a40 SendEventToEventTarget + 40
32 HIToolbox 0x192e5e8e4 SendHICommandEvent(unsigned int, HICommand const*, unsigned int, unsigned int, unsigned char, void const*, OpaqueEventTargetRef*, OpaqueEventTargetRef*, OpaqueEventRef**) + 416
33 HIToolbox 0x192e82564 SendMenuCommandWithContextAndModifiers + 56
34 HIToolbox 0x192e824f4 SendMenuItemSelectedEvent + 352
35 HIToolbox 0x192e82320 FinishMenuSelection(SelectionData*, MenuResult*, MenuResult*) + 100
36 HIToolbox 0x192e82ce0 MenuSelectCore(MenuData*, Point, double, unsigned int, OpaqueMenuRef**, unsigned short*) + 560
37 HIToolbox 0x192e82a00 _HandleMenuSelection2 + 416
38 AppKit 0x18c939918 _NSHandleCarbonMenuEvent + 256
39 AppKit 0x18c93973c _DPSEventHandledByCarbon + 60
40 AppKit 0x18c7e7104 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 2232
41 AppKit 0x18c7daf7c -[NSApplication run] + 464
42 AppKit 0x18c7b23cc NSApplicationMain + 880
43 SwiftUI 0x1b18d75ec 0x1b183a000 + 644588
44 SwiftUI 0x1b2a3c55c 0x1b183a000 + 18883932
45 SwiftUI 0x1b22b9e8c 0x1b183a000 + 11009676
46 JustTags 0x104b25fd8 static JustTagsApp.$main() + 40
47 JustTags 0x104b26170 main + 12
48 dyld 0x18918bf28 start + 2236

Thread 1:: com.apple.NSEventThread
0 libsystem_kernel.dylib 0x1894a3f54 mach_msg2_trap + 8
1 libsystem_kernel.dylib 0x1894b6280 mach_msg2_internal + 80
2 libsystem_kernel.dylib 0x1894acbb8 mach_msg_overwrite + 604
3 libsystem_kernel.dylib 0x1894a42d0 mach_msg + 24
4 CoreFoundation 0x1895c27e4 __CFRunLoopServiceMachPort + 160
5 CoreFoundation 0x1895c10c4 __CFRunLoopRun + 1208
6 CoreFoundation 0x1895c04b8 CFRunLoopRunSpecific + 612
7 AppKit 0x18c911f54 _NSEventThread + 172
8 libsystem_pthread.dylib 0x1894e3fa8 _pthread_start + 148
9 libsystem_pthread.dylib 0x1894deda0 thread_start + 8

Thread 2:
0 libsystem_pthread.dylib 0x1894ded8c start_wqthread + 0

Thread 3:
0 libsystem_pthread.dylib 0x1894ded8c start_wqthread + 0

Thread 4:
0 libsystem_pthread.dylib 0x1894ded8c start_wqthread + 0

Thread 0 crashed with ARM Thread State (64-bit):
x0: 0x000060000359aa88 x1: 0x0000000200000003 x2: 0x0000000000000000 x3: 0x0000600000ff0500
x4: 0x0000000000000000 x5: 0x000000016b32d640 x6: 0x0000000000000034 x7: 0x0000000000000000
x8: 0xfffffffe00000000 x9: 0x0000000200000003 x10: 0x0000000000000003 x11: 0x00000000000007fb
x12: 0x00000000f2a268e5 x13: 0x00000000000007fd x14: 0x00000000f2c27014 x15: 0x00000000f2a268e5
x16: 0x0000000000000014 x17: 0x0000000072c00000 x18: 0x0000000000000000 x19: 0x00000001986fbdf4
x20: 0x000060000359aa80 x21: 0x0000000000000000 x22: 0x000000000000000b x23: 0x0000000000000014
x24: 0x000000000000007f x25: 0x0000000104c6f410 x26: 0xf000000000000023 x27: 0x0000000000000001
x28: 0x000000016b32db98 fp: 0x000000016b32d820 lr: 0x0000000198232430
sp: 0x000000016b32d750 pc: 0x0000000198232430 cpsr: 0x60001000
far: 0x000000010b494000 esr: 0xf2000001 (Breakpoint) brk 1

Binary Images:
0x104ad0000 - 0x104c87fff com.github.kaphacius.JustTags (1.2.1) <05f86514-af00-3f7b-9beb-ff89973085a7> /Applications/JustTags.app/Contents/MacOS/JustTags
0x10be90000 - 0x10be9bfff libobjc-trampolines.dylib () <8e928412-9e96-32d4-b173-d99beb9fed0b> /usr/lib/libobjc-trampolines.dylib
0x1981fc000 - 0x198734fff libswiftCore.dylib (
) /usr/lib/swift/libswiftCore.dylib
0x189543000 - 0x189a1cfff com.apple.CoreFoundation (6.9) /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
0x18a4dd000 - 0x18aea2fff com.apple.Foundation (6.9) /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
0x18c7ae000 - 0x18d6bdfff com.apple.AppKit (6.9) /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
0x1f3743000 - 0x1f3872fff com.apple.QuickLookUIFramework (5.0) /System/Library/Frameworks/QuickLookUI.framework/Versions/A/QuickLookUI
0x1b183a000 - 0x1b30d9fff com.apple.SwiftUI (4.6.3) <3694a102-743d-3f77-831b-d48abfa835dd> /System/Library/Frameworks/SwiftUI.framework/Versions/A/SwiftUI
0x192de2000 - 0x193115fff com.apple.HIToolbox (2.1.1) <9bed5c79-f02f-3e0b-9fdb-57d955cc68ba> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox
0x189186000 - 0x189214587 dyld () /usr/lib/dyld
0x1894a3000 - 0x1894dcff7 libsystem_kernel.dylib (
) <08c5fe2a-b0bf-3ab6-bb42-460c18917d33> /usr/lib/system/libsystem_kernel.dylib
0x1894dd000 - 0x1894e9fff libsystem_pthread.dylib (*) <1f30fb9a-bdf9-32db-a709-8417666a7e45> /usr/lib/system/libsystem_pthread.dylib

External Modification Summary:
Calls made by other processes targeting this process:
task_for_pid: 0
thread_create: 0
thread_set_state: 0
Calls made by this process:
task_for_pid: 0
thread_create: 0
thread_set_state: 0
Calls made by all processes on this machine:
task_for_pid: 0
thread_create: 0
thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=1.4G resident=0K(0%) swapped_out_or_unallocated=1.4G(100%)
Writable regions: Total=2.0G written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=2.0G(100%)

                            VIRTUAL   REGION 

REGION TYPE SIZE COUNT (non-coalesced)
=========== ======= =======
Accelerate framework 384K 3
Activity Tracing 256K 1
CG backing stores 4480K 8
CG image 4800K 83
CG raster data 144K 3
ColorSync 592K 30
CoreAnimation 46.4M 384
CoreGraphics 64K 4
CoreImage 288K 3
CoreUI image data 5504K 54
Foundation 48K 2
Kernel Alloc Once 32K 1
MALLOC 362.6M 71
MALLOC guard page 192K 10
MALLOC_MEDIUM (reserved) 1.2G 10 reserved VM address space (unallocated)
MALLOC_NANO (reserved) 384.0M 1 reserved VM address space (unallocated)
STACK GUARD 56.1M 5
Stack 10.1M 5
VM_ALLOCATE 12.6M 30
__AUTH 1859K 345
__AUTH_CONST 28.1M 566
__CTF 824 1
__DATA 12.8M 552
__DATA_CONST 27.6M 570
__DATA_DIRTY 1987K 215
__FONT_DATA 2352 1
__INFO_FILTER 8 1
__LINKEDIT 806.3M 3
__OBJC_RO 66.4M 1
__OBJC_RW 2012K 1
__TEXT 614.2M 590
dyld private memory 272K 2
mapped file 239.8M 53
shared memory 9.9M 21
=========== ======= =======
TOTAL 3.8G 3630
TOTAL, minus reserved VM space 2.3G 3630


Full Report

{"app_name":"JustTags","timestamp":"2023-08-02 09:52:34.00 +0200","app_version":"1.2.1","slice_uuid":"05f86514-af00-3f7b-9beb-ff89973085a7","build_version":"2023052101","platform":1,"bundleID":"com.github.kaphacius.JustTags","share_with_app_devs":0,"is_first_party":0,"bug_type":"309","os_version":"macOS 13.5 (22G74)","roots_installed":0,"name":"JustTags","incident_id":"B748F2DC-DD02-4217-9EF4-B572096BF42A"}
{
"uptime" : 31000,
"procRole" : "Foreground",
"version" : 2,
"userID" : 501,
"deployVersion" : 210,
"modelCode" : "MacBookPro18,3",
"coalitionID" : 977,
"osVersion" : {
"train" : "macOS 13.5",
"build" : "22G74",
"releaseType" : "User"
},
"captureTime" : "2023-08-02 09:52:23.7875 +0200",
"incident" : "B748F2DC-DD02-4217-9EF4-B572096BF42A",
"pid" : 49008,
"translated" : false,
"cpuType" : "ARM-64",
"roots_installed" : 0,
"bug_type" : "309",
"procLaunch" : "2023-07-31 13:05:08.7912 +0200",
"procStartAbsTime" : 56339981757,
"procExitAbsTime" : 752219341917,
"procName" : "JustTags",
"procPath" : "/Applications/JustTags.app/Contents/MacOS/JustTags",
"bundleInfo" : {"CFBundleShortVersionString":"1.2.1","CFBundleVersion":"2023052101","CFBundleIdentifier":"com.github.kaphacius.JustTags"},
"storeInfo" : {"deviceIdentifierForVendor":"1FAC0F48-A1D2-5342-BB70-BB735ED5D374","thirdParty":true},
"parentProc" : "launchd",
"parentPid" : 1,
"coalitionName" : "com.github.kaphacius.JustTags",
"crashReporterKey" : "935E0778-8878-9768-CF49-F3DEA10F2F78",
"codeSigningID" : "com.github.kaphacius.JustTags",
"codeSigningTeamID" : "",
"codeSigningFlags" : 570503957,
"codeSigningValidationCategory" : 10,
"codeSigningTrustLevel" : 0,
"wakeTime" : 105,
"sleepWakeUUID" : "2DED5270-F03A-47A4-B0A1-CEC018CC7D63",
"sip" : "enabled",
"exception" : {"codes":"0x0000000000000001, 0x0000000198232430","rawCodes":[1,6847407152],"type":"EXC_BREAKPOINT","signal":"SIGTRAP"},
"termination" : {"flags":0,"code":5,"namespace":"SIGNAL","indicator":"Trace/BPT trap: 5","byProc":"exc handler","byPid":49008},
"os_fault" : {"process":"JustTags"},
"extMods" : {"caller":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"system":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"targeted":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"warnings":0},
"faultingThread" : 0,
"threads" : [{"triggered":true,"id":144168,"threadState":{"x":[{"value":105553172474504},{"value":8589934595},{"value":0},{"value":105553132979456},{"value":0},{"value":6093461056},{"value":52},{"value":0},{"value":18446744065119617024},{"value":8589934595},{"value":3},{"value":2043},{"value":4070729957},{"value":2045},{"value":4072828948},{"value":4070729957},{"value":20},{"value":1925185536},{"value":0},{"value":6852427252},{"value":105553172474496},{"value":0},{"value":11},{"value":20},{"value":127},{"value":4375114768},{"value":17293822569102704675},{"value":1},{"value":6093462424}],"flavor":"ARM_THREAD_STATE64","lr":{"value":6847407152},"cpsr":{"value":1610616832},"fp":{"value":6093461536},"sp":{"value":6093461328},"esr":{"value":4060086273,"description":"(Breakpoint) brk 1"},"pc":{"value":6847407152,"matchesCrashFrame":1},"far":{"value":4484317184}},"queue":"com.apple.main-thread","frames":[{"imageOffset":222256,"symbol":"assertionFailure(::file:line🎏)","symbolLocation":268,"imageIndex":2},{"imageOffset":222936,"symbol":"assertionFailure(:file:line:)","symbolLocation":108,"imageIndex":2},{"imageOffset":946236,"symbol":"AppVM.setAsActive(window:)","symbolLocation":432,"imageIndex":0},{"imageOffset":963448,"symbol":"AppVM.windowDidBecomeKey(:)","symbolLocation":320,"imageIndex":0},{"imageOffset":963648,"symbol":"@objc AppVM.windowDidBecomeKey(:)","symbolLocation":140,"imageIndex":0},{"imageOffset":475520,"symbol":"CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER","symbolLocation":148,"imageIndex":3},{"imageOffset":1113836,"symbol":"___CFXRegistrationPost_block_invoke","symbolLocation":88,"imageIndex":3},{"imageOffset":1113652,"symbol":"_CFXRegistrationPost","symbolLocation":440,"imageIndex":3},{"imageOffset":283852,"symbol":"_CFXNotificationPost","symbolLocation":704,"imageIndex":3},{"imageOffset":39140,"symbol":"-[NSNotificationCenter postNotificationName:object:userInfo:]","symbolLocation":88,"imageIndex":4},{"imageOffset":1633088,"symbol":"-[NSWindow becomeKeyWindow]","symbolLocation":804,"imageIndex":5},{"imageOffset":1266096,"symbol":"-[NSWindow _changeKeyAndMainLimitedOK:]","symbolLocation":748,"imageIndex":5},{"imageOffset":1265284,"symbol":"-[NSWindow makeKeyWindow]","symbolLocation":172,"imageIndex":5},{"imageOffset":1264708,"symbol":"-[NSWindow _makeKeyRegardlessOfVisibility]","symbolLocation":56,"imageIndex":5},{"imageOffset":1232768,"symbol":"-[NSWindow makeKeyAndOrderFront:]","symbolLocation":24,"imageIndex":5},{"imageOffset":604744,"symbol":"-[QLSeamlessDocumentOpener showWindow:contentFrame:withBlock:]","symbolLocation":184,"imageIndex":6},{"imageOffset":2128524,"symbol":"-[NSWindowController showWindow:]","symbolLocation":496,"imageIndex":5},{"imageOffset":11395708,"imageIndex":7},{"imageOffset":10401276,"imageIndex":7},{"imageOffset":7070516,"imageIndex":7},{"imageOffset":9487572,"imageIndex":7},{"imageOffset":9487648,"imageIndex":7},{"imageOffset":1971404,"symbol":"-[NSApplication(NSResponder) sendAction:to:from:]","symbolLocation":440,"imageIndex":5},{"imageOffset":2806936,"symbol":"-[NSMenuItem _corePerformAction]","symbolLocation":336,"imageIndex":5},{"imageOffset":2806292,"symbol":"-[NSCarbonMenuImpl performActionWithHighlightingForItemAtIndex:]","symbolLocation":104,"imageIndex":5},{"imageOffset":3050400,"symbol":"-[NSMenu performActionForItemAtIndex:]","symbolLocation":200,"imageIndex":5},{"imageOffset":3050176,"symbol":"-[NSMenu _internalPerformActionForItemAtIndex:]","symbolLocation":76,"imageIndex":5},{"imageOffset":3049748,"symbol":"-[NSCarbonMenuImpl _carbonCommandProcessEvent:handlerCallRef:]","symbolLocation":108,"imageIndex":5},{"imageOffset":2709544,"symbol":"NSSLMMenuEventHandler","symbolLocation":640,"imageIndex":5},{"imageOffset":37796,"symbol":"DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*)","symbolLocation":1092,"imageIndex":8},{"imageOffset":34856,"symbol":"SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*)","symbolLocation":356,"imageIndex":8},{"imageOffset":125504,"symbol":"SendEventToEventTarget","symbolLocation":40,"imageIndex":8},{"imageOffset":510180,"symbol":"SendHICommandEvent(unsigned int, HICommand const*, unsigned int, unsigned int, unsigned char, void const*, OpaqueEventTargetRef*, OpaqueEventTargetRef*, OpaqueEventRef**)","symbolLocation":416,"imageIndex":8},{"imageOffset":656740,"symbol":"SendMenuCommandWithContextAndModifiers","symbolLocation":56,"imageIndex":8},{"imageOffset":656628,"symbol":"SendMenuItemSelectedEvent","symbolLocation":352,"imageIndex":8},{"imageOffset":656160,"symbol":"FinishMenuSelection(SelectionData*, MenuResult*, MenuResult*)","symbolLocation":100,"imageIndex":8},{"imageOffset":658656,"symbol":"MenuSelectCore(MenuData*, Point, double, unsigned int, OpaqueMenuRef**, unsigned short*)","symbolLocation":560,"imageIndex":8},{"imageOffset":657920,"symbol":"_HandleMenuSelection2","symbolLocation":416,"imageIndex":8},{"imageOffset":1620248,"symbol":"_NSHandleCarbonMenuEvent","symbolLocation":256,"imageIndex":5},{"imageOffset":1619772,"symbol":"_DPSEventHandledByCarbon","symbolLocation":60,"imageIndex":5},{"imageOffset":233732,"symbol":"-[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:]","symbolLocation":2232,"imageIndex":5},{"imageOffset":184188,"symbol":"-[NSApplication run]","symbolLocation":464,"imageIndex":5},{"imageOffset":17356,"symbol":"NSApplicationMain","symbolLocation":880,"imageIndex":5},{"imageOffset":644588,"imageIndex":7},{"imageOffset":18883932,"imageIndex":7},{"imageOffset":11009676,"imageIndex":7},{"imageOffset":352216,"symbol":"static JustTagsApp.$main()","symbolLocation":40,"imageIndex":0},{"imageOffset":352624,"symbol":"main","symbolLocation":12,"imageIndex":0},{"imageOffset":24360,"symbol":"start","symbolLocation":2236,"imageIndex":9}]},{"id":144234,"name":"com.apple.NSEventThread","frames":[{"imageOffset":3924,"symbol":"mach_msg2_trap","symbolLocation":8,"imageIndex":10},{"imageOffset":78464,"symbol":"mach_msg2_internal","symbolLocation":80,"imageIndex":10},{"imageOffset":39864,"symbol":"mach_msg_overwrite","symbolLocation":604,"imageIndex":10},{"imageOffset":4816,"symbol":"mach_msg","symbolLocation":24,"imageIndex":10},{"imageOffset":522212,"symbol":"__CFRunLoopServiceMachPort","symbolLocation":160,"imageIndex":3},{"imageOffset":516292,"symbol":"__CFRunLoopRun","symbolLocation":1208,"imageIndex":3},{"imageOffset":513208,"symbol":"CFRunLoopRunSpecific","symbolLocation":612,"imageIndex":3},{"imageOffset":1458004,"symbol":"_NSEventThread","symbolLocation":172,"imageIndex":5},{"imageOffset":28584,"symbol":"_pthread_start","symbolLocation":148,"imageIndex":11},{"imageOffset":7584,"symbol":"thread_start","symbolLocation":8,"imageIndex":11}]},{"id":1535285,"frames":[{"imageOffset":7564,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":11}]},{"id":1537159,"frames":[{"imageOffset":7564,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":11}]},{"id":1537290,"frames":[{"imageOffset":7564,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":11}]}],
"usedImages" : [
{
"source" : "P",
"arch" : "arm64",
"base" : 4373413888,
"CFBundleShortVersionString" : "1.2.1",
"CFBundleIdentifier" : "com.github.kaphacius.JustTags",
"size" : 1802240,
"uuid" : "05f86514-af00-3f7b-9beb-ff89973085a7",
"path" : "/Applications/JustTags.app/Contents/MacOS/JustTags",
"name" : "JustTags",
"CFBundleVersion" : "2023052101"
},
{
"source" : "P",
"arch" : "arm64e",
"base" : 4494786560,
"size" : 49152,
"uuid" : "8e928412-9e96-32d4-b173-d99beb9fed0b",
"path" : "/usr/lib/libobjc-trampolines.dylib",
"name" : "libobjc-trampolines.dylib"
},
{
"source" : "P",
"arch" : "arm64e",
"base" : 6847184896,
"size" : 5476352,
"uuid" : "eaa43988-4f04-3d39-a0a6-d597e46e966e",
"path" : "/usr/lib/swift/libswiftCore.dylib",
"name" : "libswiftCore.dylib"
},
{
"source" : "P",
"arch" : "arm64e",
"base" : 6598963200,
"CFBundleShortVersionString" : "6.9",
"CFBundleIdentifier" : "com.apple.CoreFoundation",
"size" : 5087232,
"uuid" : "b3b2df49-2db8-370e-84ae-e0a2704515b8",
"path" : "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation",
"name" : "CoreFoundation",
"CFBundleVersion" : "1979"
},
{
"source" : "P",
"arch" : "arm64e",
"base" : 6615322624,
"CFBundleShortVersionString" : "6.9",
"CFBundleIdentifier" : "com.apple.Foundation",
"size" : 10248192,
"uuid" : "b7799cb6-0a3c-3c8b-a185-8cec55845b14",
"path" : "/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation",
"name" : "Foundation",
"CFBundleVersion" : "1979"
},
{
"source" : "P",
"arch" : "arm64e",
"base" : 6651830272,
"CFBundleShortVersionString" : "6.9",
"CFBundleIdentifier" : "com.apple.AppKit",
"size" : 15794176,
"uuid" : "ab4a163e-3a53-3fde-a88d-130759291adb",
"path" : "/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit",
"name" : "AppKit",
"CFBundleVersion" : "2299.70.136"
},
{
"source" : "P",
"arch" : "arm64e",
"base" : 8379445248,
"CFBundleShortVersionString" : "5.0",
"CFBundleIdentifier" : "com.apple.QuickLookUIFramework",
"size" : 1245184,
"uuid" : "f0745ac2-0228-3e04-b6c9-541d9dedb6e4",
"path" : "/System/Library/Frameworks/QuickLookUI.framework/Versions/A/QuickLookUI",
"name" : "QuickLookUI",
"CFBundleVersion" : "965.6"
},
{
"source" : "P",
"arch" : "arm64e",
"base" : 7273160704,
"CFBundleShortVersionString" : "4.6.3",
"CFBundleIdentifier" : "com.apple.SwiftUI",
"size" : 25821184,
"uuid" : "3694a102-743d-3f77-831b-d48abfa835dd",
"path" : "/System/Library/Frameworks/SwiftUI.framework/Versions/A/SwiftUI",
"name" : "SwiftUI",
"CFBundleVersion" : "4.6.3"
},
{
"source" : "P",
"arch" : "arm64e",
"base" : 6758998016,
"CFBundleShortVersionString" : "2.1.1",
"CFBundleIdentifier" : "com.apple.HIToolbox",
"size" : 3358720,
"uuid" : "9bed5c79-f02f-3e0b-9fdb-57d955cc68ba",
"path" : "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox",
"name" : "HIToolbox"
},
{
"source" : "P",
"arch" : "arm64e",
"base" : 6595043328,
"size" : 583048,
"uuid" : "e7a99595-e0f8-34af-be8b-9347d0d658a4",
"path" : "/usr/lib/dyld",
"name" : "dyld"
},
{
"source" : "P",
"arch" : "arm64e",
"base" : 6598307840,
"size" : 237560,
"uuid" : "08c5fe2a-b0bf-3ab6-bb42-460c18917d33",
"path" : "/usr/lib/system/libsystem_kernel.dylib",
"name" : "libsystem_kernel.dylib"
},
{
"source" : "P",
"arch" : "arm64e",
"base" : 6598545408,
"size" : 53248,
"uuid" : "1f30fb9a-bdf9-32db-a709-8417666a7e45",
"path" : "/usr/lib/system/libsystem_pthread.dylib",
"name" : "libsystem_pthread.dylib"
}
],
"sharedCache" : {
"base" : 6594379776,
"size" : 3553361920,
"uuid" : "9c875b0a-d532-3933-b1f0-f1ea72cedde2"
},
"vmSummary" : "ReadOnly portion of Libraries: Total=1.4G resident=0K(0%) swapped_out_or_unallocated=1.4G(100%)\nWritable regions: Total=2.0G written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=2.0G(100%)\n\n VIRTUAL REGION \nREGION TYPE SIZE COUNT (non-coalesced) \n=========== ======= ======= \nAccelerate framework 384K 3 \nActivity Tracing 256K 1 \nCG backing stores 4480K 8 \nCG image 4800K 83 \nCG raster data 144K 3 \nColorSync 592K 30 \nCoreAnimation 46.4M 384 \nCoreGraphics 64K 4 \nCoreImage 288K 3 \nCoreUI image data 5504K 54 \nFoundation 48K 2 \nKernel Alloc Once 32K 1 \nMALLOC 362.6M 71 \nMALLOC guard page 192K 10 \nMALLOC_MEDIUM (reserved) 1.2G 10 reserved VM address space (unallocated)\nMALLOC_NANO (reserved) 384.0M 1 reserved VM address space (unallocated)\nSTACK GUARD 56.1M 5 \nStack 10.1M 5 \nVM_ALLOCATE 12.6M 30 \n__AUTH 1859K 345 \n__AUTH_CONST 28.1M 566 \n__CTF 824 1 \n__DATA 12.8M 552 \n__DATA_CONST 27.6M 570 \n__DATA_DIRTY 1987K 215 \n__FONT_DATA 2352 1 \n__INFO_FILTER 8 1 \n__LINKEDIT 806.3M 3 \n__OBJC_RO 66.4M 1 \n__OBJC_RW 2012K 1 \n__TEXT 614.2M 590 \ndyld private memory 272K 2 \nmapped file 239.8M 53 \nshared memory 9.9M 21 \n=========== ======= ======= \nTOTAL 3.8G 3630 \nTOTAL, minus reserved VM space 2.3G 3630 \n",
"legacyInfo" : {
"threadTriggered" : {
"queue" : "com.apple.main-thread"
}
},
"logWritingSignature" : "05d8ab5d8e531d4900351312e5935f88ccfd6493",
"trialInfo" : {
"rollouts" : [
{
"rolloutId" : "5f72dc58705eff005a46b3a9",
"factorPackIds" : {

  },
  "deploymentId" : 240000015
},
{
  "rolloutId" : "5fb4245a1bbfe8005e33a1e1",
  "factorPackIds" : {

  },
  "deploymentId" : 240000021
}

],
"experiments" : [
{
"treatmentId" : "3a3cf641-8471-4e4e-9ad4-81d0ede970fd",
"experimentId" : "64a84dae90d82611a0bd7d3d",
"deploymentId" : 400000004
},
{
"treatmentId" : "8ca8349c-e2bc-482c-9ca7-3907b48a5341",
"experimentId" : "648b5a581b04c12d4127bbb6",
"deploymentId" : 400000002
}
]
}
}

Improve ordering of Best matches

Few ideas:

  1. Sort based on how many words were matched: typing action code would put currency code lower than action code
  2. Full match has higher priority than partial match: typing action code would put action code higher than transaction code

Allow partial matches during searching

If term caps is entered during tag search, Terminal Capabilites tag should be matched.
What can be done:

  1. Have a Set of words regarding each tag (filtering everything less than 3 characters).
  2. Split the search terms in words.
  3. Look for partial matches in the Set.

Visualize DOLs

Data Objects List such as PDOLs are hard to read in the current visualisation. The visualisation of DOLs should be straightforward since the individual elements in the DOLs are just sequences of TLs(TagLengths). The utility should therefore do 2 steps in the decoding process:
i) Identify that the parsed TLV is a DOL. For eg., 9F38 is the Processing Options Data Object List used in the GPO command.
ii) Actually deserialise the value of this TLV to visualise it as a sequence of TLs.

Validate the mapping jsons

Things like:

  • if all bits in a single byte are mapped
  • if there are no overlapping groups in a single byte

Extend state restoration

Things to restore:

  • Main view state (sidebar, selected tag, selected kernels, search?)
  • Diff view state (tabs, title, diffed tags, show only different tags option)
  • Library view state (selected tag, search?)
  • Window parameters (windows/tabs, position?, size?)

Kernel selection per tab

In the current implementation, selected kernels apply to every the same. It should be possible to select kernels only for a specific tag. The selected kernels should also be saved in the state to be restored later

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.