Skip to content

Encodes the selected JSX to JSXBIN.

License

Notifications You must be signed in to change notification settings

alexmunteanu/jsxbin-encoder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

103 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JSXBIN encoder (Atom package)

For VSCode, see VS Code Adobe Development Utils extension ( GitHub ).

Encodes the selected JSX to JSXBIN. For encoding, it uses the @esdebug module from ExtendScript Debugger.

jsxbin-encoder demo encoding

Installation

  • Via apm
apm install jsxbin-encoder
  • From Atom
    • Settings > Install > Search packages for jsxbin-encoder.
    • Click Install and then reload Atom.
  • From GitHub
    • Download the latest release and extract the archive directly to /users/YOUR_USERNAME/.atom/packages.
    • Run npm install.

Usage

  • Select a piece of your JSX.
  • Then do one of the following:
    • For Encoding:
      • Press Ctrl + Alt + Q on Windows or Cmd + Alt + Q on Mac.
      • Right click and choose Encode to JSXBIN.
      • From Atom's menu: Packages > JSXBIN encoder > Encode to JSXBIN.

Features

  • Script obfuscation before the JSXBIN encoding.
  • Script analysis - a notification will pop-up:
    • if the script might become slower to process (hardcoded: a percentage of eval uses out of the total number of script lines)
    • if the selection already contains JSXBIN encoded lines
    • if the scripting language isn't supported (.js, .jsx, .jsxinc and .jsxbin only)
  • Auto-complete selections:
    • the JSX selection will be updated automatically so that the entire start and end lines are being completely selected

Utilities

  • JS multi-line comment:
    • Description: comments the selection, in a multi-line comment style.
    • Keyboard shortcut: Alt + C
  • JS multi-line uncomment:
    • Description:
      • uncomments the selected multi-line comment.
      • you can simply move the cursor inside a multi-line comment block and run the utility (no need to select the entire block).
    • Keyboard shortcut: Alt + X

Options

  • Grow selection: Automatically grow the selection to the beginning and end of each selected line. Default: true
    • You can select incomplete lines and the selection will be grown automatically to the beginning and end of each line.
    • For a single line, no selection is required; the entire line will be selected automatically.
  • Encoding:
    • Obfuscate: Obfuscate the selection before encoding it to JSXBIN. Uses javascript-obfuscator. Default: false
    • eval() position: Insert the eval method above or under the selection. Default: under
    • Quotes: Use single or double quotes inside the eval method. Default: single
  • Comments:
    • Auto-fold: Auto-fold the newly commented selection. Default: true
    • Style: Use single-line or multi-line comment style to comment-out the newly encoded selection. Default: multi-line
  • Messages:
    • Disable notifications: Choose whether to show or not a pop-up notification after each completed task. Default: false
    • Disable warnings: Choose whether to show or not a pop-up warning, if the script processing time might increase or if the current language isn't supported. Default: false

Final notes

  • Don't overuse it! 😎

Donate

Donate