* feat(cli): Add json import/export of app config
Add the capability to export and import the application config to/from
a json file. The JSON file is LocalState\config.json in the app package
folder. The options are available via the new flags to the settings
command, e.g. `fluent.exe settings --export` and `fluent.exe settings
--import`
Import attempts to merge imported config with existing config, and
refuses to import thigns marked as pre-installed. It attempts to
merge configuration for pre-installed profiles where those fields
are editable, but otherwise discards invalid configuration.
Change-Id: Iadb468de5f724396db9a2de6bf3c3ba0d4d7ac2f
* Moved logic to SettingsService, fixed some issues
* Implementing SSH (changes from ap/ssh branch).
* Implemented opening links in the last active window.
* Using settings to determine where to open link (tab or window).
* Adding FluentTerminal.App_TemporaryKey.pfx back to repo, to solve bug with keys.
* App activation on mosh schema launching; mosh protocol parsing. (#35)
* SSH handling changed to improve links.
* Creating shortcuts from SSH dialog.
* Trivial Mosh checkbox label fix
It's "Mosh" not "MOSH".
* Obtain mosh key from ssh connection (#40)
* Prepopulate SSH username with Windows username (#50)
* Undoing Max's mosh authentication changes.
* Adding the new mosh wrapper.
* Request user name from tray process (#51)
* Mosh implemented, but still doesn't work (cannot find mosh.exe).
* Add New Remote Shell menu; Rename New Tab into New Local Shell (#52)
* Mosh works like charm.
* Mosh wrapper improved to print an error.
* Changing mosh wrapper to always exit with 0 (to ensure that the tab gets closed).
* Changing mosh wrapper again to return error codes.
* Slightly optimizing getting the username.
* Saving links improved.
* Fixed an issue in mosh wrapper, related to mosh to hostname.
* mosh-client.exe updated with 32 bit version for x86 platform (#59)
* Set line endings for remote shell connection;
Left focus on SSH info dialog if input validation error occured;
Update DataContext object on each key entered into target host text box control.
* Simplifying SSH dialog.
* Fixing some leftovers after merging.
* Fixing some after-merge issues.
* Avoiding some unintentional upstream changes.
* Fix review findings
* Creating a control for the overlay
* using Interactivity
* trying to bind by reference
* fix bindings
* remove unused packages
* Move getter/setter to show method
* Convert to AutoProperty
* Make text copied notification configurable
* cache settings, removed unused file
* Appveyor builds (#6)
* SSH implemented.
* Implementing SSH by using the existing app infrastructure.
* Refactored to new command instead of a profile
* Update .gitignore
* Better CLI parsing, command
Added the option to run a command via the CLI.
Also added a better argument parsing solution.
You can now do `flute.exe new [PATH] [COMMAND]`
Before, you could only do `flute.exe new [PATH]`
You would also need to adjust your settings, say your default profile is using powershell with custom arguments, those arguments would have to end with ";", because the `[COMMAND]` would be appended to the arguments.
* parse arguments with commandlineparser nuget
* Run commands with no underlying shell process
* Create RunVerb, cleanup terminal creation
* Fix window close bug
* Use working directory of caller if none specified
* Restore profile arguments in WinPty
* Persist custom tab title
* Logically seperate Shell and Tab title, reset Tab title on empty string
* Fix applicationview title not synched with tabtitle
* Encapsulate xterm.js implementation in XtermTerminalView
* fix TerminalTheme Equals()
* Fix new output indicator
* Ut8 and some fixes
* fix test
* fixed infinite loop on shell exit
* Update settings window layout with consistent margins
Updated the layout of the different views of the settings window so that
there is always margin at the bottom. In some cases this was achieved
using <StackPanels> for clarity and extensibility, grouping e.g. a title
and some radio options together with one unified margin.
Also made some small consistency changes to the .xaml files.
* Add width to Themes text input
* Normalize margins in settings
* Add default display values in Terminal settings
... for Arguments and Working Directory
* Generalize TemplateSelector for empty strings
* Add default display value for profile keybindings
* Update margins and fontsize in theme preview
* Update 'loading...' message in About
... to "Checking for updates..." and a spinner as suggested by
@skipmeister123
* No popup when cancelling profile edit no changes
* Delete profile when new and cancelled
* Open new and cloned themes in edit mode
... and make it so canceling deletes the theme.
* No popup when cancelling theme edit no changes
* Add resources for margin definitions
* Check for null Author in TerminalTheme
* Add resource for header margin definition
* Moved createdBy text to code behind
* On paste, the TerminalViewModel uses the ShellProfile to translate line endings.
Default line ending translation style is set to not modify the pasted contents, Next up, adding the radio button to shell profile.
* Added UI elements for choosing line ending style.
Using a converter to map between an enum and radio buttons, and another converter to map from enum to text based on the description of the enum value.
* Added "Paste without newlines" command.
* Adding missing converters to project file.
* A few fixes after cherry-picks.
* Adding missing Command property to PasteWithoutNewlines keybinding.
* Cleaned up some unnecessary property settings.
* fix#114 scrolling issue on presicion touchpads (#171)
* fix#114 scrolling issue on presicion touchpads, bounce scroll & pinch zoom
* rephrased comment
* removed css that enforced autohiding
* simplified js code handling scrollbar size
* Press enter to close an Input dialog (#177)
... As if the primary button is pressed.
* Renew certificate
* Update README.md
* Add option to use bold text in terminals (#183)
* Add option to use bold text in terminals
... as per #182
* Add BoldText to setting defaults
* Remove AppVeyor files
* Update README.md
* Add keybinding to change the (current) tab title (#193)
* Add keybinding for change the (current) tab title
Default binding is Ctrl+Shift+N
* Update change tab title default keybind to Ctrl+Shift+R
* Experimental ConPTY support (#199)
* First steps of ConPty support
* Added resize functionality
* fix cwd, args, hide console window
* Handle shell process exited
* Make ConPTY optional
* Fix automerge errors
* Accepted many XAML formatting changes, and changed command handling to switch.
* Fixed spaxcng on the settings page.
* adapted radio button binding to be in line with the rest of the application