Commit graph

251 commits

Author SHA1 Message Date
ridiculousfish
f9f773cc28 Comment on why we run 'false' in web_config.py 2014-08-22 12:04:23 -07:00
Kevin Ballard
d9bf53c6e5 Show a non-zero status in the fish_config prompt
When selecting a prompt with fish_config, render the prompt with a
non-zero status so the user knows what it looks like.
2014-08-22 12:00:16 -07:00
Andy Lutomirski
9079ec459c webconfig: fixes for token security
* Use 16-byte tokens
 * Use os.urandom (random.getrandbits shouldn't be used for security)
 * Convert to hex correctly
2014-08-22 15:44:43 +08:00
Andy Lutomirski
aaddccfdb1 webconfig: Use a constant-time token comparison
This prevents a linear-time attack to recover the auth token.
2014-08-22 15:39:13 +08:00
David Adam
4ae2753025 Authenticate connections to web_config service
- Require all requests to use a session path.
 - Use a redirect file to avoid exposing the '/start' URL on the
   command line, as it contains the cookie value.

Fix for CVE-2014-2914.
Closes #1438.
2014-08-04 13:34:26 +08:00
Konrad Borowski
6c80a3461c
Add support for toor account.
Currently fish doesn't recognize toor as special. However, it's likely
that on BSD systems, fish shell will be used on toor, not on root (toor
is an intentionally existing account to use more advanced shell on, like
shell).
2014-07-30 11:55:47 +02:00
ridiculousfish
b6658c5497 Render sample prompts faster in fish_config by using a thread pool 2014-07-29 12:12:32 -07:00
ridiculousfish
aad5163b49 Make prompt selection more like color selection in fish_config. Remove
the "show prompt source" button.
2014-07-29 11:00:39 -07:00
David Xia
adabc2d7a0 Fix fish_config error with python3
Closes #1253.
2014-07-28 22:02:55 +08:00
Siteshwar Vashisht
317660c2fe Avoid using OptionParser to parse bindings in webconfig.py
OptionParser eats commaandline arguments passed to bind actions, so avoid using it.
2014-07-25 08:39:31 +05:30
ridiculousfish
f6a89d13c2 Merge branch 'master' of github.com:fish-shell/fish-shell 2014-07-23 22:27:37 -07:00
Siteshwar Vashisht
3e01dd955f Updated code to parse bindings in webconfig.py 2014-07-23 01:53:15 +05:30
adisbladis
27fa0ea9d7 "webconfig.py: Don't allow NoneType as buffer, fallback to bytes.
Fixes TypeErrors when using bindings tab"
2014-07-22 12:31:57 +02:00
Siteshwar Vashisht
7b3132d39d Fixed code to parse bindings for webconfig 2014-06-08 16:05:00 +05:30
Konrad Borowski
d97e31b4ab git prompt shouldn't export variables. 2014-06-01 09:39:28 +02:00
Maurizio De Santis
4285baa6e1 Prompt sample: Debian chroot environment
When you chroot in Debian, bash shows the chroot environment in the prompt:

```bash

...

if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

...
```

This is the effect:

```
(chroot_env) user@host:~#
```

It is useful when chrooting, since usually the hostname remains the same and thus you can't distinguish where you are.
2014-05-03 12:28:38 -07:00
Anders Bergh
44b35f7735 fish_config: Listen on both IPv6 and IPv4.
A subclass of TCPServer was created to deny any non-local connections and to
listen using an IPv6 socket.
2014-03-31 10:06:46 -07:00
Konrad Borowski
6d749789ce Use 127.0.0.1 for fish config.
Before this change, fish config used 0 as its address. However, this
isn't a good idea from security point of view, as web service can be
accessed from everywhere, and do anything on the account it was ran on.

This also deals with firewalls which block the access to 0 even from
the host machine itself. It possibly might fix #673, but I'm not sure.
2014-02-27 14:47:08 +01:00
ridiculousfish
5e7c01c251 Rework color editing in fish_config. Bury customization mode a bit:
initially the user only sees the various themes, and has to activate
customization mode to change colors. Tweak the appearance as well.
2014-02-24 01:56:02 -08:00
ridiculousfish
77dbaf3aef Fix for Python out-of-range exception when accessing Bindings tab 2014-02-09 20:19:04 -08:00
Siteshwar Vashisht
a1b43b7a09 Fix for opening bindings tab as initial tab
'fish_config bindings' command should open bindings tab as initially active tab
2014-01-30 23:53:49 +05:30
Konrad Borowski
2927514e68 Partially fix #1224.
It would be nice if this would work without this hack,
but until then, this has to work. Requires you to reinstall
the prompt using fish configuration system.
2014-01-10 21:33:50 +01:00
Siteshwar Vashisht
646180518a Minor fixes in the colors tab
* Show color scheme title in preview box
* Show information about setting terminal background color on Apply
button mouse hover
* Added text_color_for_color method in colors controller scope
2013-12-07 13:12:43 +05:30
Siteshwar Vashisht
659541f4a5 Merge branch 'master' into fish_config_angular 2013-12-07 09:50:59 +05:30
Konrad Borowski
591abd340b Fix bold in informative git prompt.
Currently this fix is useless, as web config cannot apply variables,
but in future, it could be more useful.
2013-11-27 11:41:13 +01:00
d10n
168d25e780 Do not open CLI browsers when using fish_config.
From the Python webbrowser documentation:
"If text-mode browsers are used, the calling process will block until the user exits the browser."

Running fish_config on an ssh server with no GUI browser will open a CLI browser which blocks and stops the server from handling requests.
Using multiprocess to run the server in the background lets CLI browsers access the page, but the page is unusable.

For now, disable CLI browsers and recommend opening the page in a graphical browser.
In the future, maybe write a CLI utility to change prompts and delete history items.
2013-11-26 00:41:09 -08:00
Siteshwar Vashisht
2271526d2f Do not highlight selected prompt 2013-11-09 23:33:56 +05:30
Siteshwar Vashisht
ea2e1f016f Set current prompt as selected prompt after prompt change 2013-11-09 20:43:19 +05:30
Siteshwar Vashisht
c4aa223698 Changed UI of prompt tab
Show function definition and use button under prompt demo when prompt
demo is selected
2013-11-09 19:30:41 +05:30
Siteshwar Vashisht
63233655f4 Updated fish_config prompt tab 2013-11-09 18:26:44 +05:30
Marc Joliet
fe3bca3a88 Prefer standard library lzma module if available
Prefer the standard library lzma module if available.  This change prevents
using the backports-lzma when it is installed for a version of Python that
already has the lzma module in its standard library.
2013-11-09 19:46:42 +08:00
Siteshwar Vashisht
9e424ed921 Show actual binding if user clicks a binding item 2013-10-27 18:51:50 +05:30
Siteshwar Vashisht
be55d2c57f Updated handling escape character in binding parser 2013-10-25 00:05:26 +05:30
Siteshwar Vashisht
119dd06ea8 Add a one second delay between query input and filtering history 2013-10-22 23:45:32 +05:30
Siteshwar Vashisht
aed26f8c1e Added code for parsing end key 2013-10-22 23:08:30 +05:30
Siteshwar Vashisht
6482fd52fb Moved some color related methods from index.html to colorutils.js 2013-10-22 23:00:38 +05:30
Siteshwar Vashisht
44b091a7c6 Enabled filtering by binding keys 2013-10-22 00:24:15 +05:30
Siteshwar Vashisht
8279a0d477 Display bindings, history and variables in multiple lines on click 2013-10-21 23:42:16 +05:30
Siteshwar Vashisht
7709af7a62 Removed extra spaces while showing function definition 2013-10-21 23:40:43 +05:30
Siteshwar Vashisht
80a48be324 Changed scheme for loading key bindings 2013-10-20 15:03:47 +05:30
Siteshwar Vashisht
bc9e2266be Added current scheme in list of color schemes 2013-10-20 14:28:40 +05:30
Siteshwar Vashisht
ff4d0ce1e1 Moved angular.js to js directory 2013-10-19 23:56:23 +05:30
Siteshwar Vashisht
5d8c776250 Moved all functions related to colors to a separate file 2013-10-19 23:54:51 +05:30
Siteshwar Vashisht
3d2315d596 Use single expression instead of a function call to show selected tab 2013-10-19 22:47:18 +05:30
Siteshwar Vashisht
892cc7da31 Added a global error handler 2013-10-19 22:36:18 +05:30
Siteshwar Vashisht
eb9e712f91 Reorganized javascript code across app, filters and controllers
Moved all javascript files under js folder
Removed jquery.js from repository
2013-10-19 12:02:00 +05:30
Konrad Borowski
2a6eb83fb4 Merge pull request #1015 from marcecj/add_bz2_lzma_xz_support
Support bzip2 and lzma/xz compressed man pages
2013-10-18 05:09:00 -07:00
Siteshwar Vashisht
877a14c0b8 Added a filter for filtering bindings 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
0ad6e6f459 Updated binding tab to show descriptive key names 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
885c23b453 Show readable description of bindings 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
7cb8f6e9fc Added missing bindings partial 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
04f518082c Initial implementation of bindings tab 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
26926551cf Minor clean up of index.html 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
2069094f55 Removed unrequired code from colors controller 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
976a0a6264 Removed older css file 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
8edcf25ba3 Changed name of colors partials file and javascript file 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
e4029d00b6 Enabled support for applying color settings in new colors tab 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
044ff5e055 Updated new colors tab to enable background colors and selecting colors from options 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
0de8c28cf4 Updated history tab to show progress on loading items 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
a1bca962a7 Updated variables tab 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
f1a13c4ee5 Updated functions tab 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
5f6ec391e3 Initial work to add support for new colors tab 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
bf656577d9 Added support for setting colors 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
171bcb1ccf Cleaned up index.html 2013-10-17 19:47:04 +05:30
Siteshwar Vashisht
5e53c1cde8 Added support filter variables and history items 2013-10-17 19:47:03 +05:30
Siteshwar Vashisht
72431456ff Fixed code to delete history item 2013-10-17 19:47:03 +05:30
Siteshwar Vashisht
b8deb49007 Fixed code for changing prompt 2013-10-17 19:47:03 +05:30
Siteshwar Vashisht
6b34f19396 Stop using indexes while selecting colors configs 2013-10-17 19:47:03 +05:30
Siteshwar Vashisht
c018bfdb4d Initial work to add support for angularjs 2013-10-17 19:47:03 +05:30
Marc Joliet
6de9a92582 Change the way xz/lzma man pages are detected
This avoids the use of the global and puts the diagnostic message in a
self-contained location.
2013-10-17 12:12:04 +02:00
Marc Joliet
1c8c9a10b5 Only print an error when an lzma/xz manpage occurs
Only print an error when an lzma/xz compressed man page occurs. Also, use
add_diagnostic instead of print.
2013-09-25 18:16:47 +02:00
Konrad Borowski
4aa9f76d06 Fix one element tuple to be actually tuple.
While in this case it doesn't mean much (neither `z` or `-` would be
passed to options parser), it makes things possibly less buggy.
2013-09-25 16:39:22 +02:00
Marc Joliet
fc7c489ab6 Skip lzma/xz manpages if lzma module not available
Skip man pages compressed with lzma/xz if the lzma module is not available; also
print a corresponding diagnostic message.
2013-09-25 15:41:48 +02:00
Marc Joliet
4856567a2a Only try "lzma" module on ImportError 2013-09-25 15:41:14 +02:00
Marc Joliet
7d0722bc18 Change an "if" to more appropriate "elif"
I overlooked an "if" that should have been an "elif". Oops.
2013-09-25 01:35:32 +02:00
Marc Joliet
4340368277 Support bzip2 and lzma/xz compressed man pages
Add support for bzip2 and lzma/xz compressed man pages.  Support for bzip2 is
part of the Python standard library (at least for 2.7 and >=3.2), while lzma/xz
is only in Python >=3.3; however, there is a backports module for Python 2.7 and
3.2.
2013-09-24 15:49:59 +02:00
bathtub
df300e042b Small fix for fish_update_completions (amended)
Amended from https://github.com/fish-shell/fish-shell/pull/1003.
Fix a Unicode parsing error; search man6.
2013-09-19 13:15:15 +02:00
Konrad Borowski
a1020b3e61 Remove useless semicolon in webconfig.py 2013-09-08 20:19:43 +02:00
Konrad Borowski
0479f0ad63 Remove useless debugging code 2013-07-27 17:08:06 +02:00
ridiculousfish
886c4320d6 Merge branch 'informative_git' of git://github.com/mariuszs/fish-shell into mariuszs-informative_git 2013-07-11 12:26:25 -07:00
Siteshwar Vashisht
379cf3d249 Converted tabs to spaces in webconfig script 2013-07-06 21:09:20 +05:30
Siteshwar Vashisht
0fe44f0e2a Cleaned up commented lines and updated method names in create_manpage_completions script 2013-07-06 20:57:41 +05:30
Mariusz Smykuła
228fa38240 Renaming, cleanup 2013-06-18 22:26:43 +02:00
Mariusz Smykuła
a142c5e1ec Support for defining color with bold/brighter color set 2013-06-18 22:20:28 +02:00
Mariusz Smykuła
918df393e6 Use tabs, sample prompt 2013-06-18 08:52:32 +02:00
Dag Odenhall
c06b1694a2 Parse man8 pages with fish_update_completions
Closes #727
2013-05-25 13:57:10 -07:00
Marc Qualie
9169a673d5 Slightly modified this theme to match robbyrussel
I recently switch from ZSH to Fish shell and noticed that this theme is slightly different to the one provided by ZSH. I edited my own using funced but thought it might be useful for other people who are used to the ZSH interface.
2013-05-24 23:18:24 -07:00
ridiculousfish
8befc474c1 Ugly hack to move functions in sample prompts inside fish_prompt to address #736 2013-05-13 10:17:31 -07:00
ridiculousfish
2f5016262a Attempt again to fix UnicodeDecodeError (issue #658) 2013-05-12 01:57:42 -07:00
ridiculousfish
2517832718 Teach fish_config how to find fish from __fish_bin_dir
Fixes https://github.com/fish-shell/fish-shell/issues/621
2013-04-15 14:15:47 -07:00
ridiculousfish
1c5556334d Try to fix UnicodeDecodeError in create_manpage_completions.py
https://github.com/fish-shell/fish-shell/issues/658
2013-04-15 01:05:56 -07:00
ridiculousfish
0e24676144 Fix to make create_manpage_completions work with Python 3
Fixes https://github.com/fish-shell/fish-shell/issues/658 ?
2013-04-14 02:03:53 -07:00
ridiculousfish
e7c1cb7185 Move autogenerated completions to ~/.config/fish/generated_completions/
https://github.com/fish-shell/fish-shell/issues/576
2013-02-17 16:14:36 -08:00
ridiculousfish
cddf7e0986 Clean up man page parser output a bit 2013-01-27 12:58:52 -08:00
ridiculousfish
214ef3dd0b Formatting 2013-01-16 14:50:08 -08:00
ciembor
406c8a6d1e Ajax fix for Firefox, it isn't XML. 2013-01-16 14:45:59 -08:00
ridiculousfish
de084b4a0d Make create_manpage_completions not generate empty files
https://github.com/fish-shell/fish-shell/issues/506
2013-01-08 14:58:27 -08:00
Anders Bergh
56dd25667d Make fish_config compatible with Python 2.5
Try to import parse_qs from the cgi module, and simplejson instead of json.
Use old string formatting. str.format() was backported from Python 3
to 2.6 and isn't available in 2.5.
2012-12-12 12:51:55 +01:00
Jean-Daniel Dupas
43d2e15bb7 Try to fix create_manpage_completions script for system where sysgetdefaultencoding() returns ASCII. 2012-12-02 15:31:44 +01:00
ridiculousfish
be80e1a863 Improvements to man page parser, and to description truncation
Fixes https://github.com/fish-shell/fish-shell/issues/98
2012-11-22 20:32:19 -08:00
Łukasz Niemier
47df1ae40a Remove trailing whitespaces and change tabs to spaces 2012-11-18 11:23:22 +01:00
Siteshwar Vashisht
768f92303e Removed python scripts to import bash settings 2012-10-27 23:57:15 +05:30
Terje Larsen
f56f84c6ac Use echo -n instead of printf
- Remove useless comment, because multi-line prompt works good now.
2012-10-20 12:52:53 -07:00
ridiculousfish
c7bf1aa222 Handle some more escapes in de-groffing man pages
Fixes https://github.com/fish-shell/fish-shell/issues/10
2012-10-17 18:22:57 -07:00
ridiculousfish
211b9ea8b9 Added terlar's prompt, and robbyrussell which was inadvertently omitted
https://github.com/fish-shell/fish-shell/issues/329
2012-10-15 18:45:46 -07:00
Peter Ammon
86a978d9ee Fixed web_config prompt to work with Python 2.6.1 2012-09-10 02:11:06 -07:00
ridiculousfish
f6fe3df59b Fix to make prompt chooser work in Python3 2012-09-06 19:01:07 -07:00
ridiculousfish
e0764bb25e Improve python3 compatibility in webconfig.py 2012-09-06 02:03:21 -07:00
ridiculousfish
1ba0bfd10c Renamed hyperminamlist prompt 2012-09-06 01:52:21 -07:00
ridiculousfish
3589554028 Allow setting the prompt from web_config 2012-09-06 01:30:26 -07:00
ridiculousfish
3606664cf7 Merge branch 'webserver' of git://github.com/simukis/fish-shell into simukis-webserver
Conflicts:
	share/tools/web_config/webconfig.py
2012-08-20 12:03:39 -07:00
ridiculousfish
81f45208b0 Make history deletion from web config work properly with Unicode under both Python2 and Python3
Make the filter search field hide properly in tabs where it's non-functional
Fixes https://github.com/fish-shell/fish-shell/issues/265
2012-08-20 11:58:54 -07:00
Simonas Kazlauskas
ef566836c4 Wipe unnecessary as statement 2012-08-19 23:26:15 +03:00
Simonas Kazlauskas
10dfca1a75 Decode data in python3 – Fixes #265.
In both in python2 and python3 parse_qs expects str object. In
python2 it worked ok, because self.rfile was open in binary mode and
str in python2 is actually a string of bytes. However in python3 str is
actually string of unicode literals, not bytes and file was still open
in binary mode. Thus, deleting any file with non-ascii byte inside
filename failed in python3.

Also, cgi.parse_qs is deprecated and shouldn't be used.
2012-08-19 23:19:07 +03:00
Simonas Kazlauskas
b3e3f041fe Remove trailing spaces and replace tabs with spaces 2012-08-19 22:55:50 +03:00
ridiculousfish
f41a699f5d Fix to make the choose-a-port loop work correctly for webconfig.py under Python3 2012-08-17 01:14:05 -07:00
ridiculousfish
f6b76e6ecb Fix to allow specifying an initial tab in fish_config
For example, you can run "fish_config history"
2012-07-27 13:40:43 -07:00
ridiculousfish
e7cbcc83a4 Implemented history deletion from fish_config
Fixes https://github.com/fish-shell/fish-shell/issues/250
2012-07-27 00:31:00 -07:00
ridiculousfish
0c8c32cd03 Fix for https://github.com/fish-shell/fish-shell/issues/105
Not sure why the escape character was being printed in the manpage completions script
2012-07-08 17:35:07 -07:00
ridiculousfish
9228dffe5e Don't generate completions if we already have bespoke completions in the data directory
Fixes https://github.com/fish-shell/fish-shell/issues/148
Also fix some Python3 issues
2012-06-18 13:59:34 -07:00
ridiculousfish
1bead8adf7 Fix to create_manpage_completions.py to flush after every line (so you see more progress) and to put the cursor at the beginning (so it doesn't jump around) 2012-06-17 15:19:55 -07:00
Siteshwar Vashisht
602109bd8d Some improvements in bash configuration importer script 2012-06-12 11:08:30 +05:30
Siteshwar Vashisht
23ce927301 Fixed a bug in manpage generator. 2012-06-07 20:48:54 +05:30
Siteshwar Vashisht
c7941fc7b0 Use manpath instead of man --path to find man page paths. 2012-06-07 00:00:43 +05:30
adisbladis
c0085cbc61 Python3 fixes in import_bash_settings.py 2012-06-05 20:40:51 -07:00
Adam
a49d245b92 Python3 fixes for webconfig.py 2012-06-05 20:40:51 -07:00
Adam
4e3acdcbdc Unicode error fix in manpage completion with python3 2012-06-05 15:26:11 -07:00
Adam
85f808130d Manpage generation now works with python3 2012-06-05 15:26:11 -07:00
ridiculousfish
53cba2a2e6 Improved webconfig.py's handling of combined term256 and classic colors 2012-06-05 01:19:59 -07:00
ridiculousfish
4bd63020ca Fix to add a little explanatory text to colors in the web config interface 2012-05-08 17:10:38 -07:00
ridiculousfish
d456b4f68e Removed useless deroff.py import from bash settings 2012-04-25 13:36:21 -07:00
Siteshwar Vashisht
dc23af6b32 Fixed setting PATH variable in import_bash_settings.py 2012-04-22 00:18:40 +05:30
ridiculousfish
725982cc5b Fix to try to remove Python 2.7 dependency 2012-04-15 19:45:44 -07:00
ridiculousfish
f977dfcfe7 Deroffer optimizations 2012-04-15 19:22:30 -07:00
ridiculousfish
15079fa3bd Some more deroff optimizations 2012-04-15 04:41:20 -07:00
ridiculousfish
79a92120ef Speed improvements to deroffer 2012-04-15 01:15:10 -07:00
ridiculousfish
49ece586d5 Added a fish_update_completions function to run the manpage completion file
Added some pretty progress reporting to that script
Added some comments to deroff.py
2012-04-11 19:05:43 -07:00
ridiculousfish
2ec0778d78 Make create_manpage_completions output to ~/.config/fish/completions by default, and also discover man pages from reading the manpath 2012-04-11 18:26:26 -07:00
ridiculousfish
cccd1cefbe Make the web config page have a title and pass W3C validation 2012-04-11 18:26:10 -07:00
ridiculousfish
ceb32f63e7 Deroffing completion work 2012-04-09 20:17:54 -07:00
ridiculousfish
576c12b184 Deroffer work 2012-04-09 20:17:54 -07:00
ridiculousfish
8585e0e9b8 Various improvements on completion tool 2012-04-04 12:43:12 -07:00
ridiculousfish
7394374a15 Work on improving the output of the manpage completion script 2012-04-03 18:38:25 -07:00
ridiculousfish
37defa739b Fix for an extra line at the end of the variable listing
Once again, fix the issue where some color cells aren't clickable
2012-04-01 01:31:38 -07:00
ridiculousfish
51ed3fbc4b More work to try to make webconfig's layout correct under firefox 2012-04-01 00:53:53 -07:00
ridiculousfish
f930303d3e Fix for an issue where you can't select the top row of colors 2012-03-31 15:38:30 -07:00
ridiculousfish
ff17101316 A little better support for non-term-256 colors in web config
Fix for a deadlock when autoloading a function triggers autoloading another function
2012-03-31 15:17:14 -07:00
ridiculousfish
0f63e1f988 Some work towards improving manpage completions 2012-03-30 10:00:01 -07:00
ridiculousfish
a62f300753 Make the color picker cell borders appear correctly in Firefox 2012-03-27 19:00:03 -07:00
ridiculousfish
a11687fc5c Make the functions builtin have a bit nicer output
Stop autosuggesting things with newlines
Make webconfig a little nicer
2012-03-25 22:41:22 -07:00