blob: ac55755d0d443fe2a77f32ef948d55c97c416b7c [file] [log] [blame]
Ray Milkeyd84f89b2018-08-17 14:54:17 -07001//
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//
23ld = { log:display $args } ;
24lde = { log:exception-display $args } ;
25la = { bundle:list -t 0 $args } ;
26ls = { service:list $args } ;
27cl = { config:list "(service.pid=$args)" } ;
28halt = { system:shutdown -h -f $args } ;
29help = { *:help $args | more } ;
30man = { help $args } ;
31log:list = { log:get ALL } ;
32service:get = { $.context getService ($.context getServiceReference $args) };
33
34env = { shell:set $args }
35edit = { shell:nano $args }
36more = { shell:less -F $args }
37
38\#prompt = { "${USER}@${APPLICATION} ${SUBSHELL}> "?};
39
40__load_class = {
41 (($.reader class) classLoader) loadClass $1
42}
43
44// make sure that we catch exceptions
45// as they do occur if the session is headless / non-interactive
46jlineReader = $.reader
47if { %(jlineReader != null) } {
48
49 # On 256 colors terminal, add a right prompt
50 max_colors = ($.jline.terminal getNumericCapability max_colors)
51 if { %(max_colors >= 256) } {
52 __rprompt_formatter = (((__load_class java.text.SimpleDateFormat) getConstructor (__load_class java.lang.String)) newInstance \'$'\u001B\[90m'\'HH:mm:ss)
53 __date_class = (__load_class java.util.Date)
54 \#rprompt = { $__rprompt_formatter format ($__date_class newInstance) }
55 }
56
57 setopt group
58 setopt auto-fresh-line
59 unsetopt insert-tab
60 keymap "^[OA" up-line-or-search
61 keymap "^[[A" up-line-or-search
62 keymap "^[OB" down-line-or-search
63 keymap "^[[B" down-line-or-search
64
65}