diff --git a/changelog/0.16.2.txt b/changelog/0.16.2.txt new file mode 100644 index 0000000..9dcf53b --- /dev/null +++ b/changelog/0.16.2.txt @@ -0,0 +1,226 @@ +v0.16.2 + +## Improvements + +- Improved PATH support using 'shellenv' dependency #60, thanks to @dnicolson + + +v0.16.19 + +## Improvements + +- Updated flow-bin to 0.74.0 + +## Fixes + +- Fixed an issue with the "fish" shell when determining the system path #59, thanks to @dnicolson + + +v0.16.18 + +## Fixes + +- Fixed "Some default key bindings are overridden by JavaScriptEnhancements" #57: + - New key binding for "Can I use" feature: super+alt+j + - New key binding for "Show Hint Parameters" feature: super+alt+h + + +v0.16.17 + +## Improvements + +- Updated flow-bin to 0.73.0 + + +v0.16.16 + +## Fixes + +- Fixed "Autocompletion does not work on files with non-latin chars" #54 + + +v0.16.15 + +## Improvements + +- Updated flow-bin to 0.72.0 + + +v0.16.14 + +## Fixes + +- Try to solve "Interoperability with sublimelinter" #47 + +## Improvements + +- Updated flow-bin to 0.71.0 + + +v0.16.13 + +## Fixes + +- Fixed "How to install flow typings?" #48 + +## Improvements + +- Updated flow-bin to 0.70.0 +- Updated flow-typed to 2.4.0 + + +v0.16.12 + +## Fixes + +- Trying to fix #41 +- Fixed "Plugin not honouring ST3 user settings - show_definitions" #42 + +## Improvements + +- Updated flow-bin to 0.69.0 +- Improved unused variable feature + + +v0.16.11 + +## Fixes + +- Trying to fix #41 + +## Improvements + +- Updated flow-bin to 0.68.0 + + +v0.16.1 + +## Fixes + +- Fixed NameError: global name 'subprocess' is not defined on /src/libs/terminal.py - Windows OS +- Fixed NoneType error on self.completions.append(completion) in /src/listeners/completion.py + + +v0.16.0 + +## Fixes + +- Fixed jsdoc generate command +- Fixed error on refactor safe commands when the file name is empty +- Fixed export refactor feature preview +- Fixed some popup colors with different theme color scheme +- Fixed completions and hover_description that starts with "$" +- Fixed issue #36, keymap of next flow error feature changed from "super+alt+c" to "super+alt+b" + +## Improvements + +- Complete code plugin refactoring +- Improved completions performance using 'flow ide' command +- Added "code screenshot" feature using [carbon](https://carbon.now.sh/) +- updated flow-bin to 0.67.1 +- Added initial support for Vue.js (see https://github.com/pichillilorenzo/JavaScriptEnhancements/wiki/Example-Vue.js-project) +- Improved extract method feature +- Improved completions detection from default_autocomplete.json +- Added Flow warnings +- Improved unused variable feature + +## Misc +- Changed gutter color (using other available sublime scopes) for errors and unused variable features. + +================================================================= +** THIS PLUGIN IS IN BETA! Thanks for your support in advance! ** +================================================================= + +If you like it, remember to star it ⭐ on GitHub: https://github.com/pichillilorenzo/JavaScriptEnhancements + +** USAGE ** +=========== + +See how it works on the Wiki: 👉👉 https://github.com/pichillilorenzo/JavaScriptEnhancements/wiki 👈👈 + +A little introduction to this plugin could be found in this css-tricks.com article: "Turn Sublime Text 3 into a JavaScript IDE" +👉👉 https://css-tricks.com/turn-sublime-text-3-into-a-javascript-ide 👈👈 + + +***************************************************************************** +* * +* Do you want to help me develop this plugin? * +* * +* Become a member of the team! * +* (see https://github.com/pichillilorenzo/JavaScriptEnhancements/issues/51) * +* * +***************************************************************************** + + +** WHAT IS THIS? ** +=================== + +This plugin uses Flow (javascript static type checker from Facebook) under the hood. + +It offers better javascript autocomplete and a lot of features about creating, +developing and managing javascript projects, such as: + +- Cordova projects (run cordova emulate, build, compile, serve, etc. directly from Sublime Text!) +- Ionic v1 and v2 (it includes also v3) projects (same as Cordova projects!) +- Angular v1 and v2 (it includes also v4 and v5) projects +- Vue projects (only about the creation at this moment, see https://github.com/pichillilorenzo/JavaScriptEnhancements/wiki/Example-Vue.js-project) +- React projects (only about the creation at this moment) +- React Native projects (only about the creation at this moment. I will add also NativeScript support) +- Express projects (only about the creation at this moment) +- Yeoman generators +- Local bookmarks project +- JavaScript real-time errors +- Code Refactoring +- etc. + +You could use it also in existing projects (see the Wiki - https://github.com/pichillilorenzo/JavaScriptEnhancements/wiki/Using-it-with-an-existing-project)! + +It turns Sublime Text into a JavaScript IDE like! + +This project is based on my other Sublime Text plugin JavaScript Completions (https://github.com/pichillilorenzo/JavaScript-Completions) + +** NOTE ** +If you want use this plugin, you may want uninstall/disable the JavaScript Completions plugin, if installed. + +** OS SUPPORTED ** +================== + +👉 Linux (64-bit) +👉 Mac OS X +👉 Windows (64-bit): released without the use of TerminalView plugin. For each feature (like also creating a project) will be used the cmd.exe shell (so during the creation of a project don't close it until it finishes!). Unfortunately the TerminalView plugin supports only Linux-based OS 😞. See https://github.com/Wramberg/TerminalView/issues/3#issuecomment-390434623, that is a workaround using WSL (Windows Subsystem for Linux). + +❗❗ Dependencies ❗❗ +======================= + +In order to work properly, this plugin has some dependencies: + +👉 Sublime Text 3 (build 3124 or newer) +👉 Node.js and npm (https://nodejs.org or nvm (https://github.com/creationix/nvm)) +👉 TerminalView (only for Linux and Mac OS X) sublime text plugin (https://github.com/Wramberg/TerminalView) + +Not required, but useful for typescript files (Flow wont work on this type of files): + +👉 TypeScript sublime text plugin (https://github.com/Microsoft/TypeScript-Sublime-Plugin) + +** Flow Requirements ** +======================= + +It use [Flow](https://github.com/facebook/flow) for type checking and auto-completions. + +👉 Mac OS X +👉 Linux (64-bit) +👉 Windows (64-bit) + +Email me for any questions or doubts about this new project on: pichillilorenzo@gmail.com + +** Donation ** +============== + +If this project help you reduce time to develop and also you like it, please support it with a donation 😄👍. Thanks! + +Open Collective: https://opencollective.com/javascriptenhancements/donate +PayPal: https://www.paypal.me/LorenzoPichilli + +Thanks anyway for your support! 😄😄 + +MIT License \ No newline at end of file diff --git a/main.py b/main.py index 6679914..2e21f74 100644 --- a/main.py +++ b/main.py @@ -111,7 +111,32 @@ def start(): fixPathSettings = None fixPathOriginalEnv = {} +# def getSysPath(): +# command = "" +# if platform.system() == "Darwin": +# command = "env TERM=ansi CLICOLOR=\"\" SUBLIME=1 /usr/bin/login -fqpl $USER $SHELL -l -c 'TERM=ansi CLICOLOR=\"\" SUBLIME=1 printf \"%s\" \"$PATH\"'" +# elif platform.system() == "Linux": +# command = "env TERM=ansi CLICOLOR=\"\" SUBLIME=1 $SHELL --login -c 'TERM=ansi CLICOLOR=\"\" printf \"%s\" $PATH'" +# else: +# return "" + +# # Execute command with original environ. Otherwise, our changes to the PATH propogate down to +# # the shell we spawn, which re-adds the system path & returns it, leading to duplicate values. +# sysPath = Popen(command, stdout=PIPE, shell=True, env=fixPathOriginalEnv).stdout.read() + +# # this line fixes problems of users having an "echo" command in the .bash_profile file or in other similar files. +# sysPath = sysPath.splitlines()[-1] + +# sysPathString = sysPath.decode("utf-8") +# # Remove ANSI control characters (see: http://www.commandlinefu.com/commands/view/3584/remove-color-codes-special-characters-with-sed ) +# sysPathString = re.sub(r'\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]', '', sysPathString) +# sysPathString = sysPathString.strip().rstrip(':') + +# # Decode the byte array into a string, remove trailing whitespace, remove trailing ':' +# return sysPathString + def fixPath(): + # currSysPath = getSysPath() currSysPath = ':'.join(shellenv.get_path()[1]) # Basic sanity check to make sure our new path is not empty if len(currSysPath) < 1: diff --git a/messages.json b/messages.json index 424531e..e5649bb 100755 --- a/messages.json +++ b/messages.json @@ -29,5 +29,6 @@ "0.16.16": "changelog/0.16.16.txt", "0.16.17": "changelog/0.16.17.txt", "0.16.18": "changelog/0.16.18.txt", - "0.16.19": "changelog/0.16.19.txt" + "0.16.19": "changelog/0.16.19.txt", + "0.16.2": "changelog/0.16.2.txt" } \ No newline at end of file diff --git a/src/libs/global_vars.py b/src/libs/global_vars.py index 3f33206..cec2037 100644 --- a/src/libs/global_vars.py +++ b/src/libs/global_vars.py @@ -1,6 +1,6 @@ import os -PLUGIN_VERSION = "0.16.19" +PLUGIN_VERSION = "0.16.2" DEVELOPER_MODE = False PACKAGE_PATH = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))