You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

shell.init.script 2.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. //
  2. // Licensed to the Apache Software Foundation (ASF) under one
  3. // or more contributor license agreements. See the NOTICE file
  4. // distributed with this work for additional information
  5. // regarding copyright ownership. The ASF licenses this file
  6. // to you under the Apache License, Version 2.0 (the
  7. // "License"); you may not use this file except in compliance
  8. // with the License. You may obtain a copy of the License at
  9. //
  10. // http://www.apache.org/licenses/LICENSE-2.0
  11. //
  12. // Unless required by applicable law or agreed to in writing,
  13. // software distributed under the License is distributed on an
  14. // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  15. // KIND, either express or implied. See the License for the
  16. // specific language governing permissions and limitations
  17. // under the License.
  18. //
  19. // This script is run each time a shell is created.
  20. // You can define here closures or variables that will be available
  21. // in each session.
  22. //
  23. ld = { log:display $args } ;
  24. lde = { log:exception-display $args } ;
  25. la = { bundle:list -t 0 $args } ;
  26. ls = { service:list $args } ;
  27. cl = { config:list "(service.pid=$args)" } ;
  28. halt = { system:shutdown -h -f $args } ;
  29. help = { *:help $args | more } ;
  30. man = { help $args } ;
  31. log:list = { log:get ALL } ;
  32. service:get = { $.context getService ($.context getServiceReference $args) };
  33. env = { shell:set $args }
  34. edit = { shell:nano $args }
  35. more = { shell:less -F $args }
  36. \#prompt = { "${USER}@${APPLICATION}(${SUBSHELL})> "?};
  37. __load_class = {
  38. (($.reader class) classLoader) loadClass $1
  39. }
  40. // make sure that we catch exceptions
  41. // as they do occur if the session is headless / non-interactive
  42. jlineReader = $.reader
  43. if { %(jlineReader != null) } {
  44. # On 256 colors terminal, add a right prompt
  45. max_colors = ($.jline.terminal getNumericCapability max_colors)
  46. if { %(max_colors >= 256) } {
  47. __rprompt_formatter = (((__load_class java.text.SimpleDateFormat) getConstructor (__load_class java.lang.String)) newInstance \'$'\u001B\[90m'\'HH:mm:ss)
  48. __date_class = (__load_class java.util.Date)
  49. // Do not use right prompt by default
  50. // \#rprompt = { $__rprompt_formatter format ($__date_class newInstance) }
  51. }
  52. setopt group
  53. setopt auto-fresh-line
  54. unsetopt insert-tab
  55. keymap "^[OA" up-line-or-search
  56. keymap "^[[A" up-line-or-search
  57. keymap "^[OB" down-line-or-search
  58. keymap "^[[B" down-line-or-search
  59. }