SDB: make scripts for sdb autocomplete 74/13774/4
authorho.namkoong <ho.namkoong@samsung.com>
Mon, 16 Dec 2013 06:04:21 +0000 (15:04 +0900)
committerho.namkoong <ho.namkoong@samsung.com>
Tue, 17 Dec 2013 01:28:47 +0000 (10:28 +0900)
implement install, uninstall and build script for sdb autocomplete

Change-Id: Ia6db255895cf5d6cb1be4bb2890296d4da3b61d5
Signed-off-by: ho.namkoong <ho.namkoong@samsung.com>
package/build.linux
package/sdb-autocomplete
package/sdb.install.linux
package/sdb.remove.linux
src/auto_complete.c

index b4b25ac2183387d8df4b67ad98950f78931d39d3..de7b2bee7c67380e74e7bce3291b66cc27c1d4c3 100755 (executable)
@@ -66,6 +66,7 @@ install()
                        then
                                mkdir -p ${INSTALL_DIR}/data/tools
                                cp ${SRCDIR}/bin/* ${INSTALL_DIR}/data/tools/
+                               cp -f ${SRCDIR}/package/sdb-autocomplete ${INSTALL_DIR}/data/tools/
                        fi
                fi
        done    
index 2a9d0e69f9d874ef7c44586da84ad38e04b30ece..634d2a3c47c8cca1b9fae65fd12f8d55f42fe263 100644 (file)
@@ -1,7 +1,7 @@
 _sdb()
 {
-    SDB_DIR=/home/nkho/work/public/sdb
-    SDB_AUTOCOMPLETE=${SDB_DIR}/bin/sdb
+    #sdb path is defined in PATH environment variable
+    SDB_BIN=sdb
     COMPREPLY=()
 #    cur="${COMP_WORDS[COMP_CWORD]}"
     ARGS="autocomplete,${COMP_CWORD}"
@@ -9,11 +9,18 @@ _sdb()
     local IFS=$','
     for ((i=1; i < $((${COMP_CWORD} + 1)) ; i++))
     do
-        convertedarg=$(eval eval echo \$\{COMP_WORDS\[i\]\})
+        #processing for echo options
+        if [ "${COMP_WORDS[i]}" == "-e" ]; then
+            convertedarg=-e
+        elif [ "${COMP_WORDS[i]}" == "-n" ]; then
+            convertedarg=-n
+        else
+            convertedarg=$(eval eval echo \$\{COMP_WORDS\[i\]\})
+        fi
         ARGS="${ARGS}${IFS}${convertedarg}"
     done
 
-    next=($(${SDB_AUTOCOMPLETE} ${ARGS}))
+    next=($(${SDB_BIN} ${ARGS}))
     local IFS=$'\n'
     COMPREPLY=(${next})
 #    COMPREPLY=($(compgen -W "${next}" -- ${cur}))
index 256b648ac0f9e894591c854cbcd7478cae7de06e..79c7032987068febb266de00e7d42da1e94c02be 100755 (executable)
@@ -1,3 +1,11 @@
 #!/bin/bash -ex
 
+SDB_AC_NAME=sdb-autocomplete
+SDB_AC_SRC_PATH=${INSTALLED_PATH}/tools/${SDB_AC_NAME}
+SDB_AC_DST_PATH=/etc/bash_completion.d/${SDB_AC_NAME}
+
+gksudo "mv -f ${SDB_AC_SRC_PATH} ${SDB_AC_DST_PATH}"
+
+. /etc/bash_completion
+
 exit 0
index 10a8ddaa4a369abd6fe224afd6159477e8cf4067..1e5171371c657017d7dcefe3216954e9169b0d50 100755 (executable)
@@ -1,6 +1,9 @@
 #!/bin/bash -ex
 SDB_PATH=tools/sdb
 ${INSTALLED_PATH}/${SDB_PATH} kill-server
+
 rm -rf ${INSTALLED_PATH}/${SDB_PATH}
+complete -r _sdb sdb
 
 exit 0
+
index 7b1de675158f5f8483aae16aa55324d0a6b7dac6..79c19d633601fb5352801f16cc56ae140c19dc57 100644 (file)
@@ -407,7 +407,6 @@ static int parse_cmd(int argc, char** argv) {
     for(; i<cmds_size; i++) {
         if(!strcmp(commands[i]->keyword, argv[0])) {
             commands[i]->func(--argc, ++argv);
-            no_parse(--argc, ++argv);
             return 0;
         }
     }