gnuastro-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnuastro-commits] master f4cf33d 17/62: Tabel: Completion, examine for


From: Mohammad Akhlaghi
Subject: [gnuastro-commits] master f4cf33d 17/62: Tabel: Completion, examine for fits availability
Date: Thu, 13 May 2021 22:20:47 -0400 (EDT)

branch: master
commit f4cf33df2fd1848a0f021b07c465e3cbdf6cca7e
Author: Pedram Ashofteh Ardakani <pedramardakani@pm.me>
Commit: Mohammad Akhlaghi <mohammad@akhlaghi.org>

    Tabel: Completion, examine for fits availability
    
    Until now, after the user entered either commands '--information' or
    '--wcsfile' the autocomplete would suggest a fits file name. This is a
    bad idea when the user has already defined the file.
    
    With this commit, we will check if the user has specified the file
    already, if so, we will carry on with suggesting all other options at
    hand. On the other hand, we will suggest a fits file living in current
    directory.
    
    Still, if there were no fits files in the current directory,
    autocompletion will not suggest anything. This might signal the user
    that something is wrong.
    
    Also, I elaborated on the '--column' option's comments.
---
 bin/table/completion.sh | 23 ++++++++++++++++++++---
 1 file changed, 20 insertions(+), 3 deletions(-)

diff --git a/bin/table/completion.sh b/bin/table/completion.sh
index d31481d..113c09d 100644
--- a/bin/table/completion.sh
+++ b/bin/table/completion.sh
@@ -112,9 +112,26 @@ _gnuastro_asttable_completions(){
 
     # TODO: Prettify the code syntax, shorter ones on top
     case "$prev" in
-        -i|--information) _gnuastro_autocomplete_list_fits_names ;;
-        -c|--column) _gnuastro_autocomplete_list_fits_columns "$fits_name" ;;
-        -w|--wcsfile) _gnuastro_autocomplete_list_fits_names ;;
+        asttable) _gnuastro_autocomplete_list_fits_names ;;
+        -i|--information|-w|--wcsfile)
+            if [ -z _gnuastro_autocomplete_get_fits_name ]; then
+                # Check if the user has already specified a fits file. If
+                # the _gnuastro_autocomplete_get_file_name echoes an empty
+                # response, it means no fits files were specified.
+                _gnuastro_autocomplete_list_fits_names
+            else
+                # The user has entered a valid fits file name. So keep on
+                # with suggesting all other options at hand.
+                _gnuastro_autocomplete_list_options $PROG_NAME
+            fi
+            ;;
+        -c|--column)
+            # The function below, checks if the user has specified a fits
+            # file in the current commandline. If not, there will be no
+            # response from autocompletion. This might alert the user that
+            # something is going wrong.
+            _gnuastro_autocomplete_list_fits_columns "$fits_name"
+            ;;
         -W|--wcshdu) _gnuastro_autocomplete_list_fits_hdu "$fits_name" ;;
         -b|--noblank) ;;
         -h|--hdu) ;;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]