Skip to content

zhsoft88/tranid

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 

tranid

Node.js based chromium devtools for generating translation id

Installation

$ [sudo] npm install -g tranid

Usage

CLI

Usage:
  tranid [OPTIONS] grd_or_grdp_file [message_name... or translation_id...]

Options:
  -h, --help: Help
  -v, --version : Version

Arguments:
  grd_or_grdp_file: grd file or grdp file or - (stands for STDIN)
  message_name...: zero or more message names (for generating translation ids)
  or
  translation_id...: zero or more translation ids (for finding corresponding message names)
  • Generating translation id for used in xtb files:

    $ tranid chromium_strings.grd
    IDS_PROFILES_DISCONNECT_MANAGED_PROFILE_TEXT 918373042641772655
    IDS_PRODUCT_NAME 7337881442233988129
    IDS_SHORT_PRODUCT_NAME 7337881442233988129
    IDS_SXS_SHORTCUT_NAME 6061155539545534980
    ......

    Generate translation ids of all message names in chromium_strings.grd

    $ tranid chromium_strings.grd IDS_PRODUCT_NAME IDS_TASK_MANAGER_TITLE IDS_SETTINGS_ABOUT_PROGRAM
    IDS_PRODUCT_NAME 7337881442233988129
    IDS_TASK_MANAGER_TITLE 7223968959479464213
    IDS_SETTINGS_ABOUT_PROGRAM 1185134272377778587 (settings_chromium_strings.grdp)
    IDS_SETTINGS_ABOUT_PROGRAM 7549178288319965365 (settings_chromium_strings.grdp)

    Generate translation ids of IDS_PRODUCT_NAME, IDS_TASK_MANAGER_TITLE and IDS_SETTINGS_ABOUT_PROGRAM in chromium_strings.grd

    Note: for convenience, tranid also search included grdp files.

  • Given translation id, find corresponding message names:

    $ tranid chromium_strings.grd 7337881442233988129
    IDS_PRODUCT_NAME 7337881442233988129
    IDS_SHORT_PRODUCT_NAME 7337881442233988129
    IDS_ACCNAME_APP 7337881442233988129
    ......

As Nodejs Module

const {tranid} = require('tranid')
const FS = require('fs')

FS.readFile('generated_resources.grd', 'utf8', function(err, data) {
  if (err)
    throw err

  // usage: tranid(grd_content, message_names or translation_ids)
  const [list, parts] = tranid(data, ['IDS_PRODUCT_NAME', 'IDS_TASK_MANAGER_TITLE'])
  for (const [name, tid] of list) {
    console.log(`${name} ${tid}`)
  }
  if (parts.length > 0) {
    console.log(`found part files: ${parts}`)
  }
}

About

Node.js based chromium devtools for generating translation id

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published